2013-05-18 2 views
2

На моем Mac я использую MacVim с homebrew для большей части моего редактирования.Python и Homebrew Vim

~|⇒ vim --version 
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Jun 20 2012 13:16:02) 
Compiled by [email protected] 
Normal version without 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 +diff +digraphs 
-dnd -ebcdic -emacs_tags +eval +ex_extra +extra_search -farsi +file_in_path 
+find_in_path +float +folding -footer +fork() -gettext -hangul_input +iconv 
+insert_expand +jumplist -keymap -langmap +libcall +linebreak +lispindent 
+listcmds +localmap -lua +menu +mksession +modify_fname +mouse -mouseshape 
-mouse_dec -mouse_gpm -mouse_jsbterm -mouse_netterm -mouse_sysmouse 
+mouse_xterm +multi_byte +multi_lang -mzscheme +netbeans_intg -osfiletype 
+path_extra -perl +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 +terminfo +termresponse +textobjects +title 
-toolbar +user_commands +vertsplit +virtualedit +visual +visualextra +viminfo 
+vreplace +wildignore +wildmenu +windows +writebackup -X11 -xfontset -xim -xsmp 
-xterm_clipboard -xterm_save 
    system vimrc file: "$VIM/vimrc" 
    user vimrc file: "$HOME/.vimrc" 
     user exrc file: "$HOME/.exrc" 
    fall-back for $VIM: "/usr/share/vim" 
Compilation: gcc -c -I. -D_FORTIFY_SOURCE=0 -Iproto -DHAVE_CONFIG_H -arch i386 -arch x86_64 -g -Os -pipe 
Linking: gcc -arch i386 -arch x86_64 -o vim -lncurses 

Однако в течение последних нескольких дней у меня возникла странная проблема. Когда я запускаю vim из командной строки, я получаю следующее сообщение, и vim немедленно падает.

~|⇒ vim test.txt 
Traceback (most recent call last): 
    File "/usr/local/lib/python2.7/site-packages/site.py", line 74, in <module> 
    __boot() 
    File "/usr/local/lib/python2.7/site-packages/site.py", line 34, in __boot 
    imp.load_module('site',stream,path,descr) 
    File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site.py", line 563, in <module> 
    main() 
    File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site.py", line 545, in main 
    known_paths = addusersitepackages(known_paths) 
    File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site.py", line 278, in addusersitepackages 
    user_site = getusersitepackages() 
    File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site.py", line 253, in getusersitepackages 
    user_base = getuserbase() # this will also set USER_BASE 
    File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site.py", line 243, in getuserbase 
    USER_BASE = get_config_var('userbase') 
    File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sysconfig.py", line 472, in get_config_var 
    return get_config_vars().get(name) 
    File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sysconfig.py", line 405, in get_config_vars 
    import re 
    File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/re.py", line 105, in <module> 
    import sre_compile 
    File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sre_compile.py", line 14, in <module> 
    import sre_parse 
    File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sre_parse.py", line 17, in <module> 
    from sre_constants import * 
    File "/usr/local/Cellar/python/2.7.4/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sre_constants.py", line 18, in <module> 
    from _sre import MAXREPEAT 
ImportError: cannot import name MAXREPEAT 

Но когда я начинаю его с помощью значка в меню Applications, он начинает просто отлично. Я попробовал несколько вариантов, например, если я делаю open Applications/MacVim, это работает отлично. Насколько я понимаю, что-то пойдет не так, как питон, когда я запускаю vim из командной строки.

Может ли кто-нибудь сказать мне, что здесь происходит, и как это исправить. Вы можете найти мои файлы vimrc here.

+0

OS X командной строки Vim и MacVim - это две разные вещи. Информация о версии показывает, что вы используете довольно старый Vim 7.3 без патчей. Попробуйте установить текущий Vim. (Хотя я не уверен, что это поможет с проблемой Python.) – glts

ответ

13

Нет. Эта вещь не Vim или MacVim установлен с Homebrew: это по умолчанию Vim, который поставляется с Mac OS X.

по умолчанию Vim было сосание в ряде способов для довольно долго времени, главным образом -xterm-clipboard, и это главная причина, по которой люди обычно устанавливают «правильный» Vim. Установка MacVim не заменить по умолчанию Vim на на всех, так что вы должны сделать маленький кусочек из мастерить, чтобы команда vim выполнить в комплекте CLI исполняемый MacVim в:

  1. Поместите mvim сценарий где-то в вашем $PATH.

  2. Добавьте строку ниже вашей оболочки *rc:

    alias vim='mvim -v' 
    

Но вы используете Homebrew, и я понятия не имею, если он ничего не делает с этим mvim сценария или даже если он установлен на всех.

Если вы хотите использовать Homebrew's Vim/MacVim в своей оболочке, у вас в основном есть два решения.

  • Удостоверьтесь, что команда vim указывает на ваш причудливый Vim. Это можно сделать множеством способов: одним из способов является добавление каталога, в котором ваш Vim установлен в начало вашего $PATH, другим способом является просто создать псевдоним в файле *rc вашей оболочки.

  • Переустановите Vim или MacVim через Homebrew с опцией override-system-vi.

+2

Я переустановил с включенным флагом переопределения системы, но подобная проблема по-прежнему сохраняется. Графическая программа GUI работает нормально, но в командной строке выкладывается столько ошибок ... Взгляните на этот gist .... https://gist.github.com/subszero/5607507 – subzero

+0

Похож на проблему Python + Powerline, которая Я не смогу помочь.Я бы посоветовал вам создать проблему с отслеживателем проблем powerline. – romainl

+0

Хорошо ... Я попробовал что-то другое .... Я завариваю unink python' и все сработал ... Я связываю его снова, и он ломается снова и снова – subzero

Смежные вопросы