【问题标题】:Adding degree symbol in roxygen2在 roxygen2 中添加度数符号
【发布时间】:2017-08-06 15:47:25
【问题描述】:

如何使用 roxygen2 为R 文档添加度数符号?

°C 在 pdf 中工作,但它是 html,它显示为 °C

这是会话信息。

R version 3.4.0 (2017-04-21)
Platform: i386-w64-mingw32/i386 (32-bit)
Running under: Windows 7 (build 7601) Service Pack 1

Matrix products: default

locale:
[1] LC_COLLATE=English_India.1252  LC_CTYPE=English_India.1252    LC_MONETARY=English_India.1252
[4] LC_NUMERIC=C                   LC_TIME=English_India.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] compiler_3.4.0 tools_3.4.0   

【问题讨论】:

  • 两种可能性:尝试使用 Unicode,例如 cat('\u00B0')。或者,您的说明文件中可能需要Encoding: UTF-8
  • 嗯,我已经在没有编码字段和没有使用显式 unicode 的情况下进行了测试,并且字符 ° 打印正常。
  • 我正在使用Encoding:UTF-8,我尝试过\code{print('\u00B0')},但得到相同的结果°C
  • 你能提供你的包的链接(GitHub)吗?
  • @F.Privé 我的包还没有在 github 中。此外,我认为 CRAN 的 R 或 R 文档中不允许使用非 ascii 字符。

标签: r documentation r-markdown roxygen2 roxygen


【解决方案1】:

要使用roxygen2R 文档中添加任何非ASCII 字符,必须使用标签@encoding 声明编码。

因此,当°C 用于 roxygen 代码时,添加标签 @encoding UTF-8 将正确呈现 html 和 pdf。

这可以用

检查
path <- "path to Rd file"
tools::checkRd(path)

【讨论】:

  • 这对我不起作用。如果我在 roxygen2 文档中使用 ä 作为函数,R 会将其更改为 .Rd 文件中的乱码。它确实在顶部添加了\encoding{UTF-8},但为时已晚。 .Rd 文件已经不正确。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-10
  • 2015-02-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多