# this file isn't a full/complete grammar or even
# a correct one, but it contains the phrase chunks
# that I've found useful to practice / focus on
# while learning talon, I keep it open on screen

# alphabet
air     bat    cat     drum
each    fine   gust    harp
sit     jury   krunch  look
made    near   odd     pit
quench  red    sun     trap
urge    vest   whale   plex
yank    zip

delete space pageup pagedown tab enter end home escape
(at | and | number ) sign
numb <digits>

(dictation | command) mode

# command mode
(undo | redo) that
ignore <text>
<anything> cancel cancel
<anything> [<ordinal> | <n> times]

(say | sentence | all cap | all down | string | dub string) (<text> | that)
(title | snake | dotted | hammer | camel | packed) (<text> | that)
(select | before | scratch | nope) that
word <word>
brief <abbreviation>
recent (list | repeat <number> | copy <number>)

(go | clear | select) word (left | right) 
(left | right) (square | paren | brace)
go line (start | end)
go (up | down)

# dictation mode
(go | clear | select) (left | right) <number-small> (word | character | line)
(scratch | spell | cap | no cap | space | no space) that
press <key>
numeral <digits>

# find and replace
hunt (this | all) <text>
hunt (next | previous | case | word | expression)
replace (this | all) (<text> | clip)
select (next | last) (<text> | clip)

# multiple cursors
cursor (multiple | stop | up | down | less | more | skip | all | lines)

# vscode
please <vscode-command>
go view <view-name>
focus editor
panel (control | output | problems | switch | terminal)
bar (explore | outline | search | source | test | tree)
file (hunt | create | rename | move | clone | delete)
go (back | forward | type | usage | declaration | implementation | recent)
(suggest | hint | definition | references | hierarchy | hover) (show | peek)
symbol hunt [all] <symbol-name>
format (that | selection | file)
problem (next | last | fix)
git (push | pull | checkout | commit | branch | status | stash | ...)
terminal (new | next | last | trash | scroll up | scrolldown | toggle | zoom)
close (all | other) tabs

# filetree
tree (<number> | current | parent)
tree (open | collapse | rename | crete | delete | select) <number>
tree move <number> to (<number> | root)

# cursorless
blue green pink red yellow
bar cursorless
(pre | post | take | change) <target>
(move | bring) <target> (to | before | after) <target>
(chuck | carve | copy | comment | drink | pour) <target>
paste (to | before | after) <target>
(scout | reference | define | inspect) <target>
(box | curly | diamond | quad) wrap <target>

# cursorless targets
row <line-modulo-100>
[target] (and | between | past | slice | until) <target>
<scope> [backward | forward]
bounds | content | inside | head | tail
grand <scope>

# cursorless scopes
file line char token identifier
arg call funk state 
[short] paint

# mouse & dense-mouse
grid (screen | off | reset | back) [number+]
touch | righty | mid click | dub click | drag | drag end
dense grid | grid close
mouse guide [off] | mouse <n> [major] (up | left | right | down)

# indexed clipboard
clip (copy | paste | clear) <word>
clip list

# window tweaks
window (stretch | shrink | size | move) (north | west | east | south | in | out) [<n> percent | pixels] 
window stop

# global nav
(launch | focus) <appication>
running (list | close)
window (new | open | next | last | close)
snap (left | right | top | bottom | center)* [third | two thirds]
tab (next | last)

command history [close | clear | more | less]

desk (<number> | next | last |show)
window move desk (<number> | left | right)

# browser
go (url | address | back | forward | home)
(history | bookmark | downloads) show
tab search <text>
go tab <letter>
visit <website>
(crown | bottom | center) <target>
(scroll | tiny) (up | down | left | right)

# tabs
tab (search | open | new | last | previous | next | close)
go tab <number>

# pages
go page <number>
page (next | last)

# signal
(prev | next | close | focus | search) chat