使用vim打造自己的python编辑器,,基础配置vim的配置
使用vim打造自己的python编辑器,,基础配置vim的配置
基础配置
vim的配置是在用户主目录下的~/.vimrc文件中完成的,如果没有的话,需要自己新建一下:
12 | cd ~ |
首先做些简单的配置:
12345678910 | set |
为py文件添加下支持pep8风格的配置:
12345678 | au BufNewFile,BufRead *.py |
分割窗口
vim在编辑的时候就可以打开多个文件:
:vs 或者 :vsplit 将当前窗口竖直分割,并在上面新窗口中显示当前文件
:vs filename将当前窗口竖直分割,新文件在新窗口中显示
:sp 或者:sv或者:split 将当前窗口水平分割,并在左边新窗口中显示当前文件
:sp filename将当前窗口竖直分割,新文件在左边新窗口中显示
:new 新建文件并竖直分割
:vnew 新建文件并水平分割
如果想让新窗口在右边或者下方打开,添加配置:
12 | set |
在窗口之间切换可以用鼠标,如果不想用鼠标,切换按键如下:
Ctrl-w-j切换到下方的分割窗口Ctrl-w-k切换到上方的分割窗口Ctrl-w-l切换到右侧的分割窗口Ctrl-w-h切换到左侧的分割窗口觉得三个按键多的话可以设置快捷键:
1234 | nnoremap <C-J> <C-W><C-J> |
这样就不用按w键了。
代码折叠
当代码行数很多的时候,代码折叠是很必须的:
12 | set |
使用zc按键来创建折叠,使用za来打开或者关闭折叠。
za经常会误输入,可以用空格键来替代za:
1 | nnoremap <space> za |
一键执行python代码
如果想直接在vim中执行python代码,可以添加(来自https://www.zhihu.com/question/20271508):
1234567 | map <F5> :call RunPython()<CR> |
这样,按F5键python代码就可以自动执行了
插件
vim插件中最主要的就是vundle了,vundle用来管理vim的其它插件
Vundle
Vundle 是 Vim bundle 的简称,使用git来管理vim插件,有了它,安装其它插件就方便很多。
项目地址https://github.com/VundleVim/Vundle.vim。
首先下载源码:
1 | git clone https: |
如果~/.vim/bundle目录不存在,则新建目录:
1234 | cd ~ |
然后将下列配置放在.vimrc文件的开头:
12345678910111213 | set |
如果想下载某个插件,比如自动缩进indentpython.vim插件,需要将
1 | Plugin |
置于call vundle#begin()和call vundle#end()之间,保存配置后在vim中执行
1 | :PluginInstall |
即可以自动下载indentpython.vim插件了。
bundle可以管理下载几种不同的插件,方式如下:
12345678910111213 | github上的插件 |
下载方式除了在vim中运行:PluginInstall外,还可以在命令行中运行:
1 | vim |
其它常用的命令:
1234 | :PluginList |
YouCompleteMe
非常好用的自动补全插件,就是比较重。
官网地址:http://valloric.github.io/YouCompleteMe/
github地址:https://github.com/Valloric/YouCompleteMe
YouCompleteMe安装后还需要手动编译,然后再在.vimrc中配置。
在ubuntu中使用,首先准备一些工具:
1 | sudo apt |
1 | sudo apt |
使用vundle安装:
1 | Plugin |
编译:
12 | cd ~ |
参数 --clang-completer是为了加上C系列语言的自动补全,也可以不加:
12 | cd ~ |
耐心等待吧,要花很长时间...
复制一下默认配置文件到用户主目录:
1 | cp third_party |
YCM常用的一些选项,可根据个人喜好调整:
1234 | let |
代码跳转:
1 | nnoremap <leader>jd :YcmCompleter GoToDefinitionElseDeclaration<CR> |
开关YCM:
12 | let g:ycm_auto_trigger |
支持vim8的补全插件
YouCompleteMe实际上是使用jedi-vim来补全python代码的,如果觉得YCM实在太重,可以使用支持vim8的maralla/completor.vim来补全代码:
下载:
1 | Plugin |
下载jedi:
1 | pip install jedi |
配置:
1 | let g:completor_python_binary |
设置起来比YCM简单很多了。
自动缩进插件
写python代码,自动缩进是必须的,可以使用indentpython.vim插件:
1 | Plugin |
语法检查
安装syntastic插件,每次保存文件时Vim都会检查代码的语法:
1 | Plugin |
添加flake8代码风格检查:
1 | Plugin |
运行F7就可以进行flake8检查了。
配色方案
solarized配色方案已经流行很久了,github地址https://github.com/altercation/vim-colors-solarized。
手动下载:
123 | $ |
或者vundle下载:
1 | Plugin |
solarized有dark和light两种配色,配置:
123 | syntax |
也可以根据gui模式和终端模式进行切换:
12345 | if |
另外一种配色Zenburn方案:
1 | Plugin |
两种配色切换:
123456 | if |
nerdtree
给vim添加一个树形目录,地址https://github.com/scrooloose/nerdtree。
下载:
1 | Plugin |
添加开关树形目录的快捷键:
1 | map <C-n> :NERDTreeToggle<CR> |
Ctrl+n就可以开启目录了。
设置忽略.pyc文件:
1 | let |
为nerdtree添加git支持:
1 | Plugin |
如果你想用tab键:
1 | Plugin |
vim-powerline
美化状态栏,可以显示当前的虚拟环境、Git分支、正在编辑的文件等信息。
1 | Plugin |
indentLine
缩进指示线,地址https://github.com/Yggdroot/indentLine。
安装:
1 | Plugin |
python是靠代码缩进来判断代码块的,缩进指示线还是很方便的。
vim-autopep8
自动格式化工具,安装后运行:Autopep8就可以自动依照pep8的标准自动格式化代码。
地址https://github.com/Yggdroot/indentLine。
首先安装autopep8:
1 | $ pip |
1 | Plugin |
可以设置快捷键F8代替:Autopep8:
1 | autocmd FileType python noremap <buffer> <F8> :call Autopep8()<CR> |
auto-pairs
自动补全括号和引号等,地址https://github.com/jiangmiao/auto-pairs。
1 | Plugin |
ctrlp.vim
搜索插件,在vim normal模式下,按下ctrl+p,然后输入你要寻找的文件就行了。
地址https://github.com/kien/ctrlp.vim。
1 | Plugin |
vim-fugitive
git集成插件,可以在vim中运行git命令,https://github.com/tpope/vim-fugitive。
1 | Plugin |
使用vim打造自己的python编辑器
相关内容
- python生成四位随机数,python四位随机数,有些时候需要发
- Python机器学习:6本机器学习书籍推荐,,机器学习是实现
- Python 安装第三方库,python第三方库,cmd进入Pytho
- python--前端CSS,,一.CSS介绍 C
- Python是由谁发明的,Python概述,,Python 本义是
- CentOS7 安装 Python3.6,centos7python3.6,先看编译安装,编译
- openstack开发环境与代码测试,openstack开发代码,一、op
- Python 3.6.5 导入pymysql模块出错:No module named 'pym
- Python中模拟超市抹零结账行为代码,,在IDLE中创建一个
- python scrapy cookies 处理,, 1 def st
评论关闭