美文网首页
vim 使用介绍

vim 使用介绍

作者: 命运总是颠沛流离 | 来源:发表于2021-02-28 14:06 被阅读0次

    vimrc

    syntax enable
    syntax on
    filetype on
    set nu
    set expandtab
    set autoindent
    set tabstop=2
    set incsearch
    set cursorline
    set background=dark
    colorscheme molokai
    highlight StatusLine cterm=none ctermfg=white ctermbg=red
    set laststatus=2
    set statusline=[%F]%y%r%m%*%=[Line:%l/%L,Column:%c][%p%%] "显示文件名:总行数,总的字符数"

    设置

    • 设置行号 :set nu
    • 取消行号 :set nonu
    • 设置搜索高亮 :set hlsearch
    • 取消搜索高亮 :set nohlsearch
    • 取消本次搜索高亮::noh

    查找

    • 搜索 /
    • 搜索下一个 n
    • 搜索上一个 N

    替换

    1. 替换当前行中的内容: :s/from/to/ (s 即 substitude)
    • :s/from/to/ : 将当前行中的第一个from,替换成to。如果当前行含有多个from,则只会替换其中的第一个。
    • :s/from/to/g : 将当前行中的所有from都替换成to。
    • :s/from/to/gc : 将当前行中的所有from都替换成to,但是每一次替换之前都会询问请求用户确认此操作。

    注意:这里的 from 和 to 都可以是任何字符串,其中 from 还可以是正则表达式。

    1. 替换某一行的内容: :33s/from/to/g
    • :.s/from/to/g : 在当前行进行替换操作。
    • :33s/from/to/g : 在第33行进行替换操作。
    • :$s/from/to/g : 在最后一行进行替换操作。
    1. 替换某些行的内容: :10,20s/from/to/g
    • :10,20s/from/to/g : 对第10行到第20行的内容进行替换。
    • :1,$s/from/to/g : 对第一行到最后一行的内容进行替换(即全部文本)。
    • :1,.s/from/to/g : 对第一行到当前行的内容进行替换。
    • :.,$s/from/to/g : 对当前行到最后一行的内容进行替换。
    • :'a,'bs/from/to/g : 对标记a和b之间的行(含a和b所在的行)进行替换。其中a和b是之前用m命令所做的标记。
    1. 替换所有行的内容
    • :%s/from/to/g : 对所有行的内容进行替换。

    复制剪切粘贴

    • yy 复制当前行
    • nyy 复制当前行以下 n 行
    • dd 剪切当前行
    • ndd 剪切当前行以下 n 行
    • p、P 粘贴在当前光标所在行下或行上

    删除

    • 删除当前字符 x
    • 删除光标所在处后 n 个字符 nx
    • 删除光标所在处到行尾内容 D
    • 删除光标所在行到文件末尾内容 dG
    • 删除指定范围的行 :n1,n2d

    插入

    • i :在当前光标前插入
    • I:在当前行的行首插入
    • a:在当前光标后插入
    • A:在当前行的行尾插入
    • o:在当前行的下面另起一行插入
    • O:在当前行的上面另起一行插入
    • s:删除当前光标的字符并开始插入
    • S:删除当前行的内容开始插入

    取消

    • u 取消上一步操作

    定位

    • $ 移至行尾
    • 0 移至行首
    • nG 到第 n 行
    • gg/G 到第一行/到最后一行

    使用系统命令

    • 1):!command
      不退出 vim,并执行 shell 命令 command,将命令输出显示在 vim 的命令区域,不会改变当前编辑的文件的内容
      例如
      :!ls -l
      特别的可以运行:!bash 来启动一个 bash shell 并执行命令,不需要退出 vim
    • 2):r !command
      将 shell 命令 command 的结果插入到当前行的下一行
      例如
      :r !date,读取系统时间并插入到当前行的下一行。
    • 3):起始行号,结束行号 !command
      将起始行号和结束行号指定的范围中的内容输入到 shell 命令 command 处理,并将处理结果替换起始行号和结束行号指定的范围中的内容
      例如
      :62,72 !sort,将 62 行到 72 行的内容进行排序
    • 4):起始行号,结束行号 w !command
      将起始行号和结束行号所指定的范围的内容作为命令 command 的输入。不会改变当前编辑的文件的内容
      例如
      :62,72 w !sort,将 62 行到 72 行的内容进行排序,但排序的结果并不会直接输出到当前编辑的文件中,而是显示在 vim 敲命令的区域

    相关文章

      网友评论

          本文标题:vim 使用介绍

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