2017-10-17 4 views
2

Folgendes meine Tastenbelegungen Hinzufügen ermöglicht es mir, die Schriftgröße in Sublime Text 3 auf die Standardgröße zurücksetzen:Sublime Text 3: Schriftgröße auf benutzerdefinierte Schriftgröße zurücksetzen?

{ "keys": ["ctrl+0"], "command": "reset_font_size" } 

Aber dies setzt auch jede Schriftgröße ich in meinen Benutzereinstellungen gesetzt hatte. Zum Beispiel ist die Standardschriftgröße 10. Wenn ich folgendes zu meinen Benutzereinstellungen hinzufügen ...

"font_size": 8 

... und dann meine Schriftgröße mit ctrl+0 zurückgesetzt, verschwindet diese Einstellung und die Schriftgröße wieder der Standardwert 10. Wie kann ich dieses Verhalten verhindern?

Antwort

0

Die Befehle increase_font_size, decrease_font_sizereset_font_size und werden in der Default Paket im font.py Plugin definiert, und sie arbeiten indem sie direkt in Preferences.sublime-settings den Wert der font_size Einstellung modifiziert wird.

Insbesondere increase_font_size und decrease_font_size sowohl den aktuellen Wert der Einstellung zu ändern, während, wie Sie der reset_font_size Befehl löscht ganz Dinge, um bemerkt habe, auf die Standardeinstellung zurück.

Auf den ersten Blick könnten Sie versuchen, den set_setting Befehl anstelle von reset_font_size, mit dem Sie die font_size zurück auf den Wert zurückgesetzt werden können, die standardmäßig sein möchten.

Das funktioniert jedoch nicht wie erwartet, weil set_setting die Einstellungen nur für die aktuell fokussierte Datei view ändert, während die Preferences.sublime-settings Datei die globalen Einstellungen angibt. Daher würden Sie bemerken, dass das Ändern der Schriftgröße nach oben und unten überall wirksam wird, aber das Zurücksetzen würde nur in der aktuellen Ansicht funktionieren.

Um dies zu umgehen, müssen Sie das Zurücksetzen auf die gewählte Standardschriftgröße durch Ändern der Preferences.sublime-settings Version der font_size Einstellung vornehmen.

Ein Beispiel dafür wäre das folgende Plugin, das Sie verwenden können, indem Sie Tools > Developer > New Plugin... aus dem Menü auswählen, dann den Stub-Code durch den folgenden Code ersetzen und als Python-Datei an dem Ort speichern, an dem Sublime standardmäßig (set_default_font_size.py zB, aber nur die Erweiterung wichtig ist):

import sublime 
import sublime_plugin 


class SetDefaultFontSizeCommand(sublime_plugin.ApplicationCommand): 
    def run(self): 
     s = sublime.load_settings("Preferences.sublime-settings") 

     new_size = s.get("default_font_size", 10) 
     s.set("font_size", new_size) 

     sublime.save_settings("Preferences.sublime-settings") 

Sobald das erledigt ist, Sie möchten, dass Ihre Standardeinstellungen bearbeiten und eine default_font_size Einstellung hinzufügen, die die Schriftart-Einstellung legt fest, dass Sie Ihre Standard-Schriftgröße sein wollen, dann Ändern Sie oben Ihre Tastenkombination, um set_default_font_size anstelle von reset_font_size aufzurufen.

Dieses Plugin extrahiert einfach die von Ihnen angegebene Standardschriftgröße und aktualisiert damit die Voreinstellungen, wodurch es wieder auf den gewünschten Wert zurückgesetzt wird. Dadurch ändert sich die Schriftgröße überall auf einmal.


[Bearbeiten]

Eine andere mögliche Lösung dieses Problems wäre die folgende Plugin sein, die allgemein eine Version des obigen dass verwiesen set_setting Befehl bereitstellt, um die Einstellung in Ihrer globalen Einstellungen festlegen, anstatt nur zu ändern die Einstellungen in der aktuellen Ansicht:

import sublime 
import sublime_plugin 


class GlobalSetSettingCommand(sublime_plugin.ApplicationCommand): 
    def run(self, setting, value): 
     s = sublime.load_settings("Preferences.sublime-settings") 
     s.set(setting, value) 
     sublime.save_settings("Preferences.sublime-settings") 

Um dies zu nutzen, würden Sie die folgende (mit Schriftgröße entsprechend geändert) verbindlich wie ein Schlüssel benötigt:

Der Vorteil hier ist, dass Sie keine zusätzliche Einstellung hinzufügen müssen, um die Standardschriftgröße bereitzustellen. Darüber hinaus könnten Sie diesen Befehl auch in anderen Fällen verwenden, z. B. in einer Reihe von Kontextmenüelementen oder Tastenkombinationen, mit denen Sie beispielsweise zwischen mehreren voreingestellten Größen wählen können.

Verwandte Themen