diff --git a/spip2md/spip.lark b/spip2md/spip.lark index 8cfd8e3..375a01a 100644 --- a/spip2md/spip.lark +++ b/spip2md/spip.lark @@ -28,17 +28,17 @@ table_cell: _inline{TABLE_TEXT} _TBL_META: /\|\|(?=[^\r\n]+\|\|)/ _TBL: /\|(?=[^\r\n]+\|)/ -heading: _H _inline{MARKED_TEXT}+ "}}}" +heading: _H paragraph{MARKED_TEXT, MARKED_TEXT} "}}}" _H: "{{{" _block_tag: pair_block_tag | orphan_block_tag -pair_block_tag: _PAIR_TAG_ANGLE TAG_NAME ( _OPTION_SEP TAG_OPTION )* ">" start "" -> tag +pair_block_tag: _PAIR_TAG_ANGLE TAG_NAME ( _OPTION_SEP TAG_OPTION )* ">" start? "" -> tag orphan_block_tag: _ORPHAN_TAG_ANGLE "/"? TAG_NAME ( _OPTION_SEP TAG_OPTION )* ">" -> orphan_tag -_PAIR_TAG_ANGLE: /<(?=([0-9A-Za-z]+)[0-9A-Za-z_:|,="\/\-\. ]*>\r?\n[\s\S]+<\/\1>)/ -_ORPHAN_TAG_ANGLE: /<(?=([0-9A-Za-z]+)[0-9A-Za-z_:|,="\/\-\. ]*>\r?\n)(?![\s\S]+\<\/\1\>)/ +_PAIR_TAG_ANGLE: /<(?=([0-9a-z]+)[^{}<>\[\]]*>[\s\S]*<\/\1>)/i +_ORPHAN_TAG_ANGLE: /<(?=([0-9a-z]+)[^{}<>\[\]]*>)(?![\s\S]*\<\/\1\>)/i paragraph{begin, text}: _inline{begin} _N? ( _inline{text} _N? )* @@ -56,9 +56,9 @@ pair_inline_tag: _INLINE_TAG_ANGLE TAG_NAME ( _OPTION_SEP TAG_OPTION )* ">" _N? short_inline_tag: _SHORT_INLINE_TAG_ANGLE TAG_NAME ( _OPTION_SEP TAG_OPTION )* ">" _N? paragraph{TEXT, TEXT} -> tag orphan_inline_tag: _ORPHAN_INLINE_TAG_ANGLE TAG_NAME ( _OPTION_SEP TAG_OPTION )* ">" -> orphan_tag -_INLINE_TAG_ANGLE: /<(?=([0-9A-Za-z]+)[0-9A-Za-z_:|,="\/\-\. ]*>[\s\S]+<\/\1>)/ -_SHORT_INLINE_TAG_ANGLE: /<(?=([0-9A-Za-z]+)[0-9A-Za-z_:,="\/\.\|\- ]*>)(?!\/|img|emb|doc|[\s\S]+<\/\1>)/i -_ORPHAN_INLINE_TAG_ANGLE: /<(?=(img|emb|doc)[0-9A-Za-z\|_:,="\/\.\|\- ]*>)/i +_INLINE_TAG_ANGLE: /<(?=([0-9a-z]+)[0-9a-z_:|,="\/\-\. ]*>[\s\S]+<\/\1>)/i +_SHORT_INLINE_TAG_ANGLE: /<(?=([0-9a-z]+)[0-9a-z_:,="\/\.\|\- ]*>)(?!\/|img|emb|doc|[\s\S]+<\/\1>)/i +_ORPHAN_INLINE_TAG_ANGLE: /<(?=(img|emb|doc)[0-9a-z\|_:,="\/\.\|\- ]*>)/i _link: footnote | wikilink diff --git a/test/0.spip b/test/0.spip index 2b0c5d9..4e19c2b 100644 --- a/test/0.spip +++ b/test/0.spip @@ -74,6 +74,28 @@ def spipParser(): ---- +{{{ Lien en plusieurs langues }}} + + +[fr] +Retrouvez toutes nos publications sur : +{{[HAL-LCPQ_SEM->https://hal.archives-ouvertes.fr/LCPQ_SEM/]}} +[en]Find all our publications on : +{{[HAL-LCPQ_SEM->https://hal.archives-ouvertes.fr/LCPQ_SEM/]}} +[es]Recobre todas nuestras publicaciones sobre : +{{[HAL-LCPQ_SEM->https://hal.archives-ouvertes.fr/LCPQ_SEM/]}} + + +{{{ Titre multiligne avec beaucoup d’elements }}} + +{{{ {{[HAL-LCPQ_SEM->https://hal.archives-ouvertes.fr/LCPQ_SEM/]}} +[en]Find all our publications on : +{{[HAL-LCPQ_SEM->https://hal.archives-ouvertes.fr/LCPQ_SEM/]}} +[es]Recobre todas nuestras publicaciones sobre : +{{[HAL-LCPQ_SEM->https://hal.archives-ouvertes.fr/LCPQ_SEM/]}} }}} + +---- + {{{Des images}}} diff --git a/test/1.spip b/test/1.spip index 321c99b..5d73340 100644 --- a/test/1.spip +++ b/test/1.spip @@ -30,6 +30,37 @@ Un lien [lark->https://lark-parser.readthedocs.io] dans un paragraphe. ---- --- +
+{ multi +[fr] +Retrouvez toutes nos publications sur : +{{[HAL-LCPQ_SEM->https://hal.archives-ouvertes.fr/LCPQ_SEM/]}} +[en]Find all our publications on : +{{[HAL-LCPQ_SEM->https://hal.archives-ouvertes.fr/LCPQ_SEM/]}} +[es]Recobre todas nuestras publicaciones sobre : +{{[HAL-LCPQ_SEM->https://hal.archives-ouvertes.fr/LCPQ_SEM/]}} +multi } +
+ +---- + +
+ +
+{{{ +[fr] +Retrouvez toutes nos publications sur : +{{[HAL-LCPQ_SEM->https://hal.archives-ouvertes.fr/LCPQ_SEM/]}} +[en]Find all our publications on : +{{[HAL-LCPQ_SEM->https://hal.archives-ouvertes.fr/LCPQ_SEM/]}} +[es]Recobre todas nuestras publicaciones sobre : +{{[HAL-LCPQ_SEM->https://hal.archives-ouvertes.fr/LCPQ_SEM/]}} + }}} +
+ +
+ + {{{Research Interests}}} * {{Astrochemistry}} - Atmospheric Chemistry: interactions of PAH with ions, atoms (Si, Fe) and with molecular clusters ((H2O)n) ; PAH reactivity