2010-10-13 20 views
8

Ich benutze Python und Markdown. Gibt es eine einfache Möglichkeit, eine benutzerdefinierte Syntax hinzuzufügen? Ich möchte etwas wie [ABC] zu einem bestimmten Tag oder etwas erweitert werden.Markdown mit benutzerdefinierter Syntax?

oder verwende ich Regex?

+0

Meinst du wie BBCode (XML mit Klammern ^^)? – AndiDog

+0

Ich bin nicht an eine bestimmte Syntax gebunden, nur eine Möglichkeit, meinen eigenen Code – Timmy

Antwort

4

Es scheint, dass Sie extensions für Python-Markdown schreiben können, das ist wahrscheinlich der beste Ansatz.

Wenn Sie eine andere Markdown-Implementierung verwenden (oder wissen Sie, nur für den Teufel), könnten Sie den Text vorverarbeiten, um Ihre eigenen Tags zu implementieren (in HTML konvertieren), bevor Sie sie an Markdown übergeben. Dies könnte mit einer Regex oder mit einer beliebigen Methode erfolgen. Innerhalb angemessener Grenzen sollte Markdown leave your HTML alone.

+0

ya hinzuzufügen, ich bin nur besorgt über undichte unsichere HTML. – Timmy

+0

@Timmy: Dann "Whitelist, nicht Blacklist";) I.e. Erweitern Sie nur einen sehr begrenzten Satz von Tags, von denen bekannt ist, dass sie sicher sind. – delnan

+2

Sie können bereits beliebiges HTML in Markdown eingeben. Was Sie in diesem Fall tun möchten, ist die Eingabe zu bereinigen, indem Sie '&' in '&' und dann '<' in '<' (wodurch HTML als Text erscheint und nicht gerendert wird) und dann nach diesem Schritt Implementieren Sie Ihre eigenen Tags, die nicht gescannten HTML produzieren. – kindall

Verwandte Themen