Kungsgeten / ryo-modal

Roll your own modal mode
MIT License
222 stars 14 forks source link

Add :properties keyword to easily put properties of generated symbol #57

Closed BlankSpruce closed 1 year ago

BlankSpruce commented 1 year ago

State before this commit: Since ryo-modal might create a symbol with arbitrary name currently available way to put property on relevant symbol requires invoking of something like that to discover the relevant symbol:

(put (lookup-key ryo-modal-mode-map (kbd "x") 'my-property 'my-value))

This however can be done only after the binding has been defined. The easiest way would be invoking that with `ryo-modal-mode-hook'.

State after this commit: By defining :properties for given binding the whole thing can be simplified to:

(ryo-modal-key "x" :properties '((my-property . my-value)))

Motivation: I know at least these two minor modes that rely on properties:

I've provided an example in README for repeat-map use-case.

You can read more about `repeat-mode' here: https://karthinks.com/software/it-bears-repeating/

Kungsgeten commented 1 year ago

Seems like a nice addition since the created symbols are quite hard to reach. Thanks!