在 Linux/Unix 中不重启 Vim 而重新加载 .vimrc 文件的流程


Posted in Javascript onMarch 21, 2018

我是一位新的 Vim 编辑器用户。我通常使用 :vs ~/.vimrc 来加载 ~/.vimrc 配置。而当我编辑 .vimrc 时,我需要不重启 Vim 会话而重新加载它。在 Linux 或者类 Unix 系统中,如何在编辑 .vimrc 后,重新加载它而不用重启 Vim 呢?

Vim 是自由开源并且向上兼容 Vi 的编辑器。它可以用来编辑各种文本。它在编辑用 C/Perl/Python 编写的程序时特别有用。可以用它来编辑 Linux/Unix 配置文件。 ~/.vimrc 是你个人的 Vim 初始化和自定义文件。

如何在不重启 Vim 会话的情况下重新加载 .vimrc

在 Vim 中重新加载 .vimrc 而不重新启动的流程:

  1. 输入 vim filename 启动 vim
  2. 按下 Esc 接着输入 :vs ~/.vimrc 来加载 vim 配置
  3. 像这样添加自定义配置:

filetype indent plugin on set number syntax on

4. 使用 `:wq`  保存文件,并从 `~/.vimrc` 窗口退出
5. 输入下面任一命令重载  `~/.vimrc`:`:so $MYVIMRC` 或者 `:source ~/.vimrc`。

[![How to reload .vimrc file without restarting vim][1]][1]

*图1:编辑 ~/.vimrc 并在需要时重载它而不用退出 vim,这样你就可以继续编辑程序了*

`:so[urce]! {file}` 这个 vim 命令会从给定的文件比如  `~/.vimrc` 读取配置。就像你输入的一样,这些命令是在普通模式下执行的。当你在  `:global`、:`argdo`、 `:windo`、`:bufdo` 之后、循环中或者跟着另一个命令时,显示不会再在执行命令时更新。

### 如何设置按键来编辑并重载 ~/.vimrc

在你的  `~/.vimrc` 后面跟上这些:

" Edit vimr configuration file nnoremap confe :e $MYVIMRC " Reload vims configuration file nnoremap confr :source $MYVIMRC

现在只要按下  `Esc` 接着输入 `confe` 就可以编辑 `~/.vimrc`。按下 `Esc` ,接着输入 `confr` 以重新加载。一些人喜欢在 `.vimrc` 中使用 `<Leader>` 键。因此上面的映射变成:

" Edit vimr configuration file nnoremap ve :e $MYVIMRC " Reload vimr configuration file nnoremap vr :source $MYVIMRC

<Leader>` 键默认映射成  `\` 键。因此只要输入 `\` 接着 `ve` 就能编辑文件。按下 `\` 接着 `vr` 就能重载 `~/vimrc`。

这就完成了,你可以不用再重启 Vim 就能重新加载 `.vimrc` 了。

### 关于作者

作者是 nixCraft 的创建者,经验丰富的系统管理员,也是 Linux / Unix shell 脚本的培训师。他曾与全球客户以及IT、教育、国防和太空研究以及非营利部门等多个行业合作。在 [Twitter][9]、[Facebook][10]、[Google +][11] 上关注他。通过[RSS/XML 订阅][5]获取最新的系统管理、Linux/Unix 以及开源主题教程。

--------------------------------------------------------------------------------

via: https://www.cyberciti.biz/faq/how-to-reload-vimrc-file-without-restarting-vim-on-linux-unix/

作者:[Vivek Gite][a]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出

[a]:https://www.cyberciti.biz/
[1]:https://www.cyberciti.biz/media/new/faq/2018/02/How-to-reload-.vimrc-file-without-restarting-vim.jpg
[2]:https://twitter.com/nixcraft
[3]:https://facebook.com/nixcraft
[4]:https://plus.google.com/+CybercitiBiz
[5]:https://www.cyberciti.biz/atom/atom.xml

总结

以上所述是小编给大家介绍的在 Linux/Unix 中不重启 Vim 而重新加载 .vimrc 文件的流程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
深入理解JavaScript系列(27):设计模式之建造者模式详解
Mar 03 Javascript
js图片翻书效果代码分享
Aug 20 Javascript
最简单纯JavaScript实现Tab标签页切换的方式(推荐)
Jul 25 Javascript
js事件源window.event.srcElement兼容性写法(详解)
Nov 25 Javascript
JavaScript获取服务器端时间的方法
Nov 29 Javascript
javascript中mouseenter与mouseover的异同
Jun 06 Javascript
基于AngularJS的拖拽文件上传的实例代码
Jul 15 Javascript
vuejs中监听窗口关闭和窗口刷新事件的方法
Sep 21 Javascript
微信小程序使用自定义组件导航实现当前页面高亮
Jan 02 Javascript
JS常用排序方法实例代码解析
Mar 03 Javascript
JS 逻辑判断不要只知道用 if-else 和 switch条件判断(小技巧)
May 27 Javascript
Js数组扁平化实现方法代码总汇
Nov 11 Javascript
用p5.js制作烟花特效的示例代码
Mar 21 #Javascript
AngularJS监听ng-repeat渲染完成的方法
Mar 20 #Javascript
vue对storejs获取的数据进行处理时遇到的几种问题小结
Mar 20 #Javascript
webpack本地开发环境无法用IP访问的解决方法
Mar 20 #Javascript
解决vue-router中的query动态传参问题
Mar 20 #Javascript
vue数据传递--我有特殊的实现技巧
Mar 20 #Javascript
手写Node静态资源服务器的实现方法
Mar 20 #Javascript
You might like
CI框架安全类Security.php源码分析
2014/11/04 PHP
PHP 中常量的知识整理
2017/04/14 PHP
laravel 执行迁移回滚示例
2019/10/23 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
php+mysql实现的无限分类方法类定义与使用示例
2020/05/27 PHP
短信提示使用 特效
2007/01/19 Javascript
用javascript父窗口控制只弹出一个子窗口
2007/04/10 Javascript
jQuery1.6 类型判断实现代码
2011/09/01 Javascript
Extjs 继承Ext.data.Store不起作用原因分析及解决
2013/04/15 Javascript
JavaScript伸缩的菜单简单示例
2013/12/03 Javascript
jQuery中(function($){})(jQuery)详解
2015/07/15 Javascript
js获取form表单所有数据的简单方法
2016/08/18 Javascript
Nodejs 搭建简单的Web服务器详解及实例
2016/11/30 NodeJs
webpack下实现动态引入文件方法
2018/02/22 Javascript
node内置调试方法总结
2018/02/22 Javascript
jQuery实现的自定义轮播图功能详解
2018/12/28 jQuery
electron-vue利用webpack打包实现多页面的入口文件问题
2019/05/12 Javascript
JS highcharts动态柱状图原理及实现
2020/10/16 Javascript
Vue页面渲染中key的应用实例教程
2021/01/12 Vue.js
python多线程抓取天涯帖子内容示例
2014/04/03 Python
Python实现提取文章摘要的方法
2015/04/21 Python
使用Python内置的模块与函数进行不同进制的数的转换
2016/03/12 Python
详解python里使用正则表达式的全匹配功能
2017/10/19 Python
Python中实现switch功能实例解析
2018/01/11 Python
获取python文件扩展名和文件名方法
2018/02/02 Python
python执行系统命令后获取返回值的几种方式集合
2018/05/12 Python
对Tensorflow中的矩阵运算函数详解
2018/07/27 Python
Django 路由系统URLconf的使用
2018/10/11 Python
详谈tensorflow gfile文件的用法
2020/02/05 Python
详解Python3中的 input() 函数
2020/03/18 Python
pyCharm 设置调试输出窗口中文显示方式(字符码转换)
2020/06/09 Python
行政管理专业推荐信
2013/11/02 职场文书
秋季运动会稿件
2014/01/30 职场文书
小学向国旗敬礼活动方案
2014/09/27 职场文书
2015年国庆节演讲稿范文
2015/07/30 职场文书
家电创业计划书
2019/08/05 职场文书