R блестящий с mathjax: как избежать автоматического помещения скобок в математический режим? - PullRequest
0 голосов
/ 11 марта 2020

У меня блестящее приложение, которое использует MathJax. В моем обычном тексте MathJax автоматически конвертирует текст в скобках в математический режим. Какой параметр позволяет мне выйти из математического режима для чего-то простого, например, круглых скобок?

В MWE первый Hello! должен был быть напечатан как (Привет!) вместо математического режима. Как это сделать?

MWE:

library(shiny)

server <- shinyServer(function(input, output) {
 })

ui <- shinyUI(fluidPage( 
  withMathJax(),
  tags$div(HTML("<script type='text/x-mathjax-config'>
                MathJax.Hub.Config({
                tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}
                });
                </script>
                ")),

  titlePanel("Minimal application"),
    sidebarLayout(  
    sidebarPanel( 
      fluidRow(h4("(Hello!)"))),
    mainPanel(
      fluidRow(h4("Hello!")))
    )
   ))

shinyApp(ui=ui, server=server)

1 Ответ

1 голос
/ 11 марта 2020

решение 1

Самый простой обходной путь - удалить ['\\(','\\)'] в скрипте. Это говорит математическому движку, что между "(" и ")" будет рассматриваться как математический режим. Если вы хотите использовать математический режим, вы все равно можете использовать «$ xxx $».

library(shiny)

server <- shinyServer(function(input, output) {
})

ui <- shinyUI(fluidPage( 
    withMathJax(),
    tags$div(HTML("<script type='text/x-mathjax-config'>
                MathJax.Hub.Config({
                tex2jax: {inlineMath: [['$','$']]}
                });
                </script>
                ")),

    titlePanel("Minimal application"),
    sidebarLayout(  
        sidebarPanel( 
            fluidRow(h4("(Hello!)"))),
        mainPanel(
            fluidRow(h4("Hello!")))
    )
))

shinyApp(ui=ui, server=server)

решение 2

Непосредственно экранировать «()» в HTML с помощью <span class='tex2jax_ignore'>. Замените ваш h4 следующим:

fluidRow(HTML("<h4><span class='tex2jax_ignore'>(Hello!)</span></h4>"))),

Это позволит вам даже избежать "$".

...