vscode + vim + setting.json 设置
setting.json
{
"workbench.colorTheme": "One Dark Pro Darker",
"editor.suggestSelection": "first",
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
"window.zoomLevel": 1,
"security.workspace.trust.untrustedFiles": "open",
"tabnine.experimentalAutoImports": true,
"bracketPairColorizer.depreciation-notice": false,
"vsicons.dontShowNewVersionMessage": true,
"rust-analyzer.server.path": "D:\\.vscode\\extensions\\rust-analyzer-windows.exe",
// disable cargo check on save
"rust-analyzer.checkOnSave.enable": false,
"rust-analyzer.checkOnSave.allTargets": false,
"cmake.configureOnOpen": true,
"terminal.integrated.profiles.windows": {
"Git Bash": {
"source": "Git Bash"
},
"PowerShell": {
"source": "PowerShell",
"icon": "terminal-powershell"
},
"Command Prompt": {
"path": [
"${env:windir}\\Sysnative\\cmd.exe",
"${env:windir}\\System32\\cmd.exe"
],
"args": [],
"icon": "terminal-cmd"
},
"cmder":{ //使用 cmder 作终端
"path": "C:\\work_software\\cmder\\vendor\\git-for-windows\\bin\\bash.exe",
"args":[]
},
},
"editor.fontSize": 15,
"editor.insertSpaces": true, // 按tab 时插入空格
"files.autoSave": "afterDelay", // 文件自动保存,使用 vim 插件,就不用每次保存了
"editor.renderWhitespace": "all", // 4个空格显示为 ....
"editor.detectIndentation": false, //不要检测到第一个是tab,就后面都用tab,这样会覆盖默认设置。
"editor.renderControlCharacters": true, // tab 显示为 -->
"cmake.generator": "MinGW Makefiles", // 要使用的 CMAKE 生成器
// 启用vim 的情况下,使用 ctrl c 复制等能
// 实现方法 关闭 vim 插件中,这些组合键的映射
"vim.handleKeys": {
"<C-a>": false,
"<C-c>": false,
"<C-x>": false,
"<C-f>": false,
"<C-h>": false,
"<C-s>": false,
"<C-z>": false,
"<C-y>": false,
},
// 启用系统剪贴板,即 vim 复制的内容会自动复制到 系统剪切板
// 比如 使用 yy 复制一行后,在系统其他文件中 ctrl v 即可粘贴该内容
"vim.useSystemClipboard": true,
}
vscode tab 使用空格表示
1、在vscode下边栏点击 “空格” 在上面选项里设置 使用空格缩进, 以及可以 将缩进转换为空格
2、在“文件->首选项->设置”的“用户设置”里添加
"editor.detectIndentation": false,
"editor.renderControlCharacters": true,
"editor.renderWhitespace": "all",
第一个改成false目的是:不要检测到第一个是tab,就后面都用tab,这样会覆盖默认设置。
第2 3个显示 制表符是→
4个空格是 ....
vim 使用 Ctrl c 复制
在使用中经常想使用ctrl-c,虽然在vscode中有配置选项可以让vim与ctrl键解绑,但是这样就使用不了vim的VISUAL BLOCK。
所以进行了自定义设置。
思想:停止使用 vim 插件中的对应快捷键,因为冲突后,会使用vim的快捷键覆盖系统快捷键
// 启用vim 的情况下,使用 ctrl c 复制等能
// 实现方法 关闭 vim 插件中,这些组合键的映射
"vim.handleKeys": {
"<C-a>": false,
"<C-c>": false,
"<C-x>": false,
"<C-f>": false,
"<C-h>": false,
"<C-s>": false,
"<C-z>": false,
"<C-y>": false,
},
vim 复制到系统剪切板配置方法
这么配置好处:
vim 复制快捷键和系统剪贴板组合使用,功能更强大
比如 vscode 执行 yy 复制一行后,可在别处直接 ctrl v 复制, 更加方便
vim 块模式复制 同理
其它好处 可自行探索
缺点:
vim 删除会自动保存到寄存器中,但这样设置之后,也会同步保存到系统剪切板,导致 ctrl v 不是想要的结果
觉得不爽,关闭该功能,使用前一内容 启动 ctrl c 等快捷键即可
方法1:界面设置方式
方法2:直接修改 setting.json 文件
首先 ctrl shift p
调出命令面板
之后 输入 setting.json
选择 打开设置(json)
添加语句 "vim.useSystemClipboard": true,
vim 复制指定寄存器中的内容
引用一个寄存器
Vim 的删除、复制和粘贴都会用到众多寄存器中的一个 。 可以通过给命令加 "{register}
前缀的方式指定要用的寄存器。若不指明,Vim 将使用无名寄存器。
举例
如果想把当前单词复制到寄存器 a 中, 可以执行 "ayiw 。
把当前整行文本剪切到寄存器 b 中, 可以执行 "bdd 。
"ap 可以粘贴来及寄存器 a 的单词, "bp 可以粘贴来及寄存器 b 的一行文本,两者互不干扰。
无名寄存器(“”)
倘若我们没有指定使用寄存器, Vim 将缺省使用无名寄存器,它可以双引号表示。
举例
例如 ""p 这个命令,他完全等同于 p 命令。
复制专用寄存器 ("0)
当使用 y{motion} 命令时,要复制的文本不仅会拷贝到无名寄存器中,同时也拷贝到了复制专用寄存器中。后者可以用数字 “0” 加以引用。
举例
例如有以下代码
var myCat1 = new cat();
var myCat2 = new dog();
现在想要把 “dog” 换为 “cat”。若是之前不知道寄存器这个概念的话,场景会是这样:
1.光标到 “cat” 上面,按下 yiw 复制这个单词
2.把光标移动到 “dog” 上面,按下 diw 删除这个单词
3.按下 p 粘贴
4.变成傻逼:本来想粘贴 “cat” 的,结果粘贴的内容却是 “dog” ,第一步复制的 “cat” 不见了
发生这个问题原因是一直使用的是无名寄存器,当删除单词时,删除操作会把单词放到无名寄存器中,把之前复制的内容给“挤”走了。
现在有了复制专用寄存器就不虚了。在最后粘贴的时候按下 "0p
而不是 p
就完美的解决了这个问题。
var myCat1 = new cat();
var myCat2 = new cat();
有名寄存器("a - "z)
Vim 提供了一组以 26 个英文字母命名的寄存器,这意味着我们可以复制、剪切或者粘贴多达 26 段文本。
上面改名字的问题使用有名寄存器也能很轻松地解决,这里就不再赘述了。
- 用小写字母引用有名寄存器,会覆盖该寄存器的原有内容。
- 用大写字母引用有名寄存器,会将新内容添加到原有内容之后。
黑洞寄存器 ("_)
想要删除一段文本而不想保留副本时,黑洞寄存器就很管用了。
使用 "_diw 删除一个单词时, 不会将之前无名寄存器的内容覆盖。
系统剪切板(“ )与选择专用寄存器(”*)
到目前为止,讨论的寄存器都是 Vim 内部的,如果想从 Vim 复制内容到外部,则必须使用系统剪切板。
Vim 的加号寄存器与系统剪切板等效,可用 号引用。 比如现在从别的程序中复制了一段文本,在 Vim 中,就可以通过 " p
命令将其粘贴到 Vim 内部。 如果在 Vim 的复制、粘贴和剪切命令之前加上 " ,相应的文本会捕捉至系统剪切板。在 Windows 和 Mac OS 中, " 寄存器 和 "* 寄存器 可以混用。
原文链接:https://www.jianshu.com/p/80bc31f096ba
vscode 常用快捷键
ctrl ~
: 打开 或者 切换到终端 ctrl 1
: 切换到文本
拆分终端模式下alt 方向键
: 切换终端
参考链接
1、vscode中vim插件对ctrl键的设置
2、vscode 开启vim系统剪切板模式
3、Vim 笔记 chapter2:复制粘贴、寄存器
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgaeaif
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
photoshop蒙版画笔没反应怎么办
PHP中文网 06-24