LINUX.ORG.RU

VIM: Подсказка имени файла в режиме редактирования

 


0

2

Подскажите, что-то заблудился в мануале.

Часто редактируя разного формата файлы, нужно указать полный или относительный путь к другому какому-то файлу, причём не только в языке программирования, но например в readme.txt или конфиге каком зная только часть имени файла (без пути), т.е. в идеале хочется набрать часть имени файла, нажать кнопку, получить список предложенных файлов с полными путями, выбрать подходящий, вставить этот полный *путь* по месту редактирования.

Гугление посылает на CtrlP, autocomplete разных сортов, но это всё не то: мне не найти и открыть в отдельном окне надо, — мне нужно ПУТЬ_ИМЯ_ФАЙЛА выбрать из списка похожих и вставить по месту редактирования, ничего не открывая.


Ответ на: комментарий от pon4ik

не то, выводит браузер, в котором надо лазить, мне бы такое, которое ищет из set path окружения рекурсивно, как :find myfile<tab>

exhu ()
Ответ на: комментарий от exhu

Чем комплит в инсерт моде отличается от комплита в командном режиме?

Напиши myfileC-xC-f Используй C-n и C-p для навигации по результатам(ну или перемапь их на таб если так привычнее).

pon4ik ★★★★★ ()
Ответ на: комментарий от pon4ik

c-xc-f возвращает Pattern not found, а :find myfile<tab> находит, вот и разница.

exhu ()
Ответ на: комментарий от exhu

Стоп, забыл сказать то - комбинация для insert mode.

pon4ik ★★★★★ ()
Ответ на: комментарий от pon4ik

Да, я нагуглил C-x,c-f, но это не то, оно не ищет по тому же алгоритму как :find

exhu ()
Ответ на: комментарий от exhu

Тогда - описывай алгоритм более подробно, мне к примеру - отличия не ясны :)

Может у тебя плагиньё какое то стоит которое меняет поведение.

В худшем случае, ты можешь написать свой omnifunc на основе команды find.

pon4ik ★★★★★ ()
Ответ на: комментарий от pon4ik

В принципе подходит :echo globpath(&path, «Myfilename»)

Теперь бы это сделать на хотки и выводить в виде окна подсказки с выбором...

exhu ()
Ответ на: комментарий от exhu

Видимо надо написать completefunc и сделать insertmode хоткей который вызывает completion с такой функцией.

pon4ik ★★★★★ ()

Вот так вот?

bde^Wn:. ls -d *^R"^M:map <buffer> <CR> 0d$:q!P<CR>

Не проверял!

DonkeyHot ★★★★★ ()

поставил YouCompleteMe, вроде помогает даже в текстовых файлах после C-xC-f

exhu ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.