我想打印一个简单的文本文档,并确保单词边界上的文字.我试过了两个
set linebreak
和
set wrap
但是在打印时,它只会在单词中间的右栏上打破.这可以用于打印吗?
您正在创建一个没有任何内置换行符的文本文件,因此每个段落都是单个"行",即使使用换行符和换行集,它们看起来像是多行.这就是打印在固定位置打破的原因.(根据http://www.vim.org/htmldoc/various.html#printing,在打印过程中,你似乎没有vim尊重linebreak/wrap.)
为避免这种情况,如果要在编辑时要包装文本,请执行此操作
set textwidth=70
包裹在第70列.如果您希望您的文件有长行(例如,当它加载到MS Word或其他东西时格式正常),那么您必须在打印之前预处理文本版本.所以,例如,您可以尝试:
fmt file.txt | lpr
或者如果你安装了enscript,你应该可以尝试:
enscript --word-wrap file.txt
打印.可以通过在vim中运行来包装现有文件:
gggqG
也就是说,'gg'将开始文件,'gqG'将'gq'从当前位置(即第一行)重新格式化为最后一行(通过转到'G').'gq'将尊重您当前的文本宽度设置.