Как создать каталог из Emacs?
Как именно я могу создать новый каталог с помощью Emacs? Какие команды я использую? (Если возможно, приведите пример)
6 ответов
-
для создания каталога
dir/to/create
, тип:M-x make-directory RET dir/to/create RET
-
для создания каталогов
dir/parent1/node
иdir/parent2/node
, тип:M-! mkdir -p dir/parent{1,2}/node RET
предполагается, что нижняя оболочка Emacs
bash
/zsh
или другой совместимой оболочки. -
или
Dired
режим+
он не создает несуществующие родительские каталоги.
пример:
C-x d *.py RET ; shows python source files in the CWD in `Dired` mode + test RET ; create `test` directory in the CWD
CWD
обозначает текущий рабочий каталог. -
или просто создайте новый файл с несуществующими родительскими каталогами, используя
C-x C-f
иM-x make-directory RET RET
Emacs запрашивает автоматическое создание родительских каталогов при сохранении нового файла в последних версиях Emacs. Для более старой версии см. как заставить Emacs создавать промежуточные dirs - при сохранении файла?
вы также можете запускать команды одной оболочки с помощью M-!
вы в основном отправляете строку в командную строку, поэтому вы не получаете хорошего автоматического завершения, но это полезно, если вы знаете, как выполнить действие через командную строку, но не знаете эквивалентного способа Emacs.
M-! mkdir /path/to/new_dir
Я думаю, что я сделал это трудный путь ранее сегодня. Я:
M-x shell-command
затем
mkdir -p topdir/subdir
можно использовать M-x make-directory
внутри любого буфера, не обязательно dired буфера. Это функция lisp, которую вы также можете использовать.
Я столкнулся с этим вопросом при поиске того, как автоматически создавать каталоги в Emacs. Лучший ответ я нашел в другой поток через несколько лет. Ответ от Виктор Дерягин было именно то, что я искал. Добавление этого кода к вашему .emacs заставит Emacs предложить вам создать каталог, когда вы идете, чтобы сохранить файл.