Vim javascript omnicomplete

Я пытаюсь заставить vim предоставить некоторую форму jQuery Omnicomplete. Я использовал ctags для генерации тегов, основанных на файле jquery js. После этого я включил omnicompletion для javascript, используя

autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS

после чего я установил переменную тегов в файл тега, который я создал

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

Когда я открываю js файл и использую :ta, я могу найти нужную функцию, но когда я пытаюсь использовать omnicompletion, она просто не появляется. Например, я взял этот код из сети, чтобы проверить:

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

В VIM после ввода $("input"). я нажимаю вкладку (с настройкой supertab), а has не появляется, хотя я могу найти его через нечеткий поиск или :ta

Любые предложения относительно того, что я могу сделать, чтобы решить эту проблему? Спасибо!)

Ответы

Ответ 2

javascriptcomplete#CompleteJS не использует файл ctags для завершения.

Что вы можете сделать, вы можете написать свою собственную функцию omni-complete для jQuery или, что еще лучше, развернуть функцию javascriptcomplete#CompleteJS, определенную в /usr/share/vim/vim72/autoload/javascriptcomplete.vim, в соответствии с вашими потребностями.

Ответ 3

Еще один способ получить javascript autocompletion - использовать проект mozilla jsctags. Он генерирует лучшие теги для javascript, чем "exuberant ctags". Надеюсь, вы увидите больше, когда будете использовать supertab и taglist-plus.

Для получения дополнительной информации: http://www.discontinuously.com/2011/03/vim-support-javascript-taglist-plus/