VIM技巧 配置 和 使用

基本命令:
    保存,    :w
    推出,    :q
    退出不保存,    :q!
 
在文件中导航(命令模式下):
    h 和 l 分别表示向左和向右
    k 向上移动光标
    j 向下移动光标
    移动到一行的开头,可以按 0
    移动到一行的末尾,可以按 $
    w 键将向前移动一个单词
    b 键将向后移动一个单词
    Ctrl-u 向上翻一页
    Ctrl-d 向下翻一页
    gg 可以将光标移动到文档中的第一行
    G 可以将光标移动到文档中的最后一行
 
编辑:
    i 可以在当前光标位置的前面进入到插入模式
    a 键可以进入到插入模式,但它将在光标当前位置之后添加文本
    A 键,那么您可以在该行的末尾输入文本,无论光标当前处于什么位置
    I 键(大写字母),您可以在一行的开头进行输入,即使您的光标位于该行的末尾
    在当前光标位置之前插入新的一行,可以按 O 键
    在当前光标位置之后插入新的一行,可以按 o 键
    
替换文本:
    r 键,它将删除光标位置的字符,并进入到插入模式以便输入单个替换的字符
    按 c 键,然后按 w 键,change word, 这个命令删除当前的单词,并进入到插入模式
 
删除文本:
    x 键,一次删除一个字符
    dw 键,delete word,一次删除一个单词
    要删除光标到一行末尾的文本,可以使用 d$
    要删除整行文本,可以按 dd
    J 键,将光标所在行的下面一行文本向上移动到光标所在行,而不会删除任何文本
 
剪切,复制,粘贴:
    按两次 y 键,可以复制整行文本
    按 y 键和 w 键,可以复制一个单词
    按 y 键和 $ 键,可以从当前光标位置开始复制该行文本
    小写的 p 键将数据粘贴到光标位置之后
    大写的 P 键将数据粘贴到光标位置之前
    要复制一行文本,可以使用 yy 命令,并使用 p 命令进行粘贴
    要剪切并粘贴一行文本,可以使用 dd 命令和 p 命令
大小写转换:
    gu   预转换为小写(还没有告诉vim要转换到什么地方为止)
    gU   预转换为大写
    guw   光标下的单词变为小写
    gUw   光标下的单词变为大写
交换:
    ddp 来交换两行
    xp 来交换两个字符
    
在 vi 命令前面加上数字:
    按 2键,按两次 d 键,然后按 p 键,一次剪切并粘贴两行文本
    在 p 命令前面加上数字 10,可以粘贴多行文本
    然后在 dd 前面加上数字 5,删除其中的几行文本
    按 30 键,然后按 l 键,这样可以将光标向右移动 30 个字符
    按 7 键,然后按 G 键,这样可以将光标移动到文件的第七行
    按 5 键,然后按 w 键,这样可以将光标移动到第五个单词
重复执行:
    . 键可以再次执行最后一条命令
搜索:
    按 / 键(斜杠键),再加上希望搜索的字符串,然后按 Enter 键
    ? 键可以像 / 键那样进行搜索,但它将反向而不是正向搜索文档
    * 键可以向后搜索光标所在位置的单词
    # 键可以向前搜索光标所在位置的单词
        第一次使用 * 或者 # 进行搜索之后,则可以使用 N 或 Shift-N 继续进行搜索
    :set ic  搜索时不区分大小写
    :set noic  搜索时区分大小写
    :set hlsearch   高亮显示
    :set nohlsearch   关闭高亮显示
 
在代码中跳转:
 
    % 键可以查找匹配的括号
    [{ 和 ]} 命令可以跳转到光标所在程序块的开头和结尾
    gd 来跳转到该变量(局部变量)的定义处
    gD 来跳转到该变量(全局变量)的定义处
    Ctrl-O 执行后退
    Ctrl-I 执行前进
    
查看变量:
    [i 命令可以快速察看光标所在位置的变量的定义
    [d 命令可以快速察看光标所在位置的宏的定义
    ga 可以看到光标下的字符的ASCII值
自动补全:    
    Ctrl-N或者Ctrl+P键,vim会在当前文档中查找匹配的单词并自动将输入补齐
    
撤销,重做:
    u 键以撤销上一个命令
    Ctrl-r 以重新执行该命令
 
外观:
    :set nu 显示行号   :set number
    :set nonu 命令关闭行号   :set nonumber
    :set ai   打开自动缩进   :set autoindent
    :set noai   关闭自动缩进   :set noautoindent
    :set tabstop=4   定义tab所等同的空格长度
    :set shiftwidth=4  把每级缩进设置为四个空格
    :set expandtab   把tabs转换成空格
    :set tw=100   设置文本行宽度
    :set fo+=mM   设置自动换行的条件
    :set cindent   使用C语言的缩进方式
    :set cinoptions    cinoptions=>4,n-2,{2,^-2,:2,=2,g0,h2,p5,t0,+2,(0,u0,w1,m1 shiftwidth=2 tabstop=8  GNU编码风格
    
举例:
    1、要组合使用您的 vi 技能,可以按 / 键,输入think,按 Enter,然后使用 cw 命令将这个单词更改为 know。 在完成操作之后,不要忘记按 Esc 键。如果您希望对第二行进行相同的操作,按 n 键以找到下一个 think,然后按 . 键将该单词更改为 know。
        
模式切换:
    返回命令模式:ESC
    
显示打开的文件
    :f
 
我的home目录下的.vimrc文件
syntax on
set tabstop=4
set softtabstop=4
set shiftwidth=4
set autoindent
set cindent
set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s
set nu

你可能感兴趣的:(配置,vim,技巧,使用,vimrc)