• Vim:Vim入门级配置


    转:https://vimjc.com/vimrc-config.html

    Vim配置文件.vimrc

    Vim编辑器相关的所有功能开关都可以通过.vimrc文件进行设置。

    .vimrc配置文件分系统配置和用户配置两种。

    系统vimrc配置文件存放在Vim的安装目录,默认路径为/usr/share/vim/.vimrc。可以使用命令echo $VIM来确定Vim的安装目录。

    用户vimrc文件,存放在用户主目录下~/.vimrc。可以使用命令echo $HOME确定用户主目录。

    注意:用户配置文件优先于系统配置文件,Vim启动时会优先读取当前用户根目录下的.vimrc文件。所以与个人用户相关的个性化配置一般都放在~/.vimrc中。

    Vim基本配置

    默认情况下,Vim编辑器里既不显示行号,也没有语法高亮度、智能缩进。为了方便使用,基本的Vim配置选项一般都会包括:

    支持中文不乱码

    '设置编码'
    set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
    set termencoding=utf-8
    set encoding=utf-8
    

    与Vim编码有关的变量包括:encodingfileencodingtermencoding
    encoding选项用于缓存的文本、寄存器、Vim 脚本文件等;fileencoding选项是Vim写入文件时采用的编码类型;termencoding选项表示输出到终端时采用的编码类型。

    显示行号

    '显示行号'
    set nu
    set number
    

    nu是number的缩写,所以上面两个配置命令是完全等效的。

    突出显示当前行

    set cursorline
    set cul          'cursorline的缩写形式'
    

    突出显示当前列

    set cursorcolumn
    set cuc          'cursorcolumn的缩写形式'
    

    启用鼠标

    set mouse=a
    set selection=exclusive
    set selectmode=mouse,key
    

    Vim编辑器里默认是不启用鼠标的,也就是说不管你鼠标点击哪个位置,光标都不会移动。通过以上设置就可以启动鼠标,不过对于高级玩家来说,用Vim就是为了解放双方不用鼠标,所以这个设置可以根据个人爱好选择。

    显示括号匹配

    set showmatch
    

    设置缩进

    '设置Tab长度为4空格'
    set tabstop=4
    '设置自动缩进长度为4空格'
    set shiftwidth=4
    '继承前一行的缩进方式,适用于多行注释'
    set autoindent
    

    设置粘贴模式

    set paste
    

    在Vim中通过鼠标右键粘贴时会在行首多出许多缩进和空格,通过set paste可以在插入模式下粘贴内容时不会有任何格式变形、胡乱缩进等问题。

    显示空格和tab键

    set listchars=tab:>-,trail:-
    

    Vim编辑器中默认不显示文件中的tab和空格符,通过上面的配置可以获得以下的显示效果,方便定位输入错误。

    显示状态栏和光标当前位置

    '总是显示状态栏'
    set laststatus=2
    '显示光标当前位置'
    set ruler
    

    打开文件类型检测

    filetype plugin indent on
    

    Vim配置变更立即生效

    要让.vimrc变更内容生效,一般的做法是先保存 .vimrc 再重启vim,增加如下设置,可以实现保存 .vimrc 时自动重启加载

    '让vimrc配置变更立即生效'
    autocmd BufWritePost $MYVIMRC source $MYVIMRC
    

    Vim入门级基本配置就先介绍到这里了,更多Vim个性配置可参考vim教程网上的其他博客。

    附上我的一张Vim配置示意图

  • 相关阅读:
    java页面请求跑批处理sql的有关问题
    Linux下一个检查跑批是否成功的Shell
    redhat Linux5 安装vsftp .
    LINUX FTP简单配置
    java代理机制
    详细解析Java中抽象类和接口的区别
    抽象类和接口的区别
    SVN与Git比较
    浅谈存储过程和触发器
    存储过程,触发器,函数 学习总结
  • 原文地址:https://www.cnblogs.com/wbyixx/p/12072132.html
Copyright © 2020-2023  润新知