【问题标题】:cursor(s) in hex edit with vi/vim使用 vi/vim 进行十六进制编辑的光标
【发布时间】:2012-11-01 07:03:57
【问题描述】:

我知道我们可以用 vi/vim 对文件进行十六进制编辑,使用命令 %!xxd(调用 *nix hex dump)和 %!xxd -r(exit *nix hex dump)。

问题是,如果我在hex-code区做一些hex-editing,ascii-code区没有对应的光标显示,反之亦然。

相比之下,用ghex编辑文件时,有两个光标,一个是当前编辑操作,另一个显示在另一个面板中的对应位置。

例如,如果一个文本文件包含一个字母'f',而我正在使用ghex来编辑它,当我移动光标时,右侧面板中的光标将显示当前要编辑的字符是'f'到左侧面板中的十六进制值 0x66。

vi/vim/xxd中是否已经存在这个功能,但我没有发现?

【问题讨论】:

    标签: linux vi hex-editors


    【解决方案1】:

    我们很清楚,xxd 不是 vim 命令;它是一个与十六进制转储进行转换的外部程序。命令%!xxd 的意思是'运行外部程序xxd,通过stdin 将这个文件的内容传递给它,并用结果替换文件的内容。

    因此,我希望您明白您没有使用 vim 的某些特殊模式来编辑这些十六进制转储。十六进制转储只是您看到的文本,您正在将其作为普通文本文件进行编辑。

    vim 可能有一些扩展,它提供了您正在寻找的功能(我看起来不是很努力),但在回答您的问题时,没有内置功能可以做到这一点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-20
      • 2013-06-10
      • 2013-09-25
      • 2018-03-05
      • 2012-05-10
      • 1970-01-01
      • 2011-03-14
      • 1970-01-01
      相关资源
      最近更新 更多