Ich weiß, dass Sublime Text 2 beim Speichern den nachgestellten Leerraum in Dateien löschen kann.
Wenn Sie in einem Team arbeiten und eine Änderung an einer Datei vornehmen, kann dies zu großen Unterschieden führen, die die Überprüfung von Peer-Code umständlicher machen. Aus diesem Grund ziehe ich es vor, die Leerraumbereinigung nur durchzuführen, wenn ich ohnehin große Änderungen an einer Datei vornehme und das Leerzeichen für die geringfügigen Änderungen belasse.
Ich würde gerne wissen, ob es irgendeinen Befehl zum Ausführen des Zuschneidens des Leerraums gibt auf Anfrage für eine andere Datei als "Activate trimming on save > Save file > Deactivate trimming"
.
Die Suche in der Dokumentation und im Stackoverflow hat nichts Relevantes ergeben, alle Links scheinen über das automatische Trimmen beim Speichern zu sprechen.
Ich benutze dafür das TrailingSpaces Plugin.
Markieren Sie nachfolgende Leerzeichen und löschen Sie sie blitzschnell.
ST2 bietet eine Möglichkeit, nachträgliche Leerzeichen beim Speichern von Dateien automatisch zu löschen. Abhängig von Ihren Einstellungen kann es praktischer sein, sie nur hervorzuheben und/oder von Hand zu löschen. Dieses Plugin bietet genau das!
Verwendung: Klicken Sie auf "Edit/Trailing Spaces/Delete".
Um eine Schlüsselbindung hinzuzufügen, öffnen Sie "Einstellungen/Schlüsselbindungen - Benutzer" und fügen Sie Folgendes hinzu:
{ "keys": ["ctrl+alt+t"], "command": "delete_trailing_spaces" }
Ich verwende diese Schritte für eine schnelle On-Demand-Lösung innerhalb von Sublime Text:
[ \t]+\n
\n
Sie können dies auch für eine große Anzahl von Dateien über tun
[ \t]+\n
\n
Sie können einfach einen regulären Ausdruck verwenden, um nachfolgende Leerzeichen zu entfernen:
[^\S\r\n]+$
[^\S\r\n]+$
ist Regex für "mindestens ein Leerzeichen (also Leerzeichen und Tabulatoren, aber keine Zeilenumbrüche mit doppelter Negation), gefolgt vom Zeilenende "
Hier ist eine supereinfache Methode, die keine Plugins oder Einstellungen verwendet und in den meisten Situationen funktioniert.
Die Leerzeichen und Tabulatoren am Ende der Zeilen sollten jetzt ausgewählt sein. Drücken Sie Entf oder Rücktaste
Hinweis - Sonderzeichen wie (und + können an dieser Stelle auch am Ende der Zeile ausgewählt werden, nicht nur Leerzeichen.
So wählen Sie alle Zeilen mehrfach aus:
Eine Möglichkeit besteht darin, die mittlere Maustaste zum vertikalen Auswählen zu verwenden und dann die Ende-Taste zu drücken, wenn es sich um eine kleine Auswahl handelt.
Mit Hotkeys:
Sie können auch die Suchfunktion verwenden, um nach etwas zu suchen, das in jeder Zeile steht, z. B. nach dem Leerzeichen:
Beispieltext:
text and number 44 more text and a space
text and number 44 more text and 2 tabs
text and number 44 more text and no space or tab
text and number 44 more text after a line feed
Ich habe hier eine Lösung gefunden: http://www.sublimetext.com/forum/viewtopic.php?f=4&t=4958
Sie können das Paket ändern
trim_trailing_white_space.py
befindet sich im Standard-Paketverzeichnis wie folgt:
import sublime, sublime_plugin
def trim_trailing_white_space(view):
trailing_white_space = view.find_all("[\t ]+$")
trailing_white_space.reverse()
edit = view.begin_edit()
for r in trailing_white_space:
view.erase(edit, r)
view.end_edit(edit)
class TrimTrailingWhiteSpaceCommand(sublime_plugin.TextCommand):
def run(self, edit):
trim_trailing_white_space(self.view)
class TrimTrailingWhiteSpace(sublime_plugin.EventListener):
def on_pre_save(self, view):
if view.settings().get("trim_trailing_white_space_on_save") == True:
trim_trailing_white_space(view)
class EnsureNewlineAtEof(sublime_plugin.EventListener):
def on_pre_save(self, view):
if view.settings().get("ensure_newline_at_eof_on_save") == True:
if view.size() > 0 and view.substr(view.size() - 1) != '\n':
edit = view.begin_edit()
view.insert(edit, view.size(), "\n")
view.end_edit(edit)
Jetzt können Sie den Befehl zu Ihrer Keymap-Konfiguration hinzufügen:
{ "keys": ["your_shortcut"], "command": "trim_trailing_white_space" }