有沒有辦法在Sublime Text 2中爲鍵盤快捷鍵指定特定的配色方案?在Emacs中,可以很容易地定義一個切換「夜間模式」色彩方案並將其分配給鍵盤快捷方式的功能,我想知道您是否也可以在ST2中執行該功能。在Sublime Text 2中更改配色方案的鍵盤快捷鍵?
彼得
有沒有辦法在Sublime Text 2中爲鍵盤快捷鍵指定特定的配色方案?在Emacs中,可以很容易地定義一個切換「夜間模式」色彩方案並將其分配給鍵盤快捷方式的功能,我想知道您是否也可以在ST2中執行該功能。在Sublime Text 2中更改配色方案的鍵盤快捷鍵?
彼得
嘗試這樣的事情,在你的用戶密鑰綁定:
{
"keys": ["YOUR_SHORTCUT"],
"command": "set_setting",
"args":
{
"setting": "color_scheme",
"value": "Packages/Color Scheme - Default/Solarized (Light).tmTheme"
}
}
當然,改變Packages/Color Scheme - Default/Solarized (Light).tmTheme
到任何你喜歡的主題。
如果你想要兩個配色方案之間的切換,你可以創建一個插件(Tools/New Plugin...
):
import sublime, sublime_plugin
class ToggleColorSchemeCommand(sublime_plugin.TextCommand):
def run(self, edit, **args):
scheme1 = args["color_scheme_1"]
scheme2 = args["color_scheme_2"]
current_scheme = self.view.settings().get("color_scheme")
new_scheme = scheme1 if current_scheme == scheme2 else scheme2
self.view.settings().set("color_scheme", new_scheme)
並將其保存在您的Packages/User
目錄。
然後添加一個鍵這樣的綁定:
{
"keys": ["YOUR_TOGGLE_SHORCUT"], "command": "toggle_color_scheme",
"args":
{
"color_scheme_1": "Packages/Color Scheme - Default/Solarized (Light).tmTheme" ,
"color_scheme_2": "Packages/Color Scheme - Default/Solarized (Dark).tmTheme"
}
}
爲了支持多種配色方案,一個將改變Riccardos回答,像這樣:
class ToggleColorSchemeCommand(sublime_plugin.TextCommand):
def run(self, edit, **args):
scheme1 = args["color_scheme_1"]
scheme2 = args["color_scheme_2"]
scheme3 = args["color_scheme_3"]
current_scheme = self.view.settings().get("color_scheme")
new_scheme = scheme1
if current_scheme == scheme1:
new_scheme = scheme2
if current_scheme == scheme2:
new_scheme = scheme3
self.view.settings().set("color_scheme", new_scheme)
我剛剛發現這個可愛的小插件: https://github.com/skt84/Schemr
哪個並不完全允許你綁定,而是給你一個Command Palette訪問權限,這對我來說是完美的。 (以防萬一任何人通過像我這樣的谷歌偶然發現)
如果你不想打擾編輯配置文件,你可以安裝SchemeCycle。
然後循環配色方案F8和Shift + F8。有了2個主題(黑暗/光明),它就像切換一樣。
如果你喜歡命令調色板檢查Norris's答案,或者嘗試用ColorSchemeSelector命令: Select Color Scheme
,也不會污染你的調色板多達Schemr。
可視化AKA屏幕:
要更改全局顏色方案設置(不僅僅是當前視圖),改變裏卡多的答案是這樣的:
import sublime, sublime_plugin
class ToggleColorSchemeCommand(sublime_plugin.TextCommand):
def run(self, edit, **args):
s = sublime.load_settings("Preferences.sublime-settings")
scheme1 = args["color_scheme_1"]
scheme2 = args["color_scheme_2"]
current_scheme = s.get("color_scheme", scheme1)
new_scheme = scheme1
if current_scheme == scheme1:
new_scheme = scheme2
if current_scheme == scheme2:
new_scheme = scheme1
s.set("color_scheme", new_scheme)
sublime.save_settings("Preferences.sublime-settings")
確保所有在使用此設置之前,您的視圖設置爲一種配色方案!
無論您在「Preferences.sublime-settings - User」和「Preferences.sublime-settings - Default」下面設置了什麼顏色方案,這都應該可以工作。
我收集來自Schemrs代碼這樣的信息:https://github.com/benweier/Schemr/blob/master/schemr.py 和字體,更改代碼:「包\ DEFAULT \ font.py」
+1我使用此代碼來更改我的主題和顏色有一個keybind的方案。 – Abluescarab
如果有人感興趣,我剛剛創建了一個插件N個不同的主題和色彩方案之間切換配置。看看這裏:
太棒了,正是我在找的東西!謝謝! – pkazmierczak
@Riccardo還有一種方法可以在三種方案之間切換嗎? –
太棒了,+1! 任何方式來做到這一點與主題(例如,切換蘇打黑/光與顏色方案)?我試圖獲取和設置''主題'',但它似乎並沒有工作 – FeifanZ