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(…...
炉石传说HsMod终极指南:55项功能完整教程与快速上手攻略
炉石传说HsMod终极指南:55项功能完整教程与快速上手攻略 【免费下载链接】HsMod Hearthstone Modification Based on BepInEx 项目地址: https://gitcode.com/GitHub_Trending/hs/HsMod HsMod是一款基于BepInEx框架开发的炉石传说多功能插件,为玩…...
基于Qt6.4的PDF阅读器开发:实现高效章节目录与预览图功能
1. Qt6.4 PDF模块开发环境搭建 第一次接触Qt6.4的PDF模块时,我着实被它的便捷性惊艳到了。相比之前用Qt5.9时折腾第三方库的痛苦经历,现在只需要在安装时勾选一个选项就能获得完整的PDF处理能力,这感觉就像从手动挡升级到了自动驾驶。 开发环…...
【智能家居奇点倒计时】:仅剩18个月!2026大会认证的7个必须升级的多模态交互协议
第一章:2026奇点智能技术大会:多模态智能家居 2026奇点智能技术大会(https://ml-summit.org) 多模态融合架构设计 本届大会首次公开了开源多模态家居中枢框架HomeFusion v2.1,其核心采用统一嵌入空间(Unified Embedding Space&a…...
如何在VSCode、Vim和Emacs中配置Tern:提升JavaScript开发效率的完整指南
如何在VSCode、Vim和Emacs中配置Tern:提升JavaScript开发效率的完整指南 【免费下载链接】tern A JavaScript code analyzer for deep, cross-editor language support 项目地址: https://gitcode.com/gh_mirrors/te/tern Tern是一个强大的JavaScript代码分析…...
智能项目管理系统:数字化转型的核心驱动力
1. 智能项目管理系统:企业数字化转型的神经中枢 记得三年前我参与过一个制造业客户的数字化转型项目,当时他们还在用Excel表格跟踪上百个工序节点。每周五下午,项目经理要花3小时手动合并12个部门的进度表,经常出现版本错乱。引入…...
HWSDv2.0土壤数据怎么用?从全球1km栅格到你的研究区,这份ArcGIS Pro掩膜裁剪指南请收好
HWSDv2.0土壤数据区域提取实战:ArcGIS Pro高效掩膜裁剪技巧 当全球1公里分辨率的HWSDv2.0土壤数据遇上具体研究区域,如何快速提取目标范围的数据成为科研工作者的首要挑战。本文将手把手教你使用ArcGIS Pro完成从全局到局部的精准数据裁剪,让…...
ViGEmBus深度解析:Windows内核级游戏控制器虚拟化架构揭秘
ViGEmBus深度解析:Windows内核级游戏控制器虚拟化架构揭秘 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 在游戏输入设备兼容性领域,…...
Sunshine游戏串流实战解析:构建你的专属高性能云端游戏平台
Sunshine游戏串流实战解析:构建你的专属高性能云端游戏平台 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 还在为游戏设备的限制而烦恼吗?想象一下&#x…...
【STM32-HAL库】RS485中断接收实战:基于STM32F103VET6的稳定通信方案
1. RS485通信与STM32开发基础 RS485是一种常见的工业级串行通信协议,相比RS232具有传输距离远(最远1200米)、抗干扰能力强、支持多点通信等优势。在智能电表、工业传感器、PLC控制等场景中广泛应用。STM32F103VET6作为经典的Cortex-M3内核MCU…...
OpenAI紧急出招!GPT-5.4-Cyber抢先封锁安全漏洞,3000个高危Bug瞬间消失
OpenAI在硅谷巨头防御赛道上紧急加码,正式发布专为网络安全防御微调的强力模型GPT-5.4-Cyber。该模型不仅能在无源码环境下分析恶意软件,还凭借AI自动修复能力,交出一份“3000个高危漏洞已修复”的惊人成绩单。本周,科技界传来重磅…...
