Hyperbole Buttons
Created on 2020-09-22T01:52:51+00:00
1. "Buttons" are a way to associate some kind of text with some emacs lisp to run. 1a. You move the caret over text and press an "action key" to trigger whatever a button does. 1b. "implicit" buttons involve attaching a regexp matcher to a list. Each matcher in the list are tried and if they match some text, they run some lisp. 1b1. An example of an implied button is "<@ 1a>" which means to match outline item 1a in the current file. Another is "bug#800815" which might launch a web browser or download an emacs buffer showing details of a particular bug. 1b2. By default hyperbole also turns identifiers in programming modes to buttons; when pressed it looks the identifier up in the nearest tags file. 1c. "explicit" buttons are text that show up "<( like this )>" 1c1. there are button files for each user and also optionally in each directory that associate some text with one of these button names. 1d. "global" buttons are named macros, basically. These get activated through some menu or keystroke and then mentioned by name. 2. mutiple kinds of links 2a. you can link directly to koutline nodes, you can link to particular files, you can also link to specific rows inside a named text file. you can link to text searches within specific files (ex. for when contents moves around and you can't leave anchors in the file to link to.)