您的位置:首页 > 编程语言 > Python开发

ubuntu下vim安装与配置

2016-09-12 15:56 316 查看

vim源码安装

1、https://github.com/Valloric/YouCompleteMe/wiki/Building-Vim-from-source

2、出现“YouCompleteMe requires Vim compiled with Python 2.x support”;

3、执行该命令:

$ cd vim
$ ./configure --enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config
$ make
$ sudo make install


4、找到系统自带的vim,然后用刚才编译后的src文件下的可执行文件替换(在管理员身份下执行),vim不支持python>=2.7问题就成功解决了;
5、为vim添加插件和配置文件(以下是自己写的,仅供参考,配置文件位置https://github.com/Kessity/Documents/blob/master/vimrc):

$ cd ~
$ mkdir .vim
$ cd .vim
$ mkdir bundle
$ cd bundle
$ git clone https://github.com/gmarik/vundle.git $ vim


此时进入vim界面,在normal模式下点击执行命令:BundleInstall(B和I字母都是大写);

注意:在此过程中,有些错误是必须的,可以忽略。

6、vim配置文件:/usr/share/vim。

vim粘贴复制

需要gvim才能调用粘贴板。

YouCompleteMe安装配置

1、配置
.ycm_extra_conf.py
文件,此文件在不同的项目执行不同的编译标志,YCM 会在当前目录及上级目录查找这个文件,也可以指定一个全局文件作为备用,这个文件的模板在 
~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py
,
是作者开发 YCM 的时候使用的,修改后文件https://github.com/Kessity/Documents/blob/master/.ycm_extra_conf.py

注:可能需要做如下修改:加入一些库文件,用命令查看库路径

$ echo | clang -v -E -x c++ -

在输出的内容中找到如下两行,这下面的就是库路径,将其粘贴到 
.ycm_extra_conf.py
 文件中

4000
#include "..." search starts here:
#include <...> search starts here:

2、安装补全库,具体参考YouCompleteMe文件夹下的readme文件中的安装介绍:



3、关于补全c语言全局问题:

默认情况下输入 
.
->
::
 之后会触发补全函数和类,
但是默认情况下是不补全全局函数的,所以 C 语言中的 printf 之类的函数就无法补全解决办法就是手动调用补全,对应的 YCM 函数是 
ycm_key_invoke_completion,
将其绑定到快捷键 
let
g:ycm_key_invoke_completion = '<C-a>'
(默认是 
<C-Space>
)。

ctags安装与配置

ctags可以建立源码树的标签索引(标签就是一个标识符被定义的地方,如函数定义),使程序员在编程时能迅速定位函数、变量、宏定义等位置去查看原形,下载并安装ctags,终端输入命令$ sudo apt-get install ctags,建立索引文件命令$ ctags
-R *。

UltiSnips安装配置

UltiSnips 是个代码块引擎,在 .vimrc 中引入(插件和代码块集合):

Plugin 'SirVer/ultisnips'
Plugin 'honza/vim-snippets'


以下是几个经常用到的代码片段 demo。

插入当前日期 (trigger: date)



插入当前时间(trigger: datetime)



在 erb 中插入 if 语句                                                                      


创建自定义代码块

在 ~/.vim 下创建文件夹,命名为UltiSnips,用来存放自定义的代码块。有的同学会直接修改 ~/.vim/bundle/vim-snippets 中的snippets,建议不要这个干!因为这个目录是Git仓库,每次重装插件会丢失未提交的文件。还是单独创建一个UltiSnips文件夹来保存自定义代码片段比较稳妥。为了稳妥期间,也可以把vim-snipptes文件家下的UltiSnips复制一份,本机测试,需要将vim-snippets下的UltiSnipps重命名。

解决YouCompleteMe和UltiSnips快捷建的冲突

YCM和UltiSnips默认的快捷键都是Tab键,一起使用会有冲突,so,改键:

YCM快捷键:

let g:ycm_key_list_select_completion = ['<tab>', '<Down>']

let g:ycm_key_list_previous_completion = ['<Up>']
UltiSnips快捷键:

let g:UltiSnipsExpandTrigger="<c-j>"
let g:UltiSnipsJumpForwardTrigger="<c-b>"
let g:UltiSnipsJumpBackwardTrigger="<c-z>"


字典sdcv的安装

1、安装字典:
sudo apt install sdcv
2、将字典源放在家目录下,创建文件夹:.stardict/dic,放入里面即可;
3、在vim里面可用:
function! Mydict()
let expl=system('sdcv -n ' .
\ expand("<cword>"))
windo if
\ expand("%")=="diCt-tmp" |
\ q!|endif
28vsp diCt-tmp
setlocal buftype=nofile bufhidden=hide noswapfile
1s/^/\=expl/
1
endfunction
nmap F :call Mydict()<CR>

nmap <C-k> : !sdcv <C-R>=expand("<cword>")<CR><CR>

h5补全工具html5.vim安装

在此工具文件夹下执行make命令就可以啦!
Emmet:HTML/CSS代码快速编写神器

javascripts补全工具tern_for_vim安装

http://www.jianshu.com/p/06a600df1b68

http://www.cnblogs.com/qianye2015/p/4573031.html

python

Vim与Python真乃天作之合:打造强大的Python开发环境
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息