Bagaimana cara membuat direktori dari dalam Emacs?


142

Bagaimana tepatnya saya bisa membuat direktori baru menggunakan Emacs? Perintah apa yang saya gunakan? (Jika mungkin, berikan contoh)

Jawaban:


195
  • untuk membuat direktori dir/to/create, ketik:

    M-x make-directory RET dir/to/create RET
  • untuk membuat direktori dir/parent1/nodedan dir/parent2/node, ketik:

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

    Diasumsikan bahwa cangkang inferior Emacs adalah bash/ zshatau cangkang kompatibel lainnya.

  • atau dalam Diredmode

    +

    Itu tidak membuat direktori induk tidak ada.

    Contoh:

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

    CWD adalah singkatan dari Current Working Directory.

  • atau cukup buat file baru dengan direktori induk yang tidak ada menggunakan C-x C-fdan ketik:

    M-x make-directory RET RET

Emacs meminta untuk membuat direktori induk secara otomatis sambil menyimpan file baru di versi Emacs terbaru. Untuk versi yang lebih lama, lihat Bagaimana membuat Emacs membuat direktori perantara - saat menyimpan file?


1
Halo JF Sebastian, Ketika saya membuat direktori di shell, bagaimana cara memperbarui jendela direktori?
mengapa

2
@mengapa: ketik g. Secara umum M-x describe-mode RET( C-h m) untuk menampilkan dokumentasi mode utama saat ini.
jfs

Terima kasih banyak! Tapi maksudmu saya masukan Mx g atau Cx g?
mengapa

1
@mengapa dia berarti tunggal g. Karena dired-modebukan mode pengeditan, ia menggunakan perintah huruf tunggal secara langsung (untuk yang penasaran: gterikat self-insert-commandpada sebagian besar mode pengeditan).
Vicky Chijwani

42

Ctrl+ X D( C-x d) untuk membuka direktori dalam mode "dired", lalu +untuk membuat direktori.


Saya berasumsi tanda '+' ada di akhir direktori path file yang baru?
Ray

ketika saya melakukan Cx Cf dan memasukkan "+ dirname" emacs membuat file "+ dirname", itu tidak membuat direktori "dirname". Saya bekerja dengan OSX, saya tidak tahu apakah itu masalahnya karena di Linux ini berfungsi.
Zeynel

4
@ Zeynel: Anda tidak sedang membaca. Tidak ada C-x C-fdisini. Anda gunakan C-x duntuk masuk ke mode Dired, mengunjungi direktori tempat Anda ingin membuat subdirektori. Lalu kamu menekan +. Itu saja.
Drew

8

Anda juga dapat menjalankan perintah shell tunggal menggunakan M-!

Anda pada dasarnya mengirim string ke baris perintah sehingga Anda tidak mendapatkan pelengkapan otomatis yang bagus tetapi ini berguna jika Anda tahu cara melakukan tindakan melalui baris perintah tetapi tidak tahu cara yang setara dengan Emacs.

M-! mkdir /path/to/new_dir

Ini berfungsi, ketik 'g' setelahnya untuk memperbarui konten layar.
mistige

5

Saya kira saya melakukannya dengan cara yang sulit sebelumnya hari ini. Aku melakukannya:

M-x shell-command

kemudian

mkdir -p topdir/subdir

4

Anda dapat menggunakan M-x make-directorybagian dalam buffer apa pun, tidak harus buffer yang dired. Ini adalah fungsi lisp yang bisa Anda gunakan juga.


2

Saya menemukan pertanyaan ini ketika mencari cara membuat direktori di Emacs secara otomatis. Jawaban terbaik yang saya temukan ada di utas lain dari beberapa tahun kemudian. Jawaban dari Victor Deryagin persis seperti yang saya cari. Menambahkan kode itu ke .emacs Anda akan membuat Emacs meminta Anda untuk membuat direktori ketika Anda pergi untuk menyimpan file.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.