ライブラリ/軽量マークアップ言語 - RumiMarkupLanguage
MarkDownとか、reStructuredTextとかBBCodeの類です。
MarkDownが使いにくいと個人的に思っていたこともあり、2023年ぐらいから作っていました。
中期あたりからるみさんのブログにて運用していて、
他にもるみ語のページとかでも使われてました。
ちなみにこのサイトもRMLですよ!

機能

殆MarkDownです、追加機能としては
- 改行1つが実際の改行になる
- インラインMFM(2026年時点で未実装)
- 動画プレビュー
- 注釈/警告
ですかねえ、他にもありますが、それは添付してるsample.rmlでチェックしてください。

ファイル構成

parser_x86.elf/parser_arm.elfがパーサー本体になります。
このパーサーは、RMLをパースしRMO(RumiMarkupObject)を吐き出します。
(ソースコード的には、Parser/内のRustコードでパースし、構造体化。Process/内のObjective-CコードでRMOへ変換している)

RML.php等がラッパーになります。
RML.phpの場合、__DIR__/parser.elfをパーサーとして認識し、それを実行して変換をします。
たぶんXSS等は防いでいるはずです、たぶん...

まだ実装中になりますが、ブラウザ側で変換をしたい場合。
RML.js/RML.tsを使用してください。
.jsはJSで書かれており、.tsはTSです。
使い分けてくださいませ。
「JS向けライブラリでもTSで書かれているし、TS向けのライブラリも名前は.jsでは?」 という話はありますが、単純にキモいからですね。 JSはJS、TSはTSでしょうと。

PHPで使う場合

PHP.tarをダウンロードし、良いカンジの場所に配置してください。
附属のRADME.rmlがあなたを助けます。

JS/TSで使う場合

//TODO

Javaで使う場合

//TODO

C言語ファミリーで使う場合

//TODO

Pythonで使う場合

//TODO

Switftで使う場合

//TODO


URL

ダウンロード

9.0 PHP.tar application/x-tar
parser_x86.elf application/x-pie-executable