在 Shiny-Server 中发布后如何在 Rmarkdown 中启用表情符号

Posted

技术标签:

【中文标题】在 Shiny-Server 中发布后如何在 Rmarkdown 中启用表情符号【英文标题】:How to enable emoji in Rmarkdown to show up after publishing in Shiny-Server 【发布时间】:2017-12-10 03:00:04 【问题描述】:

我有以下 Rmarkdown 代码,它使用 Hadley 的 emo(ji) 包。

---
title: "My First Shiny"
runtime: shiny
output: 
  flexdashboard::flex_dashboard:
    orientation: rows
    vertical_layout: scroll
---


```r setup, include=FALSE
```


Rows data-height=800
-----------------------------------------------------------------------

### Section1 `r strrep(emo::ji("heart_eyes_cat"), 5)`

Some text

在我的 Rstudio IDE 中生成这个没有问题:

正如图片中突出显示的那样,表情符号未能出现在我的 local Shiny-server.

如何启用它?

【问题讨论】:

你看过生成的 html 吗?您使用的是什么网络浏览器?试过其他的吗?渲染页面时是否记录任何错误? @Spacedman 我在 FF、Safari、Chrome 上试过。 /var/log/shiny-server.log 中没有错误。页面源码已经隐藏了很多细节。我在来源上看不到任何线索。 不,错误(如果有)将在浏览器的日志中。 @Spacedman Shiny 浏览器日志的路径是什么? 它没有“路径”,它是您的网络浏览器可以通过菜单或开发人员工具栏按钮向您显示的东西。 【参考方案1】:

根据github documentation,您的文件应如下所示:

S3method(print,emoji)
export(ji)
export(ji_find)
export(ji_p)


ji_p <- function(x) 
   stopifnot(is.numeric(x))

   out <- stats::symnum(x,
     corr = FALSE,
     na = FALSE,
     cutpoints = c(0, 1e-5, 0.001, 0.01, 0.05, 0.1, 1),
     symbols = c(ji("laughing"), ji("joy"), ji("grin"), ji("smile"), ji("thinking"), ji("poop"))
   )

   structure(out, class = c("emoji", class(out)))

 

我没有看到您在代码中似乎使用过(使用, 5)的任何简写,而且r 前缀现在似乎已被删除;内联使用时,它会被使用,但需要在它之前和之后使用额外的“刻度”,如下所示:

 `` `r emo::ji("smile")` ``

您使用的是旧版本的提交吗?对 knitr 的需求已被删除,现在只需要 tibble。检查this latest commit doc out

希望对你有帮助

【讨论】:

以上是关于在 Shiny-Server 中发布后如何在 Rmarkdown 中启用表情符号的主要内容,如果未能解决你的问题,请参考以下文章

即使在示例页面中,Shiny-server 也不显示 rmarkdown(已安装 rmarkdown 包)

没有定义 UI (shiny-server)

如何使用UDP协议访问Amazon的Shiny-Server

在不同于 3838 的端口上运行 Shiny-server

Centos 配置上的闪亮服务器

Linux rm危险命令误删除文件如何恢复