vim配置python编辑器_Gvim打造python编辑器,附自己的配置文件

本文介绍了如何将Gvim设置为支持Python3.6的编辑器,包括设置_gvimrc_文件以支持Python环境,调整界面和功能,如隐藏菜单栏、设置编码和高亮、自动保存和换行,以及安装和配置插件如NERDTree、autopep8等,提升Python开发体验。
摘要由CSDN通过智能技术生成

一. Gvim简介

Gvim的G指的是GUI,也就是图形化界面。相当于在vim包了一层图形化界面,相比之下gvim拥有更丰富的颜色和字体,还有菜单和滚动条,以及更友好的鼠标操作等,除此之外和vim并无太大差异.这里就不再详细说下载和安装过程.

安装好gvim后,用它随便打开一个文件在命令模式下输入:version查看,注意python或python3前边应该是+,说明已经支持python环境,这里只说python3.6的配置.

二. _vimrc配置

set pythonthreedll=python36.dll "设置支持3.6,原gvim可能只支持python3.7

"隐藏菜单栏

set guioptions-=m

set guioptions-=T

map :if &guioptions =~# 'T'

\set guioptions-=T

\set guioptions-=m

\else

\set guioptions+=T

\set guioptions+=m

\endif

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" 编码设置

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

set langmenu=zh_CN.UTF-8

set helplang=cn

set termencoding=utf-8

set encoding=utf8

set fileencodings=utf8,ucs-bom,gbk,cp936,gb2312,gb18030

source $VIMRUNTIME/delmenu.vim "导入删除菜单脚本,删除乱码的菜单

source $VIMRUNTIME/menu.vim "导入正常的菜单脚本

language messages zh_CN.utf-8 "设置提示信息语言

syntax on "语法高亮

" 缓存设置

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

set nobackup "设置不备份

set noswapfile "禁止生成临时文件

set autoread "文件在vim之外修改过,自动重新载入

set autowrite "设置自动保存

set confirm "在处理未保存或只读文件时,弹出确认

set number "设置行号

set relativenumber "行号

map :source $HOME/_vimrc

" 配色方案

let g:molokai_original=1

let g:rehash256=1

colorscheme evening

set guifont=DejaVu_Sans_Mono:h13:cANSI "设置字体和大小

noremap W :w

noremap Q :q

noremap Y 5h

noremap U 5j

noremap I 5k

noremap O 5l

inoremap

set tabstop=4

set wrap "设置自动换行

set linebreak "整词换行,与自动换行搭配使用

set showtabline=2 "设置显是显示标签栏

set autoread "设置当文件在外部被修改,自动更新该文件

set hlsearch "高亮显示查找结果

set incsearch "增量查找

exec "nohlsearch"

set statusline=[%F]%y%r%m%*%=[Line:%l/%L,Column:%c][%p%%] "显示文件名:总行数,总的字符数

set ruler "在编辑过程中,在右下角显示光标位置的状态行

set smartindent "智能对齐

set showmatch "设置匹配模式,相当于括号匹配

set cursorline"启用光标行

set scrolloff=5 "在光标接近底端或顶端时,自动下滚或上滚

set mouse=a "设置在任何模式下鼠标都可用

set ai! "设置自动缩进

set guicursor+=a:blinkon0 "设置光标不闪烁

set ignorecase "搜索大小写不敏感

set noic

map :%!python -m json.tool "格式化json字符串

"代码折叠

set foldmethod=indent

set foldlevel=99

let g:SimpylFold_docstring_preview=1

"切换分屏

nnoremap

nnoremap

nnoremap

nnoremap

"plugin插件配置

call plug#begin('E:\Gvim\Vim\vim81\plugs')

Plug 'tell-k/vim-autopep8'

Plug 'scrooloose/nerdtree'

Plug 'vim-scripts/indentpython.vim'

Plug 'tmhedberg/SimpylFold'

Plug 'rkulla/pydiction'

Plug 'Yggdroot/indentLine'

call plug#end()

"配置文件树

"设置NerdTree 按F3打开或关闭NERDTree

map :NERDTreeMirror

map :NERDTreeToggle

"打开vim时自动打开NERDTree

autocmd VimEnter * NERDTree

"关闭所有文本窗口时自动退出vim,否则需要两次退出才可

autocmd BufEnter * if 0 == len(filter(range(1, winnr('$')), 'empty(getbufvar(winbufnr(v:val), "&bt"))'))

let NERDTreeIgnore = ['\.pyc$'] " 过滤所有.pyc文件不显示

let NERDTreeMinimalUI = 1

let NERDTreeDirArrows = 1

"一键运行

map :call CompileRunGcc()

func! CompileRunGcc()

exec "w"

if &filetype == 'c'

exec '!g++ % -o %

exec '!./%

elseif &filetype == 'cpp'

exec '!g++ % -o %

exec '!./%

elseif &filetype == 'python'

exec '!python %'

elseif &filetype == 'sh'

:!bash %

endif

endfunc

"自动补全

filetype plugin on

let g:pydiction_location = 'E:\Gvim\Vim\vim81\ftplugin\complete-dict'

let g:pydiction_menu_height = 3

"PEP8

autocmd FileType python noremap :call Autopep8()

set nocompatible "与vi不兼容

set backspace=indent,eol,start

"缩进线

let g:indentLine_color_gui = '#A4E57E'

let g:indentLine_color_tty_light = 7

let g:indentLine_color_dark = 1

"ctags配置

map :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q . :TlistUpdate

imap :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q . :TlistUpdate

set tags=tags;

set autochdir

"配置taglist

noremap pp :TlistToggle

"格式化json

command! Json :execute '%!python -m json.tool'

\ | :execute '%!python -c "import re,sys;chr=__builtins__.__dict__.get(\"unichr\", chr);sys.stdout.write(re.sub(r\"\\u[0-9a-f]{4}\", lambda x: chr(int(\"0x\" + x.group(0)[2:], 16)).encode(\"utf-8\"), sys.stdin.read()))"'

\ | :set ft=javascript

\ | :1

三. 效果图

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值