关山难越,谁悲失路之人;萍水相逢,尽是他乡之客。
百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程教程 > 技术文章 > 正文

你的vim距离神器只差这5款插件

guanshanw 2023-08-20 13:50 46 浏览 0 评论

本人从事AI算法开发相关工作,后续会不断分享计算机视觉、强化学习、优化算法、开发工具等方面的技巧和知识,感兴趣的可以关注一下,如果可以,请麻烦关注一下微信公众号"平凡而诗意",我整理了一下学习资料放在微信公众号里,需要的可以回复关键词获取。


vim是很多Linux发行版默认自带的文本编辑器,如果我们在无桌面版的远程环境下开发过程中,免不了要和vim打交道,当然也可以Windows下开发项目,然后上传到Linux服务器,或者使用git、svn之类的版本控制软件,但是这样效率很低,而且很繁琐。

vim支持很多插件的安装,如果合理配置这些插件能够把vim打造成一个轻量级的IDE,在某些方面的表现甚至超过专业级的IDE,而且,vim自身也有诸多优势,便捷、轻量、命令模式,下面我就开始介绍5款插件,这里我使用的插件管理器是Vundle,当然也可以使用其他的插件管理器,只是我觉得Vundle相对成熟,足以满足初级使用,不明白怎么使用的可以查看我的另一篇文章一文让你对vim产生兴趣

自动补全插件:YouCompleteMe

这是一块自动补全工具,补全速度非常快,对比了一下,对于Python第三方库的补全速度远超vs code,在个别的库补全速度甚至超过pycharm,这个插件安装相对麻烦,可以参考我的另一篇文章vim插件YouCompleteMe配置

配置方式:

Plugin 'Valloric/YouCompleteMe'
let g:ycm_global_ycm_extra_conf = "~/.vim/bundle/YouCompleteMe/cpp/ycm/.ycm_extra_conf.py"
let g:ycm_key_invoke_completion = ''
let g:ycm_min_num_identifier_candidate_chars = 2
let g:ycm_goto_buffer_command = 'horizontal-split'
let g:ycm_seed_identifiers_with_syntax=1
map <F2> :YcmCompleter GoTo<CR>
let g:ycm_error_symbol = '>>'
let g:ycm_warning_symbol = '>*'
let g:ycm_autoclose_preview_window_after_completion=1

目录树插件:nerdtree

这是一个目录树工具,我们用IDE时常常会用到目录树,这样会对项目结构一目了然,nerdtree能够让vim具备目录树的结构。

配置方式:

Plugin 'https://github.com/scrooloose/nerdtree'
nnoremap <F3> :NERDTreeToggle<CR>
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif

注释插件:nerdcommenter

这是一款注释插件,默认自带常用的注释命令

<leader>cc 加注释,键盘上\cc
<leader>cu 解开注释
<leader>c<space> 加上/解开注释, 智能判断
<leader>cy 先复制, 再注解(p可以进行黏贴)

配置方式:

Plugin 'scrooloose/nerdcommenter'

filetype plugin on

let g:NERDSpaceDelims=1

let g:NERDTrimTrailingWhitespace = 1

符号对插件:auto-pairs

这款插件能够自动补全或删除成对的括号,例如输入"(",会自动输入"()"

配置方式:

Plugin 'jiangmiao/auto-pairs'

状态栏插件:vim-airline,vim-powerline

这个插件能够让vim状态栏更加丰富多彩,能够在状态栏显示编码格式、行号、文件等等详细信息。

配置方式:

Plugin 'vim-airline/vim-airline'

Plugin 'Lokaltog/vim-powerline'

Plugin 'vim-airline/vim-airline-themes'

let g:airline#extensions#tabline#formatter = 'jsformatter'

let g:airline#extensions#tabline#enabled = 1

let g:airline#extensions#tabline#left_sep = ' '

let g:airline#extensions#tabline#left_alt_sep = '|'


安装上述插件之后不要忘记关闭vimrc文件,重新打开vim,然后输入:PluginInstall安装插件。配置上述5款插件之后vim就具备了注释、目录、自动补全、状态栏、符号这些IDE常用的功能,会大大提升开发的效率。如果觉得有帮助,麻烦关注分享一下。

相关推荐

七条简单命令让您玩转Git
七条简单命令让您玩转Git

凭借着出色的协作能力、快速部署效果与代码构建辅助作用,Git已经得到越来越多企业用户的青睐。除了用于开发商业及消费级应用之外,众多科学及政府机构也开始尝试使用这...

2023-10-07 12:14 guanshanw

基本完整的关于Git分支branch的操作
基本完整的关于Git分支branch的操作

Git使用背景项目中要用到dev或者其他分支开发完代码,需要将该分支合并到master的需求操作步骤下面以dev名称为lex为分支名为例来操作一遍客户端操作:...

2023-10-07 12:14 guanshanw

Git 进阶(合并与变基)
Git 进阶(合并与变基)

在Git中整合来自不同分支的修改主要有两种方法:合并(merge)以及变基(rebase)合并(merge)merge流程图merge的原理是找到这两个分...

2023-10-07 12:13 guanshanw

Git学习笔记 003 Git进阶功能 part5 合并(第一部分)

合并(merge)是很常用的操作。尤其是一个庞大的很多人参与开发的企业级应用。一般会设定一个主分支,和多个副分支。在副分支开发完成后,合并到主分支中。始终保持主分支是一个完整的,稳定的最新状态的分支。...

非标题党,三张图帮你理解git merge和git rebase的区别
非标题党,三张图帮你理解git merge和git rebase的区别

初始场景:基于正常的开发分支修改几个小bug,然后在合并到开发分支上。gitmergegitcheckoutfeaturegitmergeho...

2023-10-07 12:13 guanshanw

git 初次使用(01)
git 初次使用(01)

先从github上克隆代码下来:使用vscode克隆代码如下图,填写上github仓库地址:vscode有时候克隆代码速度比较慢,可以用命令行方式克隆gitc...

2023-10-07 12:12 guanshanw

Git 远程操作

4.Git远程操作命令说明gitremote远程版本库操作gitfetch从远程获取版本库gitpull下载远程代码并合并gitpush上传远程代码并合并4.1远程版本库操作gitre...

Git常用命令-总结
Git常用命令-总结

创建git用户$gitconfig--globaluser.name"YourName"$gitconfig--globaluser.em...

2023-10-07 12:12 guanshanw

git中删除从别人clone下来项目的git信息,并修改为自己的分支

如果你从别人的Git存储库中克隆了一个项目,并想要删除与该存储库相关的Git信息,并将其修改为你自己的分支,则可以执行以下步骤:使用gitclone命令克隆存储库:gitclone<u...

git系列-回滚和放弃本地修改

回滚历史提交就是reset的功能。这种情况是已经提交远程仓库,需要回滚到之前的提交。gitreset--hardcommitId//注:强制提交后,当前版本后面的提交版本将会删掉!gi...

GIT使用小技巧大全
GIT使用小技巧大全

在大型软件工程的开发过程中,版本控制是无法绕过去的;目前来说,最火的版本控制软件就是GIT了。早两年SVN比较火,不过被大神linus喷了几次后,就日落西山了,...

2023-10-07 12:11 guanshanw

git相关命令-上
git相关命令-上

这些命令都是看了文档后,个人觉得比较有用的一些,展示给大家。回到远程仓库的状态抛弃本地所有的修改,回到远程仓库的状态。gitfetch--all&...

2023-10-07 12:10 guanshanw

Git命令行接口:掌握Git的必备技能
Git命令行接口:掌握Git的必备技能

Git是一款强大的分布式版本控制工具,它支持命令行界面操作。熟练掌握Git命令行接口,是开发者使用Git的必备技能之一。在这篇文章中,我们将介绍Git命令行接口...

2023-10-07 12:10 guanshanw

Git命令详解
Git命令详解

相信各位小伙伴们应该都对git有一些了解,毕竟作为代码管理的神器,就算不是IT行业的小伙伴肯定也或多或少的听说过一些。今天就来和小伙伴们分享一下自己总结的常用命...

2023-10-07 12:10 guanshanw

工作7年收集到的git命令
工作7年收集到的git命令

概念git中的术语解释:仓库也叫版本库(repository)stage:暂存区,add后会存到暂存区,commit后提交到版本库git安装linux...

2023-10-07 12:10 guanshanw

取消回复欢迎 发表评论: