Чи є різниця між "sudo apt-get vim" та "./configure --with-особливості = величезний"?


10

Я хотів би встановити VIM через apt-get, але я не впевнений, чи отримаю я всі його функції.

Чи є різниця між цим та компілюванням його з джерела?

Відповіді:


15

Якщо ви подивитеся на варіанти, які використовуються для складання різних пакетів (в debian/rules), ви побачите

OPTFLAGS+=--with-features=huge

...

NOINTERPFLAGS:=--disable-luainterp
NOINTERPFLAGS+=--disable-mzschemeinterp
NOINTERPFLAGS+=--disable-perlinterp
ifeq ($(DEB_VENDOR),Ubuntu)
    NOINTERPFLAGS+=--enable-pythoninterp --with-python-config-dir=$(shell python-config --configdir)
else
    NOINTERPFLAGS+=--disable-pythoninterp
endif
NOINTERPFLAGS+=--disable-python3interp
NOINTERPFLAGS+=--disable-rubyinterp
NOINTERPFLAGS+=--disable-tclinterp

ALLINTERPFLAGS:=--enable-luainterp
ALLINTERPFLAGS+=--disable-mzschemeinterp
ALLINTERPFLAGS+=--enable-perlinterp
ALLINTERPFLAGS+=--enable-pythoninterp --with-python-config-dir=$(shell python-config --configdir)
ALLINTERPFLAGS+=--disable-python3interp
ALLINTERPFLAGS+=--enable-rubyinterp
ALLINTERPFLAGS+=--enable-tclinterp
ALLINTERPFLAGS+=--with-tclsh=/usr/bin/tclsh

...

CFLAGS_vim-basic:=$(CFLAGS)
CFGFLAGS_vim-basic:=$(CFGFLAGS) $(OPTFLAGS) $(NOXFLAGS) $(NOINTERPFLAGS)

CFLAGS_vim-tiny:=$(CFLAGS) -DTINY_VIMRC
CFGFLAGS_vim-tiny:=$(CFGFLAGS) $(TINYFLAGS)

CFLAGS_vim-gtk:=$(CFLAGS)
CFGFLAGS_vim-gtk:=$(CFGFLAGS) $(OPTFLAGS) $(GUIFLAGS) $(GTKFLAGS) $(ALLINTERPFLAGS)

CFLAGS_vim-gnome:=$(CFLAGS)
CFGFLAGS_vim-gnome:=$(CFGFLAGS) $(OPTFLAGS) $(GUIFLAGS) $(GNOMEFLAGS) $(ALLINTERPFLAGS)

CFLAGS_vim-athena:=$(CFLAGS)
CFGFLAGS_vim-athena:=$(CFGFLAGS) $(OPTFLAGS) $(GUIFLAGS) $(ATHENAFLAGS) $(ALLINTERPFLAGS)

CFLAGS_vim-nox:=$(CFLAGS)
CFGFLAGS_vim-nox:=$(CFGFLAGS) $(OPTFLAGS) $(NOXFLAGS) $(ALLINTERPFLAGS)

Тому:

  • всі пакети , окрім vim-tinyбуде побудований з--with-features=huge
  • vim-basic(ака vim) перекладачі вимкнено
  • в інших є параметри, засновані на інтерфейсі, із включеними перекладачами.

Щоб вибрати один:

  • Якщо ви хочете босоніжки Vim, виберіть vim-tiny.
  • Якщо ви хочете більш повнофункціональний Vim, виберіть vim.
  • Якщо ви хочете, щоб усі функції, які дозволяє упаковка, але не бажаєте GUI (та залежності графічного інтерфейсу), виберіть vim-nox.
  • Якщо вам потрібен графічний інтерфейс, але ви не хочете нічого спільного з GTK, виберіть vim-athena.
  • Якщо ви хочете використовувати графічний інтерфейс і використовувати середовище робочого столу на базі GNOME (GNOME, Unity, Cinnamon тощо), виберітьvim-gnome та використовуйте середовище на базі GTK3 (GNOME, Unity, Cinnamon, MATE тощо), виберіть vim-gtk3.
  • Якщо ви хочете використовувати графічний інтерфейс і використовувати середовище робочого столу на базі GTK2 або не GTK (XFCE, LXDE тощо), виберіть vim-gtk.

Я хотів би прийняти це як відповідь, але, коли я задав питання, я був незареєстрований.
AmagicalFishy

@AmagicalFishy, ​​якщо ви зареєстрували інший електронний лист, ви можете об'єднати акаунти.
муру

Фактично я зареєструвався тим самим електронною поштою. Мені навіть надійшло повідомлення про те, що ця відповідь була розміщена, але з певних причин немає позначки "Прийняти відповідь".
AmagicalFishy

@AmagicalFishy на перший погляд, здається, я нічого не можу зробити як мод, вибачте. Вам потрібно буде зв’язатися з командою обміну стеками , як зазначено в vi.stackexchange.com/help/merging-accounts .
muru

1
Хоча :help gui-gnomeдосить застаріла. У сучасному Gnome не так багато, що забезпечує vim-gnome (cf, Debian bug # 820239 ), тому я його видалив.
Jamessan

5

Дійсно, версія, з якою ви отримуєте apt-get install vim, не має всіх можливостей версії, складеної --with-features=huge. Наприклад, у вас не завжди є такі варіанти, як +pythonабо +lua.

Хорошою альтернативою є використання, apt-get install vim-noxяке набагато повніше.


4

$ sudo apt-get install vim-gtk(або vim-gnomeякщо ви перебуваєте на Ubuntu) отримає найповніший Vim з найменшими зусиллями.

Офіційні пакети зазвичай трохи відстають, тому якщо ви дійсно хочете останньої версії, вам доведеться застосувати останні патчі та створити їх самостійно.

Однак майте на увазі, що нові патчі з’являються кожні пару днів, тому слідкуйте за початком роботи.


1
PPA pi-rho, як правило, має дуже сучасні пакети.
муру

@muru, погодився і рекомендував. Це той, який я використовував, коли використовував Ubuntu.
romainl
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.