美文网首页
Vim的使用方法

Vim的使用方法

作者: 何必遠方 | 来源:发表于2017-06-30 09:20 被阅读0次

    Vim几句话介绍
    Vim是Unix系统上的文本编辑软件(你该不会不知道什么是文本编辑软件吧!),在windows上也有移植的版本,方便了Windows上的用户。Vim的文本编辑功能非常强大,强大的有些让人吃惊!并且非常稳定,你的文档不用经常存盘,它不会出现类似于“程序内部错误!”等等现象,程序曾经让我欲哭无泪啊!

    开始使用Vim吧!
    启动:在命令提示符后输入vim,然后回车,就启动了vim,然后进入vim的界面。如果在命令提示符后输入vim ### 并回车,则表示希望编辑###这个文件,例如vim .xinitrc,则编辑.xinitrc这个文件,如果这个文件不存在,则表示新建这个文件并编辑。好了,你赶快试试吧,然后我将告诉你如何输入一些文本。

    vim的工作模式
    别着急,要想输入文本,要先熟悉一下Vim的工作模式。(我第一次就是在输入了vim后,就开始劈里啪啦的输入,可是怎么没反映啊!?)
    vim的工作模式有三种,分别是正常(Normal)模式、插入(insert)模式和可视(visual)模式。这就是说Vim在不同的模式下工作的表现形式是不同的。在进入vim后,默认的模式是Normal模式,这时可以输入一些命令,不过别急,咱们先输入一些文本看看。在Normal模式下,单击i或者a,则进入insert模式,这时你可以输入了。为了后面的学习,你多输入些内容。输入结束后,单击Esc键,回到Normal模式,然后输入:w filename,如果你启动vim时已经包含文件名,输入:w(注意包括冒号),则将文件存盘。
    OK,恭喜你!你现在已经能够启动vim,输入内容并存盘了。

    下面我们我们简单介绍一下模式的内容。
    前面说过,vim在不同的模式下有不同的工作方式,例如输入文本内容在insert模式下,其他进行修改、删除、拷贝、粘贴等在Normal模式下。因此当你发现输入错误想修改时必须切换到Normal模式下进行,是不是很麻烦啊!我当初也是这样认为的,但是你一旦习惯后,你就会觉得它的好处了!切换到Normal模式就是单击Esc键,vim的屏幕下面有当前工作模式的提示。进入输入文本的insert模式是输入i或者a。i和a这俩个指令的区别就是i代表在光标前插入字符,a代表在光标后插入字符,就是这么简单,OK,如何用就看你的了!

    编辑文本
    进行文本编辑,应该是Unix初学者最开始碰到的问题。Unix下的默认配置文件经常要修改的啊!所以掌握编辑方法是非常重要的。并且本文的目的就是让初学者掌握简单而又实用的编辑、修改命令。至于其他的高级使用方法,可以参考其他书籍!
    OK,咱们就开始学习吧!

    移动光标是最基本的,下面都是移动光标的命令,看看那个好记,就记住吧。
    在Noraml模式下,键盘上的h、j、k、l 分别代表左、下、上、右移动光标。OK,在你刚才编辑的文档中试试移动光标,爽吧!再也不用移动手指到那4个方向键了!
    什么?你说这4个键一次只能移动一个字符和一行,太慢了!OK,下面几个快速移动光标的方法你有精力就记住吧!

    一次移动一个字(word)
    w和b指令一次分别向后/向前移动一个字。
    注:(1)可以用数字来进行移动多个Word,例如3w,2b就是分别向右(向后)移动3个word, 和2个word。
    (2)中文因为是连在一起的,所以如果没有空格或者数字、英文标点的话,将视为一个word。
    移动到一行的头和尾
    ^ :行头 $ :行尾
    注:行尾$,可以用3$移动到下面第3行尾,行首^ 不支持数字。
    如何跳到指定行?
    nG
    注:(1)n表示第n行,例如10G,则跳到第10行,且光标在行首。
    (2)如果没有n,只有G,则跳到最后一行,且光标在行首。

    我想用G命令,但是如何知道第几行?OK,在Normal模式下输入:set number就可以显示行号了,如果想关闭行号,则输入:set nonumber。

    好了,移来移去,来点别的吧,例如如何修改,复制。OK,GO!
    先来看看如何进行修改吧。Word和其他的一些文本编辑器都是编辑和输入混杂在一起的,输入的同时就可以修改。而Vim的这些编辑指令必须在Normal模式下,切记!

    修改命令

    删除:
    在word等编辑器下,如果输入错了,我们可以用Delete和Backspace键删除,然后再重新输入,vim也可以这样,x就是删除光标所在处的字符(char),dw就是删除一个字(word),然后在输入i或者a进行新内容的输入。

    删除整行如何操作?dd就可以删除光标所在行。

    那删除光标所在处到本行的结尾呢?D或者d$就可以了。还记得$吗?代表什么来着?

    删除结束还要在输入i 或者a 才能输入真麻烦!有没有删除后就进入inster模式的指令呢?当然有,就是关于c的指令,cw是删除一个Word,cc删除整行,c$和C都是删除光标所在处到本行的结尾。你可能已经明白了,其实c的指令是修改指令。

    好了,你是否已经把内容删干净了,没有可以编辑的内容了呢?呵呵,没关系,u指令可以让你恢复删除的内容。在Normal模式下,输入u,就恢复了,重复输入u就把整个内容都恢复了,u就是其他文本编辑器里的Undo的指令,对应的Redo指令就是[Ctrl]r。需要注意的是在不同模式下,u 的含义是不同的。如果在instert模式下输入然后在Normal模式下执行u,则会删除上一次输入的所有内容。如果是在 Normal 模式下执行其他的指令例如x,然后再执行u,就恢复一次 Normal 下的指令。Redo也一样。

    OK,让我们来学习更加重要的功能吧!

    剪切、复制、粘贴等相关
    剪切、复制等这些指令都是同块(block)相关的操作,因此无论如何都要先了解一下块的基本知识。vim里用mark来定义一个标记,然后用y指令把指定的内容进行复制到缓存中,然后用p来粘贴。!@#¥%^&,天啊,太复杂了。没关系,咱们用个例子来说明吧,很简单的!
    例如下面的文本:
    this is the first line
    this is 2nd line
    我们可以先把光标移动到第一行的行首,然后切换到Normal模式(还记得如何切换吗?),输入ma(表示标记a),然后移动光标到第2行的2nd处,输入y`a(表示把标记a到光标所在处复制到缓存中),然后移动光标到你希望粘贴的地方输入p(表示粘贴)。OK你已经完成了最基本的复制、粘贴功能。

    下面我们看看这几个命令(m,y,p)的情况。
    m指令。m指令非常简单,他就是做标记,你可以做从a到z的26个标记例如ma,mb,mc等。他在很多指令中会用到,例如删除,这本入门就不介绍了,你可以参考其他书籍。
    y指令表示yank,其实就是拷贝。不过他有其他的指令形式,例如yy复制整行。
    p指令就是粘贴。例如上面的例子。
    OK,既然你知道了yy指令,那希望复制一行并粘贴的话,我想你应该知道如何操作了吧(yy,p)。

    也许你用m做标记感觉不是很舒服,OK,我们来个可视的块的选择方法。那就是v指令。
    记得在其他的文本编辑器里我们可以用鼠标选择一些文本,然后copy,paste,在vim里一样可以,当然希望用鼠标最好用gvim。现在来试试v的指令吧。
    在Normal模式下,输入v(看到屏幕下面的visual模式提示了吗?),然后移动光标,看到被选择的内容了吧 。选择好了,你可以输入d把他们删除,也可以输入y将他们复制到缓存中,然后用p来粘贴到你希望的地方。什么多次粘贴,多按几次p就可以了,也可以输入#p,#代表连续粘贴的次数,例如粘贴100次,就输入100p。
    OK,我想你一定喜欢上v命令了,还有V和[CTRL]v呢!V(大写)是表示可视行,就是代表你移动光标时,选择的范围是行,不像小写的v是一个字符。另外[CTRL]v是选择方块,你可以试试,就清楚了!

    好了,基本的东西就这些了,当然还有几个也不错的命令东东,很简单,它能高效的配合你上面的基本工作,那还犹豫什么!开始吧!

    连接行
    你在编辑的时候,一定会碰见希望把两行或者多行合并成一行的情况。好,vim已经给你设计好了,就是J指令,注意是大写(j是什么?)。J表示将光标所在行和下一行合并成一行,如何合并多行,可以输入#J,#代表希望合并的行数,例如3J。

    插入新行
    怎么插入新行?用o或者O指令(不是零)。o是在当前行下插入新行,大写O是在当前行上插入新行。真是简单,而且直接进入instert模式,不错,设计的很贴心。

    如何在一行内查找一个字符(或者一个中文单字)?
    使用fx,Fx,tx,Tx指令。其中x代表欲查询的字符。他们的区别是:fx(向右)查x,且光标停在x上,Fx(向左)查x,且光标停在x上,tx(向右)查x, 且光标停在x前,Tx(向左)查x, 且光标停在x后。

    如何查找字符串?
    使用/xxxxx。其中×××××为需查找的内容。当查到多个内容时,可以输入n来将光标定位到下一个位置。此外查找命令有历史记录功能,可以输入/,然后用光标上、下键来切换已经查过的内容。要注意的是几个特殊的字符必须在前面加。这几个字符为:.*[]^%/?~$。如果想往回查找,则输入?,改变查找顺序,再输入n来进行定位。当然也可以用N来反向查找。

    如何翻页(半页)?
    使用[ctrl]u和[ctrl]d。其中u为向上翻半页,d为向下翻半页。

    如何插入一些特殊的字符,例如:∮等?
    使用:digraphs来显示特殊字符的列表,然后输入CTRL+K+显示出来的2个字符来输入特殊字符,例如输入CTRL+K+I+o,则为∮。

    哦!忘记了告诉你如何退出vim!
    在Normal模式下,输入ZZ就可以保存文档并退出。
    在Noraml模式下,输入:q!可以强制退出,就是不保留修改退出。

    好了,享受Vim吧!

    1、vi的基本概念
      基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

    1. 命令行模式command mode)
        控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。
    2. 插入模式(Insert mode)
        只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
    3. 底行模式(last line mode)
        将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。
      不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。
      2、vi的基本操作
      a) 进入vi
        在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:
         $ vi myfile

    不过有一点要特别注意,就是您进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫,把自己气个半死,所以进入vi后,先不要乱动,转换到「插入模式(Insert mode)」再说吧!
    b) 切换至插入模式(Insert mode)编辑文件
      在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。
    c) Insert 的切换
      您目前处于「插入模式(Insert mode)」,您就只能一直输入文字,如果您发现输错了字!想用光标键往回移动,将该字删除,就要先按一下「ESC」键转到「命令行模式(command mode)」再删除文字。
    d) 退出vi及保存文件
      在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如:
    : w filename (输入 「w filename」将文章以指定的文件名filename保存)
    : wq (输入「wq」,存盘并退出vi)
    : q! (输入q!, 不存盘强制退出vi)

    3、命令行模式(command mode)功能键
    1). 插入模式
      按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
      按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
      按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
    2). 从插入模式切换为命令行模式
      按「ESC」键。
    3). 移动光标
      vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格。
      按「ctrl」+「b」:屏幕往“后”移动一页。
      按「ctrl」+「f」:屏幕往“前”移动一页。
      按「ctrl」+「u」:屏幕往“后”移动半页。
      按「ctrl」+「d」:屏幕往“前”移动半页。
      按数字「0」:移到文章的开头。
      按「G」:移动到文章的最后。
      按「$」:移动到光标所在行的“行尾”。
      按「^」:移动到光标所在行的“行首”
      按「w」:光标跳到下个字的开头
      按「e」:光标跳到下个字的字尾
      按「b」:光标回到上个字的开头
      按「#l」:光标移到该行的第#个位置,如:5l,56l。
    4). 删除文字
      「x」:每按一次,删除光标所在位置的“后面”一个字符。
      「#x」:例如,「6x」表示删除光标所在位置的“后面”6个字符。
      「X」:大写的X,每按一次,删除光标所在位置的“前面”一个字符。
      「#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符。
      「dd」:删除光标所在行。
      「#dd」:从光标所在行开始删除#行
    5). 复制
      「yw」:将光标所在之处到字尾的字符复制到缓冲区中。
      「#yw」:复制#个字到缓冲区
      「yy」:复制光标所在行到缓冲区。
      「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。
      「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。
    6). 替换
      「r」:替换光标所在处的字符。
      「R」:替换光标所到之处的字符,直到按下「ESC」键为止。
    7). 回复上一次操作
      「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次“u”可以执行多次回复。
    8). 更改
      「cw」:更改光标所在处的字到字尾处
      「c#w」:例如,「c3w」表示更改3个字
    9). 跳至指定的行
      「ctrl」+「g」列出光标所在行的行号。
      「#G」:例如,「15G」,表示移动光标至文章的第15行行首。
    4、Last line mode下命令简介
      在使用「last line mode」之前,请记住先按「ESC」键确定您已经处于「command mode」下后,再按「:」冒号即可进入「last line mode」。
    A) 列出行号
     「set nu」:输入「set nu」后,会在文件中的每一行前面列出行号。
    B) 跳到文件中的某一行
     「#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行。
    C) 查找字符
     「/关键字」:先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往后寻找到您要的关键字为止。
     「?关键字」:先按「?」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往前寻找到您要的关键字为止。
    D) 保存文件
     「w」:在冒号输入字母「w」就可以将文件保存起来。
    E) 离开vi
     「q」:按「q」就是退出,如果无法离开vi,可以在「q」后跟一个「!」强制离开vi。
     「qw」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。
    5、vi命令列表
    1、下表列出命令模式下的一些键的功能:
    h
    左移光标一个字符
    l
    右移光标一个字符
    k
    光标上移一行
    j
    光标下移一行
    ^
    光标移动至行首
    0
    数字“0”,光标移至文章的开头
    G
    光标移至文章的最后
    $
    光标移动至行尾
    Ctrl+f
    向前翻屏
    Ctrl+b
    向后翻屏
    Ctrl+d
    向前翻半屏
    Ctrl+u
    向后翻半屏
    i
    在光标位置前插入字符
    a
    在光标所在位置的后一个字符开始增加
    o
    插入新的一行,从行首开始输入
    ESC
    从输入状态退至命令状态
    x
    删除光标后面的字符

    x

    删除光标后的#个字符
    X
    (大写X),删除光标前面的字符

    X

    删除光标前面的#个字符
    dd
    删除光标所在的行

    dd

    删除从光标所在行数的#行
    yw
    复制光标所在位置的一个字

    yw

    复制光标所在位置的#个字
    yy
    复制光标所在位置的一行

    yy

    复制从光标所在行数的#行
    p
    粘贴
    u
    取消操作
    cw
    更改光标所在位置的一个字

    cw

    更改光标所在位置的#个字

    2、下表列出行命令模式下的一些指令
    w filename
    储存正在编辑的文件为filename
    wq filename
    储存正在编辑的文件为filename,并退出vi
    q!
    放弃所有修改,退出vi
    set nu
    显示行号
    /或?
    查找,在/后输入要查找的内容
    n
    与/或?一起使用,如果查找的内容不是想要找的关键字,按n或向后(与/联用)或向前(与?联用)继续查找,直到找到为止。

    对于第一次用vi,有几点注意要提醒一下:
    1、用vi打开文件后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。切换方法:在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。
    2、编辑好后,需从插入模式切换为命令行模式才能对文件进行保存,切换方法:按「ESC」键。
    3、保存并退出文件:在命令模式下输入:wq即可!(别忘了wq前面的:)


             (h,j,k,l,w,b等等)或者是指行号. 
    

    (这里#代表一个数字)

    执行n次后面的命令...
    : 进入ex模式
    ) 下一句
    ( 上一句
    } 下一段
    { 上一段
    ]] 下一节
    [[ 上一节
    0 行的开头
    $ 行的末尾
    ^ 行的第一个非空白字符

    •         下一行的开头 
      
    •         上一行的开头 
      

    (空格) 下一个字符
    (回车) 下一行
    / 向前搜索
    ? 向后搜索
    % 查找当前小(中,大)括号的匹配字符
    , 逆向重复上一个f,F,t或T操作
    ; 重复上一个f,F,t或T操作
    . 重复上一个操作
    ` 转到标记处
    ' 转到标记所在行的开头
    `` 查找前回到上一个做标记的地方
    '' 查找前回到上一个做标记所在行的开头
    ~ 切换字符的大小写
    " 保存到寄存器中
    !! 重复上一次SHELL命令
    ! 把后面的文本送给命令, 取代输出(例如,
    !}fmt把当前的段落

    送给命令fmt处理,然后用fmt返回的东西替换输出.)

           右移当前段落一个移动宽度(shiftwidth) 
    

    << 左移当前段落一个移动宽度(shiftwidth)

    %
    从当前到匹配小(中,大)括号之间的文本右移
    <%
    从当前到匹配小(中,大)括号之间的文本左移
    (似乎漏了一个符号|, 移动到某一列----译注)
    a 在当前位置之后添加
    A 在当前行的末尾添加
    ^a 没有使用
    b 上一个单词的开头
    B 上一个单词的开头,忽略标点符号
    ^b 上移一屏
    c 覆盖...
    C 覆盖到行末尾
    ^c 终止插入模式,在命令模式没有用
    d 删除...
    D 删除到行末尾
    ^d
    下移半屏,如果在插入模式下则移到上一个移动宽度(ShiftT-ab)处

    e 单词的末尾
    E 单词的末尾,忽略标点符号
    ^e 屏幕下卷一行
    f 查找...
    F 向后查找...
    ^f 下移一屏
    g 未用
    G ...跳至[缺省是到文件末尾]
    ^g 显示状态栏
    h 左移
    H 屏幕上的第一行
    ^h 在插入模式下是退格,命令模式下是左移
    i 在当前的位置前面插入
    I 在本行的第一个非空白字符前面插入
    ^i 插入模式下是制表键,命令模式下未用
    j 下移
    J 把下一行合并到本行
    ^j
    命令模式下是下移,插入模式下是建一个新行
    k 上移
    K 未用
    ^k 未用
    l 右移
    L 屏幕中的最后一行
    ^l 重绘屏幕
    m 把当前位置标记到寄存器中
    M 屏幕的中间行
    ^m 回车
    n 重复上次查找
    N 逆向重复上次查找
    ^n 命令模式下是下移
    o 在当前行的下面建一个新行
    O 在当前行的上面建一个新行
    ^o 未用
    p 在当前行的下面粘贴
    (译注--应为在当前位置的后面粘贴)
    P 在当前行的上面粘贴
    (译注--应为在当前位置的前面粘贴)
    ^p 命令模式下是上移
    q 未用
    Q 退出并且启动ex
    ^q 未用
    r 覆盖当前的字符
    R 在插入模式下一直覆盖字符
    ^r 在命令模式下面重绘屏幕
    s 替换
    S 替换整行
    t 到...
    T 向后到...
    ^t 移到下一个移动宽度(shifttab)处
    u 撤消上一次操作
    U 撤消对本行的所有修改
    ^u 上移半屏
    v 未用
    V 未用
    ^v 未用
    w 下一个单词的开头
    W 下一个单词的开头,忽略标点符号
    ^w
    命令模式下未用,在插入模式下是到上一个单词的开头处

    x 删除当前字符
    X 删除前一个字符
    ^x 未用
    y 复制...
    Y 复制整行
    ^y 屏幕上卷一行
    z 重新配置当前行周围的屏幕
    ZZ 保存之后退出
    ^z 未用

    (译注--在命令模式下,^z执行了UNIX暂停操作)

    6.1 - 命令模式的输入选项(:命令)
    (注: 这不是一个规范的列表,,
    我只是列出了一些最重要的命令)
    :r <文件> 把<文件>读入到当前文档
    :r !<命令> 把<命令>的输出插入到当前文本中
    :nr <文件> 把<文件>插入到第n行
    :!<命令> 运行<命令>,然后返回
    :sh 转到SHELL
    :so <文件> 读取<文件>,再执行文件里面的命令
    (译注--文件中的命令应该都是一些ex命令)
    :x 保存之后退出
    :wq 保存之后退出
    :l1,l2w
    <文件>把第l1和第l2行之间的文本写到<文件>中去,如果没-有指定<文件>,

    vi就假定是当前文件,如果没有指定l1,l2,就假定是整个文-件(就成了:w)

    :w >> <文件> 添加到<文件>末尾. 也可以使用行号
    :w! 覆盖当前文件
    :q 退出
    :q! 不存盘就退出
    :e <文件> 不离开vi编辑<文件>
    :e! 重新编辑当前文件,忽略所有的修改
    :n 编辑下一个文件
    :e +n <文件>
    从第n行开始编辑<文件>,如果超过了末尾,就从末尾开始编辑

    :e#
    编辑替换文件(如果使用了命令:e<文件>,替换文件就指的是原-始文件)

    :args 显示所有要编辑的文件
    :rew 重新回到第一个编辑的文档
    :map m n 创建一个宏(使 m 做 n)
    :map! m n 创建一个插入模式的宏(使 m 做 n)
    :unmap m 删除宏m
    :unmap! m 删除插入模式的宏m
    :ab <1> <2> 缩写,敲<1>的时候用<2>取代
    :unab <1> 取消缩写<1>
    :set <选项> 设置<选项>...

    6.2 - 设置选项(set)
    可以使用括号中的缩写形式. 语法:
    :set <选项> <参数> (如果需要参数的话)
    也可以在一行中指定多个选项
    :set <选项>? 显示出当前这个选项的参数值
    :set all 则显示所有的选项值
    对那些无须参数的选项来说,使用:set
    no<选项>就可以把它给关了

    选项: 缺省值: 含义:
    autoindent (ai) noai
    使新行自动缩进,和上(下)行的位置对齐
    autoprint (ap) ap
    每条命令之后都显示出修改之处
    autowrite (aw) noaw
    在:n,:!命令之前都自动保存文件
    beautify (bf) nobf
    在输入的时候忽略所有的控制字符

    (除了制表键(tab),换行(newline),进纸(for-mfeed))
    directory= (dir=) /tmp 存放缓冲区的目录名
    edcompatible noedcompatible
    在替换的时候使用类ed的用法
    errorbells (eb) errorbells 出错的时候响铃
    exrc (ex) noexrc
    允许在主目录(home)外面之外放.exrc文件
    hardtabs= (ht=) 8 设置硬制表的边界
    ignore case (ic) noic 正规式里忽略大小写
    lisp nolisp 打开lisp模式
    list nolist
    显示所有的制表键和行的结尾
    magic magic
    可以使用更多的正规表达式
    mesg mesg 允许向终端发送消息
    number (nu) nonumber 显示行号
    open open 允许开放和可视化
    optimize (opt) optimize
    优化吞吐量,打印时不发回车
    paragraphs= (para=) IPLPPPQPPLIbp 设置{ & }的分界符
    prompt prompt
    命令模式下的输入给出:的提示符
    readonly (ro) noro
    除非用!号否则不准保存文件
    redraw noredraw 当编辑的时候重绘屏幕
    remap remap 允许宏指向其他的宏
    report= 5
    如果影响的行数>这个数的话就报告
    scroll 1/2 window
    下卷屏幕时滚动屏幕的数目,

    同样这也是z命令输出的行数(z 输出2倍滚屏的大小)
    sections= SHNHH HU
    定义节的末尾(当使用命令[[ 和 ]] 时)
    shell= (sh=) /bin/sh
    缺省的SHELL,如果设置了环境变量SHELL的话,就使用变-量
    shiftwidth= (sw=) 8
    当使用移动(shift)命令时移动的字符数
    showmatch (sm) nosm 显示{, }, (, ), [, 或者 ]
    的匹配情况
    showmode noshowmode
    显示你处在什么模式下面
    slowopen (slow)
    插入之后不要立刻更新显示
    tabstop= (ts=) 8
    设置制表停止位(tabstop)的长度
    taglength= (tl=) 0
    重要标记的字符个数(0表示所有的字符)
    tags= tag, /usr/lib/tags
    定义包含标记的文件路径
    term= 设置终端类型
    terse noterse 显示简短的错误信息
    timeout (to) timeout 一秒钟后键盘映射超时

    相关文章

      网友评论

          本文标题:Vim的使用方法

          本文链接:https://www.haomeiwen.com/subject/vvyecxtx.html