RTL e MathJax

Olá a todos :slight_smile:
Tenho uma pequena dúvida sobre como usar tópicos que misturam inglês e idiomas RTL (direita para esquerda), como o hebraico, especialmente se usarem o plugin MathJax. No nosso fórum Discourse, fica assim:

O resultado final é ótimo! O único problema é escrever essas equações. Pode ficar realmente difícil escrever equações longas. Entendo que misturar RTL com LTR pode causar problemas, mas gostaria de saber se é viável? Existe alguma maneira de resolver isso?

Você pode tentar ativar a configuração do site “suporte a direção de texto mista”. Confira Supporting mixed text directions para detalhes sobre a configuração.

Quando ativada, a configuração adiciona um botão Alternar Direção ao compositor:

Não testei isso com o plugin MathJax, mas deve facilitar bastante a escrita de equações longas. Se você testar a configuração e encontrar algum problema, por favor, nos avise.

Obrigado pela resposta!
Na verdade, eu já tinha testado isso antes de postar este tópico, mas esqueci de mencionar. Isso ajuda a visualizar melhor as equações separadas por $$-$$, mas não ajuda para equações de uma única linha. Além disso, ele converte o idioma RTL para LTR (porque não é possível mudar a direção apenas para uma linha), o que também deixa a aparência confusa. Você tem outras ideias?
Obrigado novamente pela resposta :slight_smile:

Olá a todos :slight_smile:
Tentando a minha sorte novamente. É possível de alguma forma conseguir LTR entre os blocos de código e MathJax? Parece estranho escrever código ou fórmulas em fóruns RTL:

Deveria ficar assim:

Existe alguma maneira de conseguir isso?

Sim, isso seria difícil. Não é uma solução ideal, mas você pode adicionar um botão de alternância de direção ao editor com um componente de tema. Isso permitirá que você alterne a direção de toda a área de edição do editor para LTR ao escrever código. O código abaixo foi extraído do código usado quando a configuração do site support mixed text direction está ativada. Se a direção padrão do seu site for RTL, mantenha o código como está. Se a direção padrão for LTR, substitua 'rtl' no operador ternário por 'ltr' para evitar a necessidade de clicar duas vezes na primeira vez que o botão for usado.

<script type="text/discourse-plugin" version="0.8.32">
    api.onToolbarCreate(toolbar => {
        toolbar.addButton({
            id: "toggle-direction",
            group: "extras",
            icon: "exchange-alt",
            shortcut: "Shift+6",
            title: "Alternar Direção",
            perform: () => {
                const $textArea = $(".d-editor-input");
                let currentDir = $textArea.attr("dir") ? $textArea.attr("dir") : 'rtl', // defina o padrão para a direção de texto padrão do seu site.
                    newDir = currentDir === "ltr" ? "rtl" : "ltr";
                $textArea.attr("dir", newDir).focus();
            }
        });
    });
</script>

Clique no ícone Alternar Direção para alterar a direção do editor: