2015-08-09 21 views
15

Tôi đang cố gắng sử dụng neovim với deopleteUtilSnips. Cả hai đều yêu cầu hỗ trợ Python từ nvim.Hỗ trợ không hoạt động

Tôi đã làm theo hướng dẫn trong :help nvim_python để đặt hỗ trợ nhưng kết quả của :echo has('python') hoặc :echo has('python3') đều là 0.

Khi khởi động nvim, tôi nhận được thông báo UltiSnips requires py >= 2.7 or py3 và cho deoplete It requires Neovim with Python 3 support ("+python3").

My python (2.7.10) và python3 (3.4.3) đều được cài đặt với homebrew. Mô-đun neovim được cài đặt trên pippip3 với install neovim nhưng nvim không thể tìm thấy nó, ngay cả khi tôi đặt đường dẫn let g:python_host_prog trong nvimrc.

Tôi không biết mình có thể làm gì nữa, có ai có ý tưởng sai với nó không?

+0

Tôi không chắc liệu tính năng này có hoạt động hay không. Loại 'nơi python' hoặc 'mà python' để kiểm tra xem python của bạn có được cài đặt đúng hay không. Sau đó tự cấu hình nvim của bạn để nhìn vào đường dẫn kết quả. Một vấn đề tiềm năng khác là cài đặt nvim của bạn không phải là những gì bạn nghĩ rằng bạn đã cài đặt. Bạn đã thực hiện giải nén thủ công trước khi cài đặt pip chưa? – Mai

+0

Con trăn của tôi đều nằm trong/usr/local/bin/như đầu ra của 'cái' nói. Tôi đã cài đặt nvim thông qua homebrew khi họ mô tả nó trong tài liệu neovim cho OS X. – hueby

+0

Có vấn đề chính xác này, bất kỳ sự trợ giúp nào được đánh giá cao –

Trả lời

0

Tôi đã gặp sự cố vì tôi đã sử dụng neovim bên trong virtualenv. Nếu vậy, hãy đảm bảo rằng pip install neovim bên trong virtualenv của bạn và đảm bảo rằng import neovim hoạt động trong trình thông dịch python.

Nếu điều đó không hiệu quả, bạn có thể thử và chạy neovim bằng thông báo gỡ lỗi (neovim -V3 hoặc bất kỳ mức ghi nhật ký nào khác) và xem những gì bạn có thể chọn từ đó.

12

Vui lòng làm theo hướng dẫn trên http://neovim.io/doc/user/nvim_python.html để thiết lập trình thông dịch python cho neovim.

Đầu tiên, cài đặt plugin neovim

pip install neovim

In g: loaded_python_provider

echo g:loaded_python_provider

Nếu nó trả 1, những trăn không phải là thiết lập cho neovim. Trong tập tin ~/.config/nvim/init.vim của bạn, thiết lập các thông dịch viên python

let g:python_host_prog = '/path/to/python2.7'

+0

đừng quên thêm cấu hình cho python3 quá –

+2

Liên kết tới http://neovim.io/doc/user/nvim_python.html đã chết. Chúng ta có gì khác không? – charlespwd

+1

@charlespwd điều gần nhất tôi có thể tìm thấy https://neovim.io/doc/user/provider.html#provider-python – Ullullu

0

Nếu khi bạn cố gắng hãy [interp, lỗi] = Nhà cung cấp # pythonx # Detect (2)

Từ các tài liệu tại https://github.com/neovim/neovim/wiki/Troubleshooting#python-support-isnt-working

Bạn nhận được lỗi, có thể là bạn có biến môi trường VIM của bạn trỏ đến thư mục thời gian chạy sai (có thể là vim74).

Neovim cần pythonx.vim từ thư mục runtime/autoload/providers/folder để tải một con trăn. Vim74 không cung cấp tệp này.

Nếu bạn có env. biến VIM (với một đường dẫn), nó sẽ sử dụng nó như vị trí của bạn trong các tệp thời gian chạy của bạn - tôi đã đặt thành/usr/share/vim/vim74, thay đổi nó thành vị trí của neovim. Tôi đoán có một tùy chọn biên dịch thời gian để trỏ đến vị trí chính xác quá.

1

Tôi đặt cược bạn có một dòng trong tệp init bắt đầu bằng "set runtimepath =". Thay đổi thành "đặt runtimepath + ="

5

Gần đây tôi đã gặp phải sự cố tương tự. Dưới đây là các bước được điều chỉnh từ câu trả lời của @VforVitamin nơi tôi đã làm cho nó hoạt động.

Giả sử python2 và python3 được cài đặt.

  1. Cài đặt plugin neovim pip3 install neovim.
  2. Mở neovim.
  3. Lệnh thi hành :UpdateRemotePlugins.
  4. Khởi động lại neovim.
0

Tôi đã gặp vấn đề tương tự và giải pháp thực sự gây ra từ câu hỏi.

Những gì tôi đã làm là:

pip install --upgrade pip 
pip3 install --upgrade pip 

sudo pip install setuptools 
sudo pip3 install setuptools 

sudo pip install neovim 
sudo pip3 install neovim 

Sau đó, nhập vào neovim và :UpdateRemotePlugins. Đóng lại và mở lại.

Sau các bước này, tôi đã hoạt động bình thường neovim.

Edit:

Đối với những người sử dụng Arch Linux, chúng ta có một đặc thù về Python. Các bước thực hiện:

  1. Install pip (python3) và PIP2 (python2): pacman -S python-pip python2-pip
  2. Thay vì pip3, bạn nên sử dụng pip2

Ngoài sự khác biệt nhỏ này, phần còn lại của lệnh này làm việc khá theo cùng một cách.

Các vấn đề liên quan