X Tutup
if !g:pymode || pymode#default('b:pymode', 1) finish endif " if g:pymode_python == 'disable' " if g:pymode_warning " call pymode#error("Pymode requires vim compiled with +python. Most of features will be disabled.") " endif " finish " else " let b:pymode_modified = &modified " Init paths if !pymode#default('g:pymode_init', 1) call pymode#init(expand(':p:h:h:h'), g:pymode_paths) " call pymode#virtualenv#init() " call pymode#breakpoint#init() PymodePython from pymode.utils import patch_paths PymodePython patch_paths() endif endif " command! -buffer -nargs=1 PymodeVirtualenv call pymode#virtualenv#activate() " Setup events for pymode " au! pymode BufWritePre call pymode#buffer_pre_write() " au! pymode BufWritePost call pymode#buffer_post_write() " Run python code " if g:pymode_run " command! -buffer -nargs=0 -range=% PymodeRun call pymode#run#code_run(, ) " exe "nnoremap " g:pymode_run_bind ":PymodeRun" " exe "vnoremap " g:pymode_run_bind ":PymodeRun" " endif " Add/remove breakpoints " if g:pymode_breakpoint " exe "nnoremap " g:pymode_breakpoint_bind ":call pymode#breakpoint#operate(line('.'))" " endif " Python folding " if g:pymode_folding " setlocal foldmethod=expr " setlocal foldexpr=pymode#folding#expr(v:lnum) " setlocal foldtext=pymode#folding#text() " endif " Remove unused whitespaces " if g:pymode_trim_whitespaces " au BufWritePre call pymode#trim_whitespaces() " endif " Custom options " if g:pymode_options " setlocal complete+=t " setlocal formatoptions-=t " if v:version > 702 && !&relativenumber " setlocal number " endif " setlocal nowrap " exe "setlocal textwidth=" . g:pymode_options_max_line_length " if g:pymode_options_colorcolumn && exists('+colorcolumn') " setlocal colorcolumn=+1 " endif " setlocal commentstring=#%s " setlocal define=^\s*\\(def\\\\|class\\) " endif " if g:pymode_lint " command! -buffer -nargs=0 PymodeLintAuto :call pymode#lint#auto() " command! -buffer -nargs=0 PymodeLintToggle :call pymode#lint#toggle() " command! -buffer -nargs=0 PymodeLint :call pymode#lint#check() " if v:version > 703 || (v:version == 703 && has('patch544')) " au! QuitPre call pymode#quit() " else " au! pymode BufWinLeave * silent! lclose " endif " let b:pymode_error_line = -1 " if g:pymode_lint_on_fly " au! pymode InsertLeave PymodeLint " endif " if g:pymode_lint_message " au! pymode CursorMoved " au! pymode CursorMoved call pymode#lint#show_errormessage() " endif " " Disabled for current release " if g:pymode_lint_async " " let &l:updatetime = g:pymode_lint_async_updatetime " " au! BufEnter call pymode#lint#start() " " au! BufLeave call pymode#lint#stop() " endif " endif " Show python documentation " if g:pymode_doc " " Set commands " command! -buffer -nargs=1 PymodeDoc call pymode#doc#show("") " " Set keys " exe "nnoremap " g:pymode_doc_bind ":call pymode#doc#find()" " exe "vnoremap " g:pymode_doc_bind ":call pymode#doc#show(@*)" " endif " Rope support if g:pymode_rope if g:pymode_rope_goto_definition_bind != "" exe "noremap " . g:pymode_rope_goto_definition_bind . " :call pymode#rope#goto_definition()" endif " if g:pymode_rope_show_doc_bind != "" " exe "noremap " . g:pymode_rope_show_doc_bind . " :call pymode#rope#show_doc()" " endif " if g:pymode_rope_find_it_bind != "" " exe "noremap " . g:pymode_rope_find_it_bind . " :call pymode#rope#find_it()" " endif " if g:pymode_rope_organize_imports_bind != "" " exe "noremap " . g:pymode_rope_organize_imports_bind . " :call pymode#rope#organize_imports()" " endif " if g:pymode_rope_rename_bind != "" " exe "noremap " . g:pymode_rope_rename_bind . " :call pymode#rope#rename()" " endif " if g:pymode_rope_rename_module_bind != "" " exe "noremap " . g:pymode_rope_rename_module_bind . " :call pymode#rope#rename_module()" " endif " if g:pymode_rope_extract_method_bind != "" " exe "vnoremap " . g:pymode_rope_extract_method_bind . " :call pymode#rope#extract_method()" " endif " if g:pymode_rope_extract_variable_bind != "" " exe "vnoremap " . g:pymode_rope_extract_variable_bind . " :call pymode#rope#extract_variable()" " endif " if g:pymode_rope_inline_bind != "" " exe "noremap " . g:pymode_rope_inline_bind . " :call pymode#rope#inline()" " endif " if g:pymode_rope_move_bind != "" " exe "noremap " . g:pymode_rope_move_bind . " :call pymode#rope#move()" " endif " if g:pymode_rope_change_signature_bind != "" " exe "noremap " . g:pymode_rope_change_signature_bind . " :call pymode#rope#signature()" " endif " if g:pymode_rope_use_function_bind != "" " exe "noremap " . g:pymode_rope_use_function_bind . " :call pymode#rope#use_function()" " endif " if g:pymode_rope_generate_function_bind != "" " exe "noremap " . g:pymode_rope_generate_function_bind . " :call pymode#rope#generate_function()" " endif " if g:pymode_rope_generate_package_bind != "" " exe "noremap " . g:pymode_rope_generate_package_bind . " :call pymode#rope#generate_package()" " endif " if g:pymode_rope_generate_class_bind != "" " exe "noremap " . g:pymode_rope_generate_class_bind . " :call pymode#rope#generate_class()" " endif " if g:pymode_rope_module_to_package_bind != "" " exe "noremap " . g:pymode_rope_module_to_package_bind . " :call pymode#rope#module_to_package()" " endif " if g:pymode_rope_autoimport_bind != "" " exe "noremap " . g:pymode_rope_autoimport_bind . " :PymodeRopeAutoImport" " endif " if g:pymode_rope_completion && g:pymode_rope_complete_on_dot " inoremap . .=pymode#rope#complete_on_dot() " endif " command! -buffer -nargs=? PymodeRopeNewProject call pymode#rope#new() " command! -buffer PymodeRopeUndo call pymode#rope#undo() " command! -buffer PymodeRopeRedo call pymode#rope#redo() " command! -buffer PymodeRopeRenameModule call pymode#rope#rename_module() " command! -buffer PymodeRopeModuleToPackage call pymode#rope#module_to_package() " command! -buffer PymodeRopeRegenerate call pymode#rope#regenerate() " if g:pymode_rope_autoimport " command! -buffer PymodeRopeAutoImport call pymode#rope#autoimport(expand('')) " endif endif " if g:pymode_debug " " Redefine functions to be debugged here functions here. " " NOTE: The redraw seems to be necessary to force messages to get echoed to " " the screen. See: " " https://groups.google.com/forum/#!topic/vim_use/EfcXOjq_rKE " " for details. " " silent! redraw! " " TODO: when loading with 'vim -u ./debug.vim' the messages shown in vim " " are unduly cleared. Need a fix. " " Start debbuging environment. {{{ " if ! &verbosefile " " Get a system independent temporary filename. The 'marker' variable is " " used to get rid of a null character getting inserted at position. " " substitute() was not able to remove it. " " TODO: see https://superuser.com/questions/935574/get-rid-of-null-character-in-vim-variable " let g:pymode_debug_tempfile=matchstr( " \ execute( " \ g:pymode_python " \ . " from __future__ import print_function;" " \ . " import os;import tempfile; marker='|';" " \ . " print(marker, tempfile.gettempdir(), os.sep, " " \ . "'pymode_debug_file.txt', marker, sep='', end='')"), " \ '|\zs.*\ze|') " execute "set verbosefile=" . g:pymode_debug_tempfile " endif " call pymode#debug('Starting debug on: ' " \ . strftime("\%Y-\%m-\%d \%H:\%M:\%S") " \ . ' with file ' . &verbosefile) " " }}} " " Redefine folding expression. {{{ " if g:pymode_folding " setlocal foldexpr=pymode#debug#foldingexpr(v:lnum) " endif " call pymode#debug#sysinfo() " " }}} " " Define auto commands for vim. {{{ " augroup augroup_save_issue_commands " autocmd! " autocmd VimLeave *.py | call pymode#debug('Session history:') | silent! history " augroup END " " }}} " endif
X Tutup