admin 管理员组

文章数量: 887021

(本人第一次使用Vim ,如描述有误,欢迎大家多多指教。)
Vim是什么?
  是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。
六个大的常用模式:
普通(Normal)、可视(Visual)、选择(Select)、插入(Insert)、命令行(Command-line)、Ex模式。
还有六个小的组合模式,或者附加模式:
操作等待(Operator-pending)、替换(Replace)、可视替换(Visual replace)、插入普通(Insert normal)、插入可视(Insert visual)、插入选择模式(Insert select)。

vim 基础使用介绍

在文中出现“光标”词语。在此大概描述什么是光标?就是输入时有闪烁的小竖线叫光标。

一、光标移动/范围单位:
  • 字母(character):
    h 左边移动;
    j  下边移动;
    k 上边移动;
    l  右边移动;

  • 单词(word):
    w 前个单词;        b 后个单词;
    W 前个单词(跳过符号);   B 后个单词(跳过符号) ;
    e 单词尾端;

  • 行(line):
    0 行头(0 是数字零) ;
    $ 行尾;
    ^ 行头(非空白字母);

  • 段落(paragraph)、区块:(block)
    {  上一段;
    }  下一段;
    [{  区块头;
    ]}  区块尾;

  • 屏幕(screen)、档案(file)
    H 屏幕顶端; M 屏幕中间; L 屏幕底部;
    zt 卷至顶端; zz 卷至中间; zb 卷至底部;
    (备注:)
    ctrl键+B  上一页;
    ctrl键+F  下一页;
    gg  档头;
    G  档尾;
    mx  标记x;
    ‘x  跳至标记x(x前面是一个单引号);

  • 搜寻(search):
    *  向后搜索目前单词;
    #  向前搜索目前单词;
    fx  向后搜索字母;
    gd  跳至目前单词的定义位置;
    /x   从光标位置向上搜索x;
    ?x  从光标位置向下搜索x;
    n  下一个搜索结果;
    N  上一个搜索结果;

备注:
1、卷至,指使光标所在位置移动到屏幕的某个位置【顶部、中央、底部】(所有内容做位移)。
2、 x 指字符或字符串。

二、模式切换指令:
指令用途
esc键
ctrl键+[
进入normal mode;
ctrl键+v进入visual block mode;
v进入visual mode;
V进入visual line mode;
i进入insert mode;
R进入replace mode;
a在光标后附加;
A在光标行末附加;


三、动作指令:
指令用途指令用途
y复制(范围);d删除(范围);
c修改(范围);x删除(字母);
C修改至行末;D删除至行末;
P粘贴;J和下一行合并;
r替换(字母);.重复上一命令(. 是实点);
u回复上一命令;>两行缩进;
<两行反缩进;>>一行缩进;
<<一行反缩进;


四、EX指令:
指令用途指令用途
:w保存;:wq保存并退出;
:q退出;:q!强制退出;
:e x编辑档案x;:n打开新文件;
:h呼叫vim help;: 数字跳至指定行数(如 :25 )。


五、插入模式(insert mode)
指令用途指令用途
ctrl键 + N自动插入下个可能字;ctrl键 + P自动补齐上个可能字;
ctrl键 + X
ctrl键 + F
自动补齐可能档名;


六、分割窗口(split window)
指令用途指令用途指令用途
:vsp垂直分割窗口;:sp水平分割窗口;:diffs分割窗口并比较(diff)档案;



分割窗口,效果图:
分割窗口前:



分割窗口后:



先输入 ctrl键 + W,再按需求输入如下指令:

指令用途
p(来回)跳至前一个分割窗口;
l / L移动光标到右边的屏幕 / 移动分屏向右边移动
h / H移动光标到左边的屏幕 / 移动分屏向左边移动
k / K移动光标到上边的屏幕 / 移动分屏向上边移动
j / J移动光标到下边的屏幕 / 移动分屏向下边移动
w跳至下个分割窗口;
c关闭当前窗口;
q关闭当前窗口,如果只剩下最后一个窗口,则退出 Vim;
=所有的屏都有一样的高度;
+增加屏幕尺寸高度
-减少屏幕尺寸高度
< 或者 >屏幕尺寸宽度,但这可能需要最新的版本才支持。



ctrl键 + W c (关闭当前窗口),如何操作呢?
给大家演示:首先切换大写字母输入法,接着把ctrl键 和 W(大写)同时按键,显示^W (如图1,红色圈圈),然后切换小写字母输入法输入 c 。直接呈现结果(如图2)。
如图1:

如图2:

本文标签: 基础 vim