当前位置: 首页 > news >正文

vscode vim 快捷键汇总

需满足操作:

  1. 上下移动
  2. 按照 word 移动
  3. 选中增删改
  4. 查找字符/变量
  5. 移动、增加、复制、删除 行
  6. 选中多个相同的变量/字符
  7. 屏幕移动
  8. 增加多个光标
  9. 快速注释

上下左右移动

CommandDescription
🔢 hleft (also: CTRL-H, BS, or Left key)
🔢 lright (also: Space or Right key)
0to 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)
gmto middle of the screen line
🔢 |to column N (default: 1)
🔢 f{char}to the Nth occurrence of {char} to the right
🔢 kup N lines (also: CTRL-P and Up)
🔢 jdown 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
🔢 Ggoto line N (default: last line), on the first non-blank character
🔢 gggoto line N (default: first line), on the first non-blank character

按照word移动

CommandDescription
🔢 wN words forward
🔢 WN blank-separated WORDs forward
🔢 eN words forward to the end of the Nth word
🔢 EN words forward to the end of the Nth blank-separated WORD
🔢 bN words backward
🔢 BN blank-separated WORDs backward
🔢 )N sentences forward
🔢 (N sentences backward
🔢 }N paragraphs forward
🔢 {N paragraphs backward

选中增删改

进入 insert mode 后就和之前的模式一样,快捷键有些是和原理的 vscode 一致,有些不一致。

visual mode

CommandDescription
vstart highlighting characters or stop highlighting
Vstart highlighting linewise or stop highlighting
CTRL-Vstart highlighting blockwise or stop highlighting
oexchange cursor position with start of highlighting

删除

CommandDescription
🔢 xdelete N characters under and after the cursor
🔢 Deldelete N characters under and after the cursor
🔢 Xdelete N characters before the cursor
🔢 d{motion}delete the text that is moved over with {motion}
{visual}ddelete the highlighted text
🔢 dddelete N lines
🔢 Ddelete 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}cchange the highlighted text
🔢 ccchange N lines
🔢 Schange N lines
🔢 Cchange to the end of the line (and N-1 more lines)
🔢 shhchange N characters

复制

CommandDescription
"{char}use register {char} for the next delete, yank, or put
"*use register * to access system clipboard
:regshow 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}yyank the highlighted text into a register
🔢 yyyank N lines into a register
🔢 Yyank N lines into a register
🔢 pput a register after the cursor position (N times)
🔢 Pput a register before the cursor position (N times)
🔢 ]plike p, but adjust indent to current line
🔢 [plike P, but adjust indent to current line
🔢 gplike p, but leave cursor after the new text
🔢 gPlike P, but leave cursor after the new text

增加

CommandDescription
🔢 aappend text after the cursor (N times)
🔢 Aappend text at the end of the line (N times)
🔢 iinsert text before the cursor (N times) (also: Insert)
🔢 Iinsert text before the first non-blank in the line (N times)
🔢 gIinsert text in column 1 (N times)
giinsert at the end of the last change
🔢 oopen a new line below the current line, append text (N times)
🔢 Oopen a new line above the current line, append text (N times)

查找字符/变量

CommandDescription
🔢 /{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.
🔢 nrepeat last search
🔢 Nrepeat last search, in opposite direction

移动、增加、复制、删除 行

复制行
insert mode
alt + shift up/down
删除行
dd
移动行
insert mode
alt + up/down

选中多个相同的变量/字符

CRTL +D选中目标
shift +a/i 防止 curcor 即可编辑全部目标

屏幕移动

CommandDescription
🔢 CTRL-Ewindow N lines downwards (default: 1)
🔢 CTRL-Dwindow N lines Downwards (default: 1/2 window)
🔢 CTRL-Ywindow N lines upwards (default: 1)
🔢 CTRL-Uwindow N lines Upwards (default: 1/2 window)

增加多个光标

in Visual block mode:

CommandDescription
Iinsert the same text in front of all the selected lines
Aappend 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&#xff…...

JDK8新特性(一)

一、概述 JDK8,又称为JDK 1.8,是Java语言开发的里程碑版本。这个版本引入了众多令人兴奋的新特性,让Java更加灵活和强大。其中,最引人注目的新特性包括Lambda表达式、方法引用、默认方法、Stream API、新的日期和时间API以及Optio…...

java实现ftp协议远程网络下载文件

引言 在开发过程中&#xff0c;偶尔会遇到网络文件在FTP服务上存储着&#xff0c;对于这种情况想要下载到本地还有些麻烦&#xff0c;我们直接上世界上最简单的代码。 How to do 1.提前引入包 <!--hutool万能工具包--><dependency><groupId>cn.hutool<…...

深入浅出理解目标检测的NMS非极大抑制

一、参考资料 物体检测中常用的几个概念迁移学习、IOU、NMS理解 目标定位和检测系列&#xff08;3&#xff09;&#xff1a;交并比&#xff08;IOU&#xff09;和非极大值抑制&#xff08;NMS&#xff09;的python实现 Pytorch&#xff1a;目标检测网络-非极大值抑制(NMS) …...

HbuilderX报错“Error: Fail to open IDE“,以及运行之后没有打开微信开发者,或者运行没有反应的解决办法

开始 问题:HbuilderX启动时,打开微信开发者工具报错"Error: Fail to open IDE",以及运行之后没有打开微信开发者,或者运行没有反应的解决办法! 解决办法: 按照步骤一步一步完成分析,除非代码报错,否则都是可以启动的 第一步:检查HbuildX是否登录账号 第二步:检查微信…...

【Go 快速入门】基础语法 | 流程控制 | 字符串

文章目录 基础语法值变量常量运算符指针new 和 make 区别 字符串byte 和 rune 类型 流程控制for 循环If else 分支switch 分支 基础语法 项目代码地址&#xff1a;02-basicgrammar 值 基本类型值 Go 最基础的数据类型&#xff0c;比如整型、浮点型、布尔型。 复合类型值 …...

腾讯云轻量应用Ubuntu服务器如何一键部署幻兽帕鲁Palworld私服?

幻兽帕鲁/Palworld是一款2024年Pocketpair开发的开放世界生存制作游戏&#xff0c;在帕鲁的世界&#xff0c;玩家可以选择与神奇的生物“帕鲁”一同享受悠闲的生活&#xff0c;也可以投身于与偷猎者进行生死搏斗的冒险。而帕鲁可以进行战斗、繁殖、协助玩家做农活&#xff0c;也…...

Redis的SDS你了解吗?

初识SDS&#xff1a; Redis的String和其他很多编程语言中的语义相似&#xff0c;它能够表达3种值的类型&#xff1a; 1.字符串 2.整数 3.浮点数 三种类型根据具体场景由Redis完成相互之间的自动转换&#xff0c;并且根据需要选取底层的承载方式&#xff0c;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 拷贝赋值功能相关函数&#xff08;覆盖&#xff09;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栈 栈代码用线性表实现栈用链表实现栈 栈 栈&#xff1a;先进后出 只对栈顶元素进行操作&#xff0c;包括新元素入栈、栈顶元素出栈和查看栈顶元素&#xff08;只支持对栈顶的增、删、查&#xff09;。 代码 下述代码实现了栈及其接口 包括对栈顶的增、删、查以及查看栈的大…...

新建react项目,react-router-dom配置路由,引入antd

提示&#xff1a;reactrouter6.4版本&#xff0c;与reactrouter5.0的版本用法有区别&#xff0c;互不兼容需注意 文章目录 前言一、创建项目二、新建文件并引入react-router-dom、antd三、配置路由跳转四、效果五、遇到的问题六、参考文档总结 前言 需求&#xff1a;新建react项…...

Transformer and Pretrain Language Models3-6

Pretrain Language Models预训练语言模型 content&#xff1a; language modeling&#xff08;语言模型知识&#xff09; pre-trained langue models(PLMs&#xff09;&#xff08;预训练的模型整体的一个分类&#xff09; fine-tuning approaches GPT and BERT&#xff08;…...

SeaweedFS与MinIO深度对比:架构差异与场景化选型指南

1. 从“存文件”到“管数据”&#xff1a;为什么选型这么难&#xff1f; 做技术选型&#xff0c;特别是存储这块&#xff0c;经常让人头疼。我见过不少团队&#xff0c;一开始图省事&#xff0c;随便选了一个“名气大”的方案&#xff0c;结果项目上线没多久&#xff0c;就遇到…...

AAAI-2024《DVSAI: Diverse View-Shared Anchors Based Incomplete Multi-View Clustering》

2. 核心思想 针对不完全多视图聚类(Incomplete Multi-View Clustering, IMVC)问题,现有基于锚点的方法通常构建单一维度和单一大小的视图共享锚点,这会导致多视图多样性恶化及信息丢失,且无法充分表征样本分布。 本文提出了一种名为 DVSAI 的新框架。其核心思想在于: 多…...

Figo义商本体论AI人格测评问卷的技术构建与工程化实践

义商本体论AI人格测评问卷的技术构建与工程化实践 作者:Figo Cheung, Figo AI Team 一、引言&#xff1a;从"规则约束"到"人格培育"的AI伦理转向 当前AI伦理研究多聚焦于"价值对齐"的外部规则设计&#xff0c;通过预设禁忌清单实现行为合规&…...

简中互联网“四大恶人”批判:一种数字生存境况的技术社会学分析

內容來自知乎&#xff1a;https://www.zhihu.com/question/660840540 # 简中互联网“四大恶人”批判&#xff1a;一种数字生存境况的技术社会学分析 ## 引言&#xff1a;被围困的数字日常 2026年的今天&#xff0c;当你打开手机准备查询地铁线路&#xff0c;仅仅因为起身时轻…...

连续时间马尔科夫链:从理论到生灭过程的应用解析

1. 从排队到种群&#xff1a;为什么我们需要连续时间马尔科夫链&#xff1f; 想象一下&#xff0c;你正在一家网红奶茶店排队。队伍的长度时增时减&#xff0c;有人买完离开&#xff08;“死亡”&#xff09;&#xff0c;也有新顾客加入队尾&#xff08;“出生”&#xff09;。…...

Qwen3-TTS快速入门:10种语言语音合成,5分钟完成第一个作品

Qwen3-TTS快速入门&#xff1a;10种语言语音合成&#xff0c;5分钟完成第一个作品 想不想体验一下&#xff0c;用5分钟时间&#xff0c;让一段文字变成10种不同语言的语音&#xff1f;这听起来像是科幻电影里的场景&#xff0c;但现在&#xff0c;你只需要一个浏览器和几条简单…...

用TF-IDF和PMI构建词向量的5个实战技巧(NLP基础必备)

用TF-IDF和PMI构建词向量的5个实战技巧&#xff08;NLP基础必备&#xff09; 在自然语言处理领域&#xff0c;词向量技术早已从理论研究走向工程实践。对于初入NLP领域的工程师来说&#xff0c;掌握基于统计方法的词向量构建技术不仅能够夯实基础&#xff0c;更能为后续深度学习…...

打工人上班摸魚小說-第二十四章 西行、夜车与后视镜里的眼睛

# 打工人上班摸魚小說-第二十四章 西行、夜车与后视镜里的眼睛---车往西开。窗外的天从黑变成灰&#xff0c;从灰变成白。太阳升起来的时候&#xff0c;林舟才发现自己靠窗户睡着了。脖子酸得厉害&#xff0c;他揉了揉&#xff0c;坐直了身子。车厢里人不多。前排坐着一个老人&…...

CSS中盒模型的边框属性

margin:外边距 如果想要让A元素和B元素有一点距离可以设置外边距 padding:内边距 div中想写文字 不想让它紧挨着边框可以设置内边距使用height:100%时&#xff0c;父元素高度是0&#xff0c;子元素100%不会生效&#xff0c;所以高度默认由元素内容撑起 如果div中不写文字 那么即…...

GTE+SeqGPT轻量化部署指南:560M参数模型在消费级GPU上的高效运行方案

GTESeqGPT轻量化部署指南&#xff1a;560M参数模型在消费级GPU上的高效运行方案 1. 项目概述&#xff1a;当语义搜索遇上轻量生成 今天给大家介绍一个特别实用的AI项目——把语义搜索和文本生成两个能力打包在一起&#xff0c;只用消费级显卡就能流畅运行。这个镜像集成了两个…...