在 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 Event学习第六章 事件的访问
Feb 07 Javascript
Jquery 的扩展方法总结
Oct 01 Javascript
使用js正则控制input标签只允许输入的值
Jul 29 Javascript
js实现的简单图片浮动效果完整实例
May 10 Javascript
在线引用最新jquery文件的实现方法
Aug 26 Javascript
基于javascript的Form表单验证
Dec 29 Javascript
js 毫秒转天时分秒的实例
Nov 17 Javascript
详解Vue 动态组件与全局事件绑定总结
Nov 11 Javascript
vue用BMap百度地图实现即时搜索功能
Sep 26 Javascript
js+canvas实现两张图片合并成一张图片的方法
Nov 01 Javascript
Vue实现图片轮播组件思路及实例解析
May 11 Javascript
在vue中动态修改css其中一个属性值操作
Dec 07 Vue.js
用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
PHP读MYSQL中文乱码的解决方法
2006/12/17 PHP
PHP批量删除、清除UTF-8文件BOM头的代码实例
2014/04/14 PHP
php为字符串前后添加指定数量字符的方法
2015/05/04 PHP
yii框架无限极分类的实现方法
2017/04/08 PHP
微信公众号开发之获取位置信息php代码
2018/06/13 PHP
详解php协程知识点
2018/09/21 PHP
JavaScript中的Array对象使用说明
2011/01/17 Javascript
JavaScript之HTMLCollection接口代码
2011/04/27 Javascript
jQuery使用ajaxSubmit()提交表单示例
2014/04/04 Javascript
原生js编写设为首页兼容ie、火狐和谷歌
2014/06/05 Javascript
jQuery提示效果代码分享
2014/11/20 Javascript
javascript实现汉字转拼音代码分享
2015/04/20 Javascript
jquery获取当前元素索引值用法实例
2015/06/10 Javascript
JAVASCRIPT代码编写俄罗斯方块网页版
2015/11/26 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记9)
2015/12/24 Javascript
js实现带农历和八字等信息的日历特效
2016/05/16 Javascript
js实现截图保存图片功能的代码示例
2017/02/16 Javascript
用angular实现多选按钮的全选与反选实例代码
2017/05/23 Javascript
angularjs 页面自适应高度的方法
2018/01/17 Javascript
node实现爬虫的几种简易方式
2019/08/22 Javascript
vue接口请求加密实例
2020/08/11 Javascript
Python3通过Luhn算法快速验证信用卡卡号的方法
2015/05/14 Python
Python实现身份证号码解析
2015/09/01 Python
python实现简单爬虫功能的示例
2016/10/24 Python
python 通过可变参数计算n个数的乘积方法
2019/06/13 Python
使用OpCode绕过Python沙箱的方法详解
2019/09/03 Python
Python中base64与xml取值结合问题
2019/12/22 Python
Python Numpy中数据的常用保存与读取方法
2020/04/01 Python
Python数据正态性检验实现过程
2020/04/18 Python
Tensorflow全局设置可见GPU编号操作
2020/06/30 Python
python通过函数名调用函数的几种场景
2020/09/23 Python
详解Python中openpyxl模块基本用法
2021/02/23 Python
LEGO玩具英国官方商店:LEGO Shop GB
2018/03/27 全球购物
美国小蜜蜂Burt’s Bees德国官网:天然唇部、皮肤和身体护理产品
2020/06/14 全球购物
经典c++面试题四
2015/05/14 面试题
安装配置mysql及Navicat prenium的详细流程
2021/06/10 MySQL