man命令输出完整的^ H在vim中

时间:2015-03-15 12:09:20

标签: macos vim man

这个问题似乎很难通过谷歌搜索答案。

我执行了:

man cp > cp.txt
vim cp.txt

有很多" ^ H"在文件中,它可能退格,如何摆脱它们?

3 个答案:

答案 0 :(得分:5)

就像我们的祖父母与他们的打字机一样,man使用"退格" (^H)要覆盖前一个字符并再次输入以获得" bold"字母。

虽然你可以通过一个简单的^H摆脱那些:%s/<C-v><C-h>//g,但你会得到很多双字符:

"original
N^HNA^HAM^HME^HE

"result
NNAAMMEE

所以你需要在^H

之前或之后加入角色
:%s/<C-v><C-h>.//g

但是,为什么要直接使用以下方法获取干净的文本文件时会遇到所有麻烦:

$ man cp | col -b > cp.txt

答案 1 :(得分:0)

这些特殊控制字符可能是ANSI转义序列,用于为文本添加样式和颜色。 Vim默认不解析这些,但AnsiEsc plugin使用Vim的隐藏和语法突出显示功能来按预期绘制文本。

答案 2 :(得分:0)

Vim附带一个Man页面阅读器。将以下内容添加到您的~/.vimrc

runtime ftplugin/man.vim

现在,您可以:Man cpcp上打开手册页。

有关更多帮助,请参阅:h :Man