To compile run:
make
To install, copy the binary to a location in your PATH
Bviplus is designed to be as similar to vim as possible.
Here are some basics:
For this help dialogue:
:help
Command/Insert toggle
ESC Exit insert mode
i Insert before
a Insert after
Saving/Quitting:
:e [filename] Open 'filename' or newfile if none specified
:e! Reload current file discarding changes
:q Quit
:q! Quit without saving
:qa Quit all
:qa! Quit all without saving
:w Save
:wa Save all
:wq Save and quit
:wqa Save all and quit
:waq
:w <name> Save as <name>
Movement in command mode:
TAB KEY Move between HEX/ASCII windows
k Move up
j Move down
h Move left
l Move right
(Arrow keys also work)
More movement:
<number>G Jump to address <number>
:<number> Jump to address <number>
:0x<hex number> Jump to address <hex number>
0 Move to beginning of line
HOME KEY
^
$ Move to end of line
END KEY
m<0-9,a-z,A-Z> Set mark at cursor location
`<0-9,a-z,A-Z> Jump to mark
PAGE_DOWN KEY Page down
PAGE_UP KEY Page up
/ Ascii search
\ Hex search
?/ Reverse ascii search
?\ Reverse hex search
n Next search match
N Previous search match
Editing:
v Toggle visual select mode
(ESC exits visual select mode)
x Delete byte or selection
X Delete previous byte
r Replace byte or selection
R Overwrite
y Yank byte or selection
Y
p Paste after
P Paste before
d Delete to next motion
D
u Undo
U Redo
Searching:
Searching is \"non greedy\", meaning wildcards will match
the least number of bytes possible
/<pattern> Ascii search
\<pattern> Hex search
?/<pattern> Reverse ascii search
?\<pattern> Reverse hex search
Pattern options:
\ Escape the next character (do not interpret as special char)
. Match any char/byte
? Match the previous char/byte none or one times
* Match the previous char/byte none or more times
+ Match the previous char/byte one or more times
[<range>] Match any of the chars/bytes in <range>
[^<range>] Match none of the chars/bytes in <range>
<range>:",
Specify as list of characters or range with -
ascii e.g. [abc] or [a-z]
hex e.g. [04f53b] or [04-5h]
Settings:
Option Arguments Default Alias Effect
------ --------- ------- ----- ------
:set Show settings
:set binary <on|off> off bin Binary display *
:set little_endian <on|off> off le Little endian *
:set grouping <1-16> 1 grp Set byte grouping *
:set blob_grouping <0-n> 0 blob Highlight grouping
:set blob_grouping_offset <0-n> 0 bloboff Highligh offset
:set columns <1-n> 0 cols Set the max cols
:set search_hl <on|off> on hl Search highlighting
:set search_immediate <on|off> on si Searching auto moves cursor to next match
:set ignorecase <on|off> on case Case sensativ search
:set max_match <0-n> 256 mm Maximum search match size (0=no limit, bigger=slower)
> Increase blob_grouping_offset
< Decrease blob_grouping_offset
* Experimental, may cause display problems
ESC ESC temporarily turns off search highlighting (until next search)
Configuration file:
bviplus will look for your configuration file in $HOME/.bviplusrc
The configuration file may be used to set the defaul for any parameters which can be changed using the ':set' command
The format for the configuration file is line separated <option> [= value], just as you would do with :set <option> [= value]
e.g.
# Comments begin with a '#' mark
cols=40
nohl
Running external programs on data sets:
(First select 1 or more bytes using visual select)
:ex <external program> Run the external program on the visual select data.
:external <external program> The program should be one which reads from
stdin and writes to stdout.
eg. ':ex md5sum'
Files:
:bn Next file
:next
~
:bp Last file
:prev
:previous
:last
alt+<n> Switch to <n>th open file",
Macros:
Record macros with:
q<storage key><macro contents>q
Play macros with:
@<storage key>
Valid storage keys are a-z
If '@' is specified as the storage key when playing back a macro, the last macro played back is played again
Email: spacegctc@users.sourceforge.net