This is an example plugin parsing syntax for using with Jison's parser for wiki syntax in javascript, this is a temporary file and is only a proof of concept.
What does the parser definition look like? Take a look
Left is updated on keyup, change, and submit.

''italics'' __bold__ ''__Here is bold and italics!__'' ''__Here is bold and italics!__ and this part is just italics'' ===This is underscore=== --This is strikethrough-- ~~#FF0:Yellow text~~ ||a1|b1|c1 a2|b2|c2 a3|b3|c3|| Wiki link to ((HomePage)) Wiki link to HomePage with ((HomePage|with different label)) Some smileys: (:biggrin:) (:confused:) (:cool:) ! Header 1 !! Header 2 !!! Header 3 ::center:: # item1 # item2 # item3 -=Title bar=- * bullet * bullet * bullet {HTML()}<center> There is some HTML here that needs to be approved. </center>{HTML} {CODE()}<center> There is some HTML here that shouldn't be interpreted. </center>{CODE} and now a horizontal bar: --- ^I am a box^ ^''__Here is bold and italics in a box!__ and this part is just italics in a box'' ^ -=^''__Here is bold and italics!__ in a box'' in a title!^=- And now, let's go for a hyperlink to [http://tiki.org|tiki.org] And now, hyperlink with no label: [http://tiki.org] And now, hyperlink without brackets: http://tiki.org And now, just www.tiki.org (which should become a link) ~np~__This is unparsed wiki syntax__ {TEST()} :) {TEST} ~/np~ ~np~ Doc: Use [[foo] to show [foo]. ~/np~ [[foo] {nobody param1="100" /} {BGYELLOW(testVar1="Test")} {LI()}{PURPLE()}purple returns a nested plugin!{PURPLE}{LI} {LI()} This is just some text {RED()}My plugin message!{RED} And after too. {BLUE()}This is nested within the first plugin.{BLUE} {nobody /} {LI()} Hello World 1! {LI()}Hello World! 2{LI} {BLUE()}This is nested within the second hello world li.{BLUE} End Hello World 1 {LI} And at the end. {LI} I'm in the yellow! {BGYELLOW} Show Errors?
Allow Html?