Есть ли разница между «sudo apt-get vim» и «./configure --with-features = огромный»?

10

Я бы хотел установить VIM через apt-get, но я не уверен, что получу все его возможности.

Есть ли разница между этим и компиляцией из исходного кода?

AmagicalFishy
источник

Ответы:

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) переводчики выключены
  • у других есть опции, основанные на интерфейсе, с включенными интерпретаторами.

Чтобы выбрать один:

  • Если ты хочешь Bim с костями, выбирай vim-tiny.
  • Если вы хотите более полнофункциональный Vim, выберите vim.
  • Если вам нужны все функции, которые позволяет упаковка, но не требуется графический интерфейс (и зависимости от графического интерфейса), выберите 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 на первый взгляд кажется, что я ничего не могу сделать как мод, извините. Вам нужно будет связаться с командой Stack Exchange, как указано в vi.stackexchange.com/help/merging-accounts .
Муру
1
Хотя :help gui-gnomeдовольно устарел. В современном Gnome есть не так много, что предоставляет vim-gnome (ср. Ошибка Debian # 820239 ), поэтому я удалил его.
jamessan
5

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

Хорошей альтернативой является использование, apt-get install vim-noxкоторое является гораздо более полным.

statox
источник
4

$ sudo apt-get install vim-gtk(или, vim-gnomeесли вы используете Ubuntu), вы получите самый полный Vim с наименьшими усилиями.

Официальные пакеты обычно немного запаздывают, поэтому, если вам действительно нужна последняя версия, вам придется применить последние исправления и собрать их самостоятельно.

Имейте в виду, однако, что новые патчи появляются каждые пару дней, поэтому, чтобы идти в ногу со временем, нужно быть преданным.

romainl
источник
1
PPA pi-rho, как правило, имеет очень современные пакеты.
Муру
@muru, согласился и рекомендовал. Это тот, который я использовал, когда использовал Ubuntu.
Ромен