anchor.diff:  Changes
   -------
   
  - * _i_: insert before current selection
  - * _a_: insert after current selection
  - * _d_: yank and delete current selection
  - * _c_: yank and delete current selection and insert
  - * _._: repeat last insert mode change (_i_, _a_, or _c_, including
  + * +i+: insert before current selection
  + * +a+: insert after current selection
  + * +d+: yank and delete current selection
  + * +c+: yank and delete current selection and insert
  + * +.+: repeat last insert mode change (_i_, _a_, or _c_, including
           the inserted text)
   
  - * _I_: insert at current selection begin line start
  - * _A_: insert at current selection end line end
  - * _o_: insert in a new line below current selection end
  - * _O_: insert in a new line above current selection begin
  -
  - * _y_: yank selections
  - * _p_: paste after current selection end
  - * _P_: paste before current selection begin
  - * _alt-p_: paste all after current selection end, and
  + * +I+: insert at current selection begin line start
  + * +A+: insert at current selection end line end
  + * +o+: insert in a new line below current selection end
  + * +O+: insert in a new line above current selection begin
  +
  + * +y+: yank selections
  + * +p+: paste after current selection end
  + * +P+: paste before current selection begin
  + * +alt-p+: paste all after current selection end, and
               select each pasted string.
  - * _alt-P_: paste all before current selection begin, and
  + * +alt-P+: paste all before current selection begin, and
               select each pasted string.
  - * _R_: replace current selection with yanked text
  -
  - * _r_: replace each character with the next entered one
  -
  - * _alt-j_: join selected lines
  - * _alt-J_: join selected lines and select spaces inserted
  + * +R+: replace current selection with yanked text
  +
  + * +r+: replace each character with the next entered one
  +
  + * +alt-j+: join selected lines
  + * +alt-J+: join selected lines and select spaces inserted
               in place of line breaks
   
  - * _>_: indent selected lines
  - * _<_: deindent selected lines
  - * _alt->_: indent selected lines, including empty lines
  - * _<_: deindent selected lines
  - * _alt-<_: deindent selected lines, do not remove incomplete
  + * +>+: indent selected lines
  + * +<+: deindent selected lines
  + * +alt->+: indent selected lines, including empty lines
  + * +<+: deindent selected lines
  + * +alt-<+: deindent selected lines, do not remove incomplete
           indent (3 leading spaces when indent is 4)
   
  - * _|_: pipe each selections through the given external filter program
  + * +|+: pipe each selections through the given external filter program
           and replace the selection with it's output.
  - * _alt-|_: pipe each selections through the given external filter program
  + * +alt-|+: pipe each selections through the given external filter program
           and ignore its output
   
  - * _!_: insert command output before selection
  - * _a-!_: append command output after selection
  -
  - * _u_: undo last change
  - * _U_: redo last change
  -
  - * _&_: align selection, align the cursor of selections by inserting
  + * +!+: insert command output before selection
  + * +a-!+: append command output after selection
  +
  + * +u+: undo last change
  + * +U+: redo last change
  +
  + * +&+: align selection, align the cursor of selections by inserting
           spaces before the first character of the selection
  - * _alt-&_: copy indent, copy the indentation of the main selection
  + * +alt-&+: copy indent, copy the indentation of the main selection
           (or the count one if a count is given) to all other ones
   
  - * _`_: to lower case
  - * _~_: to upper case
  - * _alt-`_: swap case
  -
  - * _@_: convert tabs to spaces in current selections, uses the buffer
  + * +`+: to lower case
  + * +~+: to upper case
  + * +alt-`+: swap case
  +
  + * +@+: convert tabs to spaces in current selections, uses the buffer
           tabstop option or the count parameter for tabstop.
  - * _alt-@_: convert spaces to tabs in current selections, uses the buffer
  + * +alt-@+: convert spaces to tabs in current selections, uses the buffer
               tabstop option or the count parameter for tabstop.
   
  - * _alt-R_: rotate selections content, if specified, the count groups
  + * +alt-R+: rotate selections content, if specified, the count groups
               selections, so +3<a-R>+ rotate (1, 2, 3) and (3, 4, 6)
               independently.
   
  
positive.code: 
  Some keys allow you to select a text object:
  
   * _alt-a_: selects the whole object
   * _alt-i_: selects the inner object, that is the object excluding it's surrounder.
              for example, for a quoted string, this will not select the quote, and
              for a word this will not select trailing spaces.
   * _[_: selects to object start
   * _]_: selects to object end
   * _{_: extends selections to object start
   * _}_: extends selections to object end
  
  After this key, you need to enter a second key in order to specify which
  object you want.
  
   * _b_, _(_ or _)_: select the enclosing parenthesis
   * _B_, _{_ or _}_: select the enclosing {} block
   * _r_, _[_ or _]_: select the enclosing [] block
   * _a_, _<_ or _>_: select the enclosing <> block
   * _"_: select the enclosing double quoted string
   * _'_: select the enclosing single quoted string
   * _`_: select the enclosing grave quoted string
   * _w_: select the whole word
   * _W_: select the whole WORD
   * _s_: select the sentence
   * _p_: select the paragraph
   * _␣_: select the whitespaces
   * _i_: select the current indentation block
   * _n_: select the number
  
  For nestable objects, a count can be used in order to specify which surrounding
  level to select.
  
negative.code: Basic Movement
  --------------
  
   * +h+: select the character on the right of selection end
   * +j+: select the character below the selection end
   * +k+: select the character above the selection end
   * +l+: select the character on the left of selection end
  
   * +w+: select the word and following whitespaces  on the right of selection end
   * +b+: select preceding whitespaces and the word on the left of selection end
   * +e+: select preceding whitespaces and the word on the right of selection end
   * +alt-[wbe]+: same as [wbe] but select WORD instead of word
  
   * +x+: select line on which selection end lies (or next line when end lies on
          an end-of-line)
   * +alt-x+: expand selections to contain full lines (including end-of-lines)
   * +alt-X+: trim selections to only contain full lines (not including last
              end-of-line)
  
   * +%+: select whole buffer
  
   * +alt-H+: select to line begin
   * +alt-L+: select to line end
  
   * +/+: search (select next match)
   * +?+: search (extend to next match)
   * +n+: select next match
   * +N+: add a new selection with next match
   * +alt-n+: select previous match
   * +alt-N+: add a new selection with previous match
  
   * +pageup+: scroll up
   * +pagedown+: scroll down
  
   * +alt-r+: rotate selections (the main selection becomes the next one)
  
   * +;+: reduce selections to their cursor
   * +alt-;+: flip the selections direction
  
  
  A word is a sequence of alphanumeric characters or underscore, a WORD is a
  