BBRedCloth 0.8.8 → 0.9.0.alpha1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. data/BBRedCloth.gemspec +8 -8
  2. data/CHANGELOG +160 -3
  3. data/Manifest +0 -18
  4. data/README.textile +17 -2
  5. data/Rakefile +14 -12
  6. data/ext/redcloth_scan/redcloth.h +42 -16
  7. data/ext/redcloth_scan/redcloth_attributes.c +373 -379
  8. data/ext/redcloth_scan/redcloth_bbcode.c +57 -56
  9. data/ext/redcloth_scan/redcloth_bbcode_inline.c +22 -21
  10. data/ext/redcloth_scan/redcloth_inline.c +7488 -9996
  11. data/ext/redcloth_scan/redcloth_scan.c +22693 -8756
  12. data/lib/redcloth.rb +7 -0
  13. data/lib/redcloth/formatters/base.rb +26 -20
  14. data/lib/redcloth/formatters/html.rb +39 -96
  15. data/lib/redcloth/formatters/latex.rb +11 -11
  16. data/lib/redcloth/textile_doc.rb +0 -5
  17. data/lib/redcloth/version.rb +4 -4
  18. data/test/basic.yml +118 -13
  19. data/test/code.yml +15 -7
  20. data/test/html.yml +38 -1
  21. data/test/images.yml +51 -0
  22. data/test/links.yml +35 -1
  23. data/test/lists.yml +180 -1
  24. data/test/table.yml +86 -0
  25. data/test/test_restrictions.rb +0 -4
  26. data/test/textism.yml +2 -16
  27. data/test/threshold.yml +4 -19
  28. metadata +14 -31
  29. data/ext/mingw-rbconfig.rb +0 -176
  30. data/ext/redcloth_scan/redcloth_attributes.c.rl +0 -56
  31. data/ext/redcloth_scan/redcloth_attributes.java.rl +0 -96
  32. data/ext/redcloth_scan/redcloth_attributes.rl +0 -33
  33. data/ext/redcloth_scan/redcloth_bbcode.c.rl +0 -60
  34. data/ext/redcloth_scan/redcloth_bbcode.rl +0 -127
  35. data/ext/redcloth_scan/redcloth_bbcode_inline.c.rl +0 -72
  36. data/ext/redcloth_scan/redcloth_bbcode_inline.rl +0 -85
  37. data/ext/redcloth_scan/redcloth_common.c.rl +0 -19
  38. data/ext/redcloth_scan/redcloth_common.java.rl +0 -18
  39. data/ext/redcloth_scan/redcloth_common.rl +0 -111
  40. data/ext/redcloth_scan/redcloth_inline.c.rl +0 -205
  41. data/ext/redcloth_scan/redcloth_inline.java.rl +0 -108
  42. data/ext/redcloth_scan/redcloth_inline.rl +0 -176
  43. data/ext/redcloth_scan/redcloth_scan.c.rl +0 -236
  44. data/ext/redcloth_scan/redcloth_scan.java.rl +0 -555
  45. data/ext/redcloth_scan/redcloth_scan.rl +0 -426
  46. data/extras/ragel_profiler.rb +0 -73
@@ -15,364 +15,394 @@
15
15
 
16
16
  #line 17 "ext/redcloth_scan/redcloth_attributes.c"
17
17
  static const char _redcloth_attributes_actions[] = {
18
- 0, 1, 0, 1, 3, 1, 4, 1,
19
- 5, 1, 6, 1, 7, 1, 9, 1,
20
- 10, 1, 12, 1, 13, 1, 16, 1,
21
- 17, 1, 22, 1, 23, 1, 24, 2,
22
- 0, 9, 2, 2, 15, 2, 8, 20,
23
- 2, 9, 21, 2, 10, 11, 2, 13,
24
- 0, 2, 13, 1, 2, 13, 4, 2,
25
- 13, 5, 2, 13, 6, 2, 13, 7,
26
- 2, 13, 14, 2, 13, 18, 2, 13,
27
- 19, 3, 8, 9, 20, 3, 13, 0,
28
- 14, 3, 13, 0, 18, 3, 13, 0,
29
- 19, 3, 13, 1, 19, 3, 13, 4,
30
- 14, 3, 13, 4, 18, 3, 13, 4,
31
- 19
18
+ 0, 1, 2, 1, 4, 1, 5, 1,
19
+ 6, 1, 7, 1, 8, 1, 11, 1,
20
+ 12, 1, 13, 1, 15, 1, 18, 1,
21
+ 19, 2, 3, 14, 2, 10, 17, 2,
22
+ 13, 0, 2, 13, 1, 2, 13, 2,
23
+ 2, 13, 5, 2, 13, 6, 2, 13,
24
+ 7, 2, 13, 8, 3, 9, 10, 16
25
+
32
26
  };
33
27
 
34
28
  static const short _redcloth_attributes_key_offsets[] = {
35
- 0, 0, 6, 11, 13, 14, 15, 23,
36
- 29, 34, 38, 46, 53, 60, 66, 72,
37
- 73, 80, 86, 87, 94, 100, 108, 115,
38
- 122, 128, 134, 139, 145, 153, 160, 167,
39
- 173, 179, 186, 192, 199, 205, 212, 218,
40
- 225, 231, 233, 235, 236, 237, 244, 250,
41
- 255, 263, 270, 277, 283, 284, 291, 297,
42
- 298, 305, 311, 312, 313, 320, 326, 334,
43
- 342, 348, 356, 364, 371, 378, 388, 395,
44
- 402, 409, 416, 423, 430, 437, 447, 453,
45
- 461, 469, 476, 483, 493, 500, 507, 514,
46
- 521, 528, 535, 542, 549, 556, 559, 565,
47
- 573, 581, 588, 595, 604, 611, 618, 625
29
+ 0, 0, 6, 11, 27, 33, 38, 44,
30
+ 60, 66, 87, 108, 118, 129, 137, 146,
31
+ 153, 159, 164, 180, 201, 205, 210, 224,
32
+ 240, 257, 274, 291, 304, 318, 325, 331,
33
+ 346, 360, 375, 385, 391, 406, 420, 435,
34
+ 445, 452, 462, 473, 492, 513, 535, 557,
35
+ 579, 598, 618, 634, 650, 660, 671, 690,
36
+ 711, 733, 755, 777, 796, 816, 819, 825,
37
+ 840, 854, 869, 878, 888, 899, 918, 939,
38
+ 961, 983, 1005, 1024, 1044
48
39
  };
49
40
 
50
41
  static const char _redcloth_attributes_trans_keys[] = {
51
42
  0, 9, 10, 32, 11, 13, 0, 9,
52
- 32, 10, 13, 35, 41, 41, 41, 0,
53
- 32, 40, 46, 91, 123, 9, 13, 0,
54
- 9, 10, 32, 11, 13, 0, 9, 32,
55
- 10, 13, 0, 32, 9, 13, 0, 9,
56
- 10, 32, 35, 41, 11, 13, 0, 9,
57
- 32, 35, 41, 10, 13, 0, 9, 10,
58
- 32, 41, 11, 13, 0, 9, 32, 41,
59
- 10, 13, 0, 9, 10, 32, 11, 13,
60
- 93, 0, 9, 10, 32, 93, 11, 13,
61
- 0, 9, 32, 93, 10, 13, 125, 0,
62
- 9, 10, 32, 125, 11, 13, 0, 9,
63
- 32, 125, 10, 13, 0, 9, 10, 32,
64
- 35, 41, 11, 13, 0, 9, 32, 35,
65
- 41, 10, 13, 0, 9, 10, 32, 41,
66
- 11, 13, 0, 9, 32, 41, 10, 13,
67
- 0, 9, 10, 32, 11, 13, 0, 9,
68
- 32, 10, 13, 0, 9, 10, 32, 11,
69
- 13, 0, 9, 10, 32, 35, 41, 11,
70
- 13, 0, 9, 32, 35, 41, 10, 13,
71
- 0, 9, 10, 32, 41, 11, 13, 0,
72
- 9, 32, 41, 10, 13, 0, 9, 10,
73
- 32, 11, 13, 0, 9, 10, 32, 93,
74
- 11, 13, 0, 9, 32, 93, 10, 13,
75
- 0, 9, 10, 32, 125, 11, 13, 0,
76
- 9, 32, 125, 10, 13, 0, 9, 10,
77
- 32, 93, 11, 13, 0, 9, 32, 93,
78
- 10, 13, 0, 9, 10, 32, 125, 11,
79
- 13, 0, 9, 32, 125, 10, 13, 35,
80
- 41, 35, 41, 41, 41, 0, 32, 40,
81
- 91, 123, 9, 13, 0, 9, 10, 32,
82
- 11, 13, 0, 9, 32, 10, 13, 0,
83
- 9, 10, 32, 35, 41, 11, 13, 0,
84
- 9, 32, 35, 41, 10, 13, 0, 9,
85
- 10, 32, 41, 11, 13, 0, 9, 32,
86
- 41, 10, 13, 93, 0, 9, 10, 32,
87
- 93, 11, 13, 0, 9, 32, 93, 10,
88
- 13, 125, 0, 9, 10, 32, 125, 11,
89
- 13, 0, 9, 32, 125, 10, 13, 93,
90
- 125, 0, 32, 40, 91, 123, 9, 13,
91
- 0, 9, 10, 32, 11, 13, 0, 9,
92
- 10, 32, 35, 41, 11, 13, 0, 9,
93
- 10, 32, 35, 41, 11, 13, 0, 9,
43
+ 32, 10, 13, 0, 9, 10, 32, 35,
44
+ 41, 45, 95, 11, 13, 48, 57, 65,
45
+ 90, 97, 122, 0, 9, 10, 32, 11,
46
+ 13, 0, 9, 32, 10, 13, 0, 9,
94
47
  10, 32, 11, 13, 0, 9, 10, 32,
95
- 35, 41, 11, 13, 0, 9, 10, 32,
96
- 35, 41, 11, 13, 0, 9, 10, 32,
97
- 41, 11, 13, 0, 9, 10, 32, 41,
98
- 11, 13, 0, 9, 10, 32, 40, 46,
99
- 91, 123, 11, 13, 0, 9, 10, 32,
100
- 46, 11, 13, 0, 9, 10, 32, 93,
101
- 11, 13, 0, 9, 10, 32, 93, 11,
102
- 13, 0, 9, 10, 32, 125, 11, 13,
103
- 0, 9, 10, 32, 125, 11, 13, 0,
104
- 9, 10, 32, 41, 11, 13, 0, 9,
105
- 10, 32, 41, 11, 13, 0, 9, 10,
106
- 32, 40, 46, 91, 123, 11, 13, 0,
107
- 9, 10, 32, 11, 13, 0, 9, 10,
108
- 32, 35, 41, 11, 13, 0, 9, 10,
109
- 32, 35, 41, 11, 13, 0, 9, 10,
110
- 32, 41, 11, 13, 0, 9, 10, 32,
111
- 41, 11, 13, 0, 9, 10, 32, 40,
48
+ 35, 41, 45, 95, 11, 13, 48, 57,
49
+ 65, 90, 97, 122, 0, 9, 10, 32,
50
+ 11, 13, 0, 9, 10, 32, 95, 117,
51
+ 125, 11, 13, 34, 35, 37, 39, 45,
52
+ 46, 48, 59, 65, 90, 97, 122, 0,
53
+ 9, 10, 32, 95, 117, 125, 11, 13,
54
+ 34, 35, 37, 39, 45, 46, 48, 59,
55
+ 65, 90, 97, 122, 32, 35, 45, 95,
56
+ 48, 57, 65, 90, 97, 122, 32, 35,
57
+ 41, 45, 95, 48, 57, 65, 90, 97,
58
+ 122, 45, 95, 48, 57, 65, 90, 97,
59
+ 122, 41, 45, 95, 48, 57, 65, 90,
60
+ 97, 122, 0, 32, 40, 91, 123, 9,
61
+ 13, 0, 9, 10, 32, 11, 13, 0,
62
+ 9, 32, 10, 13, 0, 9, 10, 32,
63
+ 35, 41, 45, 95, 11, 13, 48, 57,
64
+ 65, 90, 97, 122, 0, 9, 10, 32,
65
+ 95, 117, 125, 11, 13, 34, 35, 37,
66
+ 39, 45, 46, 48, 59, 65, 90, 97,
67
+ 122, 45, 95, 97, 122, 45, 93, 95,
68
+ 97, 122, 32, 95, 34, 35, 37, 39,
69
+ 45, 46, 48, 59, 65, 90, 97, 122,
70
+ 32, 95, 117, 125, 34, 35, 37, 39,
71
+ 45, 46, 48, 59, 65, 90, 97, 122,
72
+ 32, 95, 114, 117, 125, 34, 35, 37,
73
+ 39, 45, 46, 48, 59, 65, 90, 97,
74
+ 122, 32, 95, 108, 117, 125, 34, 35,
75
+ 37, 39, 45, 46, 48, 59, 65, 90,
76
+ 97, 122, 32, 40, 95, 117, 125, 34,
77
+ 35, 37, 39, 45, 46, 48, 59, 65,
78
+ 90, 97, 122, 39, 43, 61, 92, 95,
79
+ 34, 35, 45, 57, 63, 64, 97, 122,
80
+ 39, 41, 43, 61, 92, 95, 34, 35,
81
+ 45, 57, 63, 64, 97, 122, 0, 32,
82
+ 40, 91, 123, 9, 13, 0, 9, 10,
83
+ 32, 11, 13, 0, 9, 10, 32, 35,
84
+ 45, 95, 11, 13, 48, 57, 65, 90,
85
+ 97, 122, 0, 9, 10, 32, 45, 95,
86
+ 11, 13, 48, 57, 65, 90, 97, 122,
87
+ 0, 9, 10, 32, 41, 45, 95, 11,
88
+ 13, 48, 57, 65, 90, 97, 122, 0,
89
+ 9, 10, 32, 40, 46, 91, 123, 11,
90
+ 13, 0, 9, 10, 32, 11, 13, 0,
91
+ 9, 10, 32, 35, 45, 95, 11, 13,
92
+ 48, 57, 65, 90, 97, 122, 0, 9,
93
+ 10, 32, 45, 95, 11, 13, 48, 57,
94
+ 65, 90, 97, 122, 0, 9, 10, 32,
95
+ 41, 45, 95, 11, 13, 48, 57, 65,
96
+ 90, 97, 122, 0, 9, 10, 32, 40,
112
97
  46, 91, 123, 11, 13, 0, 9, 10,
113
98
  32, 46, 11, 13, 0, 9, 10, 32,
114
- 93, 11, 13, 0, 9, 10, 32, 93,
115
- 11, 13, 0, 9, 10, 32, 125, 11,
116
- 13, 0, 9, 10, 32, 125, 11, 13,
117
- 0, 9, 10, 32, 93, 11, 13, 0,
118
- 9, 10, 32, 93, 11, 13, 0, 9,
119
- 10, 32, 125, 11, 13, 0, 9, 10,
120
- 32, 125, 11, 13, 40, 91, 123, 0,
121
- 9, 10, 32, 11, 13, 0, 9, 10,
122
- 32, 35, 41, 11, 13, 0, 9, 10,
123
- 32, 35, 41, 11, 13, 0, 9, 10,
124
- 32, 41, 11, 13, 0, 9, 10, 32,
125
- 41, 11, 13, 0, 9, 10, 32, 40,
126
- 91, 123, 11, 13, 0, 9, 10, 32,
127
- 93, 11, 13, 0, 9, 10, 32, 93,
128
- 11, 13, 0, 9, 10, 32, 125, 11,
129
- 13, 0, 9, 10, 32, 125, 11, 13,
130
- 0
99
+ 45, 95, 11, 13, 97, 122, 0, 9,
100
+ 10, 32, 45, 93, 95, 11, 13, 97,
101
+ 122, 0, 9, 10, 32, 95, 11, 13,
102
+ 34, 35, 37, 39, 45, 46, 48, 59,
103
+ 65, 90, 97, 122, 0, 9, 10, 32,
104
+ 95, 117, 125, 11, 13, 34, 35, 37,
105
+ 39, 45, 46, 48, 59, 65, 90, 97,
106
+ 122, 0, 9, 10, 32, 95, 114, 117,
107
+ 125, 11, 13, 34, 35, 37, 39, 45,
108
+ 46, 48, 59, 65, 90, 97, 122, 0,
109
+ 9, 10, 32, 95, 108, 117, 125, 11,
110
+ 13, 34, 35, 37, 39, 45, 46, 48,
111
+ 59, 65, 90, 97, 122, 0, 9, 10,
112
+ 32, 40, 95, 117, 125, 11, 13, 34,
113
+ 35, 37, 39, 45, 46, 48, 59, 65,
114
+ 90, 97, 122, 0, 9, 10, 32, 39,
115
+ 43, 61, 92, 95, 11, 13, 34, 35,
116
+ 45, 57, 63, 64, 97, 122, 0, 9,
117
+ 10, 32, 39, 41, 43, 61, 92, 95,
118
+ 11, 13, 34, 35, 45, 57, 63, 64,
119
+ 97, 122, 0, 9, 10, 32, 35, 41,
120
+ 45, 95, 11, 13, 48, 57, 65, 90,
121
+ 97, 122, 0, 9, 10, 32, 35, 41,
122
+ 45, 95, 11, 13, 48, 57, 65, 90,
123
+ 97, 122, 0, 9, 10, 32, 45, 95,
124
+ 11, 13, 97, 122, 0, 9, 10, 32,
125
+ 45, 93, 95, 11, 13, 97, 122, 0,
126
+ 9, 10, 32, 95, 11, 13, 34, 35,
127
+ 37, 39, 45, 46, 48, 59, 65, 90,
128
+ 97, 122, 0, 9, 10, 32, 95, 117,
129
+ 125, 11, 13, 34, 35, 37, 39, 45,
130
+ 46, 48, 59, 65, 90, 97, 122, 0,
131
+ 9, 10, 32, 95, 114, 117, 125, 11,
132
+ 13, 34, 35, 37, 39, 45, 46, 48,
133
+ 59, 65, 90, 97, 122, 0, 9, 10,
134
+ 32, 95, 108, 117, 125, 11, 13, 34,
135
+ 35, 37, 39, 45, 46, 48, 59, 65,
136
+ 90, 97, 122, 0, 9, 10, 32, 40,
137
+ 95, 117, 125, 11, 13, 34, 35, 37,
138
+ 39, 45, 46, 48, 59, 65, 90, 97,
139
+ 122, 0, 9, 10, 32, 39, 43, 61,
140
+ 92, 95, 11, 13, 34, 35, 45, 57,
141
+ 63, 64, 97, 122, 0, 9, 10, 32,
142
+ 39, 41, 43, 61, 92, 95, 11, 13,
143
+ 34, 35, 45, 57, 63, 64, 97, 122,
144
+ 40, 91, 123, 0, 9, 10, 32, 11,
145
+ 13, 0, 9, 10, 32, 35, 45, 95,
146
+ 11, 13, 48, 57, 65, 90, 97, 122,
147
+ 0, 9, 10, 32, 45, 95, 11, 13,
148
+ 48, 57, 65, 90, 97, 122, 0, 9,
149
+ 10, 32, 41, 45, 95, 11, 13, 48,
150
+ 57, 65, 90, 97, 122, 0, 9, 10,
151
+ 32, 40, 91, 123, 11, 13, 0, 9,
152
+ 10, 32, 45, 95, 11, 13, 97, 122,
153
+ 0, 9, 10, 32, 45, 93, 95, 11,
154
+ 13, 97, 122, 0, 9, 10, 32, 95,
155
+ 11, 13, 34, 35, 37, 39, 45, 46,
156
+ 48, 59, 65, 90, 97, 122, 0, 9,
157
+ 10, 32, 95, 117, 125, 11, 13, 34,
158
+ 35, 37, 39, 45, 46, 48, 59, 65,
159
+ 90, 97, 122, 0, 9, 10, 32, 95,
160
+ 114, 117, 125, 11, 13, 34, 35, 37,
161
+ 39, 45, 46, 48, 59, 65, 90, 97,
162
+ 122, 0, 9, 10, 32, 95, 108, 117,
163
+ 125, 11, 13, 34, 35, 37, 39, 45,
164
+ 46, 48, 59, 65, 90, 97, 122, 0,
165
+ 9, 10, 32, 40, 95, 117, 125, 11,
166
+ 13, 34, 35, 37, 39, 45, 46, 48,
167
+ 59, 65, 90, 97, 122, 0, 9, 10,
168
+ 32, 39, 43, 61, 92, 95, 11, 13,
169
+ 34, 35, 45, 57, 63, 64, 97, 122,
170
+ 0, 9, 10, 32, 39, 41, 43, 61,
171
+ 92, 95, 11, 13, 34, 35, 45, 57,
172
+ 63, 64, 97, 122, 0, 9, 10, 32,
173
+ 35, 41, 45, 95, 11, 13, 48, 57,
174
+ 65, 90, 97, 122, 0
131
175
  };
132
176
 
133
177
  static const char _redcloth_attributes_single_lengths[] = {
134
- 0, 4, 3, 2, 1, 1, 6, 4,
135
- 3, 2, 6, 5, 5, 4, 4, 1,
136
- 5, 4, 1, 5, 4, 6, 5, 5,
137
- 4, 4, 3, 4, 6, 5, 5, 4,
138
- 4, 5, 4, 5, 4, 5, 4, 5,
139
- 4, 2, 2, 1, 1, 5, 4, 3,
140
- 6, 5, 5, 4, 1, 5, 4, 1,
141
- 5, 4, 1, 1, 5, 4, 6, 6,
142
- 4, 6, 6, 5, 5, 8, 5, 5,
143
- 5, 5, 5, 5, 5, 8, 4, 6,
144
- 6, 5, 5, 8, 5, 5, 5, 5,
145
- 5, 5, 5, 5, 5, 3, 4, 6,
146
- 6, 5, 5, 7, 5, 5, 5, 5
178
+ 0, 4, 3, 8, 4, 3, 4, 8,
179
+ 4, 7, 7, 4, 5, 2, 3, 5,
180
+ 4, 3, 8, 7, 2, 3, 2, 4,
181
+ 5, 5, 5, 5, 6, 5, 4, 7,
182
+ 6, 7, 8, 4, 7, 6, 7, 8,
183
+ 5, 6, 7, 5, 7, 8, 8, 8,
184
+ 9, 10, 8, 8, 6, 7, 5, 7,
185
+ 8, 8, 8, 9, 10, 3, 4, 7,
186
+ 6, 7, 7, 6, 7, 5, 7, 8,
187
+ 8, 8, 9, 10, 8
147
188
  };
148
189
 
149
190
  static const char _redcloth_attributes_range_lengths[] = {
150
- 0, 1, 1, 0, 0, 0, 1, 1,
151
- 1, 1, 1, 1, 1, 1, 1, 0,
152
- 1, 1, 0, 1, 1, 1, 1, 1,
153
- 1, 1, 1, 1, 1, 1, 1, 1,
154
- 1, 1, 1, 1, 1, 1, 1, 1,
155
- 1, 0, 0, 0, 0, 1, 1, 1,
156
- 1, 1, 1, 1, 0, 1, 1, 0,
157
- 1, 1, 0, 0, 1, 1, 1, 1,
158
- 1, 1, 1, 1, 1, 1, 1, 1,
159
- 1, 1, 1, 1, 1, 1, 1, 1,
160
- 1, 1, 1, 1, 1, 1, 1, 1,
161
- 1, 1, 1, 1, 1, 0, 1, 1,
162
- 1, 1, 1, 1, 1, 1, 1, 1
191
+ 0, 1, 1, 4, 1, 1, 1, 4,
192
+ 1, 7, 7, 3, 3, 3, 3, 1,
193
+ 1, 1, 4, 7, 1, 1, 6, 6,
194
+ 6, 6, 6, 4, 4, 1, 1, 4,
195
+ 4, 4, 1, 1, 4, 4, 4, 1,
196
+ 1, 2, 2, 7, 7, 7, 7, 7,
197
+ 5, 5, 4, 4, 2, 2, 7, 7,
198
+ 7, 7, 7, 5, 5, 0, 1, 4,
199
+ 4, 4, 1, 2, 2, 7, 7, 7,
200
+ 7, 7, 5, 5, 4
163
201
  };
164
202
 
165
203
  static const short _redcloth_attributes_index_offsets[] = {
166
- 0, 0, 6, 11, 14, 16, 18, 26,
167
- 32, 37, 41, 49, 56, 63, 69, 75,
168
- 77, 84, 90, 92, 99, 105, 113, 120,
169
- 127, 133, 139, 144, 150, 158, 165, 172,
170
- 178, 184, 191, 197, 204, 210, 217, 223,
171
- 230, 236, 239, 242, 244, 246, 253, 259,
172
- 264, 272, 279, 286, 292, 294, 301, 307,
173
- 309, 316, 322, 324, 326, 333, 339, 347,
174
- 355, 361, 369, 377, 384, 391, 401, 408,
175
- 415, 422, 429, 436, 443, 450, 460, 466,
176
- 474, 482, 489, 496, 506, 513, 520, 527,
177
- 534, 541, 548, 555, 562, 569, 573, 579,
178
- 587, 595, 602, 609, 618, 625, 632, 639
204
+ 0, 0, 6, 11, 24, 30, 35, 41,
205
+ 54, 60, 75, 90, 98, 107, 113, 120,
206
+ 127, 133, 138, 151, 166, 170, 175, 184,
207
+ 195, 207, 219, 231, 241, 252, 259, 265,
208
+ 277, 288, 300, 310, 316, 328, 339, 351,
209
+ 361, 368, 377, 387, 400, 415, 431, 447,
210
+ 463, 478, 494, 507, 520, 529, 539, 552,
211
+ 567, 583, 599, 615, 630, 646, 650, 656,
212
+ 668, 679, 691, 700, 709, 719, 732, 747,
213
+ 763, 779, 795, 810, 826
179
214
  };
180
215
 
181
- static const unsigned char _redcloth_attributes_indicies[] = {
216
+ static const char _redcloth_attributes_indicies[] = {
182
217
  0, 2, 3, 2, 0, 1, 0, 2,
183
- 2, 0, 1, 6, 7, 5, 4, 8,
184
- 10, 9, 4, 12, 13, 14, 15, 16,
185
- 4, 11, 17, 19, 20, 19, 17, 18,
186
- 17, 19, 19, 17, 18, 4, 12, 4,
187
- 11, 5, 22, 23, 22, 24, 25, 5,
188
- 21, 5, 22, 22, 24, 25, 5, 21,
189
- 9, 27, 28, 27, 29, 9, 26, 9,
190
- 27, 27, 29, 9, 26, 17, 19, 20,
191
- 30, 17, 11, 32, 31, 31, 34, 35,
192
- 34, 36, 31, 33, 31, 34, 34, 36,
193
- 31, 33, 38, 37, 37, 40, 41, 40,
194
- 42, 37, 39, 37, 40, 40, 42, 37,
195
- 39, 5, 44, 45, 44, 46, 47, 5,
196
- 43, 5, 44, 44, 46, 47, 5, 43,
197
- 9, 49, 50, 49, 51, 9, 48, 9,
198
- 49, 49, 51, 9, 48, 17, 53, 54,
199
- 53, 17, 52, 17, 53, 53, 17, 52,
200
- 0, 2, 3, 56, 0, 55, 5, 58,
201
- 59, 58, 60, 61, 5, 57, 5, 58,
202
- 58, 60, 61, 5, 57, 9, 63, 64,
203
- 63, 65, 9, 62, 9, 63, 63, 65,
204
- 9, 62, 17, 53, 54, 66, 17, 55,
205
- 31, 68, 69, 68, 70, 31, 67, 31,
206
- 68, 68, 70, 31, 67, 37, 72, 73,
207
- 72, 74, 37, 71, 37, 72, 72, 74,
208
- 37, 71, 31, 76, 77, 76, 78, 31,
209
- 75, 31, 76, 76, 78, 31, 75, 37,
210
- 80, 81, 80, 82, 37, 79, 37, 80,
211
- 80, 82, 37, 79, 84, 85, 83, 88,
212
- 89, 87, 86, 90, 92, 91, 86, 86,
213
- 94, 95, 96, 86, 93, 97, 99, 100,
214
- 99, 97, 98, 97, 99, 99, 97, 98,
215
- 87, 102, 103, 102, 104, 105, 87, 101,
216
- 87, 102, 102, 104, 105, 87, 101, 91,
217
- 107, 108, 107, 109, 91, 106, 91, 107,
218
- 107, 109, 91, 106, 111, 110, 110, 113,
219
- 114, 113, 115, 110, 112, 110, 113, 113,
220
- 115, 110, 112, 117, 116, 116, 119, 120,
221
- 119, 121, 116, 118, 116, 119, 119, 121,
222
- 116, 118, 123, 122, 123, 124, 123, 123,
223
- 126, 127, 128, 123, 125, 129, 2, 3,
224
- 2, 129, 1, 131, 132, 133, 132, 134,
225
- 135, 131, 130, 136, 44, 45, 44, 46,
226
- 47, 136, 43, 137, 19, 20, 19, 137,
227
- 18, 139, 140, 141, 140, 142, 143, 139,
228
- 138, 5, 22, 23, 22, 24, 25, 5,
229
- 21, 8, 145, 146, 145, 18, 8, 144,
230
- 9, 27, 28, 27, 29, 9, 26, 137,
231
- 19, 20, 30, 13, 14, 15, 16, 137,
232
- 11, 137, 19, 20, 30, 14, 137, 11,
233
- 148, 149, 150, 149, 18, 148, 147, 31,
234
- 34, 35, 34, 36, 31, 33, 152, 153,
235
- 154, 153, 18, 152, 151, 37, 40, 41,
236
- 40, 42, 37, 39, 156, 157, 158, 157,
237
- 1, 156, 155, 159, 49, 50, 49, 51,
238
- 159, 48, 129, 2, 3, 56, 160, 161,
239
- 162, 163, 129, 55, 164, 53, 54, 53,
240
- 164, 52, 131, 166, 167, 166, 168, 169,
241
- 131, 165, 136, 58, 59, 58, 60, 61,
242
- 136, 57, 156, 171, 172, 171, 52, 156,
243
- 170, 159, 63, 64, 63, 65, 159, 62,
244
- 164, 53, 54, 66, 160, 161, 162, 163,
245
- 164, 55, 164, 53, 54, 66, 161, 164,
246
- 55, 174, 175, 176, 175, 52, 174, 173,
247
- 177, 68, 69, 68, 70, 177, 67, 179,
248
- 180, 181, 180, 52, 179, 178, 182, 72,
249
- 73, 72, 74, 182, 71, 174, 184, 185,
250
- 184, 1, 174, 183, 177, 76, 77, 76,
251
- 78, 177, 75, 179, 187, 188, 187, 1,
252
- 179, 186, 182, 80, 81, 80, 82, 182,
253
- 79, 189, 190, 191, 123, 192, 99, 100,
254
- 99, 192, 98, 83, 194, 195, 194, 196,
255
- 197, 83, 193, 87, 102, 103, 102, 104,
256
- 105, 87, 101, 90, 199, 200, 199, 98,
257
- 90, 198, 91, 107, 108, 107, 109, 91,
258
- 106, 192, 99, 100, 99, 94, 95, 96,
259
- 192, 93, 122, 202, 203, 202, 98, 122,
260
- 201, 110, 113, 114, 113, 115, 110, 112,
261
- 124, 205, 206, 205, 98, 124, 204, 116,
262
- 119, 120, 119, 121, 116, 118, 0
218
+ 2, 0, 1, 0, 2, 3, 4, 5,
219
+ 6, 7, 7, 0, 7, 7, 7, 1,
220
+ 8, 10, 11, 10, 8, 9, 8, 10,
221
+ 10, 8, 9, 0, 2, 3, 13, 0,
222
+ 12, 8, 10, 11, 14, 15, 16, 17,
223
+ 17, 8, 17, 17, 17, 9, 8, 10,
224
+ 11, 18, 8, 12, 8, 10, 11, 19,
225
+ 20, 21, 22, 8, 20, 20, 20, 20,
226
+ 20, 20, 9, 0, 2, 3, 23, 24,
227
+ 25, 26, 0, 24, 24, 24, 24, 24,
228
+ 24, 1, 27, 29, 27, 27, 27, 27,
229
+ 27, 28, 30, 31, 32, 30, 30, 30,
230
+ 30, 30, 28, 33, 33, 33, 33, 33,
231
+ 28, 34, 35, 35, 35, 35, 35, 28,
232
+ 28, 28, 37, 38, 39, 28, 36, 40,
233
+ 42, 43, 42, 40, 41, 40, 42, 42,
234
+ 40, 41, 40, 42, 43, 44, 45, 46,
235
+ 47, 47, 40, 47, 47, 47, 41, 40,
236
+ 42, 43, 48, 49, 50, 51, 40, 49,
237
+ 49, 49, 49, 49, 49, 41, 52, 52,
238
+ 52, 28, 53, 54, 53, 53, 28, 55,
239
+ 55, 55, 55, 55, 55, 55, 55, 28,
240
+ 56, 56, 57, 58, 56, 56, 56, 56,
241
+ 56, 56, 28, 56, 56, 59, 57, 58,
242
+ 56, 56, 56, 56, 56, 56, 28, 56,
243
+ 56, 60, 57, 58, 56, 56, 56, 56,
244
+ 56, 56, 28, 56, 61, 56, 57, 58,
245
+ 56, 56, 56, 56, 56, 56, 28, 62,
246
+ 62, 62, 62, 62, 62, 62, 62, 62,
247
+ 28, 62, 56, 62, 62, 62, 62, 62,
248
+ 62, 62, 62, 28, 28, 28, 64, 65,
249
+ 66, 28, 63, 67, 2, 3, 2, 67,
250
+ 1, 67, 2, 3, 68, 69, 70, 70,
251
+ 67, 70, 70, 70, 1, 67, 2, 3,
252
+ 2, 71, 71, 67, 71, 71, 71, 1,
253
+ 67, 2, 3, 2, 72, 73, 73, 67,
254
+ 73, 73, 73, 1, 67, 2, 3, 13,
255
+ 74, 75, 76, 77, 67, 12, 78, 10,
256
+ 11, 10, 78, 9, 78, 10, 11, 79,
257
+ 80, 81, 81, 78, 81, 81, 81, 9,
258
+ 78, 10, 11, 10, 82, 82, 78, 82,
259
+ 82, 82, 9, 78, 10, 11, 10, 83,
260
+ 84, 84, 78, 84, 84, 84, 9, 78,
261
+ 10, 11, 18, 74, 75, 76, 77, 78,
262
+ 12, 78, 10, 11, 18, 75, 78, 12,
263
+ 78, 10, 11, 10, 85, 85, 78, 85,
264
+ 9, 78, 10, 11, 10, 86, 87, 86,
265
+ 78, 86, 9, 78, 10, 11, 88, 89,
266
+ 78, 89, 89, 89, 89, 89, 89, 9,
267
+ 78, 10, 11, 19, 20, 21, 22, 78,
268
+ 20, 20, 20, 20, 20, 20, 9, 78,
269
+ 10, 11, 19, 20, 90, 21, 22, 78,
270
+ 20, 20, 20, 20, 20, 20, 9, 78,
271
+ 10, 11, 19, 20, 91, 21, 22, 78,
272
+ 20, 20, 20, 20, 20, 20, 9, 78,
273
+ 10, 11, 19, 92, 20, 21, 22, 78,
274
+ 20, 20, 20, 20, 20, 20, 9, 78,
275
+ 10, 11, 10, 93, 93, 93, 93, 93,
276
+ 78, 93, 93, 93, 93, 9, 78, 10,
277
+ 11, 10, 93, 20, 93, 93, 93, 93,
278
+ 78, 93, 93, 93, 93, 9, 78, 10,
279
+ 11, 14, 15, 16, 17, 17, 78, 17,
280
+ 17, 17, 9, 67, 2, 3, 4, 5,
281
+ 6, 7, 7, 67, 7, 7, 7, 1,
282
+ 67, 2, 3, 2, 94, 94, 67, 94,
283
+ 1, 67, 2, 3, 2, 95, 96, 95,
284
+ 67, 95, 1, 67, 2, 3, 97, 98,
285
+ 67, 98, 98, 98, 98, 98, 98, 1,
286
+ 67, 2, 3, 23, 24, 25, 26, 67,
287
+ 24, 24, 24, 24, 24, 24, 1, 67,
288
+ 2, 3, 23, 24, 99, 25, 26, 67,
289
+ 24, 24, 24, 24, 24, 24, 1, 67,
290
+ 2, 3, 23, 24, 100, 25, 26, 67,
291
+ 24, 24, 24, 24, 24, 24, 1, 67,
292
+ 2, 3, 23, 101, 24, 25, 26, 67,
293
+ 24, 24, 24, 24, 24, 24, 1, 67,
294
+ 2, 3, 2, 102, 102, 102, 102, 102,
295
+ 67, 102, 102, 102, 102, 1, 67, 2,
296
+ 3, 2, 102, 24, 102, 102, 102, 102,
297
+ 67, 102, 102, 102, 102, 1, 103, 104,
298
+ 105, 28, 106, 42, 43, 42, 106, 41,
299
+ 106, 42, 43, 107, 108, 109, 109, 106,
300
+ 109, 109, 109, 41, 106, 42, 43, 42,
301
+ 110, 110, 106, 110, 110, 110, 41, 106,
302
+ 42, 43, 42, 111, 112, 112, 106, 112,
303
+ 112, 112, 41, 106, 42, 43, 42, 37,
304
+ 38, 39, 106, 36, 106, 42, 43, 42,
305
+ 113, 113, 106, 113, 41, 106, 42, 43,
306
+ 42, 114, 115, 114, 106, 114, 41, 106,
307
+ 42, 43, 116, 117, 106, 117, 117, 117,
308
+ 117, 117, 117, 41, 106, 42, 43, 48,
309
+ 49, 50, 51, 106, 49, 49, 49, 49,
310
+ 49, 49, 41, 106, 42, 43, 48, 49,
311
+ 118, 50, 51, 106, 49, 49, 49, 49,
312
+ 49, 49, 41, 106, 42, 43, 48, 49,
313
+ 119, 50, 51, 106, 49, 49, 49, 49,
314
+ 49, 49, 41, 106, 42, 43, 48, 120,
315
+ 49, 50, 51, 106, 49, 49, 49, 49,
316
+ 49, 49, 41, 106, 42, 43, 42, 121,
317
+ 121, 121, 121, 121, 106, 121, 121, 121,
318
+ 121, 41, 106, 42, 43, 42, 121, 49,
319
+ 121, 121, 121, 121, 106, 121, 121, 121,
320
+ 121, 41, 106, 42, 43, 44, 45, 46,
321
+ 47, 47, 106, 47, 47, 47, 41, 0
263
322
  };
264
323
 
265
324
  static const char _redcloth_attributes_trans_targs[] = {
266
- 60, 61, 1, 2, 60, 3, 4, 6,
267
- 5, 5, 6, 64, 9, 65, 70, 71,
268
- 73, 60, 64, 7, 8, 66, 10, 11,
269
- 67, 69, 68, 12, 13, 69, 14, 15,
270
- 6, 72, 16, 17, 69, 18, 6, 74,
271
- 19, 20, 69, 63, 21, 22, 75, 77,
272
- 76, 23, 24, 77, 78, 25, 26, 78,
273
- 27, 80, 28, 29, 81, 83, 82, 30,
274
- 31, 83, 32, 86, 33, 34, 83, 88,
275
- 35, 36, 83, 90, 37, 38, 77, 92,
276
- 39, 40, 77, 42, 43, 45, 93, 42,
277
- 43, 45, 44, 44, 45, 94, 95, 100,
278
- 102, 93, 94, 46, 47, 96, 48, 49,
279
- 97, 99, 98, 50, 51, 99, 52, 45,
280
- 101, 53, 54, 99, 55, 45, 103, 56,
281
- 57, 99, 52, 0, 55, 61, 62, 89,
282
- 91, 60, 63, 3, 21, 22, 75, 77,
283
- 3, 60, 66, 3, 10, 11, 67, 69,
284
- 68, 12, 13, 72, 15, 16, 17, 74,
285
- 18, 19, 20, 76, 5, 23, 24, 5,
286
- 79, 84, 85, 87, 60, 80, 28, 29,
287
- 81, 83, 82, 30, 31, 86, 15, 33,
288
- 34, 15, 88, 18, 35, 36, 18, 90,
289
- 37, 38, 92, 39, 40, 41, 58, 59,
290
- 93, 96, 48, 49, 97, 99, 98, 50,
291
- 51, 101, 53, 54, 103, 56, 57
325
+ 29, 30, 1, 2, 3, 32, 34, 51,
326
+ 29, 35, 4, 5, 35, 6, 7, 37,
327
+ 39, 50, 8, 9, 44, 45, 39, 10,
328
+ 55, 56, 34, 12, 0, 13, 12, 13,
329
+ 15, 14, 15, 14, 62, 63, 67, 69,
330
+ 61, 62, 16, 17, 18, 64, 66, 76,
331
+ 19, 70, 71, 66, 21, 21, 15, 23,
332
+ 23, 24, 15, 25, 26, 27, 28, 30,
333
+ 31, 52, 54, 29, 3, 32, 51, 33,
334
+ 34, 33, 36, 40, 41, 43, 29, 7,
335
+ 37, 50, 38, 39, 38, 42, 42, 39,
336
+ 9, 44, 46, 47, 48, 49, 53, 53,
337
+ 34, 10, 55, 57, 58, 59, 60, 11,
338
+ 20, 22, 61, 18, 64, 76, 65, 66,
339
+ 65, 68, 68, 66, 19, 70, 72, 73,
340
+ 74, 75
292
341
  };
293
342
 
294
343
  static const char _redcloth_attributes_trans_actions[] = {
295
- 27, 19, 0, 0, 29, 0, 5, 5,
296
- 1, 0, 7, 46, 0, 81, 46, 81,
297
- 81, 25, 19, 0, 0, 67, 0, 0,
298
- 97, 52, 67, 0, 0, 55, 0, 0,
299
- 9, 67, 0, 0, 58, 0, 11, 67,
300
- 0, 0, 61, 70, 0, 0, 101, 52,
301
- 70, 0, 0, 55, 19, 0, 0, 46,
302
- 0, 67, 0, 0, 97, 52, 67, 0,
303
- 0, 55, 0, 67, 0, 0, 58, 67,
304
- 0, 0, 61, 70, 0, 0, 58, 70,
305
- 0, 0, 61, 1, 0, 0, 23, 0,
306
- 5, 5, 1, 0, 7, 46, 77, 77,
307
- 77, 21, 19, 0, 0, 64, 0, 0,
308
- 93, 52, 64, 0, 0, 55, 0, 9,
309
- 64, 0, 0, 58, 0, 11, 64, 0,
310
- 0, 61, 1, 0, 1, 49, 89, 89,
311
- 89, 40, 85, 31, 1, 1, 70, 19,
312
- 13, 37, 81, 1, 1, 1, 67, 19,
313
- 81, 1, 1, 81, 1, 1, 1, 81,
314
- 1, 1, 1, 85, 31, 1, 1, 13,
315
- 81, 46, 81, 81, 73, 81, 1, 1,
316
- 67, 19, 81, 1, 1, 81, 31, 1,
317
- 1, 13, 81, 31, 1, 1, 13, 85,
318
- 1, 1, 85, 1, 1, 3, 3, 3,
319
- 34, 77, 1, 1, 64, 19, 77, 1,
320
- 1, 77, 1, 1, 77, 1, 1
344
+ 23, 17, 0, 0, 0, 40, 40, 17,
345
+ 21, 17, 0, 0, 31, 0, 0, 40,
346
+ 40, 17, 0, 0, 17, 17, 49, 0,
347
+ 17, 17, 49, 1, 0, 0, 0, 5,
348
+ 5, 1, 7, 0, 31, 31, 31, 31,
349
+ 19, 17, 0, 0, 0, 40, 40, 17,
350
+ 0, 17, 17, 49, 1, 0, 9, 1,
351
+ 0, 0, 11, 0, 0, 0, 0, 34,
352
+ 34, 34, 34, 28, 1, 17, 37, 37,
353
+ 43, 17, 31, 31, 31, 31, 52, 1,
354
+ 17, 37, 37, 43, 17, 37, 17, 46,
355
+ 1, 37, 17, 17, 17, 17, 37, 17,
356
+ 46, 1, 37, 17, 17, 17, 17, 3,
357
+ 3, 3, 25, 1, 17, 37, 37, 43,
358
+ 17, 37, 17, 46, 1, 37, 17, 17,
359
+ 17, 17
321
360
  };
322
361
 
323
362
  static const char _redcloth_attributes_to_state_actions[] = {
324
363
  0, 0, 0, 0, 0, 0, 0, 0,
325
364
  0, 0, 0, 0, 0, 0, 0, 0,
326
365
  0, 0, 0, 0, 0, 0, 0, 0,
366
+ 0, 0, 0, 0, 0, 13, 0, 0,
327
367
  0, 0, 0, 0, 0, 0, 0, 0,
328
368
  0, 0, 0, 0, 0, 0, 0, 0,
329
369
  0, 0, 0, 0, 0, 0, 0, 0,
370
+ 0, 0, 0, 0, 0, 13, 0, 0,
330
371
  0, 0, 0, 0, 0, 0, 0, 0,
331
- 0, 0, 0, 0, 15, 0, 0, 0,
332
- 0, 0, 0, 0, 0, 0, 0, 0,
333
- 0, 0, 0, 0, 0, 0, 0, 0,
334
- 0, 0, 0, 0, 0, 0, 0, 0,
335
- 0, 0, 0, 0, 0, 43, 0, 0,
336
- 0, 0, 0, 0, 0, 0, 0, 0
372
+ 0, 0, 0, 0, 0
337
373
  };
338
374
 
339
375
  static const char _redcloth_attributes_from_state_actions[] = {
340
376
  0, 0, 0, 0, 0, 0, 0, 0,
341
377
  0, 0, 0, 0, 0, 0, 0, 0,
342
378
  0, 0, 0, 0, 0, 0, 0, 0,
379
+ 0, 0, 0, 0, 0, 15, 0, 0,
343
380
  0, 0, 0, 0, 0, 0, 0, 0,
344
381
  0, 0, 0, 0, 0, 0, 0, 0,
345
382
  0, 0, 0, 0, 0, 0, 0, 0,
383
+ 0, 0, 0, 0, 0, 15, 0, 0,
346
384
  0, 0, 0, 0, 0, 0, 0, 0,
347
- 0, 0, 0, 0, 17, 0, 0, 0,
348
- 0, 0, 0, 0, 0, 0, 0, 0,
349
- 0, 0, 0, 0, 0, 0, 0, 0,
350
- 0, 0, 0, 0, 0, 0, 0, 0,
351
- 0, 0, 0, 0, 0, 17, 0, 0,
352
- 0, 0, 0, 0, 0, 0, 0, 0
385
+ 0, 0, 0, 0, 0
353
386
  };
354
387
 
355
388
  static const short _redcloth_attributes_eof_trans[] = {
356
- 0, 1, 1, 5, 5, 5, 5, 18,
357
- 18, 5, 18, 18, 18, 18, 18, 5,
358
- 18, 18, 5, 18, 18, 1, 1, 1,
359
- 1, 18, 18, 1, 18, 18, 18, 18,
360
- 18, 18, 18, 18, 18, 1, 1, 1,
361
- 1, 0, 87, 87, 87, 87, 98, 98,
362
- 98, 98, 98, 98, 87, 98, 98, 87,
363
- 98, 98, 0, 0, 0, 130, 130, 130,
364
- 138, 138, 138, 138, 138, 138, 138, 138,
365
- 138, 138, 138, 130, 130, 130, 165, 165,
366
- 165, 165, 165, 165, 165, 165, 165, 165,
367
- 165, 130, 130, 130, 130, 0, 193, 193,
368
- 193, 193, 193, 193, 193, 193, 193, 193
389
+ 0, 1, 1, 1, 9, 9, 1, 9,
390
+ 9, 9, 1, 0, 0, 0, 0, 0,
391
+ 41, 41, 41, 41, 0, 0, 0, 0,
392
+ 0, 0, 0, 0, 0, 0, 68, 68,
393
+ 68, 68, 68, 79, 79, 79, 79, 79,
394
+ 79, 79, 79, 79, 79, 79, 79, 79,
395
+ 79, 79, 79, 68, 68, 68, 68, 68,
396
+ 68, 68, 68, 68, 68, 0, 107, 107,
397
+ 107, 107, 107, 107, 107, 107, 107, 107,
398
+ 107, 107, 107, 107, 107
369
399
  };
370
400
 
371
- static const int redcloth_attributes_start = 60;
401
+ static const int redcloth_attributes_start = 29;
372
402
  static const int redcloth_attributes_error = 0;
373
403
 
374
- static const int redcloth_attributes_en_inline = 93;
375
- static const int redcloth_attributes_en_link_says = 60;
404
+ static const int redcloth_attributes_en_inline = 61;
405
+ static const int redcloth_attributes_en_link_says = 29;
376
406
 
377
407
 
378
408
  #line 18 "ext/redcloth_scan/redcloth_attributes.c.rl"
@@ -385,12 +415,12 @@ redcloth_attribute_parser(machine, self, p, pe)
385
415
  char *p, *pe;
386
416
  {
387
417
  int cs, act;
388
- char *ts, *te, *reg, *bck, *eof;
418
+ char *ts = 0, *te = 0, *reg = 0, *bck = NULL, *attr_reg = NULL, *eof = NULL;
389
419
  VALUE regs = rb_hash_new();
390
- VALUE buf = Qnil;
420
+ VALUE attr_regs = rb_hash_new();
391
421
 
392
422
 
393
- #line 394 "ext/redcloth_scan/redcloth_attributes.c"
423
+ #line 424 "ext/redcloth_scan/redcloth_attributes.c"
394
424
  {
395
425
  cs = redcloth_attributes_start;
396
426
  ts = 0;
@@ -403,7 +433,7 @@ redcloth_attribute_parser(machine, self, p, pe)
403
433
  cs = machine;
404
434
 
405
435
 
406
- #line 407 "ext/redcloth_scan/redcloth_attributes.c"
436
+ #line 437 "ext/redcloth_scan/redcloth_attributes.c"
407
437
  {
408
438
  int _klen;
409
439
  unsigned int _trans;
@@ -424,7 +454,7 @@ _resume:
424
454
  #line 1 "NONE"
425
455
  {ts = p;}
426
456
  break;
427
- #line 428 "ext/redcloth_scan/redcloth_attributes.c"
457
+ #line 458 "ext/redcloth_scan/redcloth_attributes.c"
428
458
  }
429
459
  }
430
460
 
@@ -492,42 +522,46 @@ _eof_trans:
492
522
  {
493
523
  case 0:
494
524
  #line 5 "ext/redcloth_scan/redcloth_common.rl"
495
- { reg = p; }
525
+ { MARK(); }
496
526
  break;
497
527
  case 1:
498
528
  #line 6 "ext/redcloth_scan/redcloth_common.rl"
499
- { bck = p; }
529
+ { MARK_B(); }
500
530
  break;
501
531
  case 2:
502
532
  #line 7 "ext/redcloth_scan/redcloth_common.rl"
503
- { STORE("text"); }
533
+ { MARK_ATTR(); }
504
534
  break;
505
535
  case 3:
506
- #line 8 "ext/redcloth_scan/redcloth_common.rl"
507
- { CLEAR_REGS(); RESET_REG(); }
536
+ #line 9 "ext/redcloth_scan/redcloth_common.rl"
537
+ { STORE("text"); }
508
538
  break;
509
539
  case 4:
510
- #line 10 "ext/redcloth_scan/redcloth_attributes.rl"
511
- { STORE("class_buf"); }
540
+ #line 10 "ext/redcloth_scan/redcloth_common.rl"
541
+ { CLEAR_REGS(); RESET_REG(); }
512
542
  break;
513
543
  case 5:
514
- #line 10 "ext/redcloth_scan/redcloth_attributes.rl"
515
- {STORE("id_buf");}
544
+ #line 35 "ext/redcloth_scan/redcloth_common.rl"
545
+ { STORE_ATTR("class"); }
516
546
  break;
517
547
  case 6:
518
- #line 11 "ext/redcloth_scan/redcloth_attributes.rl"
519
- { STORE("lang_buf"); }
548
+ #line 36 "ext/redcloth_scan/redcloth_common.rl"
549
+ { STORE_ATTR("id"); }
520
550
  break;
521
551
  case 7:
522
- #line 12 "ext/redcloth_scan/redcloth_attributes.rl"
523
- { STORE("style_buf"); }
552
+ #line 38 "ext/redcloth_scan/redcloth_common.rl"
553
+ { STORE_ATTR("lang"); }
524
554
  break;
525
555
  case 8:
526
- #line 23 "ext/redcloth_scan/redcloth_attributes.rl"
527
- { STORE("name"); }
556
+ #line 39 "ext/redcloth_scan/redcloth_common.rl"
557
+ { STORE_ATTR("style"); }
528
558
  break;
529
559
  case 9:
530
- #line 24 "ext/redcloth_scan/redcloth_attributes.rl"
560
+ #line 20 "ext/redcloth_scan/redcloth_attributes.rl"
561
+ { STORE("name"); }
562
+ break;
563
+ case 10:
564
+ #line 21 "ext/redcloth_scan/redcloth_attributes.rl"
531
565
  { STORE_B("name_without_attributes"); }
532
566
  break;
533
567
  case 13:
@@ -535,66 +569,30 @@ _eof_trans:
535
569
  {te = p+1;}
536
570
  break;
537
571
  case 14:
538
- #line 19 "ext/redcloth_scan/redcloth_attributes.rl"
539
- {act = 1;}
540
- break;
541
- case 15:
542
- #line 19 "ext/redcloth_scan/redcloth_attributes.rl"
572
+ #line 16 "ext/redcloth_scan/redcloth_attributes.rl"
543
573
  {te = p;p--;{ SET_ATTRIBUTES(); }}
544
574
  break;
545
- case 16:
546
- #line 19 "ext/redcloth_scan/redcloth_attributes.rl"
575
+ case 15:
576
+ #line 16 "ext/redcloth_scan/redcloth_attributes.rl"
547
577
  {{p = ((te))-1;}{ SET_ATTRIBUTES(); }}
548
578
  break;
549
- case 17:
550
- #line 1 "NONE"
551
- { switch( act ) {
552
- case 0:
553
- {{cs = 0; goto _again;}}
554
- break;
555
- case 1:
556
- {{p = ((te))-1;} SET_ATTRIBUTES(); }
557
- break;
558
- }
559
- }
560
- break;
561
- case 18:
562
- #line 28 "ext/redcloth_scan/redcloth_attributes.rl"
563
- {act = 2;}
564
- break;
565
- case 19:
566
- #line 29 "ext/redcloth_scan/redcloth_attributes.rl"
567
- {act = 3;}
568
- break;
569
- case 20:
570
- #line 28 "ext/redcloth_scan/redcloth_attributes.rl"
579
+ case 16:
580
+ #line 25 "ext/redcloth_scan/redcloth_attributes.rl"
571
581
  {te = p;p--;{ SET_ATTRIBUTES(); }}
572
582
  break;
573
- case 21:
574
- #line 29 "ext/redcloth_scan/redcloth_attributes.rl"
583
+ case 17:
584
+ #line 26 "ext/redcloth_scan/redcloth_attributes.rl"
575
585
  {te = p;p--;{ SET_ATTRIBUTE("name_without_attributes", "name"); }}
576
586
  break;
577
- case 22:
578
- #line 28 "ext/redcloth_scan/redcloth_attributes.rl"
587
+ case 18:
588
+ #line 25 "ext/redcloth_scan/redcloth_attributes.rl"
579
589
  {{p = ((te))-1;}{ SET_ATTRIBUTES(); }}
580
590
  break;
581
- case 23:
582
- #line 29 "ext/redcloth_scan/redcloth_attributes.rl"
591
+ case 19:
592
+ #line 26 "ext/redcloth_scan/redcloth_attributes.rl"
583
593
  {{p = ((te))-1;}{ SET_ATTRIBUTE("name_without_attributes", "name"); }}
584
594
  break;
585
- case 24:
586
- #line 1 "NONE"
587
- { switch( act ) {
588
- case 2:
589
- {{p = ((te))-1;} SET_ATTRIBUTES(); }
590
- break;
591
- case 3:
592
- {{p = ((te))-1;} SET_ATTRIBUTE("name_without_attributes", "name"); }
593
- break;
594
- }
595
- }
596
- break;
597
- #line 598 "ext/redcloth_scan/redcloth_attributes.c"
595
+ #line 596 "ext/redcloth_scan/redcloth_attributes.c"
598
596
  }
599
597
  }
600
598
 
@@ -603,15 +601,11 @@ _again:
603
601
  _nacts = (unsigned int) *_acts++;
604
602
  while ( _nacts-- > 0 ) {
605
603
  switch ( *_acts++ ) {
606
- case 10:
607
- #line 1 "NONE"
608
- {ts = 0;}
609
- break;
610
604
  case 11:
611
605
  #line 1 "NONE"
612
- {act = 0;}
606
+ {ts = 0;}
613
607
  break;
614
- #line 615 "ext/redcloth_scan/redcloth_attributes.c"
608
+ #line 609 "ext/redcloth_scan/redcloth_attributes.c"
615
609
  }
616
610
  }
617
611
 
@@ -652,4 +646,4 @@ redcloth_link_attributes(self, str)
652
646
  StringValue(str);
653
647
  int cs = redcloth_attributes_en_link_says;
654
648
  return redcloth_attribute_parser(cs, self, RSTRING_PTR(str), RSTRING_PTR(str) + RSTRING_LEN(str) + 1);
655
- }
649
+ }