首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Bookdown:修正R代码块中的中文字符串之前的额外空间

Bookdown:修正R代码块中的中文字符串之前的额外空间
EN

Stack Overflow用户
提问于 2017-12-27 10:06:45
回答 1查看 309关注 0票数 15

当中文字串在R码块内时,编译后的PDF会在字符串前得到一个冗余空间,如何避免这个额外的空间?请参考github -预订-中文中最低限度的案例。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-31 05:30:08

此问题是由LaTeX包xeCJK引起的。默认情况下,除了在verbatim环境中,它在中文字符和非汉字字符之间添加空格。在您的示例中,代码实际上不是在verbatim环境中,因此您必须让xeCJK知道它不应该自动添加空格。

解决方案是将这一行添加到您的LaTeX序言( Highlighting环境是由Pandoc在将Markdown转换为语法突出显示代码时定义的,它基于fancyvrb包):

代码语言:javascript
运行
复制
\RecustomVerbatimEnvironment{Highlighting}{Verbatim}{commandchars=\\\{\},formatcom=\xeCJKVerbAddon}

对于R文档,这一行可以保存在一个.tex文件中,例如,preamble.tex,并通过includes选项包括,例如,

代码语言:javascript
运行
复制
output:
  pdf_document:
    includes:
      in_header: preamble.tex

有关完整的技术背景,请参阅这个吉特布问题

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47990152

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档