繁体   English   中英

Vim 更新有错误的插件

[英]Vim update plugins with errors

现在我在 Mac Osx 中更新了我的 .vimrc 但我有下一个错误:

处理 /Users/dmuino/.vimrc 时检测到错误:第 59 行:E319:抱歉,此版本不提供该命令:py << EOF 行
60:E492:不是编辑器命令:导入 os 行 61:E492:不是编辑器命令:导入 sys 行 62:E15:无效表达式:os.environ 中的“VIRTUAL_ENV”:第 117 行:E171:缺少 :endif

但是我检查了我的 .vimrc 但我没有发现任何错误,你能帮我吗? 我的 .vimrc 是下一个:

set nocompatible              " required
filetype off                  " required
 set runtimepath+=~/.vim_runtime
 source ~/.vim_runtime/vimrcs/basic.vim
 source ~/.vim_runtime/vimrcs/filetypes.vim
 source ~/.vim_runtime/vimrcs/plugins_config.vim
 source ~/.vim_runtime/vimrcs/extended.vim
 set rtp+=~/.vim/bundle/Vundle.vim
 set splitbelow
 set splitright
 call vundle#begin()
 "split navigations
 nnoremap <C-J> <C-W><C-J>
 nnoremap <C-K> <C-W><C-K>
 nnoremap <C-L> <C-W><C-L>
 nnoremap <C-H> <C-W><C-H>
 " Enable folding
 set foldmethod=indent
 set foldlevel=99
 " Enable folding with the spacebar
 nnoremap <space> za
 " alternatively, pass a path where Vundle should install plugins
 "call vundle#begin('~/some/path/here')

 " let Vundle manage Vundle, required
 Plugin 'gmarik/Vundle.vim'
 Plugin 'tmhedberg/SimpylFold'
 Helptags

 let g:SimplyFold_docstring_preview=1
 " PEP8 indetantion
 au BufNewFile,BufRead *.py
    \ set tabstop=4
    \ set softtabstop=4
    \ set shiftwidth=4
    \ set textwidth=79
    \ set expandtab
    \ set autoindent
    \ set fileformat=unix
 " HTML, JS, CSS indentation
 au BufNewfile,BufRead *.js, *.html, *.css
    \ set tabstop=2
    \ set softtabstop=2
    \ set shiftwidth=2
 "Fix problem indentation PEP8
 Plugin 'vim-scripts/indentpython.vim'
 "Uneccesary whitespace
 au BufRead,BufNewfile *.py,*.pyw,*.c,*.h match BadWhitespace /\s\+$/
 " UTF8 support
 set encoding=utf-8
 "Autocomplete
 Bundle 'Valloric/YouCompleteMe'

 let g:ymc_autoclose_preview_window_after_completion=1
 map <leader>g :YcmCompleter GoToDefinitionElseDeclaration<CR>

 " python with virtualenv support

 py << EOF
 import os
 import sys
 if 'VIRTUAL_ENV' in os.environ:
     project_base_dir = os.environ['VIRTUAL_ENV']
     activate_this = os.path.join(project_base_dir, 'bin/activate_this.py')
     execfile(activate_this, dict(__file__=activate_this))
 EOF

 " Syntax Checkin/Highlighting
 Plugin 'vim-syntastic/syntastic'
 Plugin 'nvie/vim-flake8'
 let python_highlight_all=1
 syntax on

 "Color Shemes
 Plugin 'jnurmin/Zenburn'
 Plugin 'altercation/vim-colors-solarized'
 if has('gui_running')
     set background=dark
     colorscheme solarized
 else
     colorscheme zenburn
 endif
 call togglebg#map("<F5>")
 "File Browsing
 Plugin 'scrooloose/nerdtree'
 Plugin 'jistr/vim-nerdtree-tabs'
 let NERDTreeIgnore=['\.pyc$','\~$'] "Ignore files in NERDTree

 "SuperSearching
 Plugin 'kien/ctrlp.vim'
 "Line numering
 set nu
 "Git integration
 Plugin 'tpope/vim-fugitive'

 "Powerline
 Plugin 'Lokaltog/powerline', {'rtp': 'powerline/bindings/vim/'}

 "System clipboard
 set clipboard=unnamed
 "VIM in the shell
 set editing-mode vi

 " add all your plugins here (note older versions of Vundle
 " used Bundle instead of Plugin)

 " ...

 " All of your Plugins must be added before the following line
 call vundle#end()            " required
 filetype plugin indent on    " required

try
source ~/.vim_runtime/my_configs.vim
catch
endtry

改变

 " python with virtualenv support

 py << EOF

" python with virtualenv support
py3 3
py3 << EOF

错误消息清楚地指向你的~/.vimrc ,在第 59 行:

" python with virtualenv support

py << EOF
[...]

您的 Vim 配置假定 Vim 具有对嵌入式 Python 解释器( :py命令)的内置支持。 您可以通过添加防御检查使您的~/.vimrc更加健壮。 通常这是通过exists() (例如if exists(':python') == 2 ),但对于嵌入式解释器,检查通常是通过if has('python')

如果您需要这种定制,您必须使用支持 Python 内置的 Vim 版本。 如何获得这些很大程度上取决于你的系统,你安装软件的方式。 在最坏的情况下(没有可用的软件包),您必须安装所有源代码依赖项并自己编译 Vim。 但我认为对于 MacOS X,这不是必需的......

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM