Skip to content

Commit df865bb

Browse files
committed
4.4.2 Get settings from view, which merges in project and syntax settings on top of Preferences.sublime-settings
1 parent b20f85a commit df865bb

File tree

5 files changed

+23
-13
lines changed

5 files changed

+23
-13
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
### 4.4.2 - Apr 28, 2025
2+
3+
- Get settings from view, which merges in project and syntax settings on top of `Preferences.sublime-settings`
4+
15
### 4.4.1 - Apr 5, 2025
26

37
- Autoscroll on Enter #135

Clojure Sublimed Dark.sublime-color-scheme

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"author": "Nikita Prokopov",
44
"variables":
55
{
6-
"active": "#CD974B",
6+
"active": "#00BFFF",
77
"fg": "#CECECE",
88
"bg": "#0E1415",
99
"blue": "#71ADE7",

Clojure Sublimed Light.sublime-color-scheme

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
"author": "Nikita Prokopov",
44
"variables":
55
{
6-
"active": "#007ACC",
7-
"fg": "#000",
8-
"bg": "#fff",
9-
"gray": "#A0A0A0",
6+
"active": "#43bef4",
7+
"fg": "#000",
8+
"bg": "#fff",
9+
"gray": "#A0A0A0",
1010
},
1111
"globals":
1212
{
@@ -93,6 +93,10 @@
9393
"scope": "meta.quoted - meta.quoted meta.unquoted, meta.quoted meta.unquoted meta.quoted - meta.quoted meta.unquoted meta.quoted meta.unquoted, meta.quoted meta.unquoted meta.quoted meta.unquoted meta.quoted - meta.quoted meta.unquoted meta.quoted meta.unquoted meta.quoted meta.unquoted, meta.quoted comment.reader, meta.quoted punctuation.definition.comment, meta.quoted comment.form, meta.quoted comment.form punctuation",
9494
"background": "#00000010"},
9595

96+
{"name": "JSX",
97+
"scope": "meta.jsx - meta.jsx source.js.embedded, meta.jsx source.js.embedded meta.jsx - meta.jsx source.js.embedded meta.jsx source.js.embedded, meta.jsx source.js.embedded meta.jsx source.js.embedded meta.jsx - meta.jsx source.js.embedded meta.jsx source.js.embedded meta.jsx source.js.embedded",
98+
"background": "#00000010"},
99+
96100
{"name": "Inner brackets",
97101
"scope": "meta.parens meta.parens punctuation.section, meta.parens meta.brackets punctuation.section, meta.parens meta.braces punctuation.section, meta.brackets meta.parens punctuation.section, meta.brackets meta.brackets punctuation.section, meta.brackets meta.braces punctuation.section, meta.braces meta.parens punctuation.section, meta.braces meta.brackets punctuation.section, meta.braces meta.braces punctuation.section",
98102
"foreground": "var(gray)"},

cs_common.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,20 +32,22 @@ def __init__(self, id = None, code = None, ns = 'user', line = None, column = No
3232
self.file = file
3333
self.print_quota = print_quota
3434

35+
def main_settings(view = None):
36+
if view := view or sublime.active_window().active_view():
37+
return view.settings()
38+
return sublime.load_settings("Preferences.sublime-settings")
39+
3540
def settings():
3641
"""
3742
Plugin settings
3843
"""
3944
return sublime.load_settings("Clojure Sublimed.sublime-settings")
4045

41-
def main_settings():
42-
return sublime.load_settings("Preferences.sublime-settings")
43-
44-
def setting(key, default = None):
46+
def setting(key, default = None, view = None):
4547
"""
4648
Shortcut to get value of a particular plugin setting
4749
"""
48-
s = main_settings()
50+
s = main_settings(view = view)
4951
if s and (res := s.get("clojure_sublimed_" + key)) is not None:
5052
return res
5153
s = settings()

cs_indent.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ class ClojureSublimedReindentBufferCommand(sublime_plugin.TextCommand):
124124
def run(self, edit):
125125
view = self.view
126126
with cs_common.Measure("Reindent Buffer {} chars", view.size()):
127-
if 'cljfmt' == cs_common.setting('formatter'):
127+
if 'cljfmt' == cs_common.setting('formatter', view = view):
128128
cs_cljfmt.indent_lines(view, [sublime.Region(0, view.size())], edit)
129129
else:
130130
indent_lines(view, [sublime.Region(0, view.size())], edit)
@@ -133,7 +133,7 @@ class ClojureSublimedReindentLinesCommand(sublime_plugin.TextCommand):
133133
def run(self, edit):
134134
view = self.view
135135
with cs_common.Measure("Reindent Lines {} chars", sum([r.size() for r in view.sel()])):
136-
if 'cljfmt' == cs_common.setting('formatter'):
136+
if 'cljfmt' == cs_common.setting('formatter', view = view):
137137
cs_cljfmt.indent_lines(view, view.sel(), edit)
138138
else:
139139
indent_lines(view, view.sel(), edit)
@@ -177,7 +177,7 @@ def cljfmt_indent(view, point):
177177
class ClojureSublimedInsertNewlineCommand(sublime_plugin.TextCommand):
178178
def run(self, edit):
179179
view = self.view
180-
newline_indent_fn = cljfmt_indent if 'cljfmt' == cs_common.setting('formatter') else newline_indent
180+
newline_indent_fn = cljfmt_indent if 'cljfmt' == cs_common.setting('formatter', view = view) else newline_indent
181181

182182
# Calculate all replacements first
183183
replacements = []

0 commit comments

Comments
 (0)