在 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 相关文章推荐
jQuery Study Notes学习笔记 (二)
Aug 04 Javascript
关于JavaScript定义类和对象的几种方式
Nov 09 Javascript
JQuery实现鼠标滑过显示导航下拉列表
Sep 12 Javascript
jQuery中:checked选择器用法实例
Jan 04 Javascript
javascript实现网站加入收藏功能
Dec 16 Javascript
jQuery插件ajaxFileUpload异步上传文件
Oct 19 Javascript
详解vue.js 开发环境搭建最简单攻略
Jun 12 Javascript
VUE元素的隐藏和显示(v-show指令)
Jun 23 Javascript
Vue 组件(component)教程之实现精美的日历方法示例
Jan 08 Javascript
JS实现的文件拖拽上传功能示例
May 21 Javascript
JavaScript Window窗口对象属性和使用方法
Jan 19 Javascript
vue.js+element 默认提示中英文操作
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
php创建多级目录代码
2008/06/05 PHP
WordPress中获取所使用的模板的页面ID的简单方法
2015/12/31 PHP
php 生成Tab键或逗号分隔的CSV
2016/09/24 PHP
thinkphp利用模型通用数据编辑添加和删除的实例代码
2016/11/20 PHP
php设计模式之代理模式分析【星际争霸游戏案例】
2020/03/23 PHP
JavaScript中的其他对象
2008/01/16 Javascript
基于jquery的禁用右键、文本选择功能、复制按键的实现代码
2013/08/27 Javascript
jquery隔行换色效果实现方法
2015/01/15 Javascript
用JavaScript显示浏览器客户端信息的超相近教程
2015/06/18 Javascript
Ext JS框架程序中阻止键盘触发回退或者刷新页面的代码分享
2016/06/07 Javascript
JS不完全国际化&amp;本地化手册 之 理论篇
2016/09/27 Javascript
easyui 中的datagrid跨页勾选问题的实现方法
2017/01/18 Javascript
JavaScript获取中英文混合字符串长度的方法示例
2017/02/04 Javascript
Node.js中 __dirname 的使用介绍
2017/06/19 Javascript
jQuery中库的引用方法
2018/01/06 jQuery
JS扩展String.prototype.format字符串拼接的功能
2018/03/09 Javascript
JS隐藏号码中间4位代码实例
2019/04/09 Javascript
重学 JS:为啥 await 不能用在 forEach 中详解
2019/04/15 Javascript
vue中使用element ui的弹窗与echarts之间的问题详解
2019/10/25 Javascript
JavaScript事件冒泡机制原理实例解析
2020/01/14 Javascript
javascript设计模式 ? 适配器模式原理与应用实例分析
2020/04/13 Javascript
Python操作Mysql实例代码教程在线版(查询手册)
2013/02/18 Python
Python中for循环详解
2014/01/17 Python
Django admin美化插件suit使用示例
2017/12/12 Python
PyCharm-错误-找不到指定文件python.exe的解决方法
2019/07/01 Python
详解Matplotlib绘图之属性设置
2019/08/23 Python
BIBLOO捷克:购买女装、男装、童装、鞋和配件
2017/01/27 全球购物
美国最灵活的移动提供商:Tello
2017/07/18 全球购物
LTD Commodities:礼品,独特发现,家居装饰,家用器皿
2017/08/11 全球购物
荷兰美妆护肤品海淘网站:Beautinow(中文)
2020/11/22 全球购物
前台文员岗位职责及工作流程
2013/11/19 职场文书
酒店公关部经理岗位职责
2013/11/24 职场文书
怎么写好自荐书
2014/03/02 职场文书
Python+Appium新手教程
2021/04/17 Python
python 制作一个gui界面的翻译工具
2021/05/14 Python
详解Python+OpenCV进行基础的图像操作
2022/02/15 Python