Как изменить каталог поиска CtrlP в соответствии с корнем NerdTree?
Я хочу, чтобы мой каталог поиска CtrlP динамически изменялся каждый раз, когда я меняю корневой каталог NerdTree.
Как работает плагин для связи с плагином в vim?
1 ответ
Решение
Это не работает вообще. Vim просто не раскрывает общий интерфейс, который помог бы авторам плагинов заставить их плагины работать без проблем. Возможно, однажды…
В то же время у нас остается реверс-инжиниринг, чтение исходного кода и, как всегда, RTFM.
NERDTree-х NERDTreeChDirMode
опция, которая определяет поведение плагина в отношении изменения "текущей директории" Vim:
If the option is set to 2 then it behaves the same as if set to 1 except that
the CWD is changed whenever the tree root is changed. For example, if the CWD
is /home/marty/foobar and you make the node for /home/marty/foobar/baz the new
root then the CWD will become /home/marty/foobar/baz.
На стороне CtrlP, ctrlp_working_path_mode
вариант звучит интересно:
w - begin finding a root from the current working directory outside of CtrlP
instead of from the directory of the current file (default). Only applies
when "r" is also present.
Таким образом, похоже, что два варианта ниже даст вам то, что вы хотите:
let g:NERDTreeChDirMode = 2
let g:ctrlp_working_path_mode = 'rw'