Markdown中的RTL

时间:2010-02-13 15:24:56

标签: markdown right-to-left

是否有任何现有的降价规范,包括对RTL语言的支持?

我希望的是

This paragraph is left to right
<- This paragraph is right to left

或者某些东西......我可以调整我的解析器来处理这个问题,但我想确保它已经不存在了。

7 个答案:

答案 0 :(得分:27)

不完全降价,但这是你可以在StackExchange问​​题和答案中覆盖段落方向的方法(此方法不适用于评论):

add&amp;#x202b;段落开头的(RIGHT-TO-LEFT EMBEDDING)确实控制了这一段的方向(在&lt; br /&gt;或空行上自动重置):

&#x202b;test מה זה? YES<br/>
test1 מה זה? NO
test2 מה זה? NO

&#x202b;test1 מה זה? YES
test2 מה זה? YES
  

测试מהזה? YES
  test1מהזה?没有   test2מהזה? NO

     

test1מהזה?是   test2מהזה?是

答案 1 :(得分:15)

这是Markdown的JavaScript实现,它(根据提交注释)增加了对RTL语言的支持,即阿拉伯语,希伯来语,叙利亚语,塔那语。而且添加更多语言似乎很容易。

https://github.com/hasenj/showdown/

它基于摊牌,http://attacklab.net/showdown

似乎自动了解是否从右向左呈现文本。
请考虑以下代码片段:(从GitHub的第一次提交开始)

var p_tag = "<p>";
var rtl_p_tag = "<p style='direction:rtl; text-align: right'>";

// Check for RTL paragraphs: paragraphs that start with a character
// from an RTL script.
// RTL scripts are: Arabic, Hebrew, Syriac, Thaana
// Unicode ranges reference: http://www.ssec.wisc.edu/~tomw/java/unicode.html
var first_char = str.charCodeAt(str.search(/\S/)); //first non-white-space char
if(first_char >= 1424 && first_char <= 1983) 
{
    p_tag = rtl_p_tag;
}

    str = _RunSpanGamut(str);
    str = str.replace(/^([ \t]*)/g, p_tag);

希望这有帮助,
马格努斯

答案 2 :(得分:11)

实际上,正如我的朋友Aevyz提醒我的那样,Markdown在其中解析HTML。

您不需要更改解析器。我能想到的最快的解决方法是:

<div dir="rtl">

سلام دنیا

مرحبا العالم

שלום בעולם

ہیلو دنیا
</div>

因此,您需要从字面上添加两行以打开整个文档的RTL,并且顺便说一下,它将比自己的脚本更好地兼容。所以我认为这是对这个问题的答案。

答案 3 :(得分:10)

我没有在比迪烟文本的降价标准中找到任何内容。 我使用自己的编辑器:dariubs.github.io/rtlmd

答案 4 :(得分:7)

מעניין。 עכשיואנירואה שבעצםישגםלאתרהזהפהתמיכהבעבריתוכתיבהמימיןלשמאל。 הבעיההיאשזהכותבטוב,אבלבתרגוםבתיבהלמטהשמציגהכמושזהאמורלהראות זהללעובדטוב。

以上段落用希伯来语RTL编写,并在输入框中正确显示,但未在预览版中显示。但是,没有支持混音 - 有一段RTL和另一段LTR。似乎有人需要在Markdown中为MarkdownSharp(SO的版本)移植上述希伯来语支持。不应该太难。

答案 5 :(得分:5)

只需像下面的例子一样使用 dir="auto",它就会如你所愿:

 <div dir="auto">
                با استفاده از attribute dir با مقدار auto در HTML می تونید به طور خودکار RTL رو هم داشته باشید.
  </div>

答案 6 :(得分:0)

您可以简单地在 span 标签之间添加所有内容,如下所示:

<span dir="rtl" align="right">
      این یک test است
</span>

您可能需要查看 this 链接以查看示例。