knitr html输出中的字符串太长

时间:2013-08-17 14:22:01

标签: html r knitr r-markdown

我的函数bs.pi.gmp()定义here可以生成很长的字符串:

> bs.pi.gmp(8)
$Sn
Big Rational ('bigq') :
[1] 115056663317199981372832786803399641133848259535718238578854114440177847232763528127119686643465544336537363974090559640151844992619459739337642897335661405374200830442503779326745081494631228217510085926896107230240702464/73247346810369298651903071099557979072216039642432949710389234675732768750102001285974817825809831148661290123993641325086924401900965008305646606428886048721946203288377842830920059623434101646117412656625454480462852875

$eval.Sn
[1] "1.570796326794896557999"

当我在RMarkdown文档中运行bs.pi.gmp(8)时,字符串超出宽度屏幕。我试图使用options(width=...)或在块中使用tidy选项来解决这个问题,但这不起作用。怎么解决?

然而,当我简单地复制粘贴由overblog上的knitr生成的html时,正如您所看到的,渲染是完美的。这肯定是由于在博客上发布文章时产生的html选项(在标题中),但是这个选项是什么?

1 个答案:

答案 0 :(得分:2)

在overblog网站上,长字符串所在的容器具有word-wrap: break-word,而在此示例中,它不具有word-wrap。 (normal设置为默认值word-wrap: break-word)。

另见https://developer.mozilla.org/en-US/docs/Web/CSS/word-wrap

解决方案:将样式pre code应用于放置字符串的位置 (不幸的是,我并不精通RMarkdown,我不确定你应该怎么做。但我确定它会做到这一点。)

编辑:
如果您可以完全控制CSS,那么您需要做的就是将该属性添加到pre code { display: block; padding: 0.5em; word-wrap: break-word; } 的样式中 所以完整的风格将会读取

{{1}}