md.jsf (1985B)
1 # JOE syntax highlight file for Markdown 2 # by Christian Nicolai (http://mycrobase.de) 3 4 # And yes, this *is* a joke :p 5 6 # bold parsing is not that perfect since this works: **bold__ 7 8 =Idle 9 =Tag +DefinedFunction +DefinedIdent 10 =Escape 11 =Bad 12 13 =Bold +Keyword 14 =Headline +Title +Preproc +Statement 15 =Quote +Comment 16 =Code +String +Constant 17 =List +TagName +Tag 18 =LinkDesc +Title +String 19 =Link +Number +Constant 20 =Rule +Preproc 21 22 :line_start Idle 23 * idle noeat 24 "#" headline_prefix recolor=-1 25 ">" quote recolor=-1 26 " " maybe_code1 27 "\t" code 28 "-*" maybe_list 29 30 :idle Idle 31 * idle 32 "\n" line_start 33 "<" tag recolor=-1 34 "\\" escape recolor=-1 35 "*_" maybe_bold1 36 "[" maybe_link_desc1 37 38 :headline_prefix Idle 39 * headline 40 "#" headline_prefix 41 42 :headline Headline 43 * headline 44 "\n" line_start 45 46 :quote Quote 47 * quote 48 "\n" line_start 49 50 :maybe_code1 Idle 51 * idle 52 " " maybe_code2 53 54 :maybe_code2 Idle 55 * idle 56 " " maybe_code3 57 58 :maybe_code3 Idle 59 * idle 60 " " code recolor=-4 61 62 :code Code 63 * code 64 "\n" line_start 65 66 :maybe_list Idle 67 * idle 68 " " list 69 "-*" maybe_rule1 70 71 :list List 72 * list 73 "\n" line_start 74 75 :maybe_rule1 Idle 76 * idle 77 "-*" rule recolor=-3 78 79 :rule Rule 80 * rule 81 "\n" line_start 82 83 :tag Tag 84 * idle 85 "a-z0-9 /" tag 86 ">" idle 87 88 # do escaping of *_ and so on 89 :escape Escape 90 * idle 91 92 :maybe_bold1 Idle 93 * idle noeat 94 "*_" bold recolor=-2 95 96 :bold Bold 97 * bold 98 "\n" line_start # end if we reach newline during bold 99 "*_" maybe_end_bold 100 101 :maybe_end_bold Bold 102 * bold 103 "*_" end_bold 104 105 :end_bold Bold 106 * idle noeat 107 108 :maybe_link_desc1 Idle 109 * maybe_link_desc mark 110 111 :maybe_link_desc Idle 112 * maybe_link_desc 113 "]" maybe_end_link_desc markend 114 115 :maybe_end_link_desc Idle 116 * idle 117 "(" link_inline1 recolormark 118 "[" link_ref1 recolormark 119 120 :link_inline1 LinkDesc 121 * link_inline noeat 122 123 :link_inline Link 124 * link_inline 125 ")" link_end noeat 126 127 :link_ref1 LinkDesc 128 * link_ref noeat 129 130 :link_ref Link 131 * link_ref 132 "]" link_end noeat 133 134 :link_end Idle 135 * idle