目录
前言安装简单的操作流程(开档->写入->存档->关闭)Vim指令其他前言
首先简短的介绍一下,简单来说你可以把vim想像成一般我们常用的Windows里面的.text
档的编辑器。vim是Linux作业系统下常用的一个文字编辑器,其功能多样,能让使用者不用操作滑鼠仅仅通过键盘来达到文字编辑,简简单单的完成平日的文字编辑工作,最重要的是在熟悉操作环境后可以让使用者开发和编辑的速度大幅提昇。
接下来的介绍会以Linux系统的环境为範例。
安装
在Ubuntu Linux系统中本身并不自带vim,需要我们自己手动下载。
用 Ctrl + Alt + T
开启终端机(terminal)。在terminal上输入sudo apt install vim -y
进行安装。系统会跟你确认当前身份,输入当前系统使用者的密码。(注:当前系统使用者的密码就是每次登入电脑要输入的那个密码)

简单的操作流程(开档->写入->存档->关闭)
开档
在terminal上输入 vim <档案名称>
(<档案名称>
可省略,如果档案本身存在它就会直接开启)
写入
我们刚进入vim时,是处于普通模式(在此模式下没办法输入),我们需要按i
跳转到编辑模式才可以开始书写(这个模式就是单纯的书写,也只能进行书写)。
存档
我们编辑完后按ESC
离开编辑模式跳回开档时的普通模式,然后直接输入:w
就会直接进行存档
关闭
在我们编辑完后,在普通模式下直接输入:q
vim就结束了,并跳回我们开档时terminal的画面。

Vim指令
以上谈到的是最基础的基本操作,接下来介绍一下vim的强大,对一般人来说vim的强大在于它的指令。
如果是刚刚接触vim,以下介绍的大概知道有这些功能就好,在日后使用和摸索下慢慢熟悉即可。
这边这介绍一下vim的几个原生基本模式,以及一些常用度比较高的指令。
这边模式乍看之下分很多种,但实际上使用时,只要在普通模式下直接输入下列指令即可。唯一比较特别的是Ex模式,但它其实就是可以一次执行多条下面所提到的指令。
以下指令(介于-
和:
之间的)只要不是在编辑模式下直接输入即可产生效果:
编辑模式转换
- i : 在游标位置进入编辑模式- I : 在游标行的第一个非空白字元进入编辑模式- o : 向下新增一行,并进入编辑模式- O : 向上新增一行,并进入编辑模式- [ESC] : 取消指令或退出编辑模式
游标移动
- gg : 移到第一行- G : 移到最后一行- <行数>G : 移动到第n行- 0 : 移动到该行最前面- $ : 移动到该行最后面- <字数>[Space] : 向右移动n个字元- <行数>[Enter] : 向下移动 n 行
标记与其相关操作(相当于圈选)
- v : 开始字串标记- V : 开始一行一行标记- d : 删除标记的内容- y : 複製标记的内容
複製
- yy : 複製游标行- yG : 複製游标行到最后一行- y1G : 複製游标行到第一行- y0 : 複製游标处到第一个字元
贴上
- p : 在下一行贴上複製或删除的内容- P : 在上一行贴上複製或删除的内容
删除
- dd : 删除游标行- dG : 删除游标行到最后一行- d1G : 删除游标行到第一行- d0 : 删除游标处到第一个字元
字串搜寻
- /<字串> : 向下搜寻字串- ?<字串> : 向上搜寻字串- /\c<字串> : 向下搜寻字串,不分大小写- ?\c<字串> : 向上搜寻字串,不分大小写- n : 继续下一个搜寻结果- N : 继续上一个搜寻结果- :<起始行>,<中止行>s/<原先字串>/<取代字串> : 从第n行到第n行将<原先字串>替换成<取代字串>
档案操作
- :w : 存档 (加 ! 表示强制存档)- :w <档案名称> : 另存新档- :wq : 存档并退出vim- :e <档案名称> : 编辑其它档案- :r <档案名称> : 读入档案内容,并加到游标行的后面- :n : 切换到下一个开启的档案- :N : 切换到上一个开启的档案- :set nu : 显示行号- :set nonu : 取消行号- :files : 列出所有开启的档案
分割画面
- :new : 新增水平视窗- :new <档案名称> : 新增水平视窗,并在新增的视窗载入档案- :vnew : 新增垂直视窗- :vnew <档案名称> : 新增垂直视窗,并在新增的视窗载入档案- [Ctrl] + W 鬆开后再按 [方向键] : 切换视窗- :only : 仅保留目前的视窗
其它
- u : 还原- . : 重覆上一个指令- !<指令> : 执行Linux指令,并显示执行结果- :q : 退出vim(加 ! 表示强制退出)
其他
这边先简单提一下,假设我们用vim开启<档案名称>
档,在你开启vim后就会在当前的目录下新建一个.<档案名称>.swp
,此时的档案是一个缓冲(buffer)的概念,vim会等到你执行存档操作才正式新建<档案名称>
档,同时在你离开vim后移除.<档案名称>.swp
,并保留原先已经存好的<档案名称>
。