0

%!xxdコマンド(* nix hex dumpを呼び出す)と(* nix hex dumpを終了する)を使用して、vi/vimでファイルを16進編集できることを私は知っていました%!xxd -r

問題は、16進コード領域で16進編集を行うと、対応するカーソルがASCIIコード領域に表示されないことです。その逆も同様です。

対照的に、ファイルをghexで編集する場合、2つのカーソルがあります。1つは現在の編集操作で、もう1つはもう一方のパネルの対応する位置を示します。

たとえば、テキストファイルに文字「f」が含まれていて、ghexを使用して編集している場合、カーソルを16進数に移動すると、右側のパネルのカーソルに現在編集する文字が「f」と表示されます。左側のパネルの値0x66。

この機能はvi/vim / xxdにすでに存在しますが、私は知りませんでしたか?

4

1 に答える 1

3

明確にするためにxxd、vimコマンドではありません。これは、16 進ダンプとの間で変換を行う外部プログラムです。このコマンド%!xxdは、「外部プログラムxxdを実行し、このファイルの内容を 経由で渡し、stdinファイルの内容を結果で置き換える」ことを意味します。

以上のことから、これらの 16 進ダンプを編集するために vim の特別なモードを使用していないことを理解していただければ幸いです。16 進ダンプは単に表示されるテキストであり、通常のテキスト ファイルとして編集しています。

あなたが探している機能を提供するvimの拡張機能があるかもしれません(私はあまり詳しく見ていません)が、あなたの質問への答えとして、これを行うための組み込み機能はありません。

于 2012-11-12T20:39:01.647 に答える