Linux VIM8.1 Python3 编辑器配置文件
Linux VIM8.1 Python3 编辑器配置文件
实现功能:
- 自动补全(包括函数模块方法补全)
- 自动代码标准格式化
- 自动检查代码错误
- 自定义头文件
- 自动括号补全
- 缩进指示线
- 代码一键折叠
- 代码一键执行
- 图形化断点调试
- 分屏终端导入调试
- 分屏目录窗口
- 美化主题窗口栏位
- 指向查找目录文件
- 终端浏览器
.vimrc 配置文件:
""""""""""""""""""""""""""""""""""""""""""""""""""""
"
" - kevin -
"
"---------------------简单配置------------------------
set nocompatible "关闭与vi的兼容模式
set number "显示行号
set nowrap "不自动折行
set showmatch "显示匹配的括号
set scrolloff= "距离顶部和底部3行"
set encoding=utf- "编码
set fenc=utf- "编码
"set mouse=a "启用鼠标
set hlsearch "搜索高亮
syntax on "语法高亮
set backspace=indent,eol,start "启动删除设置" "-------------------------Debugger调试器F1---------------------------- let g:sendtorepl_invoke_key = "f" "传送代码快捷键,默认为<leader>w
let g:repl_position = "0表示出现在下方,1表示出现在上方,2在左边,3在右边
let g:repl_stayatrepl_when_open = "打开REPL时是回到原文件(1)还是停留在REPL窗口中(0
let g:repl_checkpoint_position = '~/.temp/'
let g:repl_auto_sends = ['class ', 'def ']
let g:repl_cursor_down = let g:repl_program = {
\ "python": "python3",
\ "default": "bash"
\ } let g:repl_exit_commands = {
\ "python": "quit()",
\ "bash": "exit",
\ "zsh": "exit",
\ "default": "exit",
\ } "------------为py文件添加支持pep8风格的配置-------------
au BufNewFile,BufRead *.py
\ set tabstop= "tab宽度
\ set softtabstop=
\ set shiftwidth=
\ set textwidth= "行最大宽度
\ set expandtab "tab替换为空格键
\ set autoindent "自动缩进
\ set fileformat=unix "保存文件格式 "-------分隔窗口将新窗口再右边或者下方打开,添加配置-----
set splitbelow
set splitright "分割窗口参数
":vs 或者 :vsplit 将当前窗口竖直分割,并在上面新窗口中显示当前文件
":vs filename 将当前窗口竖直分割,新文件在新窗口中显示
":sp 或者:sv或者:split 将当前窗口水平分割,并在左边新窗口中显示当前文件
":sp filename 将当前窗口竖直分割,新文件在左边新窗口中显示
":new 新建文件并竖直分割
":vnew 新建文件并水平分割 "--------------添加头文件信息-------------------
function HeaderPython()
call setline(, "#!/usr/bin/env python")
call append(, "# -*- coding: utf-8 -*-")
call append(, "# @Time: " . strftime('%Y-%m-%d %T', localtime()))
call append(, "# @Author: xiangsikai")
call append(, "# ############# 调试器 ############## #")
call append(, "# from pudb import set_trace;set_trace()#") normal G
normal o
normal o
endf
autocmd bufnewfile *.py call HeaderPython() "--------------代码折叠配置-----------------------
set foldmethod=indent
set foldlevel= "使用zc按键来创建折叠,使用za来打开或者关闭折叠。
"za经常会误输入,空格快捷键来替代za:
nnoremap <space> za "--------------一键执行python代码配置--------------
"按 F4 执行代码
map <F4> :call RunPython()<CR>
func! RunPython()
exec "W"
if &filetype == 'python'
exec "!time python3 %"
endif
endfunc "-----------------Vundle 插件----------------------
set nocompatible " be iMproved, required
filetype off " required
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
"--------------------------------------------------
" 使用:PluginInstall下载下面的插件
"--------------------------------------------------
"
" 其他:常用命令 ↓
"
" :PluginList - 列表配置插件
" :PluginInstall - 装的插件;添加”!“
" :PluginUpdate - 更新
" :PluginSearch foo - 搜索foo;添加”!来刷新本地缓存
" :PluginClean - 确认移除未使用的插件;添加”!”
"
"-----let Vundle manage Vundle, required-----------
Plugin 'VundleVim/Vundle.vim' "Debugger调试器F1
Plugin 'sillybun/vim-repl'
autocmd FileType python map <buffer> <F1> :REPLToggle<CR> "YCM自动补全
Plugin 'Valloric/YouCompleteMe' "vim8自动补全插件
Plugin 'maralla/completor.vim'
let g:completor_python_binary = '/usr/bin/python3' "vim8自动缩进插件
Plugin 'vim-scripts/indentpython.vim' "vim8语法检查插件
Plugin 'vim-syntastic/syntastic'
"vim8添加flake8代码风格检查
Plugin 'nvie/vim-flake8'
" F2启用代码检查
autocmd FileType python map <buffer> <F2> :call Flake8()<CR>
"保存文件时显示错误
"autocmd BufWritePost *.py call flake8#Flake8() "配色方案1 vundle下载
Plugin 'altercation/vim-colors-solarized'
"light or dark 两种配色主题
syntax enable
set background=light "树形目录
Plugin 'scrooloose/nerdtree'
"树形目录快捷键 ctrl + n
map <C-n> :NERDTreeToggle<CR>
"设置忽略文件
let NERDTreeIgnore=['\~$', '\.pyc$', '\.swp$']
"为nerdtree添加git支持
Plugin 'Xuyuanp/nerdtree-git-plugin'
"如果你想用tab键
Plugin 'jistr/vim-nerdtree-tabs' "美化栏
Plugin 'Lokaltog/vim-powerline' "缩进指示线 | 开关:IndentLinesToggle
Plugin 'Yggdroot/indentLine' "自动格式化工具 | 运行:Autopep8 |效果自动一招pep8标准自动格式化代码
Plugin 'tell-k/vim-autopep8'
"设置快捷键F3代替:Autopep8
autocmd FileType python noremap <buffer> <F3> :call Autopep8()<CR> "自动补全括号引号等
Plugin 'jiangmiao/auto-pairs' "搜索插件 | ctrl+p 然后输入你要寻找的文件就行了
Plugin 'kien/ctrlp.vim' "搜索引擎使用了 the_silver_searcher
"使用:Ag [options] {pattern} [{directory}]
Plugin 'rking/ag.vim' "git集成插件 | vim内运行git命令
Plugin 'tpope/vim-fugitive' "其他模块
Plugin 'tomasr/molokai'
Plugin 'vim-scripts/phd'
Plugin 'vim-airline/vim-airline'
Plugin 'vim-airline/vim-airline-themes'
Plugin 'octol/vim-cpp-enhanced-highlight'
Plugin 'derekwyatt/vim-fswitch'
Plugin 'vim-scripts/a.vim'
Plugin 'kshenoy/vim-signature'
Plugin 'vim-scripts/BOOKMARKS--Mark-and-Highlight-Full-Lines'
Plugin 'majutsushi/tagbar'
Plugin 'vim-scripts/indexer.tar.gz'
Plugin 'vim-scripts/DfrankUtil'
Plugin 'vim-scripts/vimprj'
Plugin 'dyng/ctrlsf.vim'
Plugin 'vim-scripts/DrawIt'
Plugin 'SirVer/ultisnips'
Plugin 'rdnetto/YCM-Generator'
Plugin 'derekwyatt/vim-protodef'
"Plugin 'gcmt/wildfire.vim' "视图模式多选
Plugin 'sjl/gundo.vim'
Plugin 'Lokaltog/vim-easymotion'
Plugin 'suan/vim-instant-markdown'
Plugin 'qpkorr/vim-bufkill'
Plugin 'skywind3000/asyncrun.vim' "--------------------------------------------
call vundle#end() " required
filetype plugin indent on " required
"--------------------------------------------
Linux VIM8.1 Python3 编辑器配置文件的更多相关文章
- linux centos7安装python3
折腾 Python官网: https://www.python.org/ 查看相关评论,众人大呼python2与python3为两种语言,既然继承性不大,那我也就直接学python3了. 在系统选择, ...
- 新手指南:Linux上vi(vim)编辑器使用教程
vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...
- Linux Shell编程与编辑器使用详解
<Linux Shell编程与编辑器使用详解> 基本信息 作者: 刘丽霞 杨宇 出版社:电子工业出版社 ISBN:9787121207174 上架时间:2013-7-22 出版日期:201 ...
- linux操作之文本编辑器
1.文本编辑器的作用 编辑和修改系统中的那些以文本形式存在的文件(特别是各种配置文件),也可以用于 编写程序代码 2.linux下的常见编辑器 nano.Emacs.gedit.vim等 3.vim三 ...
- linux系统之-vi编辑器
在linux系统使用中,掌握熟练的vi编辑器,可以提高linux工作效率.那么vi编辑器的使用方法有哪些呢? vi编辑器可在绝大部分linux发行版中使用. Vi编辑器的作用:创建或修改文件:维护li ...
- linux中安装python3.7
linux中安装python3.7 1. 安装依赖包 yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite- ...
- Linux上vi(vim)编辑器使用教程
vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...
- Linux下的sudo及其配置文件/etc/sudoers的详细配置说明
http://www.osedu.net/article/linux/2011-01-03/178.html Linux下的sudo及其配置文件/etc/sudoers的详细配置说明 1.sudo介绍 ...
- Linux下安装Python3.3.0
Linux下安装Python3.3.0_路易_新浪博客 Linux下安装Python3.3.0 (2013-01-08 11:45:37)
随机推荐
- 第一篇 Scrum 冲刺博客
一.各个成员在 Alpha 阶段认领的任务 姓名 Alpha 阶段认领的任务 林剑峰 用户信息页面:完成用户信息的上传 石竞贤 发布信息页面:完成用户图片上传云存储的功能,并且把发布信息上传到云数据库 ...
- Linux文件服务管理之Samba
Linux文件服务器的搭建 Samba vsftpd nfs Samba服务 作用:共享目录 ...
- javascript之DOM(二Document对象)
javascript通过Document类型来表示文档.在浏览器中document是HTMLDocument对象(继承自Document)的一个实例,表示整个html页面.而且在浏览器中documen ...
- linux系统启动报错:[contains a file system with errors, check forced]的解决方法参考
1.解决参考一Press enter for maintenance(or type Control-D to continue):/dev/sda3 contains a file system w ...
- Graph Embedding总结
图嵌入应用场景:可用于推荐,节点分类,链接预测(link prediction),可视化等场景 一.考虑网络结构 1.DeepWalk (KDD 2014) (1)简介 DeepWalk = Rand ...
- 3. 卷积神经网络(CNN)
关于数据集的介绍 top-N正确率指的是图像识别算法给出前N个答案中有一个是正确的概率. 在图像识别方面,基于卷积神经网络的图像识别算法给图像识别问题带来了质的飞跃,从2013年之后,基本上所有的研究 ...
- 关于std::bind的文章收集
C++11 FAQ中文版:std::function 和 std::bind 2011-03-02 16:25 by 陈良乔 常规性地介绍了function和bind的使用,还不会用的同学可以看看 b ...
- LCD编程_简单测试
首先,需要编写一个led_test.c的文件,依据代码框架,在led_test.c中我们能够看到的只是led.c.我们是看不到led_controller.c的.比如说,在led_test.c中,需要 ...
- CentOS7.5 上使用 bundle 文件安装 MySQL8.0 MySQL5.0
CentOS7.5 上使用 bundle 文件安装 MySQL8.0 MySQL5.0 CentOS7.5 环境 [root@instance-fjii60o3 ~]# rpm -qi centos- ...
- erlang程序设计--顺序编程
erlang模块的基本结构 基本结构-module(filename).-export([funname/num]). c(filename). 编译erlang模块 .bean 结尾的文件 编译后 ...