我想用Vim来编辑长文本(散文/没有代码),以一种格式良好的方式。
让我们考虑这个文件:
x1c 0d1x的数据
我可以使用句子,段落等Vim的功能,但长句格式伊萨难看/可读性差。
因此,我希望有一个严格固定列宽的调整元素(假设列数=正好100)。
我做了一些测试,安装了par
unix命令行工具(sudo apt-get install par
),并设置Vim使用它(带有'justify'标志):
:set formatprg=par\ jw100
字符串
执行Vim命令:
gqG
型
但没有一个完美的喜悦,看这里的截图:
的
正如你所看到的,我没有一个确切的理由,100字符。为什么?!这可能是依赖,因为par不承认一些> 8位字符(意大利语文本在这里)?
事实上还有第二个问题:我不想永久转换原始文本在对齐的阐述,破坏原来的句子(引入空白/新行),但我只会查看文本离开原始文本不变.有一种方法可以做到格式化视图模式?
3条答案
按热度按时间prdp8dxp1#
Vim有
:set wrap
,仅此而已。记住,它不是一个所见即所得的编辑器,所以作为对齐文本查看超出了范围。如果
par
实用程序不起作用(我认为它应该处理UTF-8编码的文本;检查$LANG
的值),您也可以给予Vim附带的$VIMRUNTIME/macros/justify.vim
脚本一个尝试。p1tboqfb2#
要在文件上临时使用
par
,请确保已使用:w
保存,然后使用:!par jw100 <% | less
,它将显示文件的只读可滚动100字符对齐版本。下面是一个关于一些存有文本的例子:
的数据
0sgqnhkj3#
一个正则表达式来实现这一点:
字符串
也可以将
hyphen
放置在行尾拆分字处,并使用:型
如此等等。