Як створити каталог в Emacs?


142

Як саме я можу створити новий каталог за допомогою Emacs? Які команди я використовую? (Якщо можливо, наведіть приклад)

Відповіді:


195
  • щоб створити каталог 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 створювати проміжні режими - під час збереження файлу?


1
Привіт JF Себастьян, Коли я створюю каталог в оболонці, як оновити вікно каталогу?
чому

2
@why: тип g. Загалом M-x describe-mode RET( C-h m) для відображення документації поточного основного режиму.
jfs

Дуже дякую! Але ти маєш на увазі я введення Mx g або Cx g?
чому

1
@ чому він означає одиноку g. Оскільки dired-modeце не режим редагування, він використовує однобуквені команди безпосередньо (для допитливих: gприв'язується до self-insert-commandбільшості режимів редагування).
Vicky Chijwani

42

Ctrl+ X D( C-x d), щоб відкрити каталог у режимі "діред", а потім +створити каталог.


Я припускаю, що "+" закінчується в кінцевому підсумку, будь-який новий каталог шляху файлу буде?
Рей

коли я роблю Cx Cf і вводю "+ dirname", emacs створює файл "+ dirname", він не створює каталог "dirname". Я працюю з OSX, не знаю, чи це проблема, тому що в Linux це працювало.
Зейнель

4
@Zeynel: Ти не читаєш. Тут немає C-x C-f. Ви використовуєте C-x dдля переходу до режиму "Наданий", відвідуючи каталог, де ви хочете створити підкаталог. Тоді ти вдариш +. Це все.
Дрю

8

Ви також можете запускати команди одного оболонки, використовуючи M-!

Ви в основному надсилаєте рядок до командного рядка, щоб не отримати приємного автоматичного завершення, але це корисно, якщо ви знаєте, як виконати дію через командний рядок, але не знаєте еквівалентного способу Emacs.

M-! mkdir /path/to/new_dir

Це працює, введіть 'g' після цього, щоб оновити вміст екрану.
містиг

5

Я думаю, я зробив це важким шляхом раніше сьогодні. Я зробила:

M-x shell-command

тоді

mkdir -p topdir/subdir

4

Ви можете використовувати M-x make-directoryвсередині будь-якого буфера, не обов'язково переробленого буфера. Це функція lisp, яку ви також можете використовувати.


2

Я натрапив на це питання під час пошуку способів автоматичного створення каталогів у Emacs. Найкраща відповідь, яку я знайшов, була в іншій темі через кілька років. Відповідь Віктора Дерягіна була саме тим, що я шукав. Якщо додати цей код до ваших .emacs, Emacs запропонує вам створити каталог, коли ви збираєтесь зберегти файл.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.