<< コマンドの起動 >>
hxavi [-a] [-b] [+[address]] filename
-a : 可能なら代替スクリーンを使用
-b : 巨大なファイルに対応
+[address] : 起動時にaddressにジャンプ
<< ファイル書き出しと終了 >>
:q<ent> : ファイルをセーブせず終了
:q!<ent> : ファイルの変更があってもセーブせず必ず終了
:w [{altname}]<ent> : ファイルの書き出し
:w! [{altname}]<ent> : ファイルの強制的な書き出し
:wq [{altname}]<ent> : ファイルの書き出しをした後終了
:wq! [{altname}]<ent> : ファイルの強制的な書き出し+終了
ZZ : ファイルに変更点があれば書き出しして終了
ZQ : ファイルの変更点を確かめずに終了(:q!と同じ)
<< カーソル移動 >>
h|^H|<bs>|<left> / l|<spc>|<right>
: 左/右 へ1文字移動
k|^P|<up> / j|^N|<down> : 上/下 へ1文字移動
0|^ / $ : 行の 先頭/最後 へ移動
+|<ent> / - : 次/前 の行の先頭へ移動
H|<home> / M / L : 画面の最上部/中央部/最下部の左端へ移動
<end> : 画面の最下部の右端へ移動
zt / zz / zb : カーソル行を画面の最上部/中央部/最下部へ移動
z<ent> / z. / z- : カーソル行を最上/中央/最下部へ移動,カーソルは左端
^Y / ^E : 1行逆/1行スクロール
^U / ^D : 半ページ分上/下にスクロール
^B|<pgup> / ^F|<pgdn> : 前の/次のページに移動
gg / G : ファイルの最上部/最下部の左端へ移動
:go {address}<ent> : address にジャンプ
:{address}<ent> : address にジャンプ
<< カーソル移動(まとめ) >>
^
^Y ^ ^U | ^B|<pgup>
+---------------^----------|----------|--------------+
| H|<home><-- |
| k|^P |
| - <-- ^ |
| 0|^ <-- <bs>|^H|h <-X-> l|<spc> ->$ |
| +|<ent> <-- v |
| j|^N |
| M <-- |
| |
| -->:g address<ent> |
| |
| |
| |
| L <-- --> <end> |
+---------------v----------|----------|--------------+
^E v ^D | ^F|<pgdn>
v
<< カーソル移動(サーチ) >>
fHH / FHH : 行内の前方/後方へのサーチ
tHH / THH : 行内の前方/後方へのサーチ(直前の位置)
; : 行内のサーチの繰り返し
/{HH HH ...}<ent> : 16進数でのサーチ(前方)
/"{text}<ent> : 文字列でのサーチ(前方)
?{HH HH ...}<ent> : 16進数でのサーチ(後方)
?"{text}<ent> : 文字列でのサーチ(後方)
<tab> / <shift+tab> : 10進数のデータ型を選択
/:{decimal}<ent> : 10進数のサーチ(前方)
/:{decmin},{decmax}<ent> : 10進数のサーチ(前方,2値での範囲指定)
?:{decimal}<ent> : 10進数のサーチ(後方)
?:{decmin},{decmax}<ent> : 10進数のサーチ(後方,2値での範囲指定)
/<ent> : 前と同じ pattern のサーチ(前方)
?<ent> : 前と同じ pattern のサーチ(後方)
n/N : 前と同じ pattern のサーチ(同方向/逆方向)
mx : カーソル位置にxという名前をつける(aからzが使用可)
'x : 名前xの場所にジャンプし,左端に移動する
`x : 名前xの場所にジャンプする
<< バッファの編集 >>
i|<ins> : カーソル位置から挿入モードに入る
I : 行の先頭に移動して挿入モードに入る
a : カーソルの1バイト先に移動して挿入モードに入る
A : 行末に移動して挿入モードに入る
o : 次の行の先頭に移動して挿入モードに入る
O : 行の先頭に移動して挿入モードに入る
i|... ---+ : 挿入モード
R ---+ : 上書モード
|
+--- 0-9|a-f|A-F : 4ビット挿入/書換
+--- "{string}<ent> : 文字列でデータを入力
+--- :{number}<ent> : 10進数でデータを入力
+--- #{binary}<ent> : 2進数でデータを入力(:set decimalviewが必要)
+--- h|^H|<bs> : 1バイト入力取消
+--- <tab> : 10進数のデータ型の選択
+--- <shift+tab> : 10進数のデータ型の選択(逆方向)
+--- <esc> : モード終了
+--- ! : ヘルプ
+--- ^L : 画面の再描画
rHH : 一文字の上書き
x|<del> : 1バイト削除
y{motion} : 現在位置からmotionで移動する場所までのデータコピー
yy|Y : 現在の1行分のデータをコピー
d{motion} : 現在位置からmotionで移動する場所までのデータを削除
dd : 現在の1行分のデータを削除
D : カーソル位置から行末までのデータを削除
p : コピーや削除したデータをカーソル位置の直後に挿入
P : コピーや削除したデータをカーソル位置の直前に挿入
. (ピリオド) : 直前の編集コマンドの繰り返し
"x{command(y|d|...)} : レジスタx にコマンドの結果を保存
:i {source address},{end address},{dest address}<ent>
: ブロックコピー(挿入)
:d {start address},{end address}<ent>
: ブロック削除
u : バッファ編集コマンドを元に戻す('undo')
^R : バッファ編集コマンドをやり直す('redo')
<< その他コマンド >>
^L : 画面の再描画
^G : ファイル名の表示
={formula}<ent> : formula(数式)の計算
<tab> : decimalviewでのデータ型の選択
<shift+tab> : decimalviewでのデータ型の選択(逆方向)
:!{command}<ent> : シェル・エスケープして command を実行
:bitmap<ent> : データのビットマップビューを表示
^F / ^B | ^D / ^U | ^E / ^Y | ^N / ^P | zt / zz / zb | z<ent> / z. / z-
: 表示の縦スクロール
j / k / h / l / H / M / L / 0 / $
: カーソルの移動
< / > : 表示の横スクロール
+ / - : 1行に表示するバイト数の増減
( / ) : データ列の左/右へのローテート
U : 画像の上下を反転
W : 画像の白黒を反転
s / r : カーソルの場所の1ビットをセット/リセット
u : 1ビットのセット/リセットを元に戻す(undo)
^R : 1ビットのセット/リセットをやり直す(redo)
^L : 画面の再描画
q|<esc> : モードの終了
:bytemap<ent> : データのバイトマップビューを表示
^F / ^B | ^D / ^U | ^E / ^Y | j / k | ^N / ^P
: 表示のスクロール
+ / - : 1行に表示するバイト数の増減
( / ) : データ列の左/右へのローテート
<tab> / <shift+tab> : 点で表示するデータの値の範囲を変更
q|<esc> : バイトマップビューを終了
g : バイトマップビューを終了しカーソルの位置に移動
:cmap<ent> : 256色の色見本を表示. q か :q で終了
:file {newname}<ent> : ファイル名を 'newname' に変更
:help<ent> : このヘルプを表示
:histogram<ent> : データの分布をヒストグラム表示
h / l : 表示の左/右への移動
j / k : 縦軸の拡大/縮小
q|<esc> : ヒストグラムの終了
:logo<ent> : プログラムのロゴの表示
:man<ent> : マニュアルの表示. q か :q で終了
:set [all]<ent> : オプションの一覧を表示
:set ambiwidth[=(single|double)]<ent>
: 曖昧な文字幅文字の幅指定
:set biblen[=N]<ent> : bitmapのカーソル点滅間隔の指定(ミリ秒)
:set bidlen[=N]<ent> : ダンプ画面のカーソル点滅間隔の指定(ミリ秒)
:set bytes[=N]<ent> : 画面の1行のバイト数指定
:set cmdenter[={commands}]<ent>
: コマンド行での動作開始時に実施させる内容の指定
:set cmdleave[={commands}]<ent>
: コマンド行での動作終了時に実施させる内容の指定
:set color : 色使いについて現在の設定値を表示
:set color {place} {part} = N
: エディタの各場所の色使いをNに更新する
:set [no]decimalview<ent> : 10進数表示モードの指定
:set encoding[={enc}]<ent>: キャラクタのエンコーディング指定
:set endian[=(little|big)]<ent>
: decimalviewのエンディアン指定
:set [no]flash<ent> : 画面警告(フラッシュ)の有無の指定
:set helplang[=(ja_JP|en_US|..)]<ent>
: ヘルプの言語選択
:set [no]hideescseq<ent> : エスケープシーケンスを空白で表示する指定
:set hxaviend[={commands}]<ent>
: hxaviを終了する際に実施させる内容の指定
:set lines[=N]<ent> : 画面の行数指定
:set ttimeoutlen[=N]<ent> : ESCの後のタイムアウト(ミリ秒)
:set [no]usecolor<ent> : カラーの使用指定
:set [no]wrapscan<ent> : サーチの動作指定
<< コマンドのカウント >>
- 10進数 : [0-9]+ 例: 123, 2300, ...
- 16進数 : 16#[0-9a-fA-F]+# 例: 16#ABC0#, 16#12cf#, ...
- 8進数 : 8#[0-7]+ 例: 8#776, 8#1000, ...
- 2進数 : 2#[0-1]+ 例: 2#1000000, 2#10110011, ...
<< コマンドの短縮 >>
":"で始まるコマンドで使用する単語はは他と区別出来る最低限を入力すればよい
例えば, :set ambiwidth=double<ent> は, :s am=d<ent> でよい
:set nowrapscan<ent> は, :s now<ent> でよい
