2014-01-15 4 views
4

Я пытаюсь получить автозаполнение для OCaml. Мне нравится использовать Vim, и я нашел этот плагин:Получить autocomplete ocamlmerlin в vim

https://github.com/the-lambda-church/merlin

Я установил его с помощью OPAM и добавил необходимые строки, чтобы загрузить его в мой .vimrc

Я убедился, что OPAM бен папка (которая содержит ocamlmerlin) находится в моем файле .profile и проверял, что я могу получить к нему доступ с терминала, а для vim я распечатал переменную PATH с помощью «Ctrl-r = $ PATH», и она показывает, что она содержит папку OPAM bin.

Это все еще не работает, я понятия не имею, что еще нужно сделать, чтобы оно работало. Я получаю подсветку синтаксиса, но это все равно без merlin. Я хочу, чтобы автозаполнение работало.

Если я нажму Ctrl-N, чтобы показать предложение завершения, я получаю «нормальное» завершение vim, которое в основном представляет собой список слов, упомянутых в документе.

Проверка файла журнала запуска, я могу видеть, что Vim сделал действительно нагрузки Merlin:

chdir(/home/incraved/.opam/system/share/ocamlmerlin/vim/plugin) 
fchdir() to previous dir 
sourcing "/home/incraved/.opam/system/share/ocamlmerlin/vim/plugin/merlin.vim" 
finished sourcing /home/incraved/.opam/system/share/ocamlmerlin/vim/plugin/merlin.vim 
Searching for "/home/incraved/.opam/system/share/ocamlmerlin/vimbufsync/plugin/**/*.vim" 

Есть идеи?

ответ

3

Ctrl-N - это по умолчанию; его источники настроены с помощью опции 'complete', но не могут включать настраиваемые источники.

Плагин Merlin использует Omni завершение, которое запускается с помощью Ctrl-X Ctrl-O; см. :help compl-omni.

+0

В нем указано, что omnifunc не определен? –

+0

Спасибо, я нашел! Сначала мне нужно было включить его: http://vim.wikia.com/wiki/Omni_completion –

Смежные вопросы