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 编辑器配置文件的更多相关文章

  1. linux centos7安装python3

    折腾 Python官网: https://www.python.org/ 查看相关评论,众人大呼python2与python3为两种语言,既然继承性不大,那我也就直接学python3了. 在系统选择, ...

  2. 新手指南:Linux上vi(vim)编辑器使用教程

    vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...

  3. Linux Shell编程与编辑器使用详解

    <Linux Shell编程与编辑器使用详解> 基本信息 作者: 刘丽霞 杨宇 出版社:电子工业出版社 ISBN:9787121207174 上架时间:2013-7-22 出版日期:201 ...

  4. linux操作之文本编辑器

    1.文本编辑器的作用 编辑和修改系统中的那些以文本形式存在的文件(特别是各种配置文件),也可以用于 编写程序代码 2.linux下的常见编辑器 nano.Emacs.gedit.vim等 3.vim三 ...

  5. linux系统之-vi编辑器

    在linux系统使用中,掌握熟练的vi编辑器,可以提高linux工作效率.那么vi编辑器的使用方法有哪些呢? vi编辑器可在绝大部分linux发行版中使用. Vi编辑器的作用:创建或修改文件:维护li ...

  6. linux中安装python3.7

    linux中安装python3.7 1. 安装依赖包 yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite- ...

  7. Linux上vi(vim)编辑器使用教程

    vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...

  8. Linux下的sudo及其配置文件/etc/sudoers的详细配置说明

    http://www.osedu.net/article/linux/2011-01-03/178.html Linux下的sudo及其配置文件/etc/sudoers的详细配置说明 1.sudo介绍 ...

  9. Linux下安装Python3.3.0

    Linux下安装Python3.3.0_路易_新浪博客 Linux下安装Python3.3.0 (2013-01-08 11:45:37)

随机推荐

  1. i春秋——“百度杯”CTF比赛 十月场——GetFlag(md5碰撞、文件包含、网站绝对路径)

    需要提交的captcha满足等式,肯定就是MD5碰撞了 附上脚本 import hashlib def func(md5_val): for x in range(1,100000000): md5_ ...

  2. Centos7 安装配置 Rabbitmq Cluster

    Rabbitmq介绍 RabbitMQ是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 的开源实现,由以高性能.健壮以及可伸缩性出名的 ...

  3. 尚硅谷MySQL高级学习笔记

    目录 数据库MySQL学习笔记高级篇 写在前面 1. mysql的架构介绍 mysql简介 mysqlLinux版的安装 mysql配置文件 mysql逻辑架构介绍 mysql存储引擎 2. 索引优化 ...

  4. 4.redis 的过期策略都有哪些?内存淘汰机制都有哪些?手写一下 LRU 代码实现?

    作者:中华石杉 面试题 redis 的过期策略都有哪些?内存淘汰机制都有哪些?手写一下 LRU 代码实现? 面试官心理分析 如果你连这个问题都不知道,上来就懵了,回答不出来,那线上你写代码的时候,想当 ...

  5. 使用Python3导出MySQL查询数据

    整理个Python3导出MySQL查询数据d的脚本. Python依赖包: pymysql xlwt Python脚本: #!/usr/bin/env python # -*- coding: utf ...

  6. Spring通过配置类加载实体bean

    以下4个java类都在都一个包下: 1.定义接口 public interface AA { void play(); } 2.定义实体bean //组件注解,表明该类是一个组件 @Component ...

  7. 两个概念:CCA和LDA

    典型相关性分析(CCA) https://blog.csdn.net/Mbx8X9u/article/details/78824216 典型关联分析(Canonical Correlation Ana ...

  8. python_机器学习(一)、基本概念

    机器学习基础知识: (一).什么是机器学习? 对于某给定的任务T, 在合理的性能调度方案P的前提下, 某计算机程序可以自主学习任务T的经验E, 随着提供合适.优质.大量的经验E, 该程序任务T的性能逐 ...

  9. 压缩,解压缩 和tar详细介绍

    文件压缩/解压缩  gzip   bzip2  xz 只能压缩文件,不能压缩文件夹(压缩完后,文件会消失) 先建三个文件来进行演示 touch ./{1..3}.txt  文件已经创建好,下面就开始介 ...

  10. update的where条件要把索引的字段带上,要不然就全表锁

    update的where条件要把索引的字段带上,要不然就全表锁 文章目录 update的where条件要把索引的字段带上,要不然就全表锁        本文主要内容        背景        ...