Emacs entfernen Leerzeichen am Rand der Seite

0

Bei der Arbeit in Emacs muss ich häufig viele Leerzeichen am Rand der Seite löschen.

Wie kann es mit einem schnellen Tastendruck entfernt werden? Ich habe mich auf der Emacs-Wiki-Seite "Whitespace löschen" umgesehen , aber nicht gefunden, was ich brauchte.

Hier ist ein Beispiel:

Der Unterstrich (_) ist der Cursor, und die Stelle, zu der ich springen möchte, ist der vertikale Strich (|) in meiner Rohdarstellung.

somecode...{
      indending
      if(...) {
|         _
       }
}

Wenn ich nur wiederholt die Rücktaste drücke, wird mein kleiner Finger müde und es dauert eine Weile. Wie kann ich es mit einem kurzen Tastendruck oder zumindest einer internen Funktion löschen, die ich mit der Tastatur binden könnte?

Spenser Truex
quelle
Nicht gerade von Emacs, aber ein Liner sed -r -i 's/\s+$//g' file2clean.txtwird tun, was Sie wollen
Alex

Antworten:

0

Sie können die eingebaute Hilfe apropos verwenden, indem Sie C-haund das Wort eingeben whitespace. Es wird zum Beispiel aufgelistet

delete-trailing-whitespace    M-x ... RET
   Delete trailing whitespace between START and END.
fixup-whitespace          M-x ... RET
   Fixup white space between objects around point.

Der erste löscht abschließende Leerzeichen innerhalb der aktuellen Region. Der zweite macht, was Sie wollen. Klicken Sie auf die Schaltfläche 2 des Funktionsnamens, um weitere Informationen zu erhalten.

Keiner von beiden hat wahrscheinlich eine Standardbindung für Sie. Führen Sie also die zweite M-xund die ersten Zeichen aus fixup-und tabvervollständigen Sie diese. Fügen Sie einer Taste Ihre eigene Bindung hinzu, um die Verwendung zu vereinfachen.

meuh
quelle
0

Eine andere Möglichkeit, sich auf Befehle zu beschränken , bei denen die Tastenzuweisung nicht aktiviert ist, ist das Drücken von M-SPC(für just-one-space), wodurch alle Leerzeichen außer einem gelöscht werden. Anschließend können Sie das letzte mit der Rücktaste löschen.

Legoscia
quelle