¿Cómo creo un directorio desde Emacs?


142

¿Cómo exactamente puedo crear un nuevo directorio usando Emacs? ¿Qué comandos uso? (Si es posible, proporcione un ejemplo)

Respuestas:


195
  • para crear el directorio dir/to/create, escriba:

    M-x make-directory RET dir/to/create RET
  • para crear directorios dir/parent1/nodey dir/parent2/nodeescriba:

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

    Se supone que el shell inferior de Emacs es bash/ zshu otro shell compatible.

  • o en un Diredmodo

    +

    No crea directorios primarios inexistentes.

    Ejemplo:

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

    CWD significa directorio de trabajo actual.

  • o simplemente cree un nuevo archivo con directorios principales no existentes usando C-x C-fy escriba:

    M-x make-directory RET RET

Emacs solicita crear los directorios principales automáticamente mientras guarda un nuevo archivo en versiones recientes de Emacs. Para una versión anterior, vea ¿Cómo hacer que Emacs cree directorios intermedios, al guardar un archivo?


1
Hola JF Sebastian, cuando creo un directorio en shell, ¿cómo actualizar la ventana del directorio?
por qué

2
@ por qué: tipo g. En general M-x describe-mode RET( C-h m) para mostrar la documentación del modo principal actual.
jfs

¡Muchas gracias! ¿Pero quieres decir que ingreso Mx go Cx g?
por qué

1
@por qué quiere decir soltero g. Como dired-modeno es un modo de edición, utiliza comandos de una sola letra directamente (para los curiosos: gestá obligado self-insert-commanden la mayoría de los modos de edición).
Vicky Chijwani

42

Ctrl+ X D( C-x d) para abrir un directorio en modo "dired", luego +para crear un directorio.


Supongo que el '+' va al final de lo que sea que sea el nuevo directorio de ruta de archivo.
Ray

cuando hago Cx Cf e ingreso "+ dirname", emacs crea un archivo "+ dirname", no crea un directorio "dirname". Estoy trabajando con OSX, no sé si ese es el problema porque en Linux esto funcionó.
Zeynel

44
@ Zeynel: No estás leyendo. No hay C-x C-faqui. Se usa C-x dpara ingresar al modo Dired, visitando el directorio donde desea crear un subdirectorio. Entonces golpeas +. Eso es todo.
Dibujó el

8

También puede ejecutar comandos de shell individuales utilizando M-!

Básicamente, está enviando una cadena a la línea de comando para que no obtenga ninguna finalización automática agradable, pero es útil si sabe cómo realizar una acción a través de la línea de comando pero no conoce una forma equivalente de Emacs.

M-! mkdir /path/to/new_dir

Esto funciona, escriba 'g' después para actualizar el contenido de la pantalla.
mistige

5

Supongo que lo hice por las malas hoy temprano. Yo hice:

M-x shell-command

luego

mkdir -p topdir/subdir

4

Puede usar M-x make-directorydentro de cualquier búfer, no necesariamente un búfer directo. Es una función lisp que también puedes usar.


2

Encontré esta pregunta mientras buscaba cómo crear directorios automáticamente en Emacs. La mejor respuesta que encontré fue en otro hilo de unos años más tarde. La respuesta de Victor Deryagin fue exactamente lo que estaba buscando. Agregar ese código a su .emacs hará que Emacs le pida que cree el directorio cuando vaya a guardar el archivo.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.