Ubuntu18.04安装vim-plug及NERDTree、YouCompleteMe插件指南
需积分: 1 113 浏览量
更新于2024-08-10
收藏 3KB TXT 举报
"在Ubuntu 18.04系统中安装和配置Vim编辑器的插件管理工具vim-plug,以及NerdTree和YouCompleteMe两个流行插件的详细步骤。"
在Ubuntu 18.04系统中,安装和管理Vim插件可以极大地提升开发效率。本文将指导你如何安装vim-plug插件管理器,并利用它来安装NerdTree(用于文件管理的侧边栏)和YouCompleteMe(强大的代码补全工具)。
首先,我们需要安装vim-plug。由于网络问题,我们可能需要先在`/etc/hosts`文件中添加一个映射,以便于访问GitHub上的资源。添加以下行:
```
199.232.68.133 raw.githubusercontent.com
```
接着,通过终端执行以下命令,下载vim-plug的安装脚本到`~/.vim/autoload`目录:
```bash
curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
```
安装完成后,我们需要编辑`~/.vimrc`文件来启用vim-plug并声明要安装的插件。打开这个文件并添加以下内容:
```vim
call plug#begin('~/.vim/plugged')
Plug 'junegunn/vim-plug' " 安装vim-plug自身
Plug 'scrooloose/nerdtree' " 安装NerdTree
call plug#end()
```
保存并退出`vimrc`,然后重新打开vim并运行命令:
`:PlugInstall`
这将开始安装所列出的插件,包括NerdTree。
NerdTree是Vim中的一个非常实用的文件管理器,我们可以对其进行配置。在`~/.vimrc`中添加以下配置项以自定义NerdTree的行为:
```vim
"->NERDTree目录树插件---配置选项=====================================================
let g:NERDTreeDirArrowExpandable='▸' " 设置展开目录的图标
let g:NERDTreeDirArrowCollapsible='▾' " 设置折叠目录的图标
" 自动打开目录树
autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif
" 在没有文件打开时显示NerdTree
autocmd StdinReadPre * let s:std_in = 1
autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists("s:std_in") | exe 'NERDTree' argv()[0] | wincmd p | ene | endif
" CRTL+N 开关NerdTree
map <C-n> :NERDTreeToggle<CR>
" 关闭最后一个文件时,同时关闭NerdTree
autocmd BufEnter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
```
至此,NerdTree已经安装并配置完毕。接下来,我们将安装YouCompleteMe,这是一个强大的代码补全插件,特别适合C/C++等语言。在`~/.vimrc`文件中添加以下行来安装:
```vim
Plug 'Valloric/YouCompleteMe'
```
然后运行`:PlugInstall`以安装YouCompleteMe。但是,YouCompleteMe还需要额外的编译步骤,根据你的编程语言需求,可能需要运行特定的安装脚本来完成配置。例如,对于C++支持,你需要执行:
```bash
cd ~/.vim/plugged/YouCompleteMe
./install.py --clang-completer
```
请确保你的系统上已经安装了必要的依赖,如Python、cmake、libclang等,否则上述命令可能会失败。
安装完成后,重启Vim,你现在应该拥有了完善的Vim环境,包括方便的插件管理和强大的代码补全功能。NerdTree让你轻松管理文件,而YouCompleteMe则提供了智能的代码补全,提高编程效率。
2012-11-06 上传
2021-03-21 上传
2019-07-19 上传
2019-07-19 上传
2012-07-24 上传
2021-08-29 上传
2019-09-07 上传
633 浏览量
weixin_38716561
- 粉丝: 0
- 资源: 1
最新资源
- 火炬连体网络在MNIST的2D嵌入实现示例
- Angular插件增强Application Insights JavaScript SDK功能
- 实时三维重建:InfiniTAM的ros驱动应用
- Spring与Mybatis整合的配置与实践
- Vozy前端技术测试深入体验与模板参考
- React应用实现语音转文字功能介绍
- PHPMailer-6.6.4: PHP邮件收发类库的详细介绍
- Felineboard:为猫主人设计的交互式仪表板
- PGRFileManager:功能强大的开源Ajax文件管理器
- Pytest-Html定制测试报告与源代码封装教程
- Angular开发与部署指南:从创建到测试
- BASIC-BINARY-IPC系统:进程间通信的非阻塞接口
- LTK3D: Common Lisp中的基础3D图形实现
- Timer-Counter-Lister:官方源代码及更新发布
- Galaxia REST API:面向地球问题的解决方案
- Node.js模块:随机动物实例教程与源码解析