Frage

Ich möchte einen Block in Emacs wählen oder zu markieren, ohne die Maus zu verwenden, aber es von der Tastatur wie vim visuellen Modus tun. Was ist der einfachste Weg, dies von einer Tastatur zu tun?

War es hilfreich?

Lösung

Werfen Sie einen Blick auf regions Rechteck in Emacs.

Kurz gesagt, starten Sie Ihre Auswahl wie gewohnt mit Kontrolle - Space , dann Region töten mit Kontrolle - x r k und Einfügen (oder yank ) getötet Block mit Kontrolle - x r y .

Andere Tipps

Wenn ich die Frage richtig verstanden hat, ist es ursprünglich nicht etwa rechteckige Bereiche.

C-Spc setzt eine Markierung an der aktuellen Position.

Überall dort, wo Sie den Cursor danach ist der Text zwischen der letzten Markierung und die aktuelle Position wird als „ausgewählt“ (Sie können diese hervorheben, indem transient-mark-mode aktivieren, aber das bedeutet auch, dass die Markenpunkte gelöscht werden, wenn Sie nicht wollen Highlight ).

Sie können mit Befehlen wie auf diesem Gebiet tätig sind:

C-w . . Kill-Region. Dies löscht und stellt die Region in den Kill-Ring.
C-y . . Mit einem Ruck ziehen. Dies fügt den letzten Schnipsel aus dem Kill-Ring.
M-y . . Zyklus Kill-Ring. Unmittelbar nach C-y, ersetzt diese die zerrte Teil von den anderen Schnipsel in den Kill-Ring.
M-w . . Sparen Region in Kill-Ring. Wie C-w, aber nicht gelöscht.

Dies ist nur die grundlegende Verwendung. Marks hat andere Anwendungen auch. Ich empfehle das Tutorial ( C-h t ).

Emacs 24.4 jetzt hat Rechteck-mark-Modus. C-x Raum rufen Sie es.

Siehe den Artikel: „Arbeiten mit rechteckigen Auswahlen“ , vor allem die Kommentare Abschnitt. Siehe auch den Abschnitt von CUA-Modus Dokumentation dem Titel „CUA Rechteck Unterstützung“. Es gibt auch einen rel="noreferrer">.

Obwohl C-SPC ist ein gemeinsamer Weg, etwas zu beginnen Kennzeichnung von wo immer Ihr Punkt ist, gibt es oft schneller / einfachere Wege, die das nicht tun beinhalten ausdrücklich ... Start / Endpunkte bewegen

Einbau-Auswahl Kombinationen

Sie können alle diese drücken Sie wiederholt die Auswahl zu wachsen.

(Hinweis: Verwendung C-g oft abzubrechen, während Kennzeichnung Experimentieren.)

Add-ons

Es gibt ein paar Add-on-Pakete , die Auswahl der Regionen verbessern und Dinge. Diese werden alle spielen gut zusammen und passen unterschiedliche Verwendung Fälle. Verwenden Sie sie alle!

  • Expand-Region : Expand Region erhöht die ausgewählte Region durch semantische Einheiten. Gerade halten Sie die Taste drücken, bis er wählt, was Sie wollen. C-= ist ein Empfohlen für sie bindend. Hit es ein paar Mal zu bekommen, was Sie müssen.

  • Easy-Kill- : Verwenden Sie M-w und eine Gedächtnisstütze verschiedene Arten von Dingen zu wählen, wie Wörter, sexps, Listen, etc.

  • Zop-to-Char : Wie zap-to-char , bietet aber gute Auswahl und andere menügesteuerte Aktionen.

  • diff-hl : Highlight uncommitted geändert Regionen. Verwenden Sie diff-hl-mark-hunk wählen / ein großes Stück markieren.

Mit Kontrolle - Space ein Zeichen zu setzen und Ihre Cursor bewegen.

Die transient-mark-mode wird Selektionen für Sie markieren. M - x transient-mark-mode.

Sie können Setup Emacs diesen Modus standardmäßig zu aktivieren, eine Anpassung verwenden. M -. x customize-option RET transient-mark-mode

... und falls Sie verwenden Ubuntu und C-spc funktioniert nicht für Sie: Sie können die IBus "nächste Eingabemethode" Keybinding löschen müssen, wie in

  

Ausführen ibus-setup und den Schlüssel ändern verbindlich für   „Nächste Eingabemethode“ auf etwas anderes (oder löschen vollständig durch   die Schaltfläche „...“ und dann auf die Schaltfläche ‚Löschen‘ klicken).

Zitat von eine Antwort auf eine Frage SO.

Um Antwort von Edin Salkovic zu erweitern, wenn Sie CUA-Modus verwenden, können Sie eine visuelle Blockauswahl beginnen verwenden. Es gibt viele Verknüpfungen Blockauswahl in Dokumentation von CUA beschrieben zu steuern.

Mit Emacs 25, drücken Sie einfach C - Space und dann den Cursor bewegen, wo immer Sie hervorheben möchten / wählen Sie den Textbereich, der Sie interessiert. Danach können Sie diese Befehle müssen:

  • C -. w zum Schneiden
  • M -. w zum Kopieren
  • C -. y zum Einfügen
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top