Volcanoes /

Filename Size Date modified Message
74 B
10.7 KB
10.7 KB
14.2 KB
3.0 KB
1.0 KB
18.1 KB
410 B
= Volcanise =

Volcanise's aim is to make navigating to, or selecting, specific areas in your
visible region no further than 4 key presses away.

As Volcanise operates modally (hijacking `raw` <character> class key presses for
navigation purposes) the first key naturally MUST be taken by `leave insert and
enter Volcanise mode`

This does NOT mean however that that the initial mode entry keypress can't also
be used to convey extra information, such as the direction you wish to move.
Volcanise is designed to require as little input as possible, using things like
the actual selection contents as well as direction as `parameters`. It strives
to minimise the amount of different keys/combinations required but instead rely
on intelligent contextual default.

As well as being a mode, it's also a bindings layout.

Volcanise, like VIM, uses the home row for movement. Unlike VIM, Volcanise will
move by words, equivalent to ctrl+left, ctrl+right. Also unlike VIM, these
bindings are alt-modified.

 word left <-         -> word_ends right
  BOL  <-                 -> EOL

The bindings, as well as actually initiating movement will enter hunt mode,
whereupon the visible region of the buffer will become `menuised`. It tokenises
the visible region, either by character or words. It will then go through each
of these tokens and their respective buffer regions drawing an outline around
uniquely identifying.

     | Single character mode
    [c]haracters [or] [di]graphs [re]presenting [th]e [to]ken (
                  or  [in] [ot]her [wo]rds t[he] r[eg]ions )
                   \--< Failure to find an identifier.

The command will then await input.

!Colors Representing Regions for multiple selections!
!Keys representing colors!

== Auto Insert Mode ==

Whenever the buffer is modified while in Volcanise mode, it will automatically
enter `insert` mode (normal Sublime operation)

== Extend Mode ==

If there is at least one character selected, then instead of jumping the
selection will be extended (in the direction of the selection, or prevailing
`trend` if the cursor is empty)

If the buffer is in `word` tokenize mode then fullwords will be selected,
providing the hotspot.

If a pre-existing `start` selection spans multiple lines then full lines will
be selected.

== LandBacks ==

    It's possible to setup LandBacks. What the hell is a landback? A landback is
    a callback defined to be called whenever the cursor `lands` in a hotspot. ie
    whenever you key in a character or digraph.

    Perhaps you'd like to set up one to select the contents of a string whenever
    landing in a certain string.

    Landbacks obviously aren't applicable everywhere so they must have a

    Landbacks are declaratively set in the volcanise.sublime-settings files.

    They may also be set to provide the equivalent of an assistant waiting
    for you as you step off your jet, ready with a menu of possibilities.