Vim:как установить плагин UltiSnips?
Я попытался установить плагин UltiSnips, но при загрузке Vim он создает поток ошибок:
Error detected while processing C:Documents and SettingsusernamevimfilesbundleUltiSnips-2.2pluginUltiSnips.vim:
line 226:
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named os
line 229:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:Documents and SettingsusernamevimfilesbundleUltiSnips-2.2pl
uginUltiSnips__init__.py", line 4, in <module>
from functools import wraps
ImportError: No module named functools
line 230:
Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'UltiSnips_Manager' is not defined
line 231:
Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'UltiSnips_Manager' is not defined
line 232:
Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'UltiSnips_Manager' is not defined
что я сделал:
Я установил плагин патогена, а затем извлек содержимое " UltiSnips-2.2.смола.gz ' to ' vimfiles / bundle/'
что я нашел для инструкций по установке:
http://www.vim.org/scripts/script.php?script_id=2715
инструкции только ссылаются на концепцию "установки" как указывает, как получить исходный код. Нет пошаговых инструкций. После беглого взгляда я прихожу к выводу, что содержание 'UltiSnips-2.2.смола.gz' (предоставляется непосредственно на этой странице) идентичен содержимому репозитория git.
редактировать с дополнительной информацией:
это gvim на windows XP. :echo has("python")
возвращает 1
.
соответствующие биты :version
относительно python:
+python/dyn -python3
-DFEAT_PYTHON -DDYNAMIC_PYTHON -DDYNAMIC_PYTHON_DLL="python26.dll"
полное содержание из :version
:
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Jan 4 2011 14:09:41)
MS-Windows 32-bit GUI version with OLE support
Included patches: 1-98
Compiled by digitectNO@SPAMdancingpaper.com
Huge version with GUI. Features included (+) or not (-):
+arabic +autocmd +balloon_eval +browse ++builtin_terms +byte_offset +cindent +clientserver +clipboard +cmdline_compl +cmdline_hist +cmdline_info
+comments +conceal +cryptv +cscope +cursorbind +cursorshape +dialog_con_gui +diff +digraphs -dnd -ebcdic +emacs_tags +eval +ex_extra +extra_search
+farsi +file_in_path +find_in_path +float +folding -footer +gettext/dyn -hangul_input +iconv/dyn +insert_expand +jumplist +keymap +langmap +libcall
+linebreak +lispindent +listcmds +localmap +lua/dyn +menu +mksession +modify_fname +mouse +mouseshape +multi_byte_ime/dyn +multi_lang
+mzscheme/dyn +netbeans_intg +ole -osfiletype +path_extra +perl/dyn +persistent_undo -postscript +printer +profile +python/dyn -python3 +quickfix
+reltime +rightleft +ruby/dyn +scrollbind +signs +smartindent -sniff +startuptime +statusline -sun_workshop +syntax +tag_binary +tag_old_static
-tag_any_white +tcl/dyn -tgetent -termresponse +textobjects +title +toolbar +user_commands +vertsplit +virtualedit +visual +visualextra +viminfo
+vreplace +wildignore +wildmenu +windows +writebackup -xfontset -xim -xterm_save -xpm_w32
system vimrc file: "$VIMvimrc"
user vimrc file: "$HOME_vimrc"
2nd user vimrc file: "$VIM_vimrc"
user exrc file: "$HOME_exrc"
2nd user exrc file: "$VIM_exrc"
system gvimrc file: "$VIMgvimrc"
user gvimrc file: "$HOME_gvimrc"
2nd user gvimrc file: "$VIM_gvimrc"
system menu file: "$VIMRUNTIMEmenu.vim"
Compilation: gcc -O3 -fomit-frame-pointer -freg-struct-return -fno-strength-reduce -DWIN32 -DHAVE_PATHDEF -DFEAT_HUGE -DWINVER=0x0400 -D_WIN32_WINNT=0x0400 -DFEAT_PERL -DDYNAMIC_PERL -DDYNAMIC_PERL_DLL="perl58.dll" -DFEAT_PYTHON -DDYNAMIC_PYTHON -DDYNAMIC_PYTHON_DLL="python26.dll" -DFEAT_RUBY -DDYNAMIC_RUBY -DDYNAMIC_RUBY_DLL="msvcrt-ruby18.dll" -DDYNAMIC_RUBY_VER=18 -DFEAT_MZSCHEME -DDYNAMIC_MZSCHEME -DDYNAMIC_MZSCH_DLL="libmzsch42.dll" -DDYNAMIC_MZGC_DLL="libmzgc42.dll" -DINCLUDE_MZSCHEME_BASE -DFEAT_TCL -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL="tcl85.dll" -DFEAT_LUA -DDYNAMIC_LUA -DDYNAMIC_LUA_DLL="lua51.dll" -DDYNAMIC_GETTEXT -DDYNAMIC_ICONV -DFEAT_MBYTE -DFEAT_MBYTE_IME -DDYNAMIC_IME -DFEAT_CSCOPE -DFEAT_NETBEANS_INTG -DFEAT_GUI_W32 -DFEAT_CLIPBOARD -DFEAT_OLE -march=i386 -Iproto -I/cygdrive/c/strawberry/perl/lib/CORE -I/cygdrive/c/RUBY/lib/ruby/1.8/i386-mswin32 -I/cygdrive/c/PROGRA~1/MzScheme/include -I/cygdrive/c/Tcl/include -I/cygdrive/c/PROGRA~1/Lua/5.1/include -s -mno-cygwin
Linking: gcc -s -o gvim.exe -luuid -lole32 /cygdrive/c/Tcl/lib/tclstub85.lib -lwsock32 -mwindows -lcomctl32 -lversion -loleaut32 -lstdc++
3 ответов
убедитесь, что vim был скомпилирован с поддержкой python. Вы можете проверить это, запустив
vim --version | grep python
и ищем +python
или run echo has('python')
и посмотрите, выводит ли он 1.
Если vim был скомпилирован с поддержкой python, убедитесь, что python (2) находится на вашем пути.
Если у вас нет корневого доступа, другой вариант-понизить версию ultisnips до 1.3. Вы можете сделать это, выполнив следующую команду после git clone.
git checkout tags/1.3
есть компромисс, но это работает!
Я столкнулся с той же проблемой и должен был прибегнуть к нескольким установкам Python. Моя текущая рабочая настройка имеет gVim7.4, Python2.7.9 (только для UltiSnip : -/) и Python3.4 (это тот, с которым я работаю).