Mercurial > vim
view runtime/ftplugin/python.vim @ 10452:3fab458a54ad v8.0.0119
commit https://github.com/vim/vim/commit/21efc3633edb58809c5dd89b025d34d7002e731c
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Dec 3 14:05:49 2016 +0100
patch 8.0.0119
Problem: No test for using CTRL-R on the command line.
Solution: Add a test. (Dominique Pelle) And some more.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 03 Dec 2016 14:15:04 +0100 |
parents | bdd7fc1a38c0 |
children | 3b26420fc639 |
line wrap: on
line source
" Vim filetype plugin file " Language: python " Maintainer: James Sully <sullyj3@gmail.com> " Previous Maintainer: Johannes Zellner <johannes@zellner.org> " Last Change: Tue, 09 October 2016 " https://github.com/sullyj3/vim-ftplugin-python if exists("b:did_ftplugin") | finish | endif let b:did_ftplugin = 1 let s:keepcpo= &cpo set cpo&vim setlocal cinkeys-=0# setlocal indentkeys-=0# setlocal include=^\\s*\\(from\\\|import\\) setlocal includeexpr=substitute(v:fname,'\\.','/','g') setlocal suffixesadd=.py setlocal comments=b:#,fb:- setlocal commentstring=#\ %s setlocal omnifunc=pythoncomplete#Complete set wildignore+=*.pyc let b:next_toplevel='\v%$\|^(class\|def\|async def)>' let b:prev_toplevel='\v^(class\|def\|async def)>' let b:next='\v%$\|^\s*(class\|def\|async def)>' let b:prev='\v^\s*(class\|def\|async def)>' execute "nnoremap <silent> <buffer> ]] :call <SID>Python_jump('n', '". b:next_toplevel."', 'W')<cr>" execute "nnoremap <silent> <buffer> [[ :call <SID>Python_jump('n', '". b:prev_toplevel."', 'Wb')<cr>" execute "nnoremap <silent> <buffer> ]m :call <SID>Python_jump('n', '". b:next."', 'W')<cr>" execute "nnoremap <silent> <buffer> [m :call <SID>Python_jump('n', '". b:prev."', 'Wb')<cr>" execute "onoremap <silent> <buffer> ]] :call <SID>Python_jump('o', '". b:next_toplevel."', 'W')<cr>" execute "onoremap <silent> <buffer> [[ :call <SID>Python_jump('o', '". b:prev_toplevel."', 'Wb')<cr>" execute "onoremap <silent> <buffer> ]m :call <SID>Python_jump('o', '". b:next."', 'W')<cr>" execute "onoremap <silent> <buffer> [m :call <SID>Python_jump('o', '". b:prev."', 'Wb')<cr>" execute "xnoremap <silent> <buffer> ]] :call <SID>Python_jump('x', '". b:next_toplevel."', 'W')<cr>" execute "xnoremap <silent> <buffer> [[ :call <SID>Python_jump('x', '". b:prev_toplevel."', 'Wb')<cr>" execute "xnoremap <silent> <buffer> ]m :call <SID>Python_jump('x', '". b:next."', 'W')<cr>" execute "xnoremap <silent> <buffer> [m :call <SID>Python_jump('x', '". b:prev."', 'Wb')<cr>" if !exists('*<SID>Python_jump') fun! <SID>Python_jump(mode, motion, flags) range if a:mode == 'x' normal! gv endif normal! 0 let cnt = v:count1 mark ' while cnt > 0 call search(a:motion, a:flags) let cnt = cnt - 1 endwhile normal! ^ endfun endif if has("browsefilter") && !exists("b:browsefilter") let b:browsefilter = "Python Files (*.py)\t*.py\n" . \ "All Files (*.*)\t*.*\n" endif if !exists("g:python_recommended_style") || g:python_recommended_style != 0 " As suggested by PEP8. setlocal expandtab shiftwidth=4 softtabstop=4 tabstop=8 endif " First time: try finding "pydoc". if !exists('g:pydoc_executable') if executable('pydoc') let g:pydoc_executable = 1 else let g:pydoc_executable = 0 endif endif " If "pydoc" was found use it for keywordprg. if g:pydoc_executable setlocal keywordprg=pydoc endif let &cpo = s:keepcpo unlet s:keepcpo