如何在Windows的Vim(不是gVim)中获得Python支持

问题描述 投票:-1回答:1

我听说同一安装中的Vim和​​gVim应该是相同的,但显然不包括图形界面。但是我试图弄清楚为什么有些插件不能加载到Vim中(不是gVim)。我遵循的是一个教程,其中提到Window的Vim已经内置了Python支持。经过更多检查后,我了解了:version并在同一安装的Vim和​​gVim中进行了尝试。

gVim:

:version
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Dec 12 2019 13:30:17)
MS-Windows 32-bit GUI version with OLE support
Compiled by mool@tororo
Huge version with GUI.  Features included (+) or not (-):
+acl                +cindent            +cursorshape        -farsi              +jumplist           +mksession          +path_extra         +rightleft          +tag_binary         +title              +wildignore
+arabic             +clientserver       +dialog_con_gui     +file_in_path       +keymap             +modify_fname       +perl/dyn           +ruby/dyn           -tag_old_static     +toolbar            +wildmenu
+autocmd            +clipboard          +diff               +find_in_path       +lambda             +mouse              +persistent_undo    +scrollbind         -tag_any_white      +user_commands      +windows
+autochdir          +cmdline_compl      +digraphs           +float              +langmap            +mouseshape         +popupwin           +signs              +tcl/dyn            +vartabs            +writebackup
+autoservername     +cmdline_hist       +directx            +folding            +libcall            +multi_byte_ime/dyn -postscript         +smartindent        -termguicolors      +vertsplit          -xfontset
+balloon_eval       +cmdline_info       -dnd                -footer             +linebreak          +multi_lang         +printer            +sound              +terminal           +virtualedit        -xim
-balloon_eval_term  +comments           -ebcdic             +gettext/dyn        +lispindent         +mzscheme/dyn       +profile            +spell              -termresponse       +visual             +xpm_w32
+browse             +conceal            +emacs_tags         -hangul_input       +listcmds           +netbeans_intg      +python/dyn         +startuptime        +textobjects        +visualextra        -xterm_save
++builtin_terms     +cryptv             +eval               +iconv/dyn          +localmap           +num64              +python3/dyn        +statusline         +textprop           +viminfo
+byte_offset        +cscope             +ex_extra           +insert_expand      +lua/dyn            +ole                +quickfix           -sun_workshop       -tgetent            +vreplace
+channel            +cursorbind         +extra_search       +job                +menu               +packages           +reltime            +syntax             +timers             -vtp
   system vimrc file: "$VIM\vimrc"
     user vimrc file: "$HOME\_vimrc"
 2nd user vimrc file: "$HOME\vimfiles\vimrc"
 3rd user vimrc file: "$VIM\_vimrc"
      user exrc file: "$HOME\_exrc"
  2nd user exrc file: "$VIM\_exrc"
  system gvimrc file: "$VIM\gvimrc"
    user gvimrc file: "$HOME\_gvimrc"
2nd user gvimrc file: "$HOME\vimfiles\gvimrc"
3rd user gvimrc file: "$VIM\_gvimrc"
       defaults file: "$VIMRUNTIME\defaults.vim"
    system menu file: "$VIMRUNTIME\menu.vim"
Compilation: cl -c /W3 /nologo  -I. -Iproto -DHAVE_PATHDEF -DWIN32  -DFEAT_CSCOPE -DFEAT_TERMINAL -DFEAT_SOUND -DFEAT_NETBEANS_INTG -DFEAT_JOB_CHANNEL   -DFEAT_XPM_W32   -DWINVER=0x0501 -D_WIN32_WINNT=0x0501 /MP -DHAVE_STDINT_H /Ox /GL -
DNDEBUG /arch:IA32 /Zl /MT -DFEAT_OLE -DFEAT_MBYTE_IME -DDYNAMIC_IME -DFEAT_GUI_MSWIN -DFEAT_DIRECTX -DDYNAMIC_DIRECTX -DFEAT_DIRECTX_COLOR_EMOJI -DDYNAMIC_ICONV -DDYNAMIC_GETTEXT -DFEAT_TCL -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL=\"tcl86t.dll\"
 -DDYNAMIC_TCL_VER=\"8.6\" -DFEAT_LUA -DDYNAMIC_LUA -DDYNAMIC_LUA_DLL=\"lua53.dll\" -DFEAT_PYTHON -DDYNAMIC_PYTHON -DDYNAMIC_PYTHON_DLL=\"python27.dll\" -DFEAT_PYTHON3 -DDYNAMIC_PYTHON3 -DDYNAMIC_PYTHON3_DLL=\"python36.dll\" -DFEAT_MZSCH
EME -I "E:\Racket\include" -DMZ_PRECISE_GC -DDYNAMIC_MZSCHEME -DDYNAMIC_MZSCH_DLL=\"libracket3m_a36fs8.dll\" -DDYNAMIC_MZGC_DLL=\"libracket3m_a36fs8.dll\" -DFEAT_PERL -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DDYNAMIC_PERL -DDYNAMIC_P
ERL_DLL=\"perl524.dll\" -DFEAT_RUBY -DDYNAMIC_RUBY -DDYNAMIC_RUBY_VER=24 -DDYNAMIC_RUBY_DLL=\"msvcrt-ruby240.dll\" -DFEAT_HUGE /Fd.\ObjGXOULYHTRZi386/ /Zi
Linking: link  /nologo /opt:ref /LTCG:STATUS oldnames.lib kernel32.lib advapi32.lib shell32.lib gdi32.lib  comdlg32.lib ole32.lib netapi32.lib uuid.lib /machine:i386 gdi32.lib version.lib   winspool.lib comctl32.lib advapi32.lib shell32.
lib netapi32.lib  /machine:i386  libcmt.lib oleaut32.lib user32.lib  /nodefaultlib:lua53.lib  /STACK:8388608  /nodefaultlib:python27.lib /nodefaultlib:python36.lib   "E:\ActiveTcl\lib\tclstub86.lib" winmm.lib WSock32.lib xpm\x86\lib-vc14
\libXpm.lib /PDB:gvim.pdb -debug

Vim:

:version                                                                                                                                                                                                                                        
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Dec 12 2019 13:19:27)                                                                                                                                                                              
MS-Windows 32-bit console version                                                                                                                                                                                                               
Compiled by mool@tororo                                                                                                                                                                                                                         
Huge version without GUI.  Features included (+) or not (-):                                                                                                                                                                                    
+acl               +channel           +cscope            +ex_extra          +iconv/dyn         +listcmds          -mzscheme          +profile           +sound             +termguicolors     +vartabs           +windows                       
+arabic            +cindent           +cursorbind        +extra_search      +insert_expand     +localmap          -netbeans_intg     -python            +spell             +terminal          +vertsplit         +writebackup                   
+autocmd           +clientserver      +cursorshape       -farsi             +job               -lua               +num64             -python3           +startuptime       -termresponse      +virtualedit       -xfontset                      
+autochdir         +clipboard         +dialog_con        +file_in_path      +jumplist          +menu              +packages          +quickfix          +statusline        +textobjects       +visual            -xim                           
+autoservername    +cmdline_compl     +diff              +find_in_path      +keymap            +mksession         +path_extra        +reltime           -sun_workshop      +textprop          +visualextra       -xpm_w32                       
-balloon_eval      +cmdline_hist      +digraphs          +float             +lambda            +modify_fname      -perl              +rightleft         +syntax            -tgetent           +viminfo           -xterm_save                    
+balloon_eval_term +cmdline_info      -dnd               +folding           +langmap           +mouse             +persistent_undo   -ruby              +tag_binary        +timers            +vreplace                                         
-browse            +comments          -ebcdic            -footer            +libcall           -mouseshape        +popupwin          +scrollbind        -tag_old_static    +title             +vtp                                              
++builtin_terms    +conceal           +emacs_tags        +gettext/dyn       +linebreak         +multi_byte        -postscript        +signs             -tag_any_white     -toolbar           +wildignore                                       
+byte_offset       +cryptv            +eval              -hangul_input      +lispindent        +multi_lang        +printer           +smartindent       -tcl               +user_commands     +wildmenu                                         
   system vimrc file: "$VIM\vimrc"                                                                                                                                                                                                              
     user vimrc file: "$HOME\_vimrc"                                                                                                                                                                                                            
 2nd user vimrc file: "$HOME\vimfiles\vimrc"                                                                                                                                                                                                    
 3rd user vimrc file: "$VIM\_vimrc"                                                                                                                                                                                                             
      user exrc file: "$HOME\_exrc"                                                                                                                                                                                                             
  2nd user exrc file: "$VIM\_exrc"                                                                                                                                                                                                              
       defaults file: "$VIMRUNTIME\defaults.vim"                                                                                                                                                                                                
Compilation: cl -c /W3 /nologo  -I. -Iproto -DHAVE_PATHDEF -DWIN32  -DFEAT_CSCOPE -DFEAT_TERMINAL -DFEAT_SOUND  -DFEAT_JOB_CHANNEL      -DWINVER=0x0501 -D_WIN32_WINNT=0x0501 /MP -DHAVE_STDINT_H /Ox /GL -DNDEBUG /arch:IA32 /Zl /MT -DDYNAMIC_
ICONV -DDYNAMIC_GETTEXT -DFEAT_HUGE /Fd.\ObjCi386/ /Zi                                                                                                                                                                                          
Linking:                                                                                                                                                                                                                                        
link  /nologo /opt:ref /LTCG:STATUS oldnames.lib kernel32.lib advapi32.lib shell32.lib gdi32.lib  comdlg32.lib ole32.lib netapi32.lib uuid.lib /machine:i386   libcmt.lib  user32.lib          winmm.lib WSock32.lib  /PDB:vim.pdb -debug

:version详细信息中我看到gVim具有预期的效果

+python/dyn +python3/dyn

输入但Vim却有

-python -python3

我是否误以为这两个版本的构建配置应该相同?我是否需要从头开始重建vi以获得命令行版本的Vim以包含Python支持?还是有一些更简单的方法?还是应该将此差异报告为某个地方的错误?

[编辑]

:version输出的已删除图像,并将其文本直接粘贴到此帖子中。也切换到了8.2版(以前是8.1版)。

python windows vim
1个回答
0
投票

事实证明,用于Windows的vim安装程序内部版本在用于gVim和vim的两个独立内部版本之间配置错误。我试图在这里进行跟进:github.com/vim/vim/issues/5355

目前,共识似乎不是一个足够大的问题,如果人们想要另一个功能集,他们可以手动构建vim。尽管我总体上不同意这一点,但我绝对可以理解,这并不是优先事项,希望将来能够使这两个力量同步发展。请为该任务贡献自己的想法。

© www.soinside.com 2019 - 2024. All rights reserved.