在 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 技巧小结
Apr 02 Javascript
使用jQuery判断IE浏览器版本的代码
Jun 14 Javascript
JS实现灵巧的下拉导航效果代码
Aug 25 Javascript
jQuery遍历DOM节点操作之filter()方法详解
Apr 14 Javascript
JavaScript和jquery获取父级元素、子级元素、兄弟元素的方法
Jun 05 Javascript
Vue.js事件处理器与表单控件绑定详解
Mar 20 Javascript
JavaScript实现一个空中避难的小游戏
Jun 06 Javascript
Javascript中Promise的四种常用方法总结
Jul 14 Javascript
详解angularJS+Ionic移动端图片上传的解决办法
Sep 13 Javascript
vue实现的组件兄弟间通信功能示例
Dec 04 Javascript
vue基础之v-bind属性、class和style用法分析
Mar 11 Javascript
Vue项目中数据的深度监听或对象属性的监听实例
Jul 17 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
Sony CFR 320 修复改造
2020/03/14 无线电
超人钢铁侠联手合作?美漫作家呼吁DC漫威合作联动以抵抗疫情
2020/04/09 欧美动漫
PHP网页游戏学习之Xnova(ogame)源码解读(六)
2014/06/23 PHP
PHP自动生成缩略图函数的源码示例
2019/03/18 PHP
关于JavaScript的gzip静态压缩方法
2007/01/05 Javascript
JavaScript 计算当天是本年本月的第几周
2009/03/22 Javascript
用jquery实现下拉菜单效果的代码
2010/07/25 Javascript
event对象获取方法总结在google浏览器下测试
2013/11/03 Javascript
JavaScript将数字转换成大写中文的方法
2015/03/23 Javascript
JS实现自动阅读单词(有道单词本添加功能)
2016/11/14 Javascript
canvas实现探照灯效果
2017/02/07 Javascript
javascript html5轻松实现拖动功能
2017/03/01 Javascript
微信小程序实现顶部选项卡(swiper)
2020/06/19 Javascript
推荐10款扩展Web表单的JS插件
2017/12/25 Javascript
解决jquery的ajax调取后端数据成功却渲染失败的问题
2018/08/08 jQuery
Angular ui-roter 和AngularJS 通过 ocLazyLoad 实现动态(懒)加载模块和依赖
2018/11/25 Javascript
vue模仿网易云音乐的单页面应用
2019/04/24 Javascript
JS函数动态传递参数的方法分析【基于arguments对象】
2019/06/05 Javascript
python实现探测socket和web服务示例
2014/03/28 Python
python实现井字棋游戏
2020/03/30 Python
Pycharm 操作Django Model的简单运用方法
2018/05/23 Python
如何用Python实现简单的Markdown转换器
2018/07/16 Python
微软开源最强Python自动化神器Playwright(不用写一行代码)
2021/01/05 Python
CSS3中媒体查询结合rem布局适配手机屏幕
2019/06/10 HTML / CSS
南非最大的在线时尚商店:Zando
2019/07/21 全球购物
腾讯技术类校园招聘笔试试题
2014/05/06 面试题
费用会计岗位职责
2014/01/01 职场文书
2014年秋季开学演讲稿
2014/05/24 职场文书
车辆年审委托书范本
2014/09/18 职场文书
基层党员学习党的群众路线教育实践活动心得体会
2014/11/04 职场文书
创卫工作总结2015
2015/04/22 职场文书
教师节主题班会方案
2015/08/17 职场文书
Apache Hudi集成Spark SQL操作hide表
2022/03/31 Servers
windows server 2012安装FTP并配置被动模式指定开放端口
2022/06/10 Servers
ssh服务器拒绝了密码 请再试一次已解决(亲测有效)
2022/08/14 Servers
mysql数据库如何转移到oracle
2022/12/24 MySQL