Какой самый простой способ получить Vim с поддержкой Python 3?

18

У меня установлен Ubuntu 14.04 и Vim в его репозитории скомпилирован без поддержки Python 3. Из-за этого плагин python-mode не может работать с кодом Python 3. Какой самый простой способ получить поддержку Vim с Python 3?

    
задан CrabMan 13.02.2015 в 20:51
источник

1 ответ

15

Кажется, что в системах на базе Debian (по крайней мере) вы не можете получить свой торт и съесть его тоже. Это либо Python 2, либо Python 3. Из-за того, как построены библиотеки Python , вы может использовать только один вариант в сеансе Vim. Вы можете создавать с обоими, но если Python 2 вызывается в Vim, то Python 3 не может быть вызван в тот же сеанс и наоборот. В Arch Linux также Vim компилируется только с одним из Python 2 ( vim , gvim ) или Python 3 ( vim-python3 , gvim-python3 ).

До 16.04

Чтобы восстановить Vim, предоставленный репозиториями:

sudo apt-get build-dep vim
apt-get source vim
cd vim-*  # it will be vim-7.4.something

Измените debian/rules и замените:

ALLINTERPFLAGS+=--enable-pythoninterp --with-python-config-dir=$(shell python-config --configdir)
ALLINTERPFLAGS+=--disable-python3interp

С

ALLINTERPFLAGS+=--enable-pythoninterp=dynamic --with-python-config-dir=$(shell python-config --configdir)
ALLINTERPFLAGS+=--enable-python3interp=dynamic --with-python3-config-dir=$(shell python3-config --configdir)

Затем запустите:

dpkg-buildpackage -us -uc

Пообедать. (Или чай, если вы использовали -j $(nproc) .)

Теперь в родительском каталоге будет создано несколько файлов .deb . Чтобы узнать, что:

cd ..
ls vim*.deb

Наряду с конкретным вариантом, который вы хотите установить ( vim , vim-gnome , vim-gtk и т. д.), вам нужно будет установить vim-common_*.deb , vim-runtime_*.deb и для версий GUI,% код%. Например, с vim-gui-common_*.deb и текущей версией vim-gnome в репозиториях:

sudo dpkg -i vim-gnome_7.4.052-1ubuntu3_amd64.deb vim-common_7.4.052-1ubuntu3_amd64.deb vim-gui-common_7.4.052-1ubuntu3_all.deb vim-runtime_7.4.052-1ubuntu3_all.deb

Тогда:

$ vim --version | grep python
+cryptv          +linebreak       +python/dyn      +viminfo
+cscope          +lispindent      +python3/dyn     +vreplace

pi-rho / dev PPA создает Vim таким образом, поэтому вы можете использовать PPA вместо того, чтобы вручную создавать его.

16.04

Начиная с 16.04, Ubuntu создает Vim с поддержкой Python 3. Поддержка Python 2 предоставляется vim пакеты ( -py2 , vim-nox-py2 и т. д.).

по теме:

ответ дан muru 13.02.2015 в 22:00