С помощью vim, как я могу использовать autocmd для файлов в подкаталогах определенного пути?
Я пытаюсь выяснить, как я могу определить autocmd, который влияет на все файлы по определенному пути.
Автозапуск, который я пробовал, похож на
autocmd BufNewFile,BufRead /specificPath/** imap <buffer> ....
Теперь я бы ожидал, что этот autocmd будет использоваться, если я отредактировал, скажем, /foo/bar/specificPath/baz/something/bla.txt, но не, если бы я отредактировал /foo/bar/here/and/there/moreBla.txt
Если я запускаю vim, находясь в директории 'above' specificPath, это работает так, как я хочу. Но это не так, если я ниже этого каталога. Очевидно, что шаблон autocmd сопоставляется с относительным именем файла, а не с абсолютным.
Ответы
Ответ 1
Итак, я сделал это в своем коде с путями по определенному пути. Вам нужно сделать:
autocmd BufRead,BufNewFile */somepath/* set filetype=sometype
По крайней мере, это то, что я использовал, чтобы установить данный тип файла для вещей под определенным пути к библиотеке. Надеюсь, это поможет с вашим примером.
Ответ 2
Это ответит на все ваши вопросы.:)
:h autocmd-patterns