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. 监控微信小程序wx.request请求失败

    在微信小程序里,与后台服务器交互的主要接口函数是wx.request(),用于发起 HTTPS 网络请求.其重要性不言而喻.然而,却经常遇到请求失败的问题,笔者特意谷歌"wx.request ...

  2. 面向对象(三)--多态、封装、property装饰器

    一.多态与多态性 1.什么是多态 多态指的是同一种类/事物的不同形态 class Animal: def speak(self): pass class People(Animal): def spe ...

  3. Linux IO 概念(2)

    在上一篇IO底层的概念中杂合了很多模糊的概念,受知识水平的限制,只是从网上抄了很多过来.从linux一切皆文件的设计哲学,介绍了文件描述符,从进程的运行内存分配,进程的切换,介绍了进程的阻塞,以及引出 ...

  4. mysql数据库之主从复制+双主--MMM

    mysql复制:在主数据库中,前端用户每执行一个写操作/语句,都会在二进制日志中保存一个事件,把这个事件从mysql的服务器中3306端口发送给从服务器,从服务器把这个事件接受下来,接受下来先保存在本 ...

  5. Browse Princeton's Series (by Date) in Princeton Economic History of the Western World

    Browse Princeton's Series (by Date) in Princeton Economic History of the Western World Joel Mokyr, S ...

  6. ActiveMQ传输协议

    ActiveMQ默认的传输协议是TCP 在activemq的配置文件 /conf/activemq.xml可对配置文件进行修改和查看

  7. USACO Mooo Moo

    洛谷 P2214 [USACO14MAR]哞哞哞Mooo Moo 洛谷传送门 JDOJ 2416: USACO 2014 Mar Silver 3.Mooo Moo JDOJ传送门 Descripti ...

  8. Java 数组ArrayList语法

    恶补基础,记录一下数组ArrayList的常用语法 1.导入 import java.util.ArrayList; 2.定义数组list ArrayList<类名> list = new ...

  9. hadoop map中获取文件/切片名称

    //import org.apache.hadoop.mapreduce.InputSplit;//import org.apache.hadoop.mapreduce.lib.input.FileS ...

  10. contest1 CF1084 div2 oooxx oooxo ooooo

    题意: div2D (x)(x) 给出一棵树, 找出一条路径, 使得每一时刻点权和\(\ge\)边权和, 并且点权和\(-\)边权和最大 div2E (x)(o) 给出两个长度为\(n(\le 5e5 ...