Я нахожусь в положении, когда я хочу создать новый файл в том же каталоге, что и тот, в котором находится открытый файл. Как мне создать новый файл в каталоге открытого файла в vim? Кроме того, есть ли место, где я могу научиться этим вещам самостоятельно? Гугл не помог.
93
Ответы:
Изнутри Vim новые файлы создаются аналогично редактированию существующих файлов с помощью таких команд, как
:edit filename
или:split filename
. Чтобы сохранить их на диске, вам необходимо (при желании ввести содержимое и) сохранить их через:write
.Как и в командной строке, Vim имеет представление о текущем каталоге (
:pwd
перечисляет его). Все пути к файлам указаны относительно него. Вам не нужно дублировать путь к вашему текущему файлу, для них есть несколько хороших ярлыков:%
относится к текущему файлу,:h
является модификатором для его каталога, минус имя файла (cp.:help filename-modifiers
). Так,создаст новый файл с именем
filename
в том же каталоге, что и текущий открытый файл, и запишет его.В качестве альтернативы некоторым людям нравится, что Vim всегда переключается в каталог текущего файла. Это можно настроить, разместив
в ваш
~/.vimrc
файл (который читается при запуске Vim). Тогда выше становится простоНаконец, у Vim есть отличная встроенная программа
:help
. Научитесь ориентироваться и искать!источник
autochdir
к сожалению, ненадежный, и я обнаружил, что не могу на него полагаться. Вместо этого я поставил autocmd в свой vimrc:autocmd BufEnter * silent! lcd %:p:h:gs/ /\\ /
Вам следует попробовать плагин "nerdtree". В окне ботанического дерева вы набрали клавишу m, и вам отобразятся варианты операций с файлом.
источник
Если вы хотите создать новый файл, а также показать его в окне рядом с текущим файлом, вы можете попробовать следующее:
Символ
vsp
означаетvertical split
, и он разделяет экран пополам: на одном отображается текущий файл, а на другом - новый файл (также работает сsp
разделением по горизонтали).Согласно приведенному выше комментарию @MartinLyne, это создаст файл в каталоге файла, в котором вы открыли
vim
. Чтобы отрегулировать это, вы можете изменить текущий рабочий каталог следующим образом:Эта команда изменяет текущий рабочий каталог на каталог активного файла, что означает, что запуск
vsp
команды (или любой из вышеперечисленных команд) создаст файл в этом каталоге.источник
Когда вы открыли vim в несуществующем месте, например
$ vim /etc/<some_folder/<next_folder>/file.cfg
затем, чтобы создать новый каталог, находясь внутри vim, просто запустите в обычном режиме,
:! mkdir -p /etc/<some_folder/<next_folder>
а затем сохраните свой документ как обычно:w :x ZZ
(как хотите)вот и все
источник
Это для Гвим! Введите это, чтобы увидеть текущий каталог.
затем измените это с помощью
затем сохраните или создайте новый файл там
теперь снова посмотрим файл
источник
Я довольно опаздываю на вечеринку, но другой вариант - открыть NERDtree с помощью
:E
или:Explore
(или его альтернативных вариантов разделения:Vexplore
/:Sexplore
==:Vex
/:Sex
).В NerdTree вы можете создать новый файл
%
и ввести его имя. Он автоматически откроет файл и создаст его после того, как вы:w
/ сохраните его.источник