打印时vim / nvim行间距

时间:2016-09-03 06:50:38

标签: vim neovim

我试图将nvim用于所有事情,包括写作,而且一切都很棒,但是当我将它打印出来时,文字太挤了。

使用:hardcopy打印时是否可以调整行间距?

我对kludge修复的想法是为每个回车插入第二个换行符,包括通过换行自动插入的换行符。这可能吗?

1 个答案:

答案 0 :(得分:1)

最不令人沮丧的方法之一是使用像pandoc这样的工具将文本(例如Markdown)转换为您需要的任何格式 - 最好是PDF。但是,mdpdf file.md --style styles.css 使用LaTeX创建生成的PDF,因此关于样式,您必须修改为其提供模板或其他选项。

您可以使用(例如)名为mdpdf的Node.js工具更轻松地完成此操作。安装完成后,运行

body { line-spacing: 150%; }

为其提供CSS样式表,您可以在其中使用every feature CSS permits修改生成的文本输出。使用更大的行间距将是这样的:

.vimrc

这会导致文档中所有内容的行间距为1.5倍。

当然,您也可以设置自定义Vim命令为您自动执行此操作,将以下内容添加到command MdToPDF !mdpdf %:t --style /full/path/to/styles.css

:MdToPDF

然后在Vim中调用let scaleSubChartBarWidth = chart => { let subs = chart.selectAll(".sub"); if (typeof barPadding === 'undefined') { // first draw only // to percentage barPadding = BAR_PADDING / subs.size() * 100; // each bar gets half the padding barPadding = barPadding / 2; } let startAt, endAt, subScale = d3.scale.linear().domain([0, subs.size()]).range([0, 100]); subs.each(function (d, i) { startAt = subScale(i + 1) - subScale(1); endAt = subScale(i + 1); startAt += barPadding; endAt -= barPadding; // polygon( // top-left-vertical top-left-horizontal, // top-right-vertical top-right-horizontal, // bottom-right-vertical bottom-right-horizontal, // bottom-left-vertical bottom-left-horizontal, // ) d3.select(this) .selectAll('rect') .attr("clip-path", `polygon(${startAt}% 0, ${endAt}% 0, ${endAt}% 100%, ${startAt}% 100%)`); }); }; 将为您运行该命令。

最后,如果您对输出感到满意,只需打印PDF。