Pertanyaan vim javascript omnicomplete


Saya mencoba untuk mendapatkan vim untuk menyediakan beberapa bentuk jQuery Omnicomplete. Saya telah menggunakan ctags untuk menghasilkan tag berdasarkan file js dia jquery. Setelah itu saya telah mengaktifkan omnicompletion untuk menggunakan javascript

autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS

setelah itu saya mengatur variabel tag ke file tag yang saya buat

set tags+=~/.vim/tags/jquery

Ketika saya membuka file js, dan gunakan :ta Saya dapat menemukan fungsi yang saya inginkan, tetapi ketika saya mencoba menggunakan omnicompletion, itu tidak muncul. Sebagai contoh, saya mengambil kode ini dari internet untuk menguji:

$("input").has(".email").addClass("email_icon");    

Di VIM, setelah mengetik $("input")., Saya menekan tab (dengan supertab mengatur) dan has tidak muncul, meskipun saya dapat menemukannya melalui fuzzy finder atau :ta

Ada saran apa yang bisa saya lakukan untuk menyelesaikan ini? Terima kasih!:)


18
2017-11-01 16:27


asal


Jawaban:


Gunakan Mozilla DoctorJS (dahulu jsctags), yang juga digunakan dalam Cloud9 IDE's Editor online Ace.

Lihat jawaban saya untuk pertanyaan ini dan pertanyaan ini untuk info lebih lanjut (instal, konfig, dll.).


7
2018-05-05 06:50



javascriptcomplete#CompleteJS tidak menggunakan ctags file selesai.

Yang dapat Anda lakukan adalah, Anda dapat menulis fungsi omni-complete Anda sendiri untuk jQuery, atau bahkan lebih baik, memperluas javascriptcomplete#CompleteJS fungsi yang ditentukan dalam /usr/share/vim/vim72/autoload/javascriptcomplete.vim sesuai dengan kebutuhan Anda.


5
2017-11-30 22:14



Cara lain untuk mendapatkan autocompletion javascript adalah dengan menggunakan proyek 'jsctags' mozilla. Ini menghasilkan tag yang lebih baik untuk javascript daripada 'ctags ceria'. Semoga Anda akan melihat lebih banyak ketika Anda menggunakan supertab & taglist-plus.

Untuk info lebih lanjut: http://www.discontinuously.com/2011/03/vim-support-javascript-taglist-plus/


5
2018-04-06 05:33