如何从Emacs中创build一个目录?

我怎样才能使用Emacs创build一个新目录? 我使用什么命令? (如果可能,请举例说明)

  • 要创build目录dir/to/create ,请键入:

     Mx make-directory RET dir/to/create RET 
  • 要创build目录dir/parent1/nodedir/parent2/node ,请键入:

     M-! mkdir -p dir/parent{1,2}/node RET 

    它假定Emacs的低级shell是bash / zsh或其他兼容的shell。

  • 或在Dired模式下

     + 

    它不会创build不存在的父目录。

    例:

     Cx d *.py RET ; shows python source files in the CWD in `Dired` mode + test RET ; create `test` directory in the CWD 

    CWD代表当前工作目录。

  • 或者只需使用Cx Cf创build一个不存在父目录的新文件,然后键入:

     Mx make-directory RET RET 

Emacs要求在最近的Emacs版本中保存一个新文件时自动创build父目录。 对于旧版本,请参阅如何使Emacs创build中间目录 – 保存文件时?

Ctrl + X DCx d )以“dired”模式打开一个目录,然后+创build一个目录。

你也可以用M-!运行单一的shell命令

你基本上是把一个string发送到命令行,所以你没有得到任何好的自动完成,但是如果你知道如何通过命令行执行一个动作,但是不知道Emacs的等价方式,那么这很有用。

 M-! mkdir /path/to/new_dir 

我想我今天早些时候已经做到了这一点。 我做了:

 Mx shell-command 

然后

 mkdir -p topdir/subdir 

您可以在任何缓冲区内使用Mx make-directory ,而不一定是dired缓冲区。 这也是一个lisp函数。

我在search如何在Emacs中自动创build目录时遇到了这个问题。 我发现最好的答案是在几年后的另一个线程 。 Victor Deryagin的回答正是我所期待的。 将这些代码添加到.emacs中将使Emacs在您保存文件时提示您创build目录。