Как избежать двойного знака плюс плюс ++ в Asciidoctor Asciidoc?

Например, если я напишу:

Notepad++ is *great*, I like Notepad++

он обрабатывает ++something++ как escape-конструкцию, которая игнорирует жирный шрифт * и производит:

<p>Notepad is *great*, I like Notepad</p>

вместо желаемого:

<p>Notepad++ is <strong>great</strong>, I like Notepad++</p>

Обсуждение вверх по течению: https://github.com/asciidoctor/asciidoctor/issues/1864

Проверено на Asciidoctor 2.0.10.


person Ciro Santilli 新疆再教育营六四事件ۍ    schedule 16.09.2020    source источник


Ответы (2)


Несколько вариантов, которые делают то, что я хочу:

Notepadpass:[++] is *great*, I like Notepadpass:[++]

Notepad{blank}pass:[++] is *great*, I like Notepad{blank}pass:[++]

Notepad{plus}{plus} is *great*, I like Notepad{plus}{plus}

Я не уверен на 100%, что Notepadpass:[++] предназначено для работы просто случайно. Думаю, я просто пойду с {plus}{plus}.

Где {plus} задокументировано по адресу: https://asciidoctor.org/docs/user-manual/#charref-attributes

Для конкретного случая C++ есть также {cpp}.

person Ciro Santilli 新疆再教育营六四事件ۍ    schedule 16.09.2020

Другой вариант — использовать обратную косую черту, чтобы избежать первого ++:

Notepad\++ is *great*, I like Notepad++

Это работает аналогичным образом и при другом форматировании.

person ahus1    schedule 17.10.2020