Skip to content

Commit 2da3d79

Browse files
Default to ⌘ for regional evals & Name command fns (#38)
* Make Meta the default modifier for regional eval * Make sure eval- cmds are named in bindings * Update bindings in doc, demo & readme --------- Co-authored-by: Martin Kavalar <[email protected]>
1 parent b90dbf7 commit 2da3d79

File tree

5 files changed

+18
-16
lines changed

5 files changed

+18
-16
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,9 @@ Enabling a decent Clojure/Script editor experience in the browser. Built for and
1919
* Expand/Contract: <kbd>Alt</kbd> + <kbd>↑</kbd> / <kbd>↓</kbd> or <kbd>Mod</kbd> + <kbd>1</kbd> / <kbd>2</kbd>
2020

2121
🧙 **Prepared for evaluation**
22-
* At Cursor: <kbd>Alt</kbd> + <kbd>⏎</kbd>
23-
* Top-level form: <kbd>Alt</kbd> + <kbd>⇧</kbd> + <kbd>⏎</kbd>
24-
* Cell: <kbd>Mod</kbd> + <kbd>⏎</kbd>
22+
* At Cursor: <kbd>Mod</kbd> + <kbd>⏎</kbd>
23+
* Top-level form: <kbd>Mod</kbd> + <kbd>⇧</kbd> + <kbd>⏎</kbd>
24+
* Cell: <kbd>Alt</kbd> + <kbd>⏎</kbd>
2525

2626
**🧹 Autoformatting** following [Tonsky’s Better Clojure Formatting](https://tonsky.me/blog/clojurefmt/)
2727

demo/src/nextjournal/clojure_mode/demo.cljs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,8 @@
6464
(j/obj :state
6565
(test-utils/make-state
6666
(cond-> #js [extensions]
67-
eval? (.concat #js [(eval-region/extension {:modifier "Alt"})
68-
(demo.sci/extension {:modifier "Alt"
67+
eval? (.concat #js [(eval-region/extension {:modifier "Meta"})
68+
(demo.sci/extension {:modifier "Meta"
6969
:on-result (partial reset! last-result)})]))
7070
source)
7171
:parent el)))))]
@@ -211,7 +211,7 @@
211211
(j/assoc! (js/document.getElementById "viewer-stylesheet")
212212
:innerHTML (rc/inline "stylesheets/viewer.css"))
213213

214-
(rdom/render [key-bindings-table (merge keymap/paredit-keymap* (demo.sci/keymap* "Alt"))] (js/document.getElementById "docs"))
214+
(rdom/render [key-bindings-table (merge keymap/paredit-keymap* (demo.sci/keymap* "Mod"))] (js/document.getElementById "docs"))
215215
(rdom/render [:div.rounded-md.mb-0.text-sm.monospace.overflow-auto.relative.border.shadow-lg.bg-white
216216
[markdown-editor {:doc "# Hello Markdown
217217

demo/src/nextjournal/clojure_mode/demo/sci.cljs

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,13 @@
1414
(catch js/Error e
1515
{:error (str (.-message e))})))))
1616

17-
(j/defn eval-at-cursor [on-result ^:js {:keys [state]}]
17+
(j/defn eval-at-cursor* [on-result ^:js {:keys [state]}]
1818
(some->> (eval-region/cursor-node-string state)
1919
(eval-string)
2020
(on-result))
2121
true)
2222

23-
(j/defn eval-top-level [on-result ^:js {:keys [state]}]
23+
(j/defn eval-top-level* [on-result ^:js {:keys [state]}]
2424
(some->> (eval-region/top-level-string state)
2525
(eval-string)
2626
(on-result))
@@ -35,7 +35,7 @@
3535

3636
(defn keymap* [modifier]
3737
{:eval-cell
38-
[{:key "Mod-Enter"
38+
[{:key "Alt-Enter"
3939
:doc "Evaluate cell"}]
4040
:eval-at-cursor
4141
[{:key (str modifier "-Enter")
@@ -48,8 +48,10 @@
4848
on-result]}]
4949
(.of view/keymap
5050
(j/lit
51-
[{:key "Mod-Enter"
51+
[{:key "Alt-Enter"
5252
:run (partial eval-cell on-result)}
5353
{:key (str modifier "-Enter")
54-
:shift (partial eval-top-level on-result)
55-
:run (partial eval-at-cursor on-result)}])))
54+
:shift (j/fn eval-top-level [result]
55+
(eval-top-level* on-result result))
56+
:run (j/fn eval-at-cursor [result]
57+
(eval-at-cursor* on-result result))}])))

public/index.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -166,23 +166,23 @@ <h3 class="text-center sans-serif font-bold text-lg mt-0 mb-1">Try evaluating an
166166
At Cursor
167167
</td>
168168
<td class="py-1 text-right">
169-
<span class="kbd alt">Alt</span> + <span class="kbd"></span>
169+
<span class="kbd alt">Mod</span> + <span class="kbd"></span>
170170
</td>
171171
</tr>
172172
<tr class="border-t">
173173
<td class="py-1 pr-12">
174174
Top-level form
175175
</td>
176176
<td class="py-1 text-right">
177-
<span class="kbd alt">Alt</span> + <span class="kbd"></span> + <span class="kbd"></span>
177+
<span class="kbd alt">Mod</span> + <span class="kbd"></span> + <span class="kbd"></span>
178178
</td>
179179
</tr>
180180
<tr class="border-t">
181181
<td class="py-1 pr-12">
182182
Cell
183183
</td>
184184
<td class="py-1 text-right">
185-
<span class="kbd mod">Mod</span> + <span class="kbd"></span>
185+
<span class="kbd mod">Alt</span> + <span class="kbd"></span>
186186
</td>
187187
</tr>
188188
</tbody>

src/nextjournal/clojure_mode/extensions/eval_region.cljs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@
137137
:keyup handle-key-event})]))
138138

139139
(defn extension [{:keys [modifier]
140-
:or {modifier "Alt"}}]
140+
:or {modifier "Meta"}}]
141141
#js[(modifier-extension modifier)
142142
region-field
143143
(.. EditorView -decorations (from region-field))])

0 commit comments

Comments
 (0)