网站首页 > 技术文章 正文
前言
VsCode 现在算是最流行的编辑器之一,插件丰富,满足你的各种需求。
在我日常的Web开发使用中(Python|PHP|Go|JS|TS|Html|CSS),也完全满足我的需求,而且非常适合各种语言都折腾的人。
前几天又看了一些 Vim 教程,其中一些风骚的操作让我又燃起来学习 Vim 的热情。之前学了几次都中途放弃了,毕竟它的学习曲线可能是这样的:
VsCode Vim插件安装及简单配置
本次体验使用插件商店搜索结果中的第一个插件:Vim(https://github.com/VSCodeVim/Vim),也是安装量最多的一个。使用这个插件,你可以在VsCode中使用绝大多数的 Vim 操作
简单的体验
Vim 插件
关于 Vim 的插件,目前不能使用真正的 Vim 插件,官方提供几款模拟插件:
- vim-airline
- vim-easymotion
- vim-surround
- vim-commentary
- vim-indent-object
- vim-sneak
- CamelCaseMotion
整合 Neovim
- 安装 Neovim
- 设置 vim.enableNeovim 和 vim.neovimPath
这样可以使用更多的 :normal 命令,更加方便快捷的搜索和替换
输入法切换
输入法切换的问题可能比较烦人,比如你刚在插入模式输入了中文,按下 esc 后,想要继续输入命令,这时候却因为是输入中文而不能执行
可以配合 im-select 来实现按下 esc 后切换回 英文输入法
- 安装 im-select
- 配置:
// mac
"vim.autoSwitchInputMethod.enable": true,
"vim.autoSwitchInputMethod.defaultIM": "com.apple.keylayout.US",
"vim.autoSwitchInputMethod.obtainIMCmd": "/usr/local/bin/im-select",
"vim.autoSwitchInputMethod.switchIMCmd": "/usr/local/bin/im-select {im}"
// Windows
"vim.autoSwitchInputMethod.enable": true,
"vim.autoSwitchInputMethod.defaultIM": "1033",
"vim.autoSwitchInputMethod.obtainIMCmd": "D:\\bin\\im-select.exe",
"vim.autoSwitchInputMethod.switchIMCmd": "D:\\bin\\im-select.exe {im}"
其它结合 VsCode 的命令
总结
最主要的还是根据自己需求选择和使用。
VsCode+Vim插件,可以省去许多配置 Vim 的麻烦,满足折腾多种语言的“全干”工程师。
我觉得使用 Vim 不应该是为了抛弃鼠标,而是使用 Vim 的一套强大的编辑模式,通过学习记忆,达到在编辑时所思即所得
猜你喜欢
- 2024-09-29 换种不一样的方式查看文件内容(查看文件中的内容)
- 2024-09-29 golang 基础(一):安装、IDE、fmt、变量
- 2024-09-29 Visual studio code 配置选项(visual studio code安装配置)
- 2024-09-29 使用 Prettier 美化你的代码(cmder美化)
- 2024-09-29 VScode自定义clang-format(vscode自定义快捷键)
- 2024-09-29 word文档换行版式变了怎么办?word文档换行版式变化的解决方法
- 2024-09-29 vscode针对python编程,简单设置pylint,解决各种无关的波浪线
- 2024-09-29 我在vscode上的3个惨痛教训,希望你一个也用不到
- 2024-09-29 如何优雅的在VSCode上记笔记(vscode怎么写)
- 2024-09-29 vscode常用快捷键(vscode快捷键整理代码)
- 最近发表
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- c语言min函数头文件 (77)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 无效的列索引 (74)