Vim 8.0 Pythonサポート


23

Vimインストールをバージョン8.0にアップグレードしようとしていますが、下の画像のようにPythonとPython 3の両方をサポートしていません。

(PS:この問題のため、現在YCM(YouCompleteMe)プラグインを使用できません。)

  1. 次のコマンドのようにVim 8.0をインストールしました。

  2. Ubuntu 16.04(Xenial Xerus)を使用しています。

この問題をどのように処理できますか?

sudo add-apt-repository ppa:jonathonf/vim
sudo apt update
sudo apt install vim

ここに画像の説明を入力してください


1
そのバージョンのVimはPythonのサポートなしでコンパイルされたようです。あなたがそれについてできることは、たくさんありません。Ubuntuで最新のVimバージョンを実行する場合は、おそらく自分でコンパイルするのが最も簡単なオプションです。
マーティントゥルノイ

2
Python、Ruby、Perl、クリップボードはありません。そのビルドはほとんど役に立たないでしょう。のvim-gtk代わりにインストールすると何が得られますvimか?
ロメインル

1
@Carpetsmokerどうすれば自分でコンパイルできますか?少し具体的に説明したり、リンクを教えてもらえますか?
ヒョン・ホーヨー

@romainl vim 8.0をサポートするvim-gtkはありますか?
ヒョン・ホーヨー

はい、そのPPAで。
ロメイン

回答:


14

PI-ロー/ devのPPA今のVim 8はサポートしており、それは常に持っているように、Pythonの/のpython3のためのサポートが含まれています。

$ vim --version | grep python
+cryptv          +linebreak       +python/dyn      +vreplace
+cscope          +lispindent      +python3/dyn     +wildignore
$ apt-cache policy vim   
vim:
  Installed: 2:8.0.0134-1ubuntu1~ppa1~x
  Candidate: 2:8.0.0134-1ubuntu1~ppa1~x
  Version table:
 *** 2:8.0.0134-1ubuntu1~ppa1~x 500
        500 http://ppa.launchpad.net/pi-rho/dev/ubuntu xenial/main amd64 Packages
        100 /var/lib/dpkg/status
     2:7.4.1689-3ubuntu1.2 500

最近、pi-rho/devPPAはVimビルドを更新していません。jonathonf/backports現在PPA を使用しています:

$ vim --version | grep python
+comments          +libcall           -python            +vreplace
+conceal           +linebreak         +python3           +wildignore
$ apt-cache policy vim-gnome
vim-gnome:
  Installed: 2:8.0.1542-0york1~16.04
  Candidate: 2:8.0.1542-0york1~16.04
  Version table:
 *** 2:8.0.1542-0york1~16.04 500
        500 http://ppa.launchpad.net/jonathonf/vim/ubuntu xenial/main amd64 Packages
        500 http://ppa.launchpad.net/jonathonf/vim/ubuntu xenial/main i386 Packages
        100 /var/lib/dpkg/status
     2:7.4.1689-3ubuntu1.2 500
        500 http://jp.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages
     2:7.4.1689-3ubuntu1 500
        500 http://jp.archive.ubuntu.com/ubuntu xenial/main amd64 Packages

PPAには、他のいくつかのパッケージの新しいバージョンも含まれています。


♦ありがとう、代わりにvim-noxを使用しました。これを試してみてください。
ヒョン・ホーヨー

vim8のインストール方法 私はPPAを追加しましたが、実行するsudo apt-get install vim取得します私はpythinなしvim7
WEIMA

@weimaはapt-get updatePPAを追加してからやったのですか?
アンドレイ・バルサン

1
jonathonf /バックポートもはやvimのビルドがありません
Penghe庚

2
@PengheGeng彼らはそれを別のPPAjonathonf/vim
muru

8

あなたの質問から、プラグインなしの非常に最小のVimランタイムであるvim-tiny 8.0をインストールしたようです。これを使用してこれを確認できます:

dpkg -l | grep vim

複数のVimランタイムを使用できますが、実行時に実行vimされるバージョンは、ここに示されているバージョンになります。

update-alternatives --list vim

他のバージョンを確認できます。私の提案は、GUIをサポートするフルバージョンを選択することです。また、vim-gtk2/vim-gtk3パッケージを選択することvim-noxも、GUIなしのフルバージョンを選択することもできます。

現在、Debian / UbuntuのVimフルバージョンであるIIRCには、7.xバージョンで同時にPython 2とPython 3が付属していません。私はneovim今使っているので、Vim 8の場合はどうなのかわかりません。これがあなたに当てはまり、Vim 8でサポートされている両方のPythonエンジンが必要な場合(これは使用するケースではありませんYouCompleteMe。これはPython 2サポートでのみ動作します)、独自のVimからソースをコンパイルする必要があります8.0。


土壌ありがとう、vim-noxをインストールしましたが、いつかソースからコンパイルしようとしました。
ヒョン・ホーヨー

6

あなたは使うべきです

sudo apt-get install vim-nox

代わりに、「巨大なバージョン」を取得します。


vim 8.0以降を使用したい。それをサポートするvim.noxはありますか?
ヒョン・ホーヨー

Ubuntuの16.04中のvim-noxのような@HyunHoYeoのルックスは、あなたが後に実行してインストールチェックすることができます(VIM 8.0であるvim --versionと私が得たVIM - Vi IMproved 8.0 (2016 Sep 12, compiled Feb 05 2017 20:17:49)
jamescampbell

@jamescampbellありがとう、Ubuntuを16.04バージョンにアップグレードしてダウンロードしました。
ヒョン・ホーヨー

5

ソースからvimをインストールする必要があります。そのようにして、含まれるものを制御できます。詳細およびステップバイステップのウォークスルーについては、以下を参照してください。比較的簡単です。

https://github.com/Valloric/YouCompleteMe/wiki/Building-Vim-from-source
https://github.com/vim/vim

リンクのみの回答は将来変更される可能性があり、質問に対する回答が得られない可能性があるため、投稿しないでください。少なくとも、リンク先ページの重要な部分を含めます。
エバーグリーン

5

解決策1:

  • VIMエディターのインストール(vimバリアントのいずれかをインストール):

    • vim-gtk3:-このパッケージには、GTK3 GUIでコンパイルされたバージョンのvimと、Lua、Perl、Python、Ruby、およびTclによるスクリプト作成のサポートが含まれています。このパッケージをインストールするには:

      sudo apt install vim-gtk3   
    • vim-gtk:-このパッケージには、GTK2 GUIでコンパイルされたバージョンのvimと、Lua、Perl、Python、Ruby、およびTclによるスクリプト作成のサポートが含まれています。このパッケージをインストールするには:

      sudo apt install vim-gtk   
    • vim-nox-viエディターの強化vim-tinyと同様に、vim-noxは最小限のvimインストールであり、Lua、Perl、Python、Ruby、およびTclでのスクリプト作成をサポートしていますが、GUIはサポートしていません。マウスはサポートされていますが、クリップボードはサポートされていません。IIRC。このパッケージをインストールするには:

      sudo apt install vim-nox
  • Vimをデフォルトのエディターとして設定します(インストールされているバリアントがvim-gtk3であると仮定

    sudo update-alternatives --install /usr/bin/editor editor /usr/bin/vim.gtk3 1   
    sudo update-alternatives --set editor /usr/bin/vim.gtk3   
    sudo update-alternatives --install /usr/bin/vi vi /usr/bin/vim.gtk3 1  
    sudo update-alternatives --set vi /usr/bin/vim.gtk3   
    sudo update-alternatives --install /usr/bin/vi vim /usr/bin/vim.gtk3 1  
    sudo update-alternatives --set vim /usr/bin/vim.gtk3    
    

解決策2:

それ以外の場合は、ソースコードからVimをコンパイルできます(Debianベースのシステムを使用している場合)

システムを準備する

  • インストール

    sudo apt install libncurses5-dev \
    libgtk2.0-dev libatk1.0-dev \
    libcairo2-dev python-dev \
    python3-dev git
    
  • Vimを既に削除している場合は削除します

    sudo apt remove vim vim-runtime gvim  

構成して作る

cd /usr && sudo git clone https://github.com/vim/vim.git && cd vim  

sudo ./configure --with-features=huge \
--enable-multibyte \
--enable-pythoninterp=yes \
--with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu/ \  # pay attention here check directory correct
--enable-python3interp=yes \
--with-python3-config-dir=/usr/lib/python3.5/config-3.5m-x86_64-linux-gnu/ \  # pay attention here check directory correct
--enable-gui=gtk2 \
--enable-cscope \ 
--prefix=/usr/local/

sudo make VIMRUNTIMEDIR=/usr/local/share/vim/vim81 

checkinstallを使用してdebパッケージを準備する

  • そしてそのパッケージをインストールする

    cd /usr/vim && sudo checkinstall
  • または、--install=nocheckinstallでパッケージ使用オプションのみを作成する場合

Vimをデフォルトのエディターとして設定する

sudo update-alternatives --install /usr/bin/editor editor /usr/local/bin/vim 1
sudo update-alternatives --set editor /usr/local/bin/vim
sudo update-alternatives --install /usr/bin/vi vi /usr/local/bin/vim 1
sudo update-alternatives --set vi /usr/local/bin/vim   

以下を見て、新しいVimバイナリを実行していることを確認します

vim --version | grep python

参考文献:
- ソースからビルドのVim
- のcheckinstall
- VIMの変種


+1sudo apt install vim-nox
Philippe Gachoud

1

チェックしただけで、PPAから利用できるvim-nox(v。8.1)はPython 3でコンパイルされていました(両方必要な場合のみ、両方必要な場合はNeovimに切り替えることをお勧めします)。


0

これは、同様の問題を抱えているWindowsユーザーのみを対象としています。

Windows 64ビットでは、VIMと同じビットPythonバージョンをインストールする必要があります。等

32bit vim => 32bit python
64bit vim => 64bit python

そうしないと、python2x.dllまたはpython3x.dllはロードされません。


OPはPythonなしでコンパイルされたvimバイナリを使用していました。さらに、彼はWindowsではなくLinuxでそれを使用しています。
ハーブウルフ

@HerbWolfeはい、知っています。それは適切ではないかもしれませんが、ソリューションのためにこの投稿をヒットしたいくつかのWindowsの人のためだけにここに入れました。私はこの問題を解決するために何時間も費やしました、そしてそれについて他の人と同じ時間を過ごしたいです。しかし、思い出させてくれてありがとう。
ダニールリトル
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.