emacs, batalkan pemisahan jendela tertentu

97

Ini mungkin pertanyaan bodoh, tetapi saya tidak dapat menemukan solusi langsung untuk ini. Saya sering ingin membuka jendela sebagai berikut

+--------------+-------------+             +--------------+-------------+
|              |             |             |              |             |
|              |             |             |              |             |
|              |             |             |              |             |
+--------------+             |     -->     |              |             |
|              |             |             |              |             |
|              |             |             |              |             |
|              |             |             |              |             |
+--------------+-------------+             +--------------+-------------+



+--------------+--------------+            +-----------------------------+
|              |              |            |                             |
|              |              |            |                             |
|              |              |            |                             |
+--------------+--------------+    -->     +-----------------------------+
|                             |            |                             |
|                             |            |                             |
|                             |            |                             |
+-----------------------------+            +-----------------------------+

Saat ini, saya mulai dengan ctrl- x 1dan kemudian membelah secara vertikal / horizontal. Tapi pertanyaan saya yang sebenarnya adalah bagaimana seseorang dapat menghapus jendela tertentu tanpa mengganggu struktur jendela lainnya? apakah ada fungsi elisp di dalamnya?

kindahero
sumber
saya buruk, salin ditempel dari emacs saya, bagaimana cara mengedit pertanyaan?
kindahero
Cukup klik edittautan di bawah tag. Saya telah melakukan ini untuk Anda kali ini. Selain itu, hindari karakter tab di tengah baris. Ini memainkan malapetaka dengan pemformatan.
Marcelo Cantos
Wow, Marcelo Terima kasih untuk itu. dikoreksi dalam waktu singkat
kindahero

Jawaban:

141

Anda dapat menggunakan C-x0kombinasi tombol untuk menghapus jendela saat ini.

Rémi
sumber
3
Terima kasih, itu memberi saya jawabannya. Tepatnya, Cu Cx 0 menghasilkan efek yang saya inginkan.
kindahero
Ini juga harus terikat ke Cw q sesuai perilaku default vim
Hennadii Madan
Saya telah menggunakan Emacs selama 30 tahun dan tidak pernah memperhatikan fitur ini!
Blisterpeanuts
22

Jawaban Rémi adalah apa yang Anda cari, tetapi mode pemenang juga sangat berguna untuk membawa Anda kembali ke konfigurasi jendela sebelumnya setelah melakukan perubahan sewenang-wenang (seperti memulihkan beberapa pemisahan setelah mengetik C-x1).

Anda dapat mengaktifkannya di file init Anda dengan:

(winner-mode 1) ;"C-c <left>" and "C-c <right>" undo and re-do window changes.

Lihat juga: http://www.emacswiki.org/emacs/CategoryWindows

phils
sumber