Jawaban:
Tampaknya pada sistem berbasis Debian (setidaknya) Anda tidak dapat memiliki kue dan memakannya juga. Baik Python 2 atau Python 3. Karena cara pustaka Python dibangun , Anda hanya dapat menggunakan satu varian dalam sesi Vim. Anda bisa membangun dengan keduanya, tetapi jika Python 2 dipanggil dalam Vim, maka Python 3 tidak bisa dipanggil dalam sesi yang sama, dan sebaliknya. Di Arch Linux juga, Vim hanya dikompilasi dengan salah satu dari Python 2 ( vim
, gvim
) atau Python 3 ( vim-python3
, gvim-python3
).
Untuk membangun kembali Vim yang disediakan oleh repositori:
sudo apt-get build-dep vim
apt-get source vim
cd vim-* # it will be vim-7.4.something
Edit debian/rules
dan ganti:
ALLINTERPFLAGS+=--enable-pythoninterp --with-python-config-dir=$(shell python-config --configdir)
ALLINTERPFLAGS+=--disable-python3interp
Dengan:
ALLINTERPFLAGS+=--enable-pythoninterp=dynamic --with-python-config-dir=$(shell python-config --configdir)
ALLINTERPFLAGS+=--enable-python3interp=dynamic --with-python3-config-dir=$(shell python3-config --configdir)
Lalu lari:
dpkg-buildpackage -us -uc
Makan siang. (Atau teh jika Anda gunakan -j $(nproc)
.)
Sekarang, banyak .deb
file akan dibuat di direktori induk. Untuk melihat mana:
cd ..
ls vim*.deb
Seiring dengan varian tertentu yang ingin Anda instal ( vim
, vim-gnome
, vim-gtk
, dll), Anda akan harus menginstal vim-common_*.deb
, vim-runtime_*.deb
dan untuk versi GUI, vim-gui-common_*.deb
. Misalnya, dengan vim-gnome
, dan versi saat ini vim
di repositori:
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
Kemudian:
$ vim --version | grep python
+cryptv +linebreak +python/dyn +viminfo
+cscope +lispindent +python3/dyn +vreplace
The pi-rho / dev PPA membangun Vim dalam mode ini, sehingga Anda dapat menggunakan PPA bukan secara manual bangunan itu.
Pada 16.04, Ubuntu membangun Vim dengan dukungan Python 3. Python 2 dukungan diberikan oleh para -py2
paket ( vim-nox-py2
, vim-gnome-py2
, dll).
Terkait: