Öffne ein neues Fenster und wechsle dorthin


8

Angenommen, ich öffne zum Beispiel ein neues Fenster mit C-x 2oder C-x 3dann öffnet sich der Puffer und ich muss von Hand mit darauf wechseln C-x o. Gibt es eine integrierte Lösung, um dies mit einem Befehl zu tun? Oder sogar das oben Genannte zu modifizieren wäre auch cool.

Antworten:


9

Der folgende Code, der von Dawid Eckert geschrieben und in seiner github emacs.config veröffentlicht wurde, bewegt den Cursor auf den neu erstellten Puffer:

(defun split-and-follow-horizontally ()
  (interactive)
  (split-window-below)
  (balance-windows)
  (other-window 1))
(global-set-key (kbd "C-x 2") 'split-and-follow-horizontally)

(defun split-and-follow-vertically ()
  (interactive)
  (split-window-right)
  (balance-windows)
  (other-window 1))
(global-set-key (kbd "C-x 3") 'split-and-follow-vertically)

8

C-x4bwird ausgeführt, switch-to-buffer-other-windowwodurch zum angegebenen Puffer gewechselt wird (es wird jedoch nur ein Puffer angezeigt).

Für ein komplexeres Verhalten müssten Sie die Funktion selbst implementieren. Sie können die Implementierung der zuvor genannten Funktion als Inspiration nachschlagen:

(defun switch-to-buffer-other-frame (buffer-or-name &optional norecord)
  "..."
  (interactive
   (list (read-buffer-to-switch "Switch to buffer in other frame: ")))
  (pop-to-buffer buffer-or-name display-buffer--other-frame-action norecord))
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.