在开始这个小节前,先来想像两个情况:

  • 当我有一个文件非常的大,我查阅到后面的数据时,想要“对照”前面的数据, 是否需要使用 [ctrl]+f 与 [ctrl]+b (或 pageup, pagedown 功能键) 来跑前跑后查阅?

  • 我有两个需要对照着看的文件,不想使用前一小节提到的多文件编辑功能;

在一般窗口接口下的编辑软件大多有“分区窗口”或者是“冻结窗口”的功能来将一个文件分区成多个窗口的展现, 那么 vim 能不能达到这个功能啊?可以啊!但是如何分区窗口并放入文件呢? 很简单啊!在命令行界面输入“:sp {filename}”即可!那个 filename 可有可无, 如果想要在新窗口启动另一个文件,就加入文件名,否则仅输入 :sp 时, 出现的则是同一个文件在两个窗口间!

让我们来测试一下,你先使用“ vim /etc/man_db.conf ”打开这个文件,然后“ 1G ”去到第一列,之后输入“ :sp ” 再次的打开这个文件一次,然后再输入“ G ”,结果会变成下面这样喔:

图9.3.7、vim 的窗口分区示意图

万一你再输入“ :sp /etc/hosts ”时,就会变成下图这样喔:

图9.3.8、vim 的窗口分区示意图

怎样?帅吧!两个文件同时在一个屏幕上面显示,你还可以利用“[ctrl]+w+↑”及“[ctrl]+w+↓” 在两个窗口之间移动呢!这样的话,复制啊、查阅啊等等的,就变的很简单啰~ 分区窗口的相关指令功能有很多,不过你只要记得这几个就好了:

多窗口情况下的按键功能
:sp [filename] 打开一个新窗口,如果有加 filename, 表示在新窗口打开一个新文件,否则表示两个窗口为同一个文件内容(同步显示)。
[ctrl]+w+ j [ctrl]+w+↓ 按键的按法是:先按下 [ctrl] 不放, 再按下 w 后放开所有的按键,然后再按下 j (或向下方向键),则光标可移动到下方的窗口。
[ctrl]+w+ k [ctrl]+w+↑ 同上,不过光标移动到上面的窗口。
[ctrl]+w+ q 其实就是 :q 结束离开啦! 举例来说,如果我想要结束下方的窗口,那么利用 [ctrl]+w+↓ 移动到下方窗口后,按下 :q 即可离开, 也可以按下 [ctrl]+w+q 啊!

鸟哥第一次玩 vim 的分区窗口时,真是很高兴啊!竟然有这种功能!太棒了! ^_^

results matching ""

    No results matching ""