Hi, All,
Here are, below, the syntax of all the commands of the ViSimulator plugin :
VI Commands :
¯¯¯¯¯¯¯¯¯¯¯
    The commands, CURRENTLY supported, in ViSimulator v0.4.0.1093, are :
                                                      ¯¯¯¯¯¯¯¯¯¯¯
CURSOR MOTIONS :
¯¯¯¯¯¯¯¯¯¯¯¯¯¯
    0 / Home   : Move the cursor to column 1                      of CURRENT line
    ^ / Home   : Move the cursor to the FIRST NON-blank character of CURRENT line
    $ / End    : Move the cursor to the END                       of CURRENT line
    |          : Move the cursor to the [COUNTth] COLUMN ( or FIRST ) of CURRENT line  ( NOT with French Keyboard )
    -          : Move the cursor to the FIRST NON-blank character of the PREVIOUS [count] line
    + / Enter  : Move the cursor to the FIRST NON-blank character of the NEXT     [count] line
    h          : Move the cursor to the LEFT  [count] column, in CURRENT line
    l or Space : Move the cursor to the RIGHT [count] column, in CURRENT line
    k          : Move the cursor to the UP    [count] line
    j          : Move the cursor to the DOWN  [count] line
    w          : Move the cursor to the BEGINNING of NEXT     [count] word
    b          : Move the cursor to the BEGINNING of PREVIOUS [count] word
    e          : Move the cursor to the END       of NEXT     [count] word
    ge         : Move the cursor to the END       of PREVIOUS [count] word
    W          : Move the cursor to the BEGINNING of next     [count] word, ignoring PUNCTUATION
    B          : Move the cursor to the BEGINNING of previous [count] word, ignoring PUNCTUATION
    E          : Move the cursor to the END of next           [count] word, ignoring PUNCTUATION
    gE         : Move the cursor to the END of previous       [count] word, ignoring PUNCTUATION
    f*         : Move the cursor to NEXT                     [count] OCCURRENCE of the character *, in CURRENT line
    F*         : Move the cursor to PREVIOUS                 [count] OCCURRENCE of the character *, in CURRENT line
    t*         : Move the cursor to just BEFORE the NEXT     [count] OCCURRENCE of the character *, in CURRENT line
    T*         : Move the cursor to just AFTER  the PREVIOUS [count] OCCURRENCE of the character *, in CURRENT line
    ;          : Repeat last f*/F*/t*/T* search
    ,          : Repeat last f*/F*/t*/T* search, in the OPPOSITE direction
    H          : Move the cursor to the FIRST NON-blank character of the [count] line from the TOP    of the screen
    M          : Move the cursor to the FIRST NON-blank character of the         line at   the MIDDLE of the screen
    L          : Move the cursor to the FIRST NON-blank character of the [count] line from the BOTTOM of the screen
    gg         : Move the cursor to the FIRST NON-blank character of the [count] line ( or FIRST ) of the file
    G          : Move the cursor to the FIRST NON-blank character of the [count] line ( or LAST  ) of the file
    Ctrl-D     : Scroll file DOWNWARD, [count] HALF page(s), with CURRENT line at the SAME RELATIVE location
    Ctrl-U     : Scroll file UPWARD,   [count] HALF page(s), with CURRENT line at the SAME RELATIVE location
    Ctrl-F     : Scroll file DOWNWARD, [count] page(s),      with CURRENT line at the SAME RELATIVE location
    Page Down  : Scroll file DOWNWARD, ONE page              with CURRENT line at the SAME RELATIVE location
    Ctrl-B     : Scroll file UPWARD,   [count] page(s),      with CURRENT line at the SAME RELATIVE location
    Page Up    : Scroll file UPWARD,   ONE  page             with CURRENT line at the SAME RELATIVE location
    Ctrl-E     : Scroll file UPWARD,   [count] line(s)       with CURRENT line INCHANGED
    Ctrl-Y     : Scroll file DOWNWARD, [count] line(s),      with CURRENT line UNCHANGED
    z<Enter>   : Scroll CURRENT line at the TOP    of the screen and move the cursor to the FIRST NON-blank char.
    z.         : Scroll CURRENT line at the MIDDLE of the screen and move the cursor to the FIRST NON-blank char.
    z-         : Scroll CURRENT line at the BOTTOM of the screen and move the cursor to the FIRST NON-blank char.
    zt         : Scroll CURRENT line at the TOP    of the screen
    zz         : Scroll CURRENT line at the MIDDLE of the screen
    zb         : Scroll CURRENT line at the BOTTOM of the screen
    %          : Move to the MATCHING boundary of a BLOCK {[(<...>)]}
    %          : Move the cursor to the count PERCENTAGE of the file
    *          : Select the NEXT     occurrence, of the word UNDER the cursor
    #          : Select the PREVIOUS occurrence, of the word UNDER the cursor  ( NOT with French Keyboard )
    ?Text      : Move the cursor, right AFTER the FIRST occurrence of Text, found UPWARD   ( REGEX syntax possible )
    /Text      : Move the cursor, right AFTER the FIRST occurrence of Text, found DOWNWARD ( REGEX syntax possible )
    n          : Select next SELECTED text, UPWARD,   after an INITIAL search ?Text
    n          : Select next SELECTED text, DOWNWARD, after an INITIAL search /Text
    N          : Select next SELECTED text, in the OPPOSITE direction
REGEX Syntax :
¯¯¯¯¯¯¯¯¯¯¯¯
               Globally, identical to BOOST Regex syntax, in Notepad++. Unfortunately, when matches are CONSECUTIVE,
               a SINGLE character is ALWAYS skipped, while searching for the NEXT occurrence :-((
Text OBJECTS :
¯¯¯¯¯¯¯¯¯¯¯¯
    i( / i)  : Select the (..) block, at cursor location, with possible NESTED / JUXTAPOSED (..) blocks, NOT including its BOUNDARIES
    i[ / i]  : Select the [..] block, at cursor location, with possible NESTED / JUXTAPOSED [..] blocks, NOT including its BOUNDARIES
    i{ / i}  : Select the {..} block, at cursor location, with possible NESTED / JUXTAPOSED {..} blocks, NOT including its BOUNDARIES
    i< / i>  : Select the <..> block, at cursor location, with possible NESTED / JUXTAPOSED <..> blocks, NOT including its BOUNDARIES
    i"       : Select the ".." block, at cursor location, WITHOUT INNER ".." blocks inside,              NOT including its BOUNDARIES
    i'       : Select the '..' block, at cursor location, WITHOUT INNER '..' blocks inside,              NOT including its BOUNDARIES
    a( / a)  : Select the (..) block, at cursor location, with possible NESTED / JUXTAPOSED (..) blocks, including its BOUNDARIES
    a[ / a]  : Select the [..] block, at cursor location, with possible NESTED / JUXTAPOSED [..] blocks, including its BOUNDARIES
    a{ / a}  : Select the {..} block, at cursor location, with possible NESTED / JUXTAPOSED {..} blocks, including its BOUNDARIES
    a< / a>  : Select the <..> block, at cursor location, with possible NESTED / JUXTAPOSED <..> blocks, including its BOUNDARIES
    a"       : Select the ".." block, at cursor location, WITHOUT INNER ".." blocks inside,              including its BOUNDARIES
    a'       : Select the '..' block, at cursor location, WITHOUT INNER '..' blocks inside,              including its BOUNDARIES
    dObject  : Delete the SELECTION
    cObject  : Delete the SELECTION and enter INPUT mode
    yObject  : Copy   the SELECTION in the CLIPBOARD
    guObject : Change the SELECTION to LOWERCASE (Forms 'i' and 'a' give SAME results !)
    gUObject : Change the SELECTION to UPPERCASE (Forms 'i' and 'a' give SAME results !)
REGULAR commands :
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
    Esc            : Enter  NORMAL mode and delete any SELECTION
    i              : Enter     INPUT  mode                  to insert text BEFORE the cursor
    Inser          : Toggle to NORMAL mode OR to INPUT mode to insert text BEFORE the cursor
    a              : Enter     INPUT  mode                  to append text AFTER  the cursor
    gi             : Enter INPUT mode at the LOCATION which was, LAST time, exited
    gI             : Enter INPUT mode at column ONE,                        of the CURRENT line
    I              : Enter INPUT mode BEFORE the FIRST NON-blank character, of the CURRENT line
    A              : Enter INPUT mode AFTER the END,                        of the CURRENT line
    R              : Enter INPUT mode with OVER-TYPE behavior, at CURRENT position of the CURRENT line
    Tab            : Insert a TABULATION character, when INPUT  mode
    Backspace      : Delete the PREVIOUS character, when INPUT  mode
    Delete         : Delete the CURRENT  character, when INPUT  mode
    Delete         : Delete the PREVIOUS character, when NORMAL mode
    Enter          : Cut from UNDER the cursor to END of line and paste, at PREVIOUS indentation, on a NEW line, DOWN, when INPUT mode
    Ctrl-M         : Cut from UNDER the cursor to END of line and paste, at column 1,             on a NEW line, DOWN, in BOTH modes
    o              : Insert an NEW line BELOW the cursor and enter INPUT mode at INDENT column of that NEW line
    Ctrl-Alt-Shift : Insert an NEW line BELOW the cursor at column 1 of that NEW line and keep the CURRENT VI mode (N++ Command)
      + Enter
    O              : Insert an NEW line ABOVE the cursor and enter INPUT mode at column 1 of that NEW line
    Ctrl-Alt-Shift : Insert an NEW line ABOVE the cursor at column 1 of that NEW line and keep the CURRENT VI mode (N++ Command)
      + Enter
    s              : Delete [count] character(s) from UNDER the cursor and enter INPUT mode
    S / cc         : Delete [count] line(s) DOWN,     from CURRENT line, insert a BLANK line and enter INPUT mode, in CURRENT line
    cw             : Delete [count] NEXT     word(s), from CURRENT word,                     and enter INPUT mode, in CURRENT line
    cb             : Delete [count] PREVIOUS word(s), from CURRENT word,                     and enter INPUT mode, in CURRENT line
    C              : Remove ALL characters from UNDER the cursor to the END of [count] line(s) and enter INPUT mode
    D / d$         : Remove ALL characters from UNDER the cursor to the END of [count] line(s)
    dd             : Delete [count] line(s) DOWN,     from CURRENT line
    dw             : Delete [count] NEXT     word(s), from CURRENT word
    db             : Delete [count] PREVIOUS word(s), from CURRENT word
    x              : Delete [count] character(s) from UNDER  the cursor, and copy them to the CLIPBOARD
    X              : Delete [count] character(s)      BEFORE the cursor, and copy them to the CLIPBOARD
    r*             : Replace [count] character(s), from UNDER the cursor, with the character *
    J              : Join the CURRENT line with the [count] NEXT line(s), with ONE SPACE character as separator
    Ctrl-J         : Join SELECTED lines,                                 with ONE SPACE character as separator (N++ Command)
    u              : Undo, [count] time(s) the LAST action
    Ctrl-Z         : Undo, ONE time,       the LAST action (N++ Command)
    Ctrl-R         : Redo, [count] time(s) the LAST undone action
    Ctrl-Shift-Z   : Redo, ONE time,       the LAST undone action (N++ Command)
    Y / yy         : Copy [count] line(s) to the CLIPBOARD
    p              : Paste, [count] time(s), the contents of the CLIPBOARD, AFTER  the cursor
    P              : Paste, [count] time(s), the contents of the CLIPBOARD, BEFORE the cursor
    Ctrl-V         : Paste  ONE time,        the contents of the CLIPBOARD, BEFORE the cursor (N++ Command)
    v              : Toggle to VISUAL mode, with selection of [count] character(s), to the RIGHT, OR to NORMAL mode
    V              : Toggle to VISUAL mode, with selection of [count] line(s),      DOWNWARD      OR to NORMAL mode
    ZZ             : SAVE and CLOSE current file, WITHOUT any message (same as EX command :wq)
    .              : Repeat, [count] time(s), the LAST text CHANGE command
    >              : Indent    ALL the SELECTED line(s)
    <              : UN-indent ALL the SELECTED line(s)
    >>             : Indent    [count] line(s) DOWN
    <<             : UN-indent [count] line(s) DOWN
    >{CC}          : Indent    ALL the line(s) from CURRENT line to CURSOR command line
    <{CC}          : UN-indent ALL the line(s) from CURRENT line to CURSOR command line
    d{CC}          : Delete ALL text from CURRENT position to CURSOR command and copy contents to the CLIPBOARD
    c{CC}          : Delete ALL text from CURRENT position to CURSOR command,    copy contents to the CLIPBOARD, and enter INPUT mode
    y{CC}          : Copy   ALL text from CURRENT position to CURSOR command and copy contents to the CLIPBOARD
    where {CC} means any "Cursor Movement Command"
    ~              : Toggle CASE of CURRENT character to UPPER or LOWER ( NOT with French keyboard )
    guu            : Change ALL characters of CURRENT line in LOWER case
    gUU            : Change ALL characters of CURRENT line in UPPER case
    gu{CC}         : Change ALL characters, from CURRENT position to CURSOR command, to LOWER case.
    gU{CC}         : Change ALL characters, from CURRENT position to CURSOR command, to UPPER case.
EX Commands :
¯¯¯¯¯¯¯¯¯¯¯
    :       : Enter EX mode
    :w      : SAVE  current file
    Ctrl-S  : SAVE  current file
    :q      : CLOSE current file, with message if CURRENT file is MODIFIED
    :bd     : CLOSE current file, with message if CURRENT file is MODIFIED
    Ctrl-W  : CLOSE current file, with message if CURRENT file is MODIFIED
    :wq     : SAVE and CLOSE current file, WITHOUT any message (same as VI command ZZ)
NOTES :
¯¯¯¯¯
    - The LOWER commands g, m, q et z do NOT exist, in ViSimulator
    - The UPPER commands K, Q, U et Z do NOT exist, in ViSimulator
    - All CTRL Commands, EXCEPT Ctrl-B, Ctrl-F, Ctrl-U, Ctrl-D, Ctrl-Y, Ctrl-E and Ctrl-R, do NOT exist, in ViSimulator
                                ¯¯¯¯¯¯  ¯¯¯¯¯¯  ¯¯¯¯¯¯  ¯¯¯¯¯¯  ¯¯¯¯¯¯
So, the UNDERLINED N++ ACTIVE shortcuts, in Notepad++, are NOT available, when ViSimulator is ENABLED, in NORMAL mode, from within N++
PARTICULARITIES, with a FRENCH keyboard :
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
    - Use the £ key ( instead of : ) to switch to EX mode
    - Use the : key ( instead of / ) to search FORWARD  for [ regex ] string ( Use UP and DOWN arrows to navigate between search HISTORY )
    - Use the / key ( instead of ? ) to search BACKWARD for [ regex ] string ( Use UP and DOWN arrows to navigate between search HISTORY )
    - The 8 "Text Object" commands i[ , i] , i{ , i}  and  a[ , a] , a{ , a} do NOT work, because of the MANDATORY use of the ALT key to write the [ , ] , { or } symbols
    Copyright © 2014 Simon HE. All rights reserved.
Cheers,
guy038