首页 > 其他分享 >如何配置Vimrc文件

如何配置Vimrc文件

时间:2023-04-27 22:22:28浏览次数:47  
标签:文件 set Vimrc 配置 vim 空格 vimrc Vim

image

如何配置Vimrc文件

发布时间: 2016-11-22 03:07:33

在炮制你自己的.vimrc配置时, 这里只有一个原则.

不要把任何你不理解的一行放到你的vimrc中.

互联网上有以吨计的入门手册, 诸如这篇文章. 它们之中包含各种令人惊叹的Hack技巧, 这可以记你的Vim更好, 但为了让你的环境更好完全从别人那儿照搬那些配置, 完全是 最糟糕 的做法.

真真切切地花一些时间来学习你的编辑器的构造, 其价值无可估量. 从投影仪上手抄下来通常会有且于增多的信息逐渐保留, 同样的道理, 将特性一个一个地添加到你的vimrc有助于提高你对Vim的总体理解程度.

因此, 这篇文章余下部分将会是我来解释我当前vimrc中的全盘使用的每一行, 希望你能在其中找到你此前没有见到的技巧. 但, 我的vimrc离完美还差得远. 我也一直在寻找可以使我的环境更好的东西添加进来, 所以如果你认为我遗漏了什么重要的东西, 敬请告之: @duogblackio.

我将按逻辑分成几个部分

  • 颜色
  • 空格与制表
  • UI配置
  • 搜索
  • 折叠
  • 自定义移动
  • 自定义Leader按键
  • Ctrlp设置
  • 启动配置
  • Tmux配置
  • Autogroups
  • 备份
  • 自定义函数
  • 组织
  • 折叠起来

这篇文章几乎肯定会落后于我最近的vimrc, 你可以在 github 上找到最新的vimrc版本.

颜色

colorscheme badwolf         " awesome colorscheme

颜色! 配色方案是主观的, 我当前是安顿在Steve Losh所写的badwolf上了. 我发现solarized难以至信的完整, 但也发现就我的品味而言它也那么点儿乏味. 我的大量的时间也是和 molokai 度过的. 并且我仍然认为 molokai 是一个非常好的配色方案, 只是当前更偏好 badwolf.

继续前进

syntax enable           " enable syntax processing

注释足以说清它的意思. 我将借这点时间, 尽可能地添加注释, 以避免你的vimrc没有此中的任何一行. 如果你像我一样, 文件写得很长, 基本上你不会一直记住每一行在做什么, 所以添加注释有助于你以后能知道这些都是什么鬼.

另外, 许多 vim 中的设置既有长名又有短名. 例如 background 和 bg 是一样的. 为了此后的可读性, 我强烈建议使用长名.

空格和制表符

要使 tabs/spaces 能像你期望那样正常工作, 你必须将如下像咒语一样的符号, 扔到你的vimrc中. 你可能对这串符号相当困惑, 所以这儿有让你快速进修的说明.

set tabstop=4       " number of visual spaces per TAB

tabstop 就是视觉上显示的一个 算作的空格个数. 所以, 当 vim 打开文件读取到一个 字符时, 就会使用这么多个空格来显示 .

set softtabstop=4   " number of spaces in tab when editing

编辑时一个 算作的空格数. 所以这既是你插入 时插入的空格数, 也是你用 backspace 移除的 (译注: 连续的) 空格数.

set expandtab       " tabs are spaces

expandtab 会将 转换为多个空格. 仅此而已. 所以 仅仅成为了 "插入4个空格" 的快捷键.

(以上几个配置)一起拿走吧, 这些选项是非常不错, 对于编辑那些偏好空格而不是 tab的语言, 因为这可以确保不会使用 . 我每天花大多数时间与python与bash打交道, 二者的规范中写明了要使用空格. 我喜欢它, 因为它意味着我的源代码在所有的机器上看起来都是一样的.

用户接口配置

这些选项会改变 vim 中那此散乱的视觉材料.

set number              " show line numbers

显示行号, 不解释.

set showcmd             " show command in bottom bar

showcmd 显示在最右下角展示最近输入的命令. 我虽然在这里设置了, 但实际上由于我使用powerline插件(稍后我们会涉及到), 所以在我的vim中找不到这一行的.

set cursorline          " highlight current line

cursorline 会突出显示(或加下划线, 取决于你的本色方案)你的光标当前所在水平行. 我发觉当你 vim 的多个窗口来回切换或离开 vim 后再切换回来, 这样更容易找到离开时那一行.

filetype indent on      " load filetype-specific indent files

这既开启文件类型检测, 又开启基于此检测的与语言相关的缩进文件. 对于我来说, 这意味着, 每当我打开一个 *.py 文件, python 的缩进文件即 ~/.vim/indent/python.vim 将会被加载.

set wildmenu            " visual autocomplete for command menu

这是一个相当酷的特性, 我以前都不知道Vim有它. 你知道 Vim 会自动补全类似文件名的东西, 举例子, 运行 :e ~/.vim? 那么它将会提供一个所有匹配项的图形菜单, 如果你开启了 wildmenu, 你就可以循环遍历它们.

set lazyredraw          " redraw only when we need to.

Vim 喜欢重绘屏幕, 即便是在它根本不必这样做的期间内 – 比如在宏(回放)的期间. 这告诉 Vim 不要费神地在这些场景下重绘屏幕, 以让宏更快.

set showmatch           " highlight matching [{()}]

当你的光标移动到 类似圆括号(译注: <([{都算)字符时, 与之配对的另外一个也会高亮显示.

标签:文件,set,Vimrc,配置,vim,空格,vimrc,Vim
From: https://www.cnblogs.com/lywon/p/17360406.html

相关文章

  • 思科设备基本配置命令
    1.console口设密码R1(config)#lineconsole0R1(config-line)#loginlocalR1(config-line)#loginR1(config-line)#password1232.console口设用户名和密码R1(config)#lineconsole0R1(config-line)#loginlocalR1(config-line)#exitR1(config)#usernameabcpassword1233.查......
  • 基于基于XML配置方式声明切面
    知识点:【//普通的java类publicclassLogPrint{publicvoiddoAccessCheck(){}定义前置通知publicvoiddoReturnCheck(){}定义后置通知publicvoiddoExceptionAction(){}定义例外通知publicvoiddoReleaseAction(){}定义最......
  • 文件上传下载-SpringMvc
    进行文件上传时,表单需要做的准备:1.请求方式为POST:<formaction=”uploadServlet”method=”post”/>2.使用file的表单域:<inputtype=”file”name=”file”/>3.使用multipart/form-data的请求编码方式:<formaction=”uploadServlet”type=”file”name=”file”metho......
  • nginx+uwsgi+django安装配置
    一、安装Nginxsudoapt-getinstallnginx更改/etc/nginx/sites-enabled/default文件 添加内容:server { listen8080; #server_name127.0.0.1 charsetUTF-8; access_log/var/log/nginx/......
  • 配置与管理DNS服务器
    1部署DNS服务器的需求和环境。 2安装DNS服务器角色 3DNS服务器的停止和启动 4创建正向主要区域。 5创建反向主要区域。 6创建资源记录 ......
  • commitlint.config的配置和中文文档(附使用示例)
     https://blog.csdn.net/qq_38290251/article/details/111646491https://blog.csdn.net/qq_21197033/article/details/128609033 TRANSLATEwithxEnglishArabicHebrewPolishBulgarianHindiPortugueseCatalanHmongDawRomanianChineseSimpl......
  • Linux恢复文件双手锏
    导读当你在系统中有意或无意地使用 shift+delete 组合键、删除选项,或是清空回收站的方式来删除一个文件时,该文件的内容并没有从硬盘(或是其它存储设备)上直接销毁。它仅仅是从系统的目录结构中被移除,然后你在删除文件的目录下就看不到该文件了,但是这个文件仍然存在你磁盘中......
  • c/c++程序中获取当前可执行文件所在的目录路径,使用跨平台的program_location
    c/c++程序中获取当前可执行文件所在的目录路径对于大型工程中,可执行文件中通过c/c++代码获取到当前路径,可以很大方便于工程后续的部署与运维工作。比如说根据当前的可执行文件路径获取到配置文件的路径,然后加载读取配置文件。有了这个能力就不用再在操作系统中配置环境变量来指......
  • Logback日志输出配置和使用-要点攻略
    Logback是由log4j创始人设计的另一个开源日志组件,比log4j功能更强大,效率更高。官方网站:http://logback.qos.ch/documentation.html。本文较为详细地讲述logback的日志输出使用原理、如何配置,并结合具体的代码,给出程序调用的方法。为了讲清原理,本文从log4j的日志级别开讲,然后讲述......
  • 数据库CSV文件打开乱码如何调整
    数据库文件打开乱码,我们该如何设置调整好,按步骤调整即可查看需要的数据第一步:新建excel表格文件第二步:导入excel数据文件 第三步:选择语言转换数据 第四步:添加文本执行 第五步:修改文本类型 第六步:关闭保存查看数据库文件表格显示正常 ......