Ответы:
Похоже, что в системах на основе 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).
Чтобы восстановить 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и текущей версии vimв репозиториях:
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
Пи-ро / DEV PPA строит Vim таким образом, так что вы можете использовать PPA вместо ручного построения.
Начиная с 16.04 Ubuntu собирает Vim с поддержкой Python 3. Поддержка Python 2 предоставляется в -py2пакетах ( vim-nox-py2, vim-gnome-py2и т.д.).
Связанный: