vscode vim 快捷键汇总
需满足操作:
- 上下移动
- 按照 word 移动
- 选中增删改
- 查找字符/变量
- 移动、增加、复制、删除 行
- 选中多个相同的变量/字符
- 屏幕移动
- 增加多个光标
- 快速注释
上下左右移动
| Command | Description |
|---|---|
| 🔢 h | left (also: CTRL-H, BS, or Left key) |
| 🔢 l | right (also: Space or Right key) |
| 0 | to first character in the line (also: Home key) |
| ^ | to first non-blank character in the line |
| 🔢 $ | to the last character in the line (N-1 lines lower) (also: End key) |
| gm | to middle of the screen line |
| 🔢 | | to column N (default: 1) |
| 🔢 f{char} | to the Nth occurrence of {char} to the right |
| 🔢 k | up N lines (also: CTRL-P and Up) |
| 🔢 j | down N lines (also: CTRL-J, CTRL-N, NL, and Down) |
| 🔢 - | up N lines, on the first non-blank character |
| 🔢 + | down N lines, on the first non-blank character (also: CTRL-M and CR) |
| 🔢 _ | down N-1 lines, on the first non-blank character |
| 🔢 G | goto line N (default: last line), on the first non-blank character |
| 🔢 gg | goto line N (default: first line), on the first non-blank character |
按照word移动
| Command | Description |
|---|---|
| 🔢 w | N words forward |
| 🔢 W | N blank-separated WORDs forward |
| 🔢 e | N words forward to the end of the Nth word |
| 🔢 E | N words forward to the end of the Nth blank-separated WORD |
| 🔢 b | N words backward |
| 🔢 B | N blank-separated WORDs backward |
| 🔢 ) | N sentences forward |
| 🔢 ( | N sentences backward |
| 🔢 } | N paragraphs forward |
| 🔢 { | N paragraphs backward |
选中增删改
进入 insert mode 后就和之前的模式一样,快捷键有些是和原理的 vscode 一致,有些不一致。
visual mode
| Command | Description |
|---|---|
| v | start highlighting characters or stop highlighting |
| V | start highlighting linewise or stop highlighting |
| CTRL-V | start highlighting blockwise or stop highlighting |
| o | exchange cursor position with start of highlighting |
删除
| Command | Description |
|---|---|
| 🔢 x | delete N characters under and after the cursor |
| 🔢 Del | delete N characters under and after the cursor |
| 🔢 X | delete N characters before the cursor |
| 🔢 d{motion} | delete the text that is moved over with {motion} |
| {visual}d | delete the highlighted text |
| 🔢 dd | delete N lines |
| 🔢 D | delete to the end of the line (and N-1 more lines) |
| (change = delete text and enter Insert mode) | |
| 🔢 c{motion} | change the text that is moved over with {motion} |
| {visual}c | change the highlighted text |
| 🔢 cc | change N lines |
| 🔢 S | change N lines |
| 🔢 C | change to the end of the line (and N-1 more lines) |
| 🔢 s | hhchange N characters |
复制
| Command | Description |
|---|---|
| "{char} | use register {char} for the next delete, yank, or put |
| "* | use register * to access system clipboard |
| :reg | show the contents of all registers |
| :reg | {arg} show the contents of registers mentioned in {arg} |
| 🔢 y{motion} | yank the text moved over with {motion} into a register |
| {visual}y | yank the highlighted text into a register |
| 🔢 yy | yank N lines into a register |
| 🔢 Y | yank N lines into a register |
| 🔢 p | put a register after the cursor position (N times) |
| 🔢 P | put a register before the cursor position (N times) |
| 🔢 ]p | like p, but adjust indent to current line |
| 🔢 [p | like P, but adjust indent to current line |
| 🔢 gp | like p, but leave cursor after the new text |
| 🔢 gP | like P, but leave cursor after the new text |
增加
| Command | Description |
|---|---|
| 🔢 a | append text after the cursor (N times) |
| 🔢 A | append text at the end of the line (N times) |
| 🔢 i | insert text before the cursor (N times) (also: Insert) |
| 🔢 I | insert text before the first non-blank in the line (N times) |
| 🔢 gI | insert text in column 1 (N times) |
| gi | insert at the end of the last change |
| 🔢 o | open a new line below the current line, append text (N times) |
| 🔢 O | open a new line above the current line, append text (N times) |
查找字符/变量
| Command | Description |
|---|---|
| 🔢 /{pattern}[/[offset]] | search forward for the Nth occurrence of {pattern} Currently we only support JavaScript Regex but not Vim’s in-house Regex engine. |
| 🔢 ?{pattern}[?[offset]] | search backward for the Nth occurrence of {pattern} Currently we only support JavaScript Regex but not Vim’s in-house Regex engine. |
| 🔢 / | repeat last search, in the forward direction {count} is not supported. |
| 🔢 ? | repeat last search, in the backward direction {count} is not supported. |
| 🔢 n | repeat last search |
| 🔢 N | repeat last search, in opposite direction |
移动、增加、复制、删除 行
复制行
insert mode
alt + shift up/down
删除行
dd
移动行
insert mode
alt + up/down
选中多个相同的变量/字符
CRTL +D选中目标
shift +a/i 防止 curcor 即可编辑全部目标
屏幕移动
| Command | Description |
|---|---|
| 🔢 CTRL-E | window N lines downwards (default: 1) |
| 🔢 CTRL-D | window N lines Downwards (default: 1/2 window) |
| 🔢 CTRL-Y | window N lines upwards (default: 1) |
| 🔢 CTRL-U | window N lines Upwards (default: 1/2 window) |
增加多个光标
in Visual block mode:
| Command | Description |
|---|---|
| I | insert the same text in front of all the selected lines |
| A | append the same text after all the selected lines |
normal mode
alt + command + up / down
then i or a
快速注释
command + /
切换 file
CTRL + TAB
CTRL + 12345
参考:https://github.com/VSCodeVim/Vim/blob/HEAD/ROADMAP.md
相关文章:
vscode vim 快捷键汇总
需满足操作: 上下移动按照 word 移动选中增删改查找字符/变量移动、增加、复制、删除 行选中多个相同的变量/字符屏幕移动增加多个光标快速注释 上下左右移动 CommandDescription🔢 hleft (also: CTRL-H, BS, or Left key)🔢 lright (also…...
npm官方注册表和淘宝镜像切换
1.切换到淘宝镜像 加快npm包的下载速度, //已失效 //npm config set registry https://registry.npm.taobao.org/ npm config set registry https://registry.npmmirror.com这会将npm的注册表设置为淘宝镜像 查看: npm config get registry如果返回的…...
LFU算法
LFU算法 Least Frequently Used(最不频繁使用) Leetcode有原题,之前手写过LRU,数据结构还是习惯于用java实现,实现是copy的评论题解。 题解注释写的很清楚 大致就是说LFUCache类维护一个存放node的map,同…...
JVM系列-7内存调优
👏作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家📕系列专栏:Spring原理、JUC原理、Kafka原理、分布式技术原理、数据库技术、JVM原理🔥如果感觉博主的文…...
[UI5 常用控件] 01.Text
文章目录 前言1. 普通文本2. 长文本:3. 设置最大显示行数 ( maxLines3 )4. 单行显示 ( wrappingfalse )5. 显示空白符 ( renderWhitespacetrue )6. 使用 - 连接单词:只适用于英文 ( wrappingTypeHyphenated )7. 空白时使用 - 代替 ( emptyIndicatorModeOn )8. JSON数…...
C语言之指针的地址和指向的内容总结(八十四)
简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…...
1月25日,每日信息差
第一、中国和新加坡互免签证,新加坡酒店搜索量较发布前增长4倍。去哪儿数据显示,新加坡酒店搜索量较发布前增长4倍,仍在持续增长中。同程旅行数据显示,消息发布半小时内,同程旅行平台新加坡相关搜索热度较前日同一时段…...
前端工程化之:webpack1-3(模块化兼容性)
一、模块化兼容性 由于 webpack 同时支持 CommonJs 和 ES6 module ,因此需要理解它们互操作时 webpack 是如何处理的。 二、同模块化标准 如果导出和导入使用的是同一种模块化标准,打包后的效果和之前所说的模块化没有任何差异。 CommonJSÿ…...
JDK8新特性(一)
一、概述 JDK8,又称为JDK 1.8,是Java语言开发的里程碑版本。这个版本引入了众多令人兴奋的新特性,让Java更加灵活和强大。其中,最引人注目的新特性包括Lambda表达式、方法引用、默认方法、Stream API、新的日期和时间API以及Optio…...
java实现ftp协议远程网络下载文件
引言 在开发过程中,偶尔会遇到网络文件在FTP服务上存储着,对于这种情况想要下载到本地还有些麻烦,我们直接上世界上最简单的代码。 How to do 1.提前引入包 <!--hutool万能工具包--><dependency><groupId>cn.hutool<…...
深入浅出理解目标检测的NMS非极大抑制
一、参考资料 物体检测中常用的几个概念迁移学习、IOU、NMS理解 目标定位和检测系列(3):交并比(IOU)和非极大值抑制(NMS)的python实现 Pytorch:目标检测网络-非极大值抑制(NMS) …...
HbuilderX报错“Error: Fail to open IDE“,以及运行之后没有打开微信开发者,或者运行没有反应的解决办法
开始 问题:HbuilderX启动时,打开微信开发者工具报错"Error: Fail to open IDE",以及运行之后没有打开微信开发者,或者运行没有反应的解决办法! 解决办法: 按照步骤一步一步完成分析,除非代码报错,否则都是可以启动的 第一步:检查HbuildX是否登录账号 第二步:检查微信…...
【Go 快速入门】基础语法 | 流程控制 | 字符串
文章目录 基础语法值变量常量运算符指针new 和 make 区别 字符串byte 和 rune 类型 流程控制for 循环If else 分支switch 分支 基础语法 项目代码地址:02-basicgrammar 值 基本类型值 Go 最基础的数据类型,比如整型、浮点型、布尔型。 复合类型值 …...
腾讯云轻量应用Ubuntu服务器如何一键部署幻兽帕鲁Palworld私服?
幻兽帕鲁/Palworld是一款2024年Pocketpair开发的开放世界生存制作游戏,在帕鲁的世界,玩家可以选择与神奇的生物“帕鲁”一同享受悠闲的生活,也可以投身于与偷猎者进行生死搏斗的冒险。而帕鲁可以进行战斗、繁殖、协助玩家做农活,也…...
Redis的SDS你了解吗?
初识SDS: Redis的String和其他很多编程语言中的语义相似,它能够表达3种值的类型: 1.字符串 2.整数 3.浮点数 三种类型根据具体场景由Redis完成相互之间的自动转换,并且根据需要选取底层的承载方式,Redis内部&#x…...
C#中常见的软件设计模式及应用场景
文章目录 前言1、单例模式 (Singleton)1.1 详细说明1.2 应用场景示例 2、工厂模式 (Factory Method)2.1 详细说明2.2 应用场景示例 3、观察者模式 (Observer)3.1 详细说明3.2 应用场景示例 4、策略模式 (Strategy)4.1 详细说明4.2 应用场景示例 5、适配器模式 (Adapter)5.1 详细…...
字符串相关函数和文件操作
文章目录 1. C/C 字符串概述1.1 字符串常量1.2 字符数组 2. 字符串函数2.1 拷贝赋值功能相关函数(覆盖)2.1.1 strcpy2.1.2 strncpy2.1.3 memcpy2.1.4 memmove2.1.5 memset2.1.6 注意小点2.1.7 【函数区别】 2.2 追加功能相关函数2.2.1 strcat2.2.2 strnc…...
【c++学习】数据结构中的栈
c栈 栈代码用线性表实现栈用链表实现栈 栈 栈:先进后出 只对栈顶元素进行操作,包括新元素入栈、栈顶元素出栈和查看栈顶元素(只支持对栈顶的增、删、查)。 代码 下述代码实现了栈及其接口 包括对栈顶的增、删、查以及查看栈的大…...
新建react项目,react-router-dom配置路由,引入antd
提示:reactrouter6.4版本,与reactrouter5.0的版本用法有区别,互不兼容需注意 文章目录 前言一、创建项目二、新建文件并引入react-router-dom、antd三、配置路由跳转四、效果五、遇到的问题六、参考文档总结 前言 需求:新建react项…...
Transformer and Pretrain Language Models3-6
Pretrain Language Models预训练语言模型 content: language modeling(语言模型知识) pre-trained langue models(PLMs)(预训练的模型整体的一个分类) fine-tuning approaches GPT and BERT(…...
python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)
更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...
C++.OpenGL (10/64)基础光照(Basic Lighting)
基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...
前端开发面试题总结-JavaScript篇(一)
文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包(Closure)?闭包有什么应用场景和潜在问题?2.解释 JavaScript 的作用域链(Scope Chain) 二、原型与继承3.原型链是什么?如何实现继承&a…...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...
短视频矩阵系统文案创作功能开发实践,定制化开发
在短视频行业迅猛发展的当下,企业和个人创作者为了扩大影响力、提升传播效果,纷纷采用短视频矩阵运营策略,同时管理多个平台、多个账号的内容发布。然而,频繁的文案创作需求让运营者疲于应对,如何高效产出高质量文案成…...
【Linux】自动化构建-Make/Makefile
前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具:make/makfile 1.背景 在一个工程中源文件不计其数,其按类型、功能、模块分别放在若干个目录中,mak…...
0x-3-Oracle 23 ai-sqlcl 25.1 集成安装-配置和优化
是不是受够了安装了oracle database之后sqlplus的简陋,无法删除无法上下翻页的苦恼。 可以安装readline和rlwrap插件的话,配置.bahs_profile后也能解决上下翻页这些,但是很多生产环境无法安装rpm包。 oracle提供了sqlcl免费许可,…...
数据结构:递归的种类(Types of Recursion)
目录 尾递归(Tail Recursion) 什么是 Loop(循环)? 复杂度分析 头递归(Head Recursion) 树形递归(Tree Recursion) 线性递归(Linear Recursion)…...
相关类相关的可视化图像总结
目录 一、散点图 二、气泡图 三、相关图 四、热力图 五、二维密度图 六、多模态二维密度图 七、雷达图 八、桑基图 九、总结 一、散点图 特点 通过点的位置展示两个连续变量之间的关系,可直观判断线性相关、非线性相关或无相关关系,点的分布密…...
数据结构:泰勒展开式:霍纳法则(Horner‘s Rule)
目录 🔍 若用递归计算每一项,会发生什么? Horners Rule(霍纳法则) 第一步:我们从最原始的泰勒公式出发 第二步:从形式上重新观察展开式 🌟 第三步:引出霍纳法则&…...
