Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
6eb1bf0
Removed the default cheatsheet info json file and replaced it with a …
AndreasArvidsson Aug 30, 2026
63d3fff
Generate cheat cheat extension side
AndreasArvidsson Aug 30, 2026
9dc2a6d
Merge branch 'main' into cheatsheetts
AndreasArvidsson Aug 30, 2026
a731eb8
Clean up
AndreasArvidsson Aug 30, 2026
a7068e5
Small cleanup
AndreasArvidsson Aug 31, 2026
3d1b38f
Merge branch 'main' into cheatsheetts
AndreasArvidsson Aug 31, 2026
e7cd77f
Added deprecated comment
AndreasArvidsson Aug 31, 2026
9f81723
Clean up tests
AndreasArvidsson Aug 31, 2026
2ab967b
Reuse legacy che cheat info
AndreasArvidsson Aug 31, 2026
fd0349b
Clean up types
AndreasArvidsson Aug 31, 2026
12e8ae3
Clean up
AndreasArvidsson Aug 31, 2026
9e01428
Remove list entry from state file
AndreasArvidsson Aug 31, 2026
9329c92
Move gets spoken for logic in to node comment
AndreasArvidsson Aug 31, 2026
f2c73d6
More clean up
AndreasArvidsson Aug 31, 2026
6ca661a
More restoration
AndreasArvidsson Aug 31, 2026
e7f93f0
add more spoken forms to state
AndreasArvidsson Aug 31, 2026
3ec39ee
Only update spoken form ids for specific lists
AndreasArvidsson Aug 31, 2026
652f1b9
Sort and format she cheat
AndreasArvidsson Aug 31, 2026
5dd8eec
Change set selection to selects
AndreasArvidsson Aug 31, 2026
05cce20
Added references for hat shapes and colors
AndreasArvidsson Aug 31, 2026
29147e7
Added visibility to references
AndreasArvidsson Aug 31, 2026
21d17dc
Made cheat sheet replacement more robust
AndreasArvidsson Aug 31, 2026
e5273a0
Tutorials should properly show error about update needed
AndreasArvidsson Aug 31, 2026
026ab51
Added version to state file
AndreasArvidsson Aug 31, 2026
52b6636
Properly unsubscribe to decorated mark listener events
AndreasArvidsson Aug 31, 2026
59f7f3b
Fall back when state file cannot be read for the cheatsheet
AndreasArvidsson Aug 31, 2026
551d06c
Small cleanup
AndreasArvidsson Aug 31, 2026
8738e75
Remove unused import
AndreasArvidsson Aug 31, 2026
ceb29a6
Added link to online cheat sheet
AndreasArvidsson Aug 31, 2026
d2170de
write cheat sheet as one word
AndreasArvidsson Aug 31, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions cursorless-talon-dev/src/cursorless_dev.talon
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,6 @@ tag: user.cursorless
user.private_cursorless_record_that_mark_test()
{user.cursorless_homophone} record silent: user.cursorless_record_silent_test()

{user.cursorless_homophone} update cheatsheet:
user.private_cursorless_cheat_sheet_update_json()

test snip make <user.cursorless_target>:
user.private_cursorless_make_snippet_test(cursorless_target)

Expand Down
2 changes: 1 addition & 1 deletion cursorless-talon/src/actions/actions.py
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ def cursorless_vscode_command(command_id: str, target: CursorlessTarget):

Deprecated: prefer `cursorless_ide_command`
"""
# Deprecated 2026-08-31
# DEPRECATED: 2026-08-31
actions.app.notify(
"Deprecated: cursorless_vscode_command is deprecated, prefer cursorless_ide_command"
)
Expand Down
97 changes: 1 addition & 96 deletions cursorless-talon/src/cheatsheet/cheat_sheet.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,6 @@

from talon import Context, Module, actions, app

from .get_list import get_list, get_lists
from .sections.actions import get_actions
from .sections.compound_targets import get_compound_targets
from .sections.destinations import get_destinations
from .sections.get_scope_visualizer import get_scope_visualizer
from .sections.modifiers import get_modifiers
from .sections.scopes import get_scopes
from .sections.special_marks import get_special_marks
from .sections.tutorial import get_tutorial_entries

mod = Module()
ctx = Context()
ctx.matches = r"""
Expand All @@ -30,12 +20,6 @@ def private_cursorless_cheat_sheet_show_html():
'Please first focus an app that supports cursorless, eg say "focus code"'
)

def private_cursorless_cheat_sheet_update_json():
"""Update default cursorless cheatsheet json (for developer use only)"""
app.notify(
'Please first focus an app that supports cursorless, eg say "focus code"'
)

def private_cursorless_open_instructions():
Comment thread
AndreasArvidsson marked this conversation as resolved.
"""Open web page with cursorless instructions"""
actions.user.private_cursorless_notify_docs_opened()
Expand All @@ -59,20 +43,12 @@ def private_cursorless_cheat_sheet_show_html():
actions.user.private_cursorless_run_rpc_command_and_wait(
"cursorless.showCheatsheet",
{
"version": 0,
"spokenFormInfo": cursorless_cheat_sheet_get_json(),
"version": 1,
Comment thread
AndreasArvidsson marked this conversation as resolved.
"outputPath": str(cheatsheet_out_path),
},
)
webbrowser.open(cheatsheet_out_path.as_uri())

def private_cursorless_cheat_sheet_update_json():
"""Update default cursorless cheatsheet json (for developer use only)"""
actions.user.private_cursorless_run_rpc_command_and_wait(
"cursorless.internal.updateCheatsheetDefaults",
cursorless_cheat_sheet_get_json(),
)


def cheatsheet_dir_linux() -> Path:
"""Get cheatsheet directory for Linux"""
Expand All @@ -89,74 +65,3 @@ def cheatsheet_dir_linux() -> Path:

# 3. Fall back to user home
return Path.home()


def cursorless_cheat_sheet_get_json():
"""Get cursorless cheat sheet json"""
return {
"sections": [
{
"name": "Actions",
"id": "actions",
"items": get_actions(),
},
{
"name": "Destinations",
"id": "destinations",
"items": get_destinations(),
},
{
"name": "Scopes",
"id": "scopes",
"items": get_scopes(),
},
{
"name": "Scope visualizer",
"id": "scopeVisualizer",
"items": get_scope_visualizer(),
},
{
"name": "Modifiers",
"id": "modifiers",
"items": get_modifiers(),
},
{
"name": "Paired delimiters",
"id": "pairedDelimiters",
"items": get_lists(
[
"wrapper_only_paired_delimiter",
"wrapper_selectable_paired_delimiter",
"selectable_only_paired_delimiter",
"surrounding_pair_scope_type",
],
"pairedDelimiter",
),
},
{
"name": "Special marks",
"id": "specialMarks",
"items": get_special_marks(),
},
{
"name": "Compound targets",
"id": "compoundTargets",
"items": get_compound_targets(),
},
{
"name": "Colors",
"id": "colors",
"items": get_list("hat_color", "hatColor"),
},
{
"name": "Shapes",
"id": "shapes",
"items": get_list("hat_shape", "hatShape"),
},
{
"name": "Tutorial",
"id": "tutorial",
"items": get_tutorial_entries(),
},
]
}
97 changes: 0 additions & 97 deletions cursorless-talon/src/cheatsheet/get_list.py

This file was deleted.

144 changes: 0 additions & 144 deletions cursorless-talon/src/cheatsheet/sections/actions.py

This file was deleted.

Loading
Loading