Вопрос

Существует ли существующая спецификация аддона для Markdown, которая включает в себя поддержку языков RTL?

Я надеюсь

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

Или что -то ... Я могу настроить свой анализатор, чтобы справиться с этим, но я хочу убедиться, что его еще не существует.

Это было полезно?

Решение

Вот реализация 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);

Надеюсь это поможет,
Магнус

Другие советы

Не совсем отметка, но именно так вы можете переопределить направление абзаца в вопросах и ответах Stackexchange (этот метод не работает для комментариев):

Добавить (встроение справа на лето) в начале абзаца управляет направлением этого абзаца (автоматическое разрешение наu003Cbr/> или пустая линия):

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

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

тест מ всем ז всем? ДА
Тест1 מה ז всем? Нет теста2 מה זה? НЕТ

Тест1 מה ז всем? Да тест2 מה זה? ДА

На самом деле, как мой друг Aevyz Напомнил мне, Markdown Sackses HTML в нем.

Вам не нужно будет изменить свой анализатор. Самый быстрый путь, который я мог бы подумать:

<div dir="rtl">

سلام دنیا

مرحبا العالم

שלום בעולם

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

Так что вам нужно Добавить буквально две строки Чтобы превратить весь документ RTL, и кстати он будет лучше совместимы, чем собственный сценарий. Так что я думаю, что это ответ на вопрос.

Я ничего не нахожу в стандарте Markdown для текстов Bidi. Я использую свой собственный редактор: rtlmd

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

Приведенный выше абзац был написан в иврите RTL и был правильно отображен в поле ввода, но не в предварительном просмотре. Тем не менее, не было никакой поддержки для смешивания - одного абзаца RTL и еще одного LTR. Кажется, кто -то должен перенести вышеупомянутую ивритскую поддержку в Markdown также для Markdownsharp, так что версия. Не должно быть слишком сложно.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top