Skip to main content

Cursor Hints

Cursor hints let you control where the cursor lands after expansion, so you can keep typing immediately.

The $|$ Marker

Place $|$ in your replace text where you want the cursor to end up:

- trigger: ":div"
replace: "<div>$|$</div>"

Type :div and the cursor lands between the tags.

Common Patterns

HTML/XML Tags

- trigger: ":a"
replace: '<a href="$|$">link text</a>'

- trigger: ":img"
replace: '<img src="$|$" alt=""/>'

Function Calls

- trigger: ":fn"
replace: "function $|$() {\n \n}"

- trigger: ":log"
replace: "console.log($|$);"

Git Commands

- trigger: "git!com"
replace: "git commit -m \"$|$\""

- trigger: "git!tag"
replace: "git tag -a $|$ -m \"\""

Shell One-Liners

- trigger: ":for"
replace: "for item in $|$; do\n \ndone"

Rules

  • Only one $|$ per match — multiple markers are ignored
  • Works in both replace and form output templates
  • Compatible with all injection backends (stdout, tmux, clipboard)

Limitations

note

In code editors with auto-indenting, cursor positioning may shift on multi-line expansions. The feature simulates arrow-key presses to reposition the cursor, which auto-indent can disrupt. For best results, use cursor hints on single-line replacements or in plain text fields.

What's Next