如何在 Emacs 中创建目录?

如何确切地使用 Emacs 创建新目录?我该使用什么命令?(如有可能,请举例说明)

57169 次浏览
  • 要创建目录 dir/to/create,键入:

    M-x make-directory RET dir/to/create RET
    
  • to create directories dir/parent1/node and dir/parent2/node, type:

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

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

  • 或者在 Dired模式下

    +
    

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

    例如:

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

    Abc0代表当前工作目录。

  • 或者使用 C-x C-f创建一个不存在父目录的新文件,然后键入:

    M-x make-directory RET RET
    

Emacs asks to create the parent directories automatically while saving a new file in recent Emacs versions. For older version, see How to make Emacs create intermediate dirs - when saving a file?

Ctrl + X D(C-x d)在“可怕”模式下打开一个目录,然后 +创建一个目录。

还可以使用 M-!运行单个 shell 命令

基本上就是向命令行发送一个字符串,所以不会得到任何很好的自动完成,但是如果您知道如何通过命令行执行操作,但是不知道 Emacs 等效的方法,那么它就很有用。

M-! mkdir /path/to/new_dir

您可以在任何缓冲区中使用 M-xmake-directory,而不一定是一个临时缓冲区。它也是一个可以使用的 lisp 函数。

我想我今天早些时候做得很艰难,我做到了:

M-x shell-command

那么

mkdir -p topdir/subdir

我在搜索如何在 Emacs 中自动创建目录时遇到了这个问题。我找到的最好的答案是几年后的 另一条线。来自 Victor Deryagin的答案正是我想要的。将该代码添加到。Emacs 将使 Emacs 在您保存文件时提示您创建目录。