2014-01-09 18:18:41 +0000 2014-01-09 18:18:41 +0000
73
73

Wie kann ich mit Notepad++ automatisch nachgestellte Leerzeichen abschneiden?

Ich möchte die Leerzeilen nicht komplett löschen, aber ich möchte die nachgestellten Tabulatoren und Leerzeichen in ihnen entfernen. Eclipse macht das normalerweise (über eine Voreinstellung), wenn wir die Datei speichern.

Zum Beispiel die Datei vor dem Speichern ($ = Zeilenende):

def shuffle(list):$
    import random $
    $
    random.shuffle(list)
    $
$

… und wenn ich das im Editor speichere, macht Eclipse folgendes:

def shuffle(list):$
    import random$
$
    random.shuffle(list)
$
$

Wie kann ich mit Notepad++ automatisch nachstehende Leerzeichen abschneiden?

Antworten (10)

78
78
78
2014-01-09 18:30:58 +0000

Sie sollten in der Lage sein, einen regulären Ausdruck in Notepad++ zu suchen/ersetzen, indem Sie ein Muster wie \s+$ verwenden.

Es gibt auch ein paar Optionen unter dem Menü Bearbeiten -> Leerzeichenoperationen, die Ihren Bedürfnissen entsprechen könnten.

Unter dem Menü “Makro” gibt es eine Option für “Trim trailing and save”. Wenn Sie einen regulären Ausdruck benötigen, kann es möglich sein, ein Makro zu erstellen, allerdings habe ich das nie ausprobiert.

64
64
64
2015-01-27 18:31:09 +0000

Alt+Umschalt+S tut, was Sie wollen. Tatsächlich speichert es auch die Datei.

Aktualisieren

Wie 10basetom bemerkte, können Sie diesem Makro eine andere Tastenkombination zuweisen. Sie können Ihre Tastenkombinationen unter Einstellungen > Shortcut Mapper > [Makros] steuern.

4
4
4
2015-05-06 19:46:36 +0000

Plugins > Plugin-Manager > Plugin-Manager anzeigen Wählen Sie unter der Registerkarte “Verfügbar” die Option “EditorConfig” und klicken Sie auf [Installieren]

Fügen Sie dem Ordner eine .editorconfig-Datei hinzu (nennen Sie sie .editorconfig., um den Windows-Fehler “Sie müssen einen Dateinamen eingeben” zu vermeiden - der letzte Punkt wird entfernt)

# trims trailing whitespace for all files; filter like [*.{json,xml}]
[*]
trim_trailing_whitespace = true

EditorConfig kann auch Kodierung, Einrückung und Zeilenumbruchzeichen usw. festlegen.

4
4
4
2015-01-29 18:06:49 +0000

Ich habe die Tastenkombinationen geändert, um eine Lösung für dieses Problem zu finden. Ich habe die Tastenkombination “Speichern” entfernt (Tastenkombinationen-Mapper -> Hauptmenü -> Speichern) und Strg+S dem Makro “Nachlauf trimmen und speichern” zugewiesen (Tastenkombinationen-Mapper -> Makros -> Nachlauf trimmen und speichern). Auf diese Weise ersetzt das Makro die Speicherfunktion und Sie müssen sich nicht an den Tastaturbefehl Alt+Umschalt+S erinnern.

3
3
3
2018-04-16 11:43:16 +0000

Die vorhandenen Antworten sehen alt aus.

Versuchen Sie folgenden Pfad:

Notepad++ > Edit (menu) > Blank Operations > Trim Trailing Space
1
1
1
2015-05-17 21:27:48 +0000

Um die vorhandenen Menübefehle beizubehalten, ordnen Sie die (bisher nicht zugewiesene) Tastenkombination Strg+T dem Abschneiden nachfolgender Leerzeichen zu. Führen Sie dann Strg+T und Strg+S zusammen aus.

Damit können Sie eine kleine Änderung an einer Datei vornehmen, ohne Textvergleichsprogramme und Versionskontrollprogramme durch das Ändern von (potenziell) Hunderten von Zeilen zu verwirren.

1
1
1
2017-04-11 17:10:56 +0000

Alt+Umschalt+S ist der Standard-Shortcut dafür. Es steht in der Menüleiste als Macro -> Trim Trailing and save. Sie können dies unter Settings -> Shortcut Mapper -> [Macros] umbinden.

Aufbauend auf kon psych’s answer , wenn Sie bei jedem Speichern automatisch Leerzeichen abschneiden wollen, können Sie dies so einstellen, dass es das Standardverhalten von Strg+S ersetzt. Denken Sie nur daran, den ursprünglichen Speicherkurzbefehl zu ändern oder zu entfernen, um Konflikte zu vermeiden.

1
1
1
2014-01-09 18:33:19 +0000

Strg + F -> Wechseln Sie zur Registerkarte Ersetzen ->

Suchen Sie was: \t\r

Ersetzen Sie durch: \r

Stellen Sie sicher, dass der Suchmodus Erweitert eingeschaltet ist, und ersetzen Sie dann alles.

Wenn Sie auch speichern wollen, hat johanno die richtige Lösung. Das Makro -> Trim Trailing and Save funktioniert wie angegeben.

1
1
1
2017-02-03 20:34:20 +0000

Eine andere Möglichkeit -

  1. Bearbeiten > Leeroperationen > Unnötige Leerzeichen und EOL entfernen
  2. Plugin > XML Tools > Pretty Print (nur XML - mit Zeilenumbrüchen)

‘XML Tools’ ist ein Plugin, das wir für Notepad++ installieren können

1
1
1
2018-03-08 18:16:02 +0000

Dies sind die genauen Schritte, um den Standard-“Speichern”-Kurzbefehl Strg+S umzuleiten, um stattdessen “Trim Trailing and Save” zu tun

  • Settings->Shortcut Mapper…
  • Registerkarte “Main Menu”, Doppelklick auf “Save”, S in None ändern
  • Registerkarte “Macros”, Doppelklick auf “Trim Trailing Space and Save”, ändern in Ctrl+S

Die Makro-Verknüpfung kann auch über Macro->Modify Shortcut/Delete Macro… geändert werden.