--- # Syntaxe des raccourcis SPIP, version 0.0.1 # # Si on nomme une regle, elle devient surchargeable math: if_str: "" type: all is_callback: y replace: "replace_math" priority: -50 # en tout premier : le contenu des formules math ne doit pas etre modifie traiter_retours_chariots_1: # Harmonise les retours chariots et mange les paragraphes html if_chars: "\r" match: ",\r\n?,S" replace: "\n" priority: -40 # avant tout init-trim: # trim type: all is_callback: y replace: trim priority: -40 # avant tout init-saut: type: all replace: "\n$0" priority: -40 lignes-vides: match: ",^[ \t]+$,m" replace: "" priority: -35 # avant les tableaux tableaux: type: all # included subwheel with relative filepath replace: spip/spip-tableaux.yaml is_wheel: Y if_str: "\n|" priority: -30 # avant les raccourcis listes: if_str: "\n-" is_wheel: Y type: all replace: spip/spip-listes.yaml priority: -20 # avant !paragraphes echappe-tags: # voir restaure-tags plus bas match: ",]*?[{}_-][^<>]*>,imsS" if_chars: "{}_-" priority: -20 # avant !paragraphes is_wheel: Y replace: echappe-tags-sub: if_match: "/[{}]|\n[_-]|--/" match: ['{', '}', '_', '-'] replace: ["\x1\x1", "\x1\x2", "\x1\x3", "\x1\x4"] type: str echappe-raccourcis: if_str: '\' priority: -20 # avant !paragraphes match: ['\{', '\}', '\_', '\-', '\[', '\]', '\|', '\<', '\>', '\\', '\*', '\#', '\+', '\~'] replace: ["\x1\x1", "\x1\x2", "\x1\x3", "\x1\x4", "\x1\x5", "\x1\x6", "\x1\x7", "\x1\x8", "\x1\x9", "\x1\x10", "\x1\x11", "\x1\x12", "\x1\x13", "\x1\x14"] type: str ligne-horizontale: match: "/\n(----+|____+)/S" replace: "\n\n\n
\n\n\n" if_chars: "\n" priority: -20 # avant !paragraphes alinea: match: "/\n-- */" replace: "\n
— " if_str: "\n--" priority: -20 # avant !paragraphes puce: match: "/\n- */S" replace: replace_puce if_str: "\n-" is_callback: Y priority: -20 # avant !paragraphes br-inutile: match: "/(^|^\n|\n\n)_ +/S" replace: "$1" if_str: "_ " priority: -20 # avant !paragraphes br: match: "/\n_ +/S" replace: "
" if_str: "\n_" priority: -20 # avant !paragraphes abbr: # raccourcis en [ABBR|abbreviation] if_chars: "[" if_chars: "|" match: "/\[([^\|\[\]>]+)\|([^\|\]\{>]+)(?:\{([a-z]+)\})?\]/S" is_callback: Y replace: inserer_abbr intertitres-compliques: # raccourcis imbriques en {{{{..}}}} # intertitres match: ['/(^|[^{])[{][{][{]/S', '/[}][}][}]($|[^}])/S'] replace: ["$1\n\n\n

", "

\n\n\n$1"] if_str: '}}}}' intertitres: # raccourcis en {{{..}}} # intertitres match: ['{{{', '}}}'] replace: ["\n\n\n

", "

\n\n\n"] if_str: '{{{' type: str gras-vide: # faux raccourcis vides en {{}} # echappes match: '{{}}' replace: "\x1\x1\x1\x1\x1\x2\x1\x2" type: str if_str: '{{' gras: # raccourcis en {{..}} # strong match: ['{{', '}}'] replace: ['', ''] type: str if_str: '{{' italiques-vide: # faux raccourcis vides en {} # echappes match: '{}' replace: "\x1\x1\x1\x2" type: str if_str: '{' italiques: # raccourcis en {..} # i match: ['{', '}'] replace: ['', ''] type: str if_str: '{' paragraphes: # paragraphes # lignes vides consecutives, br imbriques dans des p # mais attention pas les br trop riches (ex: br style=clear:both) match: ["/ *\n(?: *\n)+(?:
)*/S", '/(?:]*>){2,}\s*/S', "/(]*>)\n*(?:
\n*)+/S"] replace: ['

', '

', '$1'] priority: 0 quote: # raccourci match: ['', ''] replace: ['

', '

'] if_str: '' type: str intro: # suppr raccourci # + suppression de match: ['', ''] replace: ['', ''] if_str: '' type: str br-restant: # eliminer les br restant en debut de texte match: "@^\n
@S" replace: '' if_str: "\n(.*),UimsS" replace: spip/spip-poesie.yaml pick_match: 2 is_wheel: Y if_str: '', '\', '*', '#', '+', '~'] type: str echappe-chevron-solitaire: # un < qui n'est pas suivi d'une lettre ou d'un / est toujours echappe type: preg match: "/<(?=[^a-z\/!])/Uims" replace: "<" echappe-chevron-pas-ferme: # un < suivi d'une lettre ou d'un / est echappe si il semble mal ferme type: preg match: "/<([^><\"'!]*)(?=<|$)/Uims" replace: "<$1"