×

vi 命令手册

vi/vim 命令大全

vim 命令手册

Vim 关于Vim 安装Vim 用法Vim 配置vim 配置.vimrc方案vim 配置.vimrc方案1vim 配置.vimrc方案2Vim 文件合并Vim 技巧和建议Vim 插件Vim 参阅

Vimscript 编程参考

Vimscript 前言Vimscript 鸣谢Vimscript 预备知识Vimscript 打印信息Vimscript 设置选项Vimscript 基本映射Vimscript 模式映射Vimscript 精确映射Vimscript LeadersVimscript 编辑你的Vimrc文件Vimscript AbbreviationsVimscript 更多的MappingsVimscript 锻炼你的手指本地缓冲区的设置和映射Vimscript 自动命令Vimscript 本地缓冲区缩写Vimscript 自动命令组Operator-Pending 映射Operator-Pending 更多映射Vimscript 状态条Vimscript 负责任的编码Vimscript 变量Vimscript 变量作用域Vimscript 条件语句Vimscript 比较Vimscript 函数Vimscript 函数参数Vimscript 数字Vimscript 字符串Vimscript 字符串函数Vimscript Execute命令Vimscript Normal命令Vimscript 执行normal!Vimscript 基本的正则表达式Grep 运算符Operator 第1部分Grep 运算符Operator 第2部分Grep 运算符Operator 第3部分Vimscript 列表Vimscript 循环Vimscript 字典Vimscript 切换Vimscript 函数式编程Vimscript 路径Vimscript 创建一个完整的插件Vimscript 基本插件配置方式用Pathogen配置插件Vimscript 检测文件类型Vimscript 基本语法高亮Vimscript 高级语法高亮Vimscript 基本折叠Vimscript 高级折叠Vimscript 段移动原理Vimscript Potion段移动Vimscript 外部命令Vimscript 自动加载Vimscript 文档Vimscript 发布Vimscript 还剩下什么?

Vim 技巧和建议


技巧和建议

显示行号

使用:set number来显示行号。默认显示绝对行号,可用:set relativenumber开启相对行号。

使用:_行号_ or _行号_gg跳转到指定行号。跳转都记录在一个跳转列表中,更多细节参考:h jump-motions

拼写检查

Vim有拼写检查的功能,用下面的命令开启:

set spell

Vim默认只安装了英语字典。其他的字典可在[官方软件仓库][17]通过搜索vim-spell而寻得。检查可用语言包:

# pacman -Ss vim-spell

额外的字典可以从[Vim's FTP archive][18]获取。把下载的字典文件存入~/.vim/spell/,并用 :setlocal spell spelllang=_en_us_ (将_en_us_ 换成所需的字典的名称)开启。

行为 快捷键
下一个拼写错误 ]s
上一个拼写错误 [s
拼写纠正建议 z=
将单词添加到用户正确字典 zg
将单词添加到内部正确字典 zG
将单词添加到用户错误字典 zw
将单词添加到内部正确字典 zW
重新进行拼写检查 :spellr

小贴士:

  • 如果需要针对两种语言进行拼写检察(例如英语与德语),在~/.vimrc/etc/vimrc中添加set spelllang=_en,de_并重启Vim即可。

  • 使用用于进行文件类型检测的FileType插件和自建规则,可以对任意文件类型开启拼写检查。例如,要开启对扩展名为.txt的文件的拼写检查,创建文件/usr/share/vim/vimfiles/ftdetect/plaintext.vim,添加内容autocmd BufRead,BufNewFile *.txt setfiletype plaintext,然后在~/.vimrc/etc/vimrc添加autocmd FileType plaintext setlocal spell spelllang=en_us,重启vim即可。

  • 如果想只对LaTeX(或TeX)文档起用拼写检查,在~/.vimrc/etc/vimrc添加autocmd FileType **tex** setlocal spell spelllang=_en_us_,重启Vim即可。至于非英语语言,替换上述语句中的en_us为相应语言代码即可。

记录光标位置

Vim可以记录上次打开某一文件时的光标位置,并在下次打开同一文件时将光标移动到该位置。要开启该功能,在配置文件~/.vimrc中加入以下内容:

augroup resCur
  autocmd!
  autocmd BufReadPost * call setpos(".", getpos("'""))
augroup END

另见:[Vim Wiki上的相关内容][19]。

用 vim 替代 vi

创建一个alias,如下:

alias vi=vim

或者,如果你想输入sudo vi并得到vim, 安装vi-vim-symlinkAUR,它将移除vi并用一个符号链接vim代替。

DOS/Windows回车问题

打开MS-DOS或Windows下创建的文本文件时,经常会在每行行末出现一个^M。这是因为Linux使用Unix风格的换行,用一个换行符(LF)来表示一行的结束,但在Windows、MS-DOS中使用一个回车符(CR)接一个换行符(LF)来表示,因而回车符就显示为^M

可使用下面的命令删除文件中的回车符:

:%s/^M//g

注意,^代表控制字符。输入^M的方法是按下Ctrl+v,Ctrl+m

另一个解决方法是,安装 dos2unix,然后执行 dos2unix <文件名>

gVim窗口底部的空格

如果窗口管理器设置为忽略窗口大小渲染窗口,gVim会将空白区域填充为GTK主题背景色,看起来会比较难看。

解决方案是调整gVim在窗口底部保留的空间大小。将下面的代码加入 ~/.vimrc中:

set guiheadroom=0

注意:如果将其设为0,将无法看到底部的水平滚动条。


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)