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(…...
在华为云鲲鹏ARM服务器上,从零编译ClickHouse v20.3.19.4的完整踩坑实录
在华为云鲲鹏ARM服务器上从零构建ClickHouse的实战指南 当企业级数据分析需求遇上ARM架构的云服务器,传统x86环境下的经验往往不再适用。作为一款开源的列式数据库管理系统,ClickHouse凭借其卓越的OLAP性能吸引了众多开发者,但在华为云鲲鹏AR…...
【5月最新】小龙虾 AI|Windows 一键部署 + 飞书机器人配置
OpenClaw 2.7.1|Windows 部署 飞书机器人对接全流程教程 本文包含两部分:Windows 一键部署详细步骤 飞书机器人完整配置指南,全程零命令、零复杂配置,新手 10 分钟可完成部署与渠道对接,快速打造可远程操控的 AI 数…...
企业内训系统集成AI助教时如何通过Taotoken实现高可用
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 企业内训系统集成AI助教时如何通过Taotoken实现高可用 当企业将AI助教功能集成到内部培训系统时,服务的连续性和响应能…...
3步掌握:微信数据本地解密与恢复完整方案
3步掌握:微信数据本地解密与恢复完整方案 【免费下载链接】WechatDecrypt 微信消息解密工具 项目地址: https://gitcode.com/gh_mirrors/we/WechatDecrypt 你是否曾因更换手机而丢失珍贵的微信聊天记录?或者不小心删除了重要的商务对话࿱…...
FanControl深度解析:5大核心技巧彻底掌控Windows风扇控制
FanControl深度解析:5大核心技巧彻底掌控Windows风扇控制 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending…...
终极指南:如何用Go语言实现Android OTA的快速并行解压
终极指南:如何用Go语言实现Android OTA的快速并行解压 【免费下载链接】payload-dumper-go an android OTA payload dumper written in Go 项目地址: https://gitcode.com/gh_mirrors/pa/payload-dumper-go 在Android系统开发和维护中,处理OTA更新…...
Pytorch图像去噪实战(八十五):审计日志实战,记录用户行为、模型调用和敏感操作
Pytorch图像去噪实战(八十五):审计日志实战,记录用户行为、模型调用和敏感操作 一、问题场景:出了问题,却不知道是谁在什么时候做了什么 图像去噪服务进入平台化后,会出现大量用户行为: 用户上传图片 用户创建异步任务 用户下载结果 用户调用高质量模型 管理员修改套餐…...
LangChain新手必看的10个常见错误及解决方案(建议收藏)
系列:问题解决方案库(1/5) 难度:⭐⭐ 初级 预计阅读时间:10分钟 适用人群:LangChain初学者、遇到问题的开发者 持续更新:欢迎留言补充你遇到的错误 引言 LangChain是目前最流行的LLM应用开发框…...
MRIcroGL深度指南:医学影像三维可视化的终极开源解决方案
MRIcroGL深度指南:医学影像三维可视化的终极开源解决方案 【免费下载链接】MRIcroGL v1.2 GLSL volume rendering. Able to view NIfTI, DICOM, MGH, MHD, NRRD, AFNI format images. 项目地址: https://gitcode.com/gh_mirrors/mr/MRIcroGL MRIcroGL是一款专…...
Vivado里手把手配置MIPI CSI-2 RX Subsystem IP核:从D-PHY选IO到Video Format Bridge算位宽
Vivado中MIPI CSI-2 RX Subsystem IP核配置实战:从D-PHY选型到视频格式转换 在ZYNQ系列SoC的视觉处理系统中,MIPI CSI-2接口作为连接图像传感器的标准协议,其硬件实现往往成为项目成败的关键节点。本文将深入剖析Vivado工具中MIPI CSI-2 RX S…...
