Wie schalte ich schnell zwischen Puffern um?

68

In Vanille Emacs muss ich C-x bden Puffernamen manuell eingeben, um zu wechseln. Wenn ich den Namen des Puffers vergesse, muss ich drücken, TABum mögliche Abschlüsse aufzulisten. Kann ich irgendetwas tun, um diesen Prozess zu beschleunigen?

Nixeagle
quelle
10
Dies sollte als Community Wiki gekennzeichnet werden. Aber Emacs hat bereits ein riesiges Wiki. Mein bestes Google-Ergebnis ist beispielsweise diese Seite zum Wechseln von Puffern . CW-artige Fragen fühlen sich für mich besonders fehl am Platz auf emacs.SE an.
purple_arrows
1
Ich benutze gerne C-x C-<left/right>, um schnell zwischen Puffern zu wechseln. Wenn ich zum "weiteren" Puffer wechseln muss, verwende ich IBuffer.
Kuanyui
Ich benutze 'Cx x', um die Puffer zu wechseln (mit Ruder und mit Kappen, die der Steuerung zugeordnet sind). Ich habe mich noch nie wohl gefühlt, 'Cx b' einzugeben.
wdkrnls
1
Verwenden Sie eine der Lösungen in den Antworten und verwenden Sie nicht Cx b. 3 Tasten sind zu viel für eine so häufige Betätigung. Ich persönlich benutze eine einzige Taste, die rechte Windows-Taste, die ich sonst nicht benutze.
Tom

Antworten:

50

Es gibt einen Ido- Modus, der helfen sollte.

BEARBEITEN:

Fügen Sie dies in Ihre Init-Datei ein, um den Ido-Modus standardmäßig zu aktivieren:

(ido-mode 1)

Nun C-x bwird Ihnen eine Liste der Kandidaten angezeigt.

Fügen Sie dies in Ihre Init-Datei ein, wenn Sie möchten, dass die Elemente vertikal angezeigt werden:

(setq ido-separator "\n")

Mit freundlicher Genehmigung von Ergoemacs

Lassen Sie mich auch diesen Beitrag vorschlagen , in dem es um das Umschalten zum vorherigen / nächsten Puffer geht.

Nsukami _
quelle
2
Wir sollten wahrscheinlich versuchen, die meisten wichtigen Informationen in diesem Beitrag als Antwort auf diese Frage zu erhalten. Auf diese Weise müssen zukünftige Benutzer keine Links zu möglicherweise toten Sites suchen.
Nixeagle
@nixeagle Ich habe einige Änderungen vorgenommen, ich hoffe die wichtigsten Informationen sind vorhanden.
Nsukami _
Ich habe deine positiv bewertet, da sie jetzt vollständig ist, aber ich werde ein paar Tage warten, bevor ich sie akzeptiere, falls andere mit anderen oder besseren Antworten kommen. Vielen Dank!
Nixeagle
@nixeagle es ist nichts!
Nsukami _
1
@nixeagle hast du eine bessere antwort gefunden?
Emacs User
43

Ich habe vor kurzem angefangen, C-x <left>und zu verwenden C-x <right>. Dies sind beide Standard-Emacs-Bindungen - nichts zu konfigurieren. Mit der linken Maustaste kehren Sie zum vorherigen Puffer zurück (anfangs identisch mit C-x b RET). Wenn Sie dies jedoch erneut tun, gelangen Sie zum 3. zuletzt besuchten Puffer. Wenn Sie viel zwischen 3 oder 4 Puffern hin und her springen, finde ich es viel einfacher, als zu versuchen, sich Puffernamen zu merken.

Ich habe auch gerade entdeckt C-x C-<left>und C-x C-<right>sind mit den gleichen Funktionen gebunden , so dass Sie nur die Strg - Taste und wechseln zwischen x gedrückt halten und die Pfeile durch Puffer zu kippen. Sehr schön!

David Caldwell
quelle
4
Ich stimme mit Ihnen ein! Ich bin ein Emacs-Neuling und möchte nicht mit zusätzlichen Paketen und noch mehr Konfigurationen überladen werden. Diese Lösung funktioniert bei mir! : D
Ankush981
Cx C- <left> und Cx C- <right> für den Sieg! Früher war der vorherige / nächste Puffer an CS- <left> / <right> gebunden. Aber irgendwie finde ich die Eingabe von Cx C-left noch einfacher als die Verwendung von zwei Metaschlüsseln. CS ist umständlich zu drücken.
Didier A.
Nett! Ich habe diese Bindungen vor einer Woche gelernt, dachte, wie toll sie waren, und vergaß dann, was sie sind. Konnte sie bis jetzt eine Woche lang nicht im Netz finden. Vielen Dank!
Kirill Yunussov
41

Du könntest Helm benutzen .

In meinem Setup habe ich eingeschaltet C-x bzu M-l. Dies helm-buffers-listmacht den Prozess ziemlich schnell, zumindest für mich.

Renan Ranelli
quelle
Dies ist jetzt im Grunde die beste Antwort. Sicher, Sie können immer noch idooder iswitchboder iciclesähnliches verwenden, aber Helm hat sie im Grunde genommen überholt. Ja, ace-jump-bufferist cool, aber nicht so schnell wie Helm, denn bevor Sie wissen, welche Taste Sie drücken müssen, müssen Sie den Puffer in der Liste finden. Mit Helm können Sie die Liste mit ein paar Tastenanschlägen eingrenzen, die Sie bereits kennen (wie den Namen des Puffers). Ich benutze es C-TAB, um zwischen Puffern zu wechseln, aktuelle Dateien, Lesezeichen usw. zu laden. Nichts ist schneller.
blujay
4
+1 für helm. Aber ich ziehe mit helm-mini, was auch zeigt Ihnen Recentfauf helm-buffers-list.
joon
1
Es gibt auch Efeu mit ivy-switch-buffer.
Oleksii Filonenko
Ich finde Efeu viel schneller als Helm, deshalb empfehle ich es über Helm.
Didier A.
10

Nur um Tweaks hinzuzufügen, die ich mit dem bereits erwähnten Ido verwende :

(require 'ido)
(require 'ido-hacks)
(require 'flx-ido)
(require 'ido-vertical-mode)

(ido-mode 1)
(flx-ido-mode 1)
(ido-hacks-mode 1)
(ido-everywhere 1)
(ido-vertical-mode 1)

(setq ido-enable-flex-matching t
      ido-use-filename-at-point 'guess
      ido-vertical-define-keys 'C-n-C-p-up-down-left-right))

Ich benutze auch ace-window, um zwischen Puffern zu wechseln und zwischen sichtbaren Fenstern ace-jump-modezu springen . Gewöhnungsbedürftig, aber einen Versuch wert.

Ich habe es mit kombiniert key-chord-modeund sofür einen schnellen Sprung getroffen:

(key-chord-define-global "so" 'ace-window)

Alle oben genannten Pakete sind über den Paketmanager von Melpa erhältlich.

Bartosz Kaliszuk
quelle
Ich habe bearbeitet Ihre Antwort zu ersetzen use-packagemit requireVerwirrung zu vermeiden. In dem angegebenen Beispiel muss ein Benutzer kein zusätzliches Paket installieren, um diese Lösung zu implementieren.
Kaushal Modi
1
Ich würde vorschlagen, keine Buchstabenkombinationen zu verwenden, die häufig in Englisch vorkommen (vorausgesetzt, Sie geben in Emacs hauptsächlich Englisch ein). Meiner Meinung nach ist "so" sehr leicht ungewollt auszulösen, wenn Sie Dinge wie "so", "einige", "persönlich" usw. sehr schnell eingeben.
Kaushal Modi
10

Wie @kuanyui in einem Kommentar sagt, sind next-buffer& previous-buffersehr schnell, wenn Sie nur ein paar Puffer haben, zwischen denen Sie wechseln können . (Für mehr als ein paar und für mehr Funktionen zur Pufferauswahl verwende ich icicle-buffer.)

Standardmäßig befinden sich jedoch next-bufferund previous-bufferauf einem PräfixschlüsselC-x .

Das bedeutet, dass sie nicht wiederholbar sind : Sie können nicht einfach treffen C-x <right> <right> <right>.... Sie müssen diese Befehle stattdessen entweder an verschiedene, wiederholbare Tasten binden oder verwenden C-x <right> C-x <right> C-x <right>..., was nicht sehr schnell ist.

Laden Sie für wiederholbare Versionen dieser Befehle die Bibliothek misc-cmds.elund ordnen Sie die nicht wiederholbaren Vanille-Versionen den dort definierten wiederholbaren Versionen zu:

(global-set-key [remap previous-buffer] 'previous-buffer-repeat)
(global-set-key [remap next-buffer]     'next-buffer-repeat)

(Auf ähnliche Weise finden Sie in derselben Bibliothek eine Version undo, die auch auf einem Präfixschlüssel wiederholbar ist:. undo-repeat)


Übrigens können Sie so ziemlich jeden Befehl (auch auf einer Präfix-Taste) mit der Funktion repeat-command(von misc-cmds.el) wiederholbar machen . Dies ist alles, was benötigt wurde, um die wiederholbare Version von next-buffer:

(defun previous-buffer-repeat ()
  "Switch to the previous buffer in the selected window.
You can repeat this by hitting the last key again..."
  (interactive)
  (require 'repeat nil t) ; Library `repeat.el' is in Emacs 22.1 and later
  (repeat-command 'next-buffer))
Drew
quelle
3
... oder einfach nächsten / vorherigen Puffer binden C-,und C-.Wiederholbarkeit zu gewinnen, und während Sie es sind sowieso gesetzt C-x.und C-x,auf other-windowund (lambda()(interactive)(other-window -1)). Das Radfahren von Fenstern erfordert wahrscheinlich weniger Wiederholbarkeit, und Sie kommen in einer Minute ohne zusätzliche Pakete davon.
Andreas Spindler
2
@AndreasSpindler: Sie können natürlich einen beliebigen Befehl auf eine wiederholbare Taste legen und damit wiederholbar machen. Das ist nicht der Punkt. Es gibt nur wenige wiederholbare Schlüssel, und ungebundene werden seltener. Hier erfahren Sie, wie Sie einen Befehl wiederholbar machen, wenn er sich auf einem Präfixschlüssel befindet .
Drew
1
Ich habe Ihren Beitrag unterstützt, aber mehr oder weniger auf das Thema dieses Threads verwiesen "Wie kann ich schnell zwischen Puffern wechseln?". Zu diesem Zweck fand ich Ihren Tipp next-bufferund previous-bufferdie beste Lösung, unabhängig von einer bestimmten Schlüsselbindung. Deshalb mein Kommentar.
Andreas Spindler
@ AndreasSpindler: Verstanden; Vielen Dank.
Drew
Das ist großartig, ich brauche oft wiederholbare Befehle, auch wenn sie Präfixschlüssel haben. Das heißt, ich habe festgestellt, dass der vorherige / nächste Puffer standardmäßig Cx C-left und Cx C-right ist, was es Ihnen ermöglicht, das alte C zu verwenden, und drücke einfach x-left und x-right. Welches ist nicht so schlimm als Standard.
Didier A.
9

Ich bin überrascht, dass noch niemand etwas erwähnt iswitchbhat. Es ist vielleicht nicht so mächtig wie ido, aber lange bevor ido-modees geboren wurde, iswitchb-modewar es bereits Standard für Emacs und es ist auch heute noch nützlich. Um es zu versuchen, setzen Sie einfach

(iswitchb-mode 1)

in deine .emacs oder aktiviere über M-x iswitchb-mode.

jimmij
quelle
4
iswitchbist veraltet ab Emacs 24.4. Alle Funktionen sind ab sofort verfügbar ido.
Tyler
4
@ Tyler Ich mag das Standard-Aussehen von iswitchb besser, weil es bunter und hübscher ist. Vielleicht kann ido so konfiguriert werden, dass es gleich aussieht, aber es hat (zumindest für mich) keinen Sinn, wenn iswitchb verfügbar ist.
Tom
8

Verwenden Sie helm-buffer-list oder helm-mini, um den Puffereintrag und den Fuzzy-Matching visuell auszuwählen. Es kann viele Dinge außerhalb des Pufferschaltens tun. Sie sollten die Demo im Link sehen.

Tu Do
quelle
6

Andere haben Pakete besprochen, die nützlich sind, um das Leben im Hinblick auf das Umschalten von Puffern / Fenstern / Rahmen zu erleichtern. (Ich persönlich benutze, helmwas phänomenal ist.) Ich möchte über einfachere Änderungen sprechen, die für eine angenehmere Emacs-Erfahrung sorgen können.

Für mich war die Lösung für meine Probleme mit dem Puffer / Frame (weil ich denke, dass dies C-x odas Schlimmste ist) kein Paket. es war einfach:

  • Zuordnung C-;zu other-window(Radfahren durch Fenster)
  • Zuordnung C-'zu other-frame(durch Frames radeln). Nachdem ich diese Verknüpfung hinzugefügt habe, habe ich tatsächlich viel mehr Frames verwendet.
  • Zuordnen anderer einfacher Tastenkombinationen mit einem Tastendruck zu einfachen benutzerdefinierten Funktionen zum Bearbeiten von Puffern im sichtbaren Rahmen. Zu den Beispielen gehören: Werfen eines Puffers in das andere Fenster (in einer Konfiguration mit zwei Fenstern), Wechseln zwischen dem aktuellen und dem letzten Puffer in einem bestimmten Fenster und Begraben des anderen Puffers (dieser Puffer eignet sich hervorragend zum Ersetzen des helpsich öffnenden Fensters) (beim Lesen von Manpages, Apropos usw.) mit dem zuvor sichtbaren Fenster).

Ich dachte auch, ich würde ein paar Gedanken über die Tastenbelegung teilen, die Neulinge vielleicht hilfreich finden. (Tut mir leid, wenn dies der falsche Ort ist.) Ich habe keine konkreten Vorschläge, sondern eine "Philosophie", mit der ich eine effektive Reihe von Tastenkombinationen für mich selbst aufrechterhalten kann.

  1. Nicht häufig verwendete Befehle verdienen keine einfachen Tastenkombinationen.

    • Laden keyfreq.elSie herunter und sehen Sie, was Sie wirklich häufig verwenden. Mit einer Überlebensmethode entscheide ich, welche Befehle die wertvollste Immobilie auf meiner Tastatur erhalten.
    • Haben Sie keine Angst, die voreingestellten Emacs-Tastenkombinationen loszuwerden, von denen einige einfach absurd sind. C-\ist eine große Abkürzung (aus den Gründen , in # diskutiert 2) ... und es wäre ein Verbrechen es auf den Standardbefehl zugeordnet verlassen werden: change-input-method. (Vielleicht benutzen einige von euch es oft, ich tue es bestimmt nicht.)
  2. Die folgenden Faktoren bestimmen die Benutzerfreundlichkeit und Geschwindigkeit einer Tastenkombination (beginnend mit der wichtigsten):

    • Kontinuierlich Drücken der Zusatztaste (was auch immer es sein mag, Ctrl, Meta, etc.). Zum Beispiel ist es für mich viel schneller zu schlagen C-c C-l C-pals zu schlagen C-x o. Ich persönlich finde es sehr unpraktisch, die CtrlTaste zwischen aufeinanderfolgenden Tastenanschlägen einer bestimmten Tastenfolge abheben zu müssen . Es ist so viel einfacher, einfach die Modifikatortaste zu drücken (in diesem Fall Ctrl). (Dieses spezielle Beispiel kann durch die Tatsache beeinflusst werden, dass ich meinen CtrlSchlüssel und meinen Caps-LockSchlüssel neu zugeordnet habe.)
    • Wechsel in deinem Freund . Es ist viel schneller für mich zu schlagen, C-c C-l C-pals es zu schlagen ist C-p C-' C-;. (Probieren Sie es aus und es sollte offensichtlich sein.) Im Allgemeinen ist es viel einfacher, Tastenfolgen zu verwenden, bei denen abwechselnde Hände (oder zumindest abwechselnde Finger auf derselben Hand) verwendet werden.
    • Grad der Abweichung von der Standardhandposition. Dies gilt nicht für die Hunt-and-Peck-Enthusiasten da draußen. Für den Rest von uns sollten unsere am häufigsten verwendeten Tastaturkürzel es uns jedoch ermöglichen, schnell und einfach zu unserer Standard-Tippposition zurückzukehren.

Nur ein paar Gedanken, von denen ich dachte, dass sie für Neulinge hilfreich sein könnten. Ich kann später noch etwas hinzufügen.

Iceman
quelle
3

Ich benutze windmove.elund bs.elum schnell zwischen Puffern zu wechseln. Beide Modi sind in Emacs enthalten.

  • windmove.el- wechselt in eine bestimmte Richtung in ein Fenster (ein gerade angezeigter Puffer), z. B. nach links, rechts, oben, unten.

  • bs.el- Ich verwende bs-cycle-nextund bs-cycle-previous, um zum nächsten Puffer zu wechseln, der derzeit nicht in einem Fenster angezeigt wird.

Sie können Setup mit windmove (windmove-default-keybindings)denen die entsprechenden Befehle binden Shift-Left Arrow, Shift-Right Arrowusw.

Zum Einrichten bs.elfunktioniert so etwas:

 (global-set-key [(f9)]   'bs-cycle-previous)
 (global-set-key [(f10)]  'bs-cycle-next)
Joe
quelle
Puffer ist NICHT Fenster (Frame)! Verwechsle sie nicht!
Kuanyui
2
Und ein Fenster ist kein Rahmen. Unabhängig davon windmove.elbefindet sich unter EmacsWiki die Seite "Switching Buffers", plus bs.elarbeitet mit Puffern, nicht mit Fenstern.
Joe
Ich habe geklärt, was windmove macht.
Joe
3

Der schnellste Weg, um zwischen Puffern zu wechseln, ist mit ace-jump-buffer. Ein Tastendruck öffnet das Puffermenü und wählt dann den Buchstaben neben dem gewünschten Puffer aus ace-jump-line-mode. Dies funktioniert am besten für die etwa 26 neuesten Puffer. Wenn Sie zu Puffern wechseln möchten, die in Ihrem Nutzungsverlauf weiter zurückliegen, ido-switch-bufferist dies immer eine gute Wahl.

waymondo
quelle
3

Ich bevorzuge die Navigation auf Registerkarten im Browser-Stil. Ich habe Strg + Tab und Strg + Umschalt + Tab an den nächsten bzw. vorherigen Puffer gebunden:

(global-set-key [C-tab] 'next-buffer)
(global-set-key [C-S-tab] 'previous-buffer)
Abbas
quelle
2

Allgemein gesprochen gibt es zwei Möglichkeiten, um den Puffer zu wechseln, und die meisten Lösungen fallen in eine dieser Möglichkeiten.

  1. Verwendung des Minipuffers

Dies ist C-x bdie Standardeinstellung. Ido bietet Ihnen eine schöne automatische Vervollständigung, so dass Sie nicht so viel TAB TAB TAB brauchen. Projekte wie helm, projectile usw. erleichtern das Arbeiten mit Dateien in einem Projekt usw. und können zusammen mit ido sehr nützlich sein.

  1. Ein gesamter Puffer mit allen aufgelisteten Elementen.

Dies ist nützlich, wenn Sie so viele Puffer haben und eine Liste von allen möchten. Sie können den Puffer nach oben und unten verschieben und die Eingabetaste drücken, um eine bestimmte Datei aufzurufen. Ibuffer ist ziemlich gut dafür.

Ich benutze beides und so kann man es einrichten.

 (global-set-key (kbd "C-x C-b") 'ido-switch-buffer)
 (global-set-key (kbd "C-x b") 'ibuffer)`
Jaseem
quelle
Für den zweiten Helm ist auch eine schöne Option
Tom
2

Neben ido habe ich folgendes Setup.

  1. Verwenden Sie im bösen Modus die folgenden Tastenkombinationen, um die Puffer zu wechseln

    (define-key evil-normal-state-map (kbd "C-j") 'next-buffer)
    (define-key evil-normal-state-map (kbd "C-k") 'previous-buffer)
    (define-key evil-normal-state-map (kbd "C-S-h") 'evil-window-left)
    (define-key evil-normal-state-map (kbd "C-S-j") 'evil-window-down)
    (define-key evil-normal-state-map (kbd "C-S-k") 'evil-window-up)
    (define-key evil-normal-state-map (kbd "C-S-l") 'evil-window-right)
    
  2. Legen Sie den Puffernamen als Fenstertitel fest. Dies hilft Ihnen beim Navigieren mit den obigen Tastenkombinationen

    (setq frame-title-format "%b")
    
  3. Wenn Sie den bösen Modus verwenden, können Sie es versuchen evil-leader. Binden Sie häufig verwendete Schlüssel an den Anführer. zB können Sie binden C-x ban <leader>-b.

    (global-evil-leader-mode)
    (evil-leader/set-leader ",")
    (evil-leader/set-key
     "b" 'switch-to-buffer)
    
  4. Binde dired mode an C-<f8>. Wenn Sie nun eine Datei im Verzeichnis öffnen möchten, drücken Sie C-<f8>, navigieren Sie zu Dateiname und drücken Sie aanstelle von RET. So wird dired Puffer sofort getötet.

    (global-set-key (kbd "C-<f8>")
            (lambda ()
              (interactive)
              (dired default-directory)))
    (put 'dired-find-alternate-file 'disabled nil)
    
  5. Verwenden Sie den recentfModus, um in den letzten Dateien zu navigieren.C-x C-r

  6. Ein letzter wichtiger Punkt ist - die Verwendung einer ergonomischen mechanischen Tastatur. So können Sie mit dem Handgelenk einfach und schnell die Strg-Taste drücken, anstatt den kleinen Finger zu verletzen.

Hoffe das könnte jemandem helfen.

userx
quelle
1

Wie Sie aus den anderen Antworten ersehen können, gibt es viele Möglichkeiten, diese bestimmte Aufgabe zu optimieren. Ich persönlich verwende Lusty Emacs als Pufferschaltgerät, da es die Fuzzy-Vervollständigung recht gut handhabt. Dies minimiert die Anzahl der Tastenanschläge, die zum Auswählen des neuen Puffers erforderlich sind. Zum Beispiel muss nur oxr eingegeben werden, um auf ox-disclose.el umzuschalten , oder auch nur ein zweites Mal, da auch der Verlauf der Schalter verfolgt wird.

Stsquad
quelle
0

Wenn Sie Ihre Puffer einfach weiter durchsuchen möchten, fügen Sie Folgendes zu Ihrer Init-Datei hinzu:

(bind-key* "M-l" 'next-buffer)
(bind-key* "M-k" 'previous-buffer)

Sie benötigen das Bindungsschlüsselpaket , und Sie können die Schlüsselbindungen nach Ihren Wünschen ändern, aber ich fand diese Schlüsselbindungen am bequemsten. Bevor Sie dieses Snippet hinzufügen können, müssen Sie den Bindungsschlüssel by,

(require 'bind-key)
Shreyas Jamadagni
quelle
0

Ich benutze C-Tab und CS-Tab wie allgemeine Anwendungen.

(defun change-buffer-until-normal (change-fn)
  (let (current (buffer-name))
    (funcall change-fn)
    (while (and (string-prefix-p "*" (buffer-name))
        (not (eq current (buffer-name))))
      (funcall change-fn))))

(defun my-next-buffer ()
  (interactive)
  (change-buffer-until-normal 'next-buffer))

(defun my-prev-buffer ()
  (interactive)
  (change-buffer-until-normal 'previous-buffer))

(global-set-key [C-tab] 'my-next-buffer)
(global-set-key [C-S-iso-lefttab] 'my-prev-buffer)
hasgel
quelle
0

Dies ist keine sehr elegante Lösung (da sie Makros anstelle von Funktionen verwendet) und sie antwortet nicht darauf, wie schnell auf einen Puffer gesprungen werden kann, sondern nur darauf, wie zu den in letzter Zeit verwendeten Puffern gesprungen werden kann. Aber es funktioniert sehr gut für mich:

Ich habe eine Reihe von Makros, mit denen ich ido-switch-bufferzum vorherigen Puffer, zum vorherigen Puffer, zum vorherigen Puffer usw. springen kann. Und ich habe diese Makros an für mich bequeme Tastenzuordnungen gebunden.

So springen Sie zum letzten Puffer:

(fset 'my-goto-previous-buffer
      [?\C-x ?b return])

So springen Sie zum vorletzten Puffer:

(fset 'my-goto-previous-buffer
      [?\C-x ?b ?\C-n return])

So springen Sie zum vorletzten Puffer:

(fset 'my-goto-previous-buffer
      [?\C-x ?b ?\C-n ?\C-n return])

Usw. (Sie können so viele Anzeigen hinzufügen, ?\C-nwie Sie möchten, um die Historie der besuchten Puffer so weit wie Sie möchten zurückzuverfolgen).

Es gibt eine integrierte Funktion, um zum vorherigen Puffer zu springen. Der Vorteil der Verwendung von Makros ido-switch-bufferbesteht jedoch darin, dass Sie die Variable so anpassen können ido-ignore-buffers, dass spezielle Puffer wie *Messages*oder *scratch*und andere unerwünschte Puffer aus der Liste entfernt werden. Auf diese Weise sind die einzigen Puffer, zu denen Sie springen, diejenigen, zu denen Sie wirklich springen möchten.

prosoitos
quelle
-1

Auf meiner VM ist Cx ALT-RIGHT / LEFT zu langsam. Ich muss warten, bis sich Cx in der Statusleiste registriert hat, bevor ich etwas anderes tun kann. Plus es ist einfach zu viele Schlüssel. Also habe ich C-TAB und CM-TAB dem nächsten und vorherigen Puffer zugeordnet, wie ich es sowieso in den meisten Windows-Programmen mache. In Emacs ist das ganz einfach: M-xSie gelangen zur Statusleiste. global-set-keyGeben Sie dann ein, das Sie zur Eingabe der Tastenfolge auffordert, an die Sie binden möchten ( C-TAB), und geben Sie dann den Befehl ein, an den Sie binden möchten ( next-buffer). Das ist es!

SN
quelle
1
Herzlich willkommen. Andere Antworten scheinen bereits die Zuordnung dieser Befehle zu anderen Tasten abzudecken.
Andrew Swann
Nicht genau - alle reden darüber, wie Sie Ihre .emacs-Konfigurationsdatei ändern können. Ich habe beschrieben, wie es in der Emacs-Sitzung gemacht wird
SN