1
我有一个“文本”文件,有一些无效的字节序列。 Emacs将它们渲染为“\ 340 \ 360”,有没有办法让强大的文本处理器以十六进制渲染它们,例如:“\ co0a”?谢谢。emacs中unibyte文本缓冲区:以hexa编码?
编辑:我不会将自己的答案标记为已接受,但只是想说它的工作正常。
我有一个“文本”文件,有一些无效的字节序列。 Emacs将它们渲染为“\ 340 \ 360”,有没有办法让强大的文本处理器以十六进制渲染它们,例如:“\ co0a”?谢谢。emacs中unibyte文本缓冲区:以hexa编码?
编辑:我不会将自己的答案标记为已接受,但只是想说它的工作正常。
发现了它,以防万一有人需要它太...(从here)
(setq standard-display-table (make-display-table))
(let ((i ?\x80) hex hi low)
(while (<= i ?\xff)
(setq hex (format "%x" i))
(setq hi (elt hex 0))
(setq low (elt hex 1))
(aset standard-display-table (unibyte-char-to-multibyte i)
(vector (make-glyph-code ?\\ 'escape-glyph)
(make-glyph-code ?x 'escape-glyph)
(make-glyph-code hi 'escape-glyph)
(make-glyph-code low 'escape-glyph)))
(setq i (+ i 1))))