emacs, anuluj podział określonego okna


97

To może być głupie pytanie, ale nie mogłem znaleźć bezpośredniego rozwiązania tego problemu. Często chcę rozdzielić okno w następujący sposób

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



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

Obecnie zaczynam od ctrl- x 1a następnie dzielę w pionie / poziomie. ale moim prawdziwym pytaniem jest, jak można usunąć określone podzielone okno bez naruszania struktury drugiego okna? czy jest wbudowana funkcja elisp?


moja zła kopia wklejona z mojego emacsa, jak mogę edytować pytanie?
kindahero

Wystarczy kliknąć editłącze pod tagami. Zrobiłem to dla ciebie tym razem. Unikaj także znaków tabulacji w środku linii. Robi spustoszenie w formatowaniu.
Marcelo Cantos,

Wow, Marcelo Dzięki za to. poprawione w
mgnieniu oka

Odpowiedzi:


141

Możesz użyć C-x0kombinacji klawiszy, aby usunąć bieżące okno.


3
Dzięki, to dało mi odpowiedź. Mówiąc dokładniej, Cu Cx 0 dało efekt, o którym mi chodziło.
kindahero

Powinno to również być powiązane z Cw q zgodnie z domyślnym zachowaniem per vim
Hennadii Madan

Używam Emacsa od 30 lat i nigdy nie zauważyłem tej funkcji!
Blisterpeanuts

22

Odpowiedź Remiego jest tym, czego szukasz, ale tryb zwycięzcy jest również niezwykle przydatny, aby wrócić do poprzednich konfiguracji okna po wprowadzeniu dowolnych zmian (takich jak przywrócenie tych wielokrotnych podziałów po wpisaniu C-x1).

Możesz włączyć to w swoim pliku init za pomocą:

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

Zobacz także: http://www.emacswiki.org/emacs/CategoryWindows

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.