Come puoi controllare con quali opzioni è stato compilato vim?


88

Mi piacerebbe sapere quali opzioni di compilazione sono state usate per il mio binario Vim. C'è un modo per interrogarlo?

In particolare, mi interessa se ha il supporto per Python abilitato.

Risposte:


101

Puoi vedere tutto ciò con cui vim è stato compilato eseguendo

:version

Per eseguire una query per una funzionalità esatta come python, puoi utilizzare la has()funzione con la funzionalità che stai cercando. Il codice riportato di seguito restituirà un 1 se ha la funzione o 0 in caso contrario.

:echo has('python')

Per un elenco delle caratteristiche vedere :h +feature-list

Per ulteriori informazioni, vedere:

:h :version
:h has(
:h feature-list

1
Per completezza: per vimscript un esempio di sintassi è if has('clipboard'), set mouse=a, end. Non posso essere disturbato a leggere la guida se ho già letto SO ;-)
cfi

1
Quando corro :versionsi vede +python/dyn and +python3/dyn. Ma echo has ('python') restituisce 0. Allora, perché c'è una differenza e con quale dovrei andare?
Durga Swaroop

4
:versionmostra con cosa è compilato Vim. Nel tuo caso +python/dyne +python3/dynche sono versioni caricate dinamicamente di python. Secondo :h python-dynamicquesto significa che Vim cercherà le librerie dll python necessarie e, se trovate, puoi usare python. Il tentativo has('python')tenterà di caricare python dinamicamente e restituirà i risultati (Vedi :h has-python). Pertanto has('python')è il metodo preferito.
Peter Rincker

18

Usa vim --version. Il mio mostra:

$ vim --version
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Jun 20 2012 13:16:02)
Compiled by root@apple.com
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

4

Usa vi --version, che mostra le opzioni di compilazione e il comando del compilatore.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.