Hoàn thành đối số cho python


9

Có cách nào để hoàn thành đối số cho python không?

Tôi hiện đang sử dụng kết hợp ctags, python-mode và YouCompleteMe, nhưng tôi thiếu một chức năng để tự động hoàn thành các đối số của hàm (hoặc hiển thị chúng ít nhất.)

Có một Plugin hỗ trợ điều đó?

Tôi đang sử dụng vim / gvim 7.4 và Ubuntu 14.04

Câu trả lời:


10

Theo mặc định, (với một vimrc tối thiểu và không có plugin nào được cài đặt), điều này đã có thể.

Các tàu Vim có nhiều plugin filetype và một số các plugin này cung cấp hoàn thành omni ngay lập tức. Ví dụ: python đi kèm với pythoncomplete.vim.

Nếu bạn sử dụng pythoncomplete.vim mặc định đi kèm với Vim, (tức là không có YouCompleteMe, không chế độ python, không jedi-vim), bạn sẽ nhận được một cửa sổ xem trước khi bạn hoàn thành một chức năng, hiển thị các đối số từ khóa.

Tất cả bạn cần là Vim với +pythontính năng ( :echo has('python')hiển thị 1). Nếu bạn làm như vậy, thì đây là tất cả những gì cần thiết để kích hoạt hoàn thành omni python mặc định với vimrc của bạn:

filetype plugin indent on

Sau khi tìm kiếm nhiều giải pháp hoàn thiện khác cho python (jedi, python-mode), tôi đã đến như pythoncomplete.vim được gửi cùng với Vim rất nhiều. Nó đơn giản và quan trọng nhất đối với tôi, nó rất ổn định, đặc biệt là so với các giải pháp như jedi-vim / python-mode và YouCompleteMe.

Đây là những gì các giải pháp mặc định trông giống như. Nó không cung cấp hoàn thành các đối số, nhưng chỉ hiển thị chúng trong cửa sổ xem trước để bạn dễ dàng điền vào các đối số từ khóa như vậy:

nhập mô tả hình ảnh ở đây


2
@ lcd047: Bằng cách nào điều này không trả lời câu hỏi? Câu hỏi là tìm một giải pháp để "tự động hoàn thành các đối số của hàm (hoặc hiển thị chúng ít nhất.)". Tôi đã đề xuất một giải pháp sẽ hiển thị các đối số của hàm. Bạn đề xuất hoàn thành các đối số, tôi đề xuất hiển thị chúng. Người hỏi có thể chọn sở thích của mình. Tôi không thấy vấn đề ở đây.
akshay

Tôi muốn tìm thêm thông tin về plugin này. Làm thế nào để bạn sử dụng nó? Tôi có cần ctags cho nó không?
Neaţu Ovidiu Gabriel

@ NeaţuOvidiuGabriel: plugin này được tích hợp vào Vim, bạn không cần bất cứ điều gì ngoài những gì câu trả lời của tôi nói với bạn.
akshay 23/2/2016
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.