завершение пути vim в командном режиме - PullRequest
0 голосов
/ 04 мая 2018

В vim. Если вы нажмете :e <tab><tab>, vim завершит какой-нибудь путь.

Тем не менее, я хочу открыть a/b/c/d.cpp, я поглаживаю :e <tab><tab> и нахожу AA.

Я хочу найти подкаталог AA. Как вариант, я нажимаю клавишу /.

пример :e AA//BB//CC//DD.cpp

Есть еще один хороший способ? Таким образом, я хочу знать полный путь для подкаталога в команде :e.

Ответы [ 2 ]

0 голосов
/ 04 мая 2018

Этот ответ основан на предположении, что вы хотите указать путь для выбора правильного файла для редактирования.

Могу ли я предложить использовать :find после правильной настройки пути. Это сэкономит лишний объем печати. ​​

Вы можете начать с установки :set path+=** (это также будет искать подкаталоги). Теперь вы можете просто сделать

:find d.cpp

vim сделает все остальное за вас. Он найдет путь к d.cpp и откроет его. Что приятно, так это то, что он позволяет использовать подстановочный знак, например, как :find d.* или :find *.cpp.

Если вы не хотите использовать find и продолжить с edit, возможно, это будет полезно для :set wildmenu. Это покажет все доступные опции, которые вы можете перебрать с помощью tab

0 голосов
/ 04 мая 2018

Завершение командной строки позволяет использовать подстановочные знаки.

Базовый * означает «любой символ»:

:e *<Tab>          " similar to plain <Tab>
:e foo*<Tab>       " completes only files starting with 'foo'

Любитель ** означает "любой подкаталог":

:e **/<Tab>        " completes every file under every subdirectory
                   " of the current working directory
:e **/*foo<Tab>    " completes every file ending with 'foo' under every subdirectory
                   " of the current working directory

См. :help file-searching.

Кстати, это "режим командной строки". «Командный режим» - это просто другое название «нормального режима».

...