编辑器的神—Vi IMprove(Vim)之神配置—SpaceVim
JackMerryYoung · · 个人记录
编辑器的神—Vi IMprove(Vim)之神配置—SpaceVim
该文专门 diss Sublime 用户,为了防止被别的用户 diss,该文 不针对 Emacs 之类。
前言
我的同学一直骂 Vim,于是专出此文来表反对。
本文的目的就是为了振兴 Vim 党,不再被鄙视!
Vim 万岁!
放张图:
Sublime Text 被 Vim 踩在脚底下,绝对没问题!
Emacs 与 Vim 相互鄙视,不分上下。
VSCode 用户说:都是什么 lese
So,“VIM IS BEST”(SpaceVim 主页封面):
This is Vim.
Vim 入门(门槛)
-
能折腾
-
会折腾
-
爱折腾
Vim 入门
首先根据系统安装 Vim。
然后运行。
他会提醒救助乌干达儿童
他会提示你退出是 :q,所以我们退出。
在命令行内打 Vim <filename>,把 <filename> 替换成你想编辑的文件即可。
如果 <filename> 不存在,他会新建一个名为 <filename> 的文件。
好的,你现在学会如何打开、关闭 Vim 了。
So, 接下来讲点概念:
Vim 的模式
Normal Mode
然鹅这个模式不太普通
在该模式下,按 i 或 Ins 进入 Insert Mode,或者按 : 进入 Command Mode,按 v 进入 Visual Mode,按 R 进入 Replace Mode。
在任意模式下,可以按 Esc 进入该模式。
该模式在启用鼠标的情况下可以使用鼠标滚轮进行上下阅读代码。
Insert Mode
然鹅这个模式不是真 Insert
这个模式用来编辑文本,当你用鼠标选中部分文本时,会进入 Visual Mode,但是同下文所述,这是一种兼容的模式,实际上提示 Visual(Insert)。
在该模式下可以按 Ins 来进入 Replace Mode。
Visual Mode
然鹅并卵用
该模式就是来魔改代码的,简而言之就是单独的复制粘贴模式。
在该模式下选中代码,按 y 进行 Yank 操作,即提起。
在该模式或 Normal Mode 下将光标移动到代码任意处,按 p 进行 Paste 操作,即粘贴。
Replace Mode
这个是真的 Insert
这个模式用于进行非删除的代码替换。
在该模式下可以兼容 Visual Mode,当你启用了鼠标功能后即可,他会提示一种模式 Visual(Replace),便是如此。
在该模式下可以按 Ins 来进入 Insert Mode。(十分奇怪)
Command Mode
并不是指你可以像 Emacs 一样使用 Eshell,但其实也差不多
该模式用于使用 Vim 的命令或系统命令,这些命令大多以 : 开头,在这里列举几个常用的:
-
:q退出 -
:w写文件 -
:qa!强制退出(不保存) -
:w!强制写文件 -
:wq写文件并退出 -
:!<system_command>执行名为<system_command>的命令
总结一下,命令前 ! 表示执行系统命令,命令后 ! 表示强制执行。
那么两个 ! 可以叠加吗? 答案是不可以。
效果如下(:!g++ --version!):
简直神奇
另外,执行命令会引起 Vim 线程堵塞。
Vim 配置-SpaceVim
SpaceVim 中文官网
安装
首先根据你的系统,会有不同方式安装 SpaceVim:
Linux/MacOS
确保你电脑上有 cURL 工具。
使用 curl -sLf https://spacevim.org/cn/install.sh | bash 以安装。
Windows
下载脚本并运行。
安装要求
安装时要求 Git 与 Vim(或是 NeoVim)