大家好 ![]()
我有个关于如何混合使用英语和从右向左(RTL)语言(如希伯来语)主题的小问题,特别是当这些主题使用 MathJax 插件时。在我们的 Discourse 论坛中,效果如下:
最终结果非常棒!唯一的问题是编写这些公式。如果要写较长的公式,可能会非常困难。我理解混合使用 RTL 和 LTR 可能会引发问题,但我想确认这是否可行?是否有办法解决?
You could try enabling the support mixed text direction site setting. Have a look at What does the support mixed text direction setting do? for details about the setting.
When enabled, the setting adds a Toggle Direction button to the composer:
I haven’t tested this with the MathJax plugin, but it should make it a lot easier to write long equations. If you try the setting and run into any issues, please let us know.
Thanks for the reply!
I actually have tried it before posting this topic but forgot to mention it. It does help to look better at equations that are separated with $$-$$, but it does not help for one-liner equations. Also, it converts the RTL language to be LTR (because you can’t switch directions for only one line) which also makes it look messy. Do you have other ideas?
Thanks again for the reply 
Yes, that would be difficult. It’s not an ideal solution, but you can add a direction toggle to the composer with a theme component. That will allow you to switch the direction of the entire composer edit area to ltr when you are writing code. The code below is extracted from the code that is used when the support mixed text direction site setting is enabled. If your site’s default direction is rtl, keep the code as it is. If the default direction is ltr, replace 'rtl' in the ternary operator with 'ltr' to avoid having to double click the first time the toggle is used.
<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: "Toggle Direction",
perform: () => {
const $textArea = $(".d-editor-input");
let currentDir = $textArea.attr("dir") ? $textArea.attr("dir") : 'rtl', // set the default to your site's default text direction.
newDir = currentDir === "ltr" ? "rtl" : "ltr";
$textArea.attr("dir", newDir).focus();
}
});
});
</script>
Click the Toggle Direction icon to change the composer’s direction: