С помощью 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