在平时的开发过程中,VSCode 可以很好地满足我的所有需求,以至于我一换到其他编辑器就各种不适应。
VSCode 不仅编辑起来很顺手,而且它的远程开发功能也让我觉得非常舒服,你的所有更改都直接生效到服务器,不用考虑同步问题,很省心。
但是最近在使用 VSCode 远程在我自己的服务器上开发时,经常出现内存占用过高的情况。
我的服务器配置非常低,内存也只有 2G,看来即使 VSCode 已经足够轻量,这样的配置也有点吃力。
所以我不得不研究一下 Vim 要如何达到上面的需求。经过一段时间的学习,勉强找到了替代方案。
VSCode 与 Vim 相同功能对比
| 功能需求 | VSCode 方式 | Vim 方式 |
|---|---|---|
| 代码高亮 | 选择语言格式自动生效 | 自动识别 |
| 代码折叠 | Ctrl + k; Ctrl + [ |
待学习 |
| 复制 | 选中后,Ctrl + c |
v; 移动光标选中字符; y 复制; p 粘贴 |
| 粘贴 | 光标定位后,Ctrl + v |
光标定位后,p |
| 移动当前行 | 按住 Alt,上下方向键控制 |
向上移动 ddkP; 向下移动 ddkp |
| 删除当前行 | Ctrl + Shift + k |
dd |
| 查找并替换关键词 | Ctrl + f, 随后会显示组件 |
/关键词; * 查找下一个 |
| 光标移到行首或行末 | Home 行首,End 行末 |
行首 ^; 行末 $ |
| 在上(下)方复制当前行 | Shift + Alt + 方向键 |
光标移到行首; yy 复制; p 下方粘贴; P 上方粘贴 |
| 跳转源码 | 按住 Ctrl, 鼠标点按项目,在当前页跳转源码;同时按住 Alt,在新标签页跳转 |
光标到项目名,% |
| 调出终端调试 | Ctrl + ` 或 Ctrl + Shift + ` |
使用 Tmux |
除此之外,我还收获了几个 Vim 特有的功能,一并整理如下。
Vim 一些常用快捷键
| 功能需求 | Vim 方式 |
|---|---|
| 删除两行之间的换行符,当前行和下一行合并为一行 | J |
| 光标向前移动一个单词 | b |
| 光标向后移动一个单词 | w |
| 清空整个文件 | ggdG 或 :%d |
对于边写代码边调试的需求,可以另外引入一个软件来解决:Tmux。这个软件可以将创建多个终端会话,并且在一个屏幕中分屏显示,很好用,基本的使用方法如下。
配合 Tmux 开启多个会话
| 功能需求 | 命令 |
|---|---|
| 新建一个会话 | tmux new -s 会话名称 |
| 左右分屏 | tmux split-window -h |
| 上下分屏 | tmux split-window |
| 切换会话 | Ctrl + b; 方向键 |
就算花再多钱,买再好的设备,最终干活的还是人,可见一味地升级设备并不能解决问题。
SSH + Vim + Tmux 说是最省资源的方案也不为过,只是还需要熟练。