RedCloth 4.1.9 → 4.2.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of RedCloth might be problematic. Click here for more details.

Files changed (70) hide show
  1. data/CHANGELOG +55 -0
  2. data/Manifest +34 -38
  3. data/README +17 -5
  4. data/Rakefile +79 -30
  5. data/RedCloth.gemspec +5 -6
  6. data/ext/redcloth_scan/redcloth.h +38 -13
  7. data/ext/redcloth_scan/redcloth_attributes.c +349 -383
  8. data/ext/redcloth_scan/redcloth_inline.c +4769 -16591
  9. data/ext/redcloth_scan/redcloth_scan.c +21592 -9540
  10. data/lib/redcloth.rb +9 -3
  11. data/lib/redcloth/formatters/html.rb +2 -2
  12. data/lib/redcloth/formatters/latex.rb +99 -54
  13. data/lib/redcloth/formatters/latex_entities.yml +2 -2
  14. data/lib/redcloth/version.rb +9 -4
  15. data/lib/tasks/pureruby.rake +12 -0
  16. data/spec/custom_tags_spec.rb +50 -0
  17. data/spec/differs/inline.rb +48 -0
  18. data/{test/test_erb.rb → spec/erb_spec.rb} +6 -9
  19. data/spec/extension_spec.rb +26 -0
  20. data/{test → spec/fixtures}/basic.yml +90 -4
  21. data/{test → spec/fixtures}/code.yml +29 -0
  22. data/{test → spec/fixtures}/definitions.yml +0 -0
  23. data/{test → spec/fixtures}/extra_whitespace.yml +0 -0
  24. data/{test → spec/fixtures}/filter_html.yml +0 -0
  25. data/{test → spec/fixtures}/filter_pba.yml +0 -0
  26. data/{test → spec/fixtures}/html.yml +15 -0
  27. data/{test → spec/fixtures}/images.yml +16 -6
  28. data/{test → spec/fixtures}/instiki.yml +0 -0
  29. data/{test → spec/fixtures}/links.yml +7 -1
  30. data/{test → spec/fixtures}/lists.yml +162 -1
  31. data/{test → spec/fixtures}/poignant.yml +0 -0
  32. data/{test → spec/fixtures}/sanitize_html.yml +0 -0
  33. data/{test → spec/fixtures}/table.yml +121 -23
  34. data/{test → spec/fixtures}/textism.yml +44 -15
  35. data/{test → spec/fixtures}/threshold.yml +6 -14
  36. data/spec/formatters/class_filtered_html_spec.rb +7 -0
  37. data/spec/formatters/filtered_html_spec.rb +7 -0
  38. data/spec/formatters/html_no_breaks_spec.rb +9 -0
  39. data/spec/formatters/html_spec.rb +13 -0
  40. data/spec/formatters/id_filtered_html_spec.rb +7 -0
  41. data/spec/formatters/latex_spec.rb +13 -0
  42. data/spec/formatters/lite_mode_html_spec.rb +7 -0
  43. data/spec/formatters/no_span_caps_html_spec.rb +7 -0
  44. data/spec/formatters/sanitized_html_spec.rb +7 -0
  45. data/spec/formatters/style_filtered_html_spec.rb +7 -0
  46. data/spec/parser_spec.rb +95 -0
  47. data/spec/spec.opts +3 -0
  48. data/spec/spec_helper.rb +42 -0
  49. metadata +40 -49
  50. data/ext/mingw-rbconfig.rb +0 -176
  51. data/ext/redcloth_scan/redcloth_attributes.c.rl +0 -55
  52. data/ext/redcloth_scan/redcloth_attributes.java.rl +0 -95
  53. data/ext/redcloth_scan/redcloth_attributes.rl +0 -33
  54. data/ext/redcloth_scan/redcloth_common.c.rl +0 -18
  55. data/ext/redcloth_scan/redcloth_common.java.rl +0 -18
  56. data/ext/redcloth_scan/redcloth_common.rl +0 -115
  57. data/ext/redcloth_scan/redcloth_inline.c.rl +0 -193
  58. data/ext/redcloth_scan/redcloth_inline.java.rl +0 -140
  59. data/ext/redcloth_scan/redcloth_inline.rl +0 -156
  60. data/ext/redcloth_scan/redcloth_scan.c.rl +0 -228
  61. data/ext/redcloth_scan/redcloth_scan.java.rl +0 -577
  62. data/ext/redcloth_scan/redcloth_scan.rl +0 -320
  63. data/extras/ragel_profiler.rb +0 -73
  64. data/test/helper.rb +0 -108
  65. data/test/test_custom_tags.rb +0 -58
  66. data/test/test_extensions.rb +0 -31
  67. data/test/test_formatters.rb +0 -24
  68. data/test/test_parser.rb +0 -73
  69. data/test/test_restrictions.rb +0 -41
  70. data/test/validate_fixtures.rb +0 -74
@@ -13,369 +13,370 @@
13
13
 
14
14
  #line 15 "ext/redcloth_scan/redcloth_attributes.c"
15
15
  static const char _redcloth_attributes_actions[] = {
16
- 0, 1, 0, 1, 3, 1, 4, 1,
17
- 5, 1, 6, 1, 7, 1, 9, 1,
18
- 10, 1, 12, 1, 13, 1, 16, 1,
19
- 17, 1, 22, 1, 23, 1, 24, 2,
20
- 0, 9, 2, 2, 15, 2, 8, 20,
21
- 2, 9, 21, 2, 10, 11, 2, 13,
22
- 0, 2, 13, 1, 2, 13, 4, 2,
23
- 13, 5, 2, 13, 6, 2, 13, 7,
24
- 2, 13, 14, 2, 13, 18, 2, 13,
25
- 19, 3, 8, 9, 20, 3, 13, 0,
26
- 14, 3, 13, 0, 18, 3, 13, 0,
27
- 19, 3, 13, 1, 19, 3, 13, 4,
28
- 14, 3, 13, 4, 18, 3, 13, 4,
29
- 19
16
+ 0, 1, 2, 1, 4, 1, 5, 1,
17
+ 6, 1, 7, 1, 8, 1, 11, 1,
18
+ 12, 1, 13, 1, 15, 1, 18, 1,
19
+ 19, 2, 3, 14, 2, 10, 17, 2,
20
+ 13, 0, 2, 13, 1, 2, 13, 2,
21
+ 2, 13, 5, 2, 13, 6, 2, 13,
22
+ 7, 2, 13, 8, 3, 9, 10, 16
23
+
30
24
  };
31
25
 
32
26
  static const short _redcloth_attributes_key_offsets[] = {
33
- 0, 0, 6, 11, 13, 14, 15, 23,
34
- 29, 34, 38, 46, 53, 60, 66, 72,
35
- 74, 82, 89, 90, 97, 103, 111, 118,
36
- 125, 131, 137, 142, 148, 156, 163, 170,
37
- 176, 182, 190, 197, 204, 210, 218, 225,
38
- 232, 238, 240, 242, 243, 244, 251, 257,
39
- 262, 270, 277, 284, 290, 292, 300, 307,
40
- 308, 315, 321, 323, 324, 331, 337, 345,
41
- 353, 359, 367, 375, 382, 389, 399, 406,
42
- 414, 422, 429, 436, 443, 450, 460, 466,
43
- 474, 482, 489, 496, 506, 513, 521, 529,
44
- 536, 543, 551, 559, 566, 573, 576, 582,
45
- 590, 598, 605, 612, 621, 629, 637, 644
27
+ 0, 0, 6, 11, 25, 31, 36, 42,
28
+ 56, 62, 78, 94, 102, 111, 117, 124,
29
+ 131, 137, 142, 156, 172, 176, 181, 190,
30
+ 201, 213, 225, 237, 250, 264, 271, 277,
31
+ 290, 302, 315, 325, 331, 344, 356, 369,
32
+ 379, 386, 396, 407, 421, 437, 454, 471,
33
+ 488, 507, 527, 541, 555, 565, 576, 590,
34
+ 606, 623, 640, 657, 676, 696, 699, 705,
35
+ 718, 730, 743, 752, 762, 773, 787, 803,
36
+ 820, 837, 854, 873, 893
46
37
  };
47
38
 
48
39
  static const char _redcloth_attributes_trans_keys[] = {
49
40
  0, 9, 10, 32, 11, 13, 0, 9,
50
- 32, 10, 13, 35, 41, 41, 41, 0,
51
- 32, 40, 46, 91, 123, 9, 13, 0,
52
- 9, 10, 32, 11, 13, 0, 9, 32,
53
- 10, 13, 0, 32, 9, 13, 0, 9,
54
- 10, 32, 35, 41, 11, 13, 0, 9,
55
- 32, 35, 41, 10, 13, 0, 9, 10,
56
- 32, 41, 11, 13, 0, 9, 32, 41,
57
- 10, 13, 0, 9, 10, 32, 11, 13,
58
- 91, 93, 0, 9, 10, 32, 91, 93,
59
- 11, 13, 0, 9, 32, 91, 93, 10,
60
- 13, 125, 0, 9, 10, 32, 125, 11,
61
- 13, 0, 9, 32, 125, 10, 13, 0,
62
- 9, 10, 32, 35, 41, 11, 13, 0,
63
- 9, 32, 35, 41, 10, 13, 0, 9,
64
- 10, 32, 41, 11, 13, 0, 9, 32,
65
- 41, 10, 13, 0, 9, 10, 32, 11,
66
- 13, 0, 9, 32, 10, 13, 0, 9,
67
- 10, 32, 11, 13, 0, 9, 10, 32,
68
- 35, 41, 11, 13, 0, 9, 32, 35,
69
- 41, 10, 13, 0, 9, 10, 32, 41,
70
- 11, 13, 0, 9, 32, 41, 10, 13,
41
+ 32, 10, 13, 0, 9, 10, 32, 35,
42
+ 41, 45, 95, 11, 13, 48, 57, 97,
43
+ 122, 0, 9, 10, 32, 11, 13, 0,
44
+ 9, 32, 10, 13, 0, 9, 10, 32,
45
+ 11, 13, 0, 9, 10, 32, 35, 41,
46
+ 45, 95, 11, 13, 48, 57, 97, 122,
71
47
  0, 9, 10, 32, 11, 13, 0, 9,
72
- 10, 32, 91, 93, 11, 13, 0, 9,
73
- 32, 91, 93, 10, 13, 0, 9, 10,
74
- 32, 125, 11, 13, 0, 9, 32, 125,
75
- 10, 13, 0, 9, 10, 32, 91, 93,
76
- 11, 13, 0, 9, 32, 91, 93, 10,
77
- 13, 0, 9, 10, 32, 125, 11, 13,
78
- 0, 9, 32, 125, 10, 13, 35, 41,
79
- 35, 41, 41, 41, 0, 32, 40, 91,
48
+ 10, 32, 35, 38, 45, 95, 117, 125,
49
+ 11, 13, 48, 59, 97, 122, 0, 9,
50
+ 10, 32, 35, 38, 45, 95, 117, 125,
51
+ 11, 13, 48, 59, 97, 122, 32, 35,
52
+ 45, 95, 48, 57, 97, 122, 32, 35,
53
+ 41, 45, 95, 48, 57, 97, 122, 45,
54
+ 95, 48, 57, 97, 122, 41, 45, 95,
55
+ 48, 57, 97, 122, 0, 32, 40, 91,
80
56
  123, 9, 13, 0, 9, 10, 32, 11,
81
57
  13, 0, 9, 32, 10, 13, 0, 9,
82
- 10, 32, 35, 41, 11, 13, 0, 9,
83
- 32, 35, 41, 10, 13, 0, 9, 10,
84
- 32, 41, 11, 13, 0, 9, 32, 41,
85
- 10, 13, 91, 93, 0, 9, 10, 32,
86
- 91, 93, 11, 13, 0, 9, 32, 91,
87
- 93, 10, 13, 125, 0, 9, 10, 32,
88
- 125, 11, 13, 0, 9, 32, 125, 10,
89
- 13, 91, 93, 125, 0, 32, 40, 91,
90
- 123, 9, 13, 0, 9, 10, 32, 11,
91
- 13, 0, 9, 10, 32, 35, 41, 11,
92
- 13, 0, 9, 10, 32, 35, 41, 11,
93
- 13, 0, 9, 10, 32, 11, 13, 0,
94
- 9, 10, 32, 35, 41, 11, 13, 0,
95
- 9, 10, 32, 35, 41, 11, 13, 0,
96
- 9, 10, 32, 41, 11, 13, 0, 9,
97
- 10, 32, 41, 11, 13, 0, 9, 10,
98
- 32, 40, 46, 91, 123, 11, 13, 0,
99
- 9, 10, 32, 46, 11, 13, 0, 9,
100
- 10, 32, 91, 93, 11, 13, 0, 9,
101
- 10, 32, 91, 93, 11, 13, 0, 9,
102
- 10, 32, 125, 11, 13, 0, 9, 10,
103
- 32, 125, 11, 13, 0, 9, 10, 32,
104
- 41, 11, 13, 0, 9, 10, 32, 41,
105
- 11, 13, 0, 9, 10, 32, 40, 46,
106
- 91, 123, 11, 13, 0, 9, 10, 32,
107
- 11, 13, 0, 9, 10, 32, 35, 41,
108
- 11, 13, 0, 9, 10, 32, 35, 41,
109
- 11, 13, 0, 9, 10, 32, 41, 11,
110
- 13, 0, 9, 10, 32, 41, 11, 13,
111
- 0, 9, 10, 32, 40, 46, 91, 123,
112
- 11, 13, 0, 9, 10, 32, 46, 11,
113
- 13, 0, 9, 10, 32, 91, 93, 11,
114
- 13, 0, 9, 10, 32, 91, 93, 11,
115
- 13, 0, 9, 10, 32, 125, 11, 13,
116
- 0, 9, 10, 32, 125, 11, 13, 0,
117
- 9, 10, 32, 91, 93, 11, 13, 0,
118
- 9, 10, 32, 91, 93, 11, 13, 0,
119
- 9, 10, 32, 125, 11, 13, 0, 9,
120
- 10, 32, 125, 11, 13, 40, 91, 123,
121
- 0, 9, 10, 32, 11, 13, 0, 9,
122
- 10, 32, 35, 41, 11, 13, 0, 9,
123
- 10, 32, 35, 41, 11, 13, 0, 9,
124
- 10, 32, 41, 11, 13, 0, 9, 10,
125
- 32, 41, 11, 13, 0, 9, 10, 32,
126
- 40, 91, 123, 11, 13, 0, 9, 10,
127
- 32, 91, 93, 11, 13, 0, 9, 10,
128
- 32, 91, 93, 11, 13, 0, 9, 10,
129
- 32, 125, 11, 13, 0, 9, 10, 32,
130
- 125, 11, 13, 0
58
+ 10, 32, 35, 41, 45, 95, 11, 13,
59
+ 48, 57, 97, 122, 0, 9, 10, 32,
60
+ 35, 38, 45, 95, 117, 125, 11, 13,
61
+ 48, 59, 97, 122, 45, 95, 97, 122,
62
+ 45, 93, 95, 97, 122, 32, 35, 38,
63
+ 45, 95, 48, 59, 97, 122, 32, 35,
64
+ 38, 45, 95, 117, 125, 48, 59, 97,
65
+ 122, 32, 35, 38, 45, 95, 114, 117,
66
+ 125, 48, 59, 97, 122, 32, 35, 38,
67
+ 45, 95, 108, 117, 125, 48, 59, 97,
68
+ 122, 32, 35, 38, 40, 45, 95, 117,
69
+ 125, 48, 59, 97, 122, 39, 43, 61,
70
+ 92, 95, 34, 35, 45, 57, 63, 64,
71
+ 97, 122, 39, 41, 43, 61, 92, 95,
72
+ 34, 35, 45, 57, 63, 64, 97, 122,
73
+ 0, 32, 40, 91, 123, 9, 13, 0,
74
+ 9, 10, 32, 11, 13, 0, 9, 10,
75
+ 32, 35, 45, 95, 11, 13, 48, 57,
76
+ 97, 122, 0, 9, 10, 32, 45, 95,
77
+ 11, 13, 48, 57, 97, 122, 0, 9,
78
+ 10, 32, 41, 45, 95, 11, 13, 48,
79
+ 57, 97, 122, 0, 9, 10, 32, 40,
80
+ 46, 91, 123, 11, 13, 0, 9, 10,
81
+ 32, 11, 13, 0, 9, 10, 32, 35,
82
+ 45, 95, 11, 13, 48, 57, 97, 122,
83
+ 0, 9, 10, 32, 45, 95, 11, 13,
84
+ 48, 57, 97, 122, 0, 9, 10, 32,
85
+ 41, 45, 95, 11, 13, 48, 57, 97,
86
+ 122, 0, 9, 10, 32, 40, 46, 91,
87
+ 123, 11, 13, 0, 9, 10, 32, 46,
88
+ 11, 13, 0, 9, 10, 32, 45, 95,
89
+ 11, 13, 97, 122, 0, 9, 10, 32,
90
+ 45, 93, 95, 11, 13, 97, 122, 0,
91
+ 9, 10, 32, 35, 38, 45, 95, 11,
92
+ 13, 48, 59, 97, 122, 0, 9, 10,
93
+ 32, 35, 38, 45, 95, 117, 125, 11,
94
+ 13, 48, 59, 97, 122, 0, 9, 10,
95
+ 32, 35, 38, 45, 95, 114, 117, 125,
96
+ 11, 13, 48, 59, 97, 122, 0, 9,
97
+ 10, 32, 35, 38, 45, 95, 108, 117,
98
+ 125, 11, 13, 48, 59, 97, 122, 0,
99
+ 9, 10, 32, 35, 38, 40, 45, 95,
100
+ 117, 125, 11, 13, 48, 59, 97, 122,
101
+ 0, 9, 10, 32, 39, 43, 61, 92,
102
+ 95, 11, 13, 34, 35, 45, 57, 63,
103
+ 64, 97, 122, 0, 9, 10, 32, 39,
104
+ 41, 43, 61, 92, 95, 11, 13, 34,
105
+ 35, 45, 57, 63, 64, 97, 122, 0,
106
+ 9, 10, 32, 35, 41, 45, 95, 11,
107
+ 13, 48, 57, 97, 122, 0, 9, 10,
108
+ 32, 35, 41, 45, 95, 11, 13, 48,
109
+ 57, 97, 122, 0, 9, 10, 32, 45,
110
+ 95, 11, 13, 97, 122, 0, 9, 10,
111
+ 32, 45, 93, 95, 11, 13, 97, 122,
112
+ 0, 9, 10, 32, 35, 38, 45, 95,
113
+ 11, 13, 48, 59, 97, 122, 0, 9,
114
+ 10, 32, 35, 38, 45, 95, 117, 125,
115
+ 11, 13, 48, 59, 97, 122, 0, 9,
116
+ 10, 32, 35, 38, 45, 95, 114, 117,
117
+ 125, 11, 13, 48, 59, 97, 122, 0,
118
+ 9, 10, 32, 35, 38, 45, 95, 108,
119
+ 117, 125, 11, 13, 48, 59, 97, 122,
120
+ 0, 9, 10, 32, 35, 38, 40, 45,
121
+ 95, 117, 125, 11, 13, 48, 59, 97,
122
+ 122, 0, 9, 10, 32, 39, 43, 61,
123
+ 92, 95, 11, 13, 34, 35, 45, 57,
124
+ 63, 64, 97, 122, 0, 9, 10, 32,
125
+ 39, 41, 43, 61, 92, 95, 11, 13,
126
+ 34, 35, 45, 57, 63, 64, 97, 122,
127
+ 40, 91, 123, 0, 9, 10, 32, 11,
128
+ 13, 0, 9, 10, 32, 35, 45, 95,
129
+ 11, 13, 48, 57, 97, 122, 0, 9,
130
+ 10, 32, 45, 95, 11, 13, 48, 57,
131
+ 97, 122, 0, 9, 10, 32, 41, 45,
132
+ 95, 11, 13, 48, 57, 97, 122, 0,
133
+ 9, 10, 32, 40, 91, 123, 11, 13,
134
+ 0, 9, 10, 32, 45, 95, 11, 13,
135
+ 97, 122, 0, 9, 10, 32, 45, 93,
136
+ 95, 11, 13, 97, 122, 0, 9, 10,
137
+ 32, 35, 38, 45, 95, 11, 13, 48,
138
+ 59, 97, 122, 0, 9, 10, 32, 35,
139
+ 38, 45, 95, 117, 125, 11, 13, 48,
140
+ 59, 97, 122, 0, 9, 10, 32, 35,
141
+ 38, 45, 95, 114, 117, 125, 11, 13,
142
+ 48, 59, 97, 122, 0, 9, 10, 32,
143
+ 35, 38, 45, 95, 108, 117, 125, 11,
144
+ 13, 48, 59, 97, 122, 0, 9, 10,
145
+ 32, 35, 38, 40, 45, 95, 117, 125,
146
+ 11, 13, 48, 59, 97, 122, 0, 9,
147
+ 10, 32, 39, 43, 61, 92, 95, 11,
148
+ 13, 34, 35, 45, 57, 63, 64, 97,
149
+ 122, 0, 9, 10, 32, 39, 41, 43,
150
+ 61, 92, 95, 11, 13, 34, 35, 45,
151
+ 57, 63, 64, 97, 122, 0, 9, 10,
152
+ 32, 35, 41, 45, 95, 11, 13, 48,
153
+ 57, 97, 122, 0
131
154
  };
132
155
 
133
156
  static const char _redcloth_attributes_single_lengths[] = {
134
- 0, 4, 3, 2, 1, 1, 6, 4,
135
- 3, 2, 6, 5, 5, 4, 4, 2,
136
- 6, 5, 1, 5, 4, 6, 5, 5,
137
- 4, 4, 3, 4, 6, 5, 5, 4,
138
- 4, 6, 5, 5, 4, 6, 5, 5,
139
- 4, 2, 2, 1, 1, 5, 4, 3,
140
- 6, 5, 5, 4, 2, 6, 5, 1,
141
- 5, 4, 2, 1, 5, 4, 6, 6,
142
- 4, 6, 6, 5, 5, 8, 5, 6,
143
- 6, 5, 5, 5, 5, 8, 4, 6,
144
- 6, 5, 5, 8, 5, 6, 6, 5,
145
- 5, 6, 6, 5, 5, 3, 4, 6,
146
- 6, 5, 5, 7, 6, 6, 5, 5
157
+ 0, 4, 3, 8, 4, 3, 4, 8,
158
+ 4, 10, 10, 4, 5, 2, 3, 5,
159
+ 4, 3, 8, 10, 2, 3, 5, 7,
160
+ 8, 8, 8, 5, 6, 5, 4, 7,
161
+ 6, 7, 8, 4, 7, 6, 7, 8,
162
+ 5, 6, 7, 8, 10, 11, 11, 11,
163
+ 9, 10, 8, 8, 6, 7, 8, 10,
164
+ 11, 11, 11, 9, 10, 3, 4, 7,
165
+ 6, 7, 7, 6, 7, 8, 10, 11,
166
+ 11, 11, 9, 10, 8
147
167
  };
148
168
 
149
169
  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
170
+ 0, 1, 1, 3, 1, 1, 1, 3,
171
+ 1, 3, 3, 2, 2, 2, 2, 1,
172
+ 1, 1, 3, 3, 1, 1, 2, 2,
173
+ 2, 2, 2, 4, 4, 1, 1, 3,
174
+ 3, 3, 1, 1, 3, 3, 3, 1,
175
+ 1, 2, 2, 3, 3, 3, 3, 3,
176
+ 5, 5, 3, 3, 2, 2, 3, 3,
177
+ 3, 3, 3, 5, 5, 0, 1, 3,
178
+ 3, 3, 1, 2, 2, 3, 3, 3,
179
+ 3, 3, 5, 5, 3
163
180
  };
164
181
 
165
182
  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
- 78, 86, 93, 95, 102, 108, 116, 123,
169
- 130, 136, 142, 147, 153, 161, 168, 175,
170
- 181, 187, 195, 202, 209, 215, 223, 230,
171
- 237, 243, 246, 249, 251, 253, 260, 266,
172
- 271, 279, 286, 293, 299, 302, 310, 317,
173
- 319, 326, 332, 335, 337, 344, 350, 358,
174
- 366, 372, 380, 388, 395, 402, 412, 419,
175
- 427, 435, 442, 449, 456, 463, 473, 479,
176
- 487, 495, 502, 509, 519, 526, 534, 542,
177
- 549, 556, 564, 572, 579, 586, 590, 596,
178
- 604, 612, 619, 626, 635, 643, 651, 658
183
+ 0, 0, 6, 11, 23, 29, 34, 40,
184
+ 52, 58, 72, 86, 93, 101, 106, 112,
185
+ 119, 125, 130, 142, 156, 160, 165, 173,
186
+ 183, 194, 205, 216, 226, 237, 244, 250,
187
+ 261, 271, 282, 292, 298, 309, 319, 330,
188
+ 340, 347, 356, 366, 378, 392, 407, 422,
189
+ 437, 452, 468, 480, 492, 501, 511, 523,
190
+ 537, 552, 567, 582, 597, 613, 617, 623,
191
+ 634, 644, 655, 664, 673, 683, 695, 709,
192
+ 724, 739, 754, 769, 785
179
193
  };
180
194
 
181
- static const unsigned char _redcloth_attributes_indicies[] = {
195
+ static const char _redcloth_attributes_indicies[] = {
182
196
  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, 4, 32, 31, 31, 34,
192
- 35, 34, 18, 36, 31, 33, 31, 34,
193
- 34, 18, 36, 31, 33, 38, 37, 37,
194
- 40, 41, 40, 42, 37, 39, 37, 40,
195
- 40, 42, 37, 39, 5, 44, 45, 44,
196
- 46, 47, 5, 43, 5, 44, 44, 46,
197
- 47, 5, 43, 9, 49, 50, 49, 51,
198
- 9, 48, 9, 49, 49, 51, 9, 48,
199
- 17, 53, 54, 53, 17, 52, 17, 53,
200
- 53, 17, 52, 0, 2, 3, 56, 0,
201
- 55, 5, 58, 59, 58, 60, 61, 5,
202
- 57, 5, 58, 58, 60, 61, 5, 57,
203
- 9, 63, 64, 63, 65, 9, 62, 9,
204
- 63, 63, 65, 9, 62, 17, 53, 54,
205
- 66, 17, 55, 31, 68, 69, 68, 52,
206
- 70, 31, 67, 31, 68, 68, 52, 70,
207
- 31, 67, 37, 72, 73, 72, 74, 37,
208
- 71, 37, 72, 72, 74, 37, 71, 31,
209
- 76, 77, 76, 1, 78, 31, 75, 31,
210
- 76, 76, 1, 78, 31, 75, 37, 80,
211
- 81, 80, 82, 37, 79, 37, 80, 80,
212
- 82, 37, 79, 84, 85, 83, 88, 89,
213
- 87, 86, 90, 92, 91, 86, 86, 94,
214
- 95, 96, 86, 93, 97, 99, 100, 99,
215
- 97, 98, 97, 99, 99, 97, 98, 87,
216
- 102, 103, 102, 104, 105, 87, 101, 87,
217
- 102, 102, 104, 105, 87, 101, 91, 107,
218
- 108, 107, 109, 91, 106, 91, 107, 107,
219
- 109, 91, 106, 86, 111, 110, 110, 113,
220
- 114, 113, 98, 115, 110, 112, 110, 113,
221
- 113, 98, 115, 110, 112, 117, 116, 116,
222
- 119, 120, 119, 121, 116, 118, 116, 119,
223
- 119, 121, 116, 118, 123, 123, 122, 123,
224
- 124, 123, 123, 126, 127, 128, 123, 125,
225
- 129, 2, 3, 2, 129, 1, 131, 132,
226
- 133, 132, 134, 135, 131, 130, 136, 44,
227
- 45, 44, 46, 47, 136, 43, 137, 19,
228
- 20, 19, 137, 18, 139, 140, 141, 140,
229
- 142, 143, 139, 138, 5, 22, 23, 22,
230
- 24, 25, 5, 21, 8, 145, 146, 145,
231
- 18, 8, 144, 9, 27, 28, 27, 29,
232
- 9, 26, 137, 19, 20, 30, 13, 14,
233
- 15, 16, 137, 11, 137, 19, 20, 30,
234
- 14, 137, 11, 148, 149, 150, 149, 18,
235
- 18, 148, 147, 31, 34, 35, 34, 18,
236
- 36, 31, 33, 152, 153, 154, 153, 18,
237
- 152, 151, 37, 40, 41, 40, 42, 37,
238
- 39, 156, 157, 158, 157, 1, 156, 155,
239
- 159, 49, 50, 49, 51, 159, 48, 129,
240
- 2, 3, 56, 160, 161, 162, 163, 129,
241
- 55, 164, 53, 54, 53, 164, 52, 131,
242
- 166, 167, 166, 168, 169, 131, 165, 136,
243
- 58, 59, 58, 60, 61, 136, 57, 156,
244
- 171, 172, 171, 52, 156, 170, 159, 63,
245
- 64, 63, 65, 159, 62, 164, 53, 54,
246
- 66, 160, 161, 162, 163, 164, 55, 164,
247
- 53, 54, 66, 161, 164, 55, 174, 175,
248
- 176, 175, 52, 52, 174, 173, 177, 68,
249
- 69, 68, 52, 70, 177, 67, 179, 180,
250
- 181, 180, 52, 179, 178, 182, 72, 73,
251
- 72, 74, 182, 71, 174, 184, 185, 184,
252
- 1, 1, 174, 183, 177, 76, 77, 76,
253
- 1, 78, 177, 75, 179, 187, 188, 187,
254
- 1, 179, 186, 182, 80, 81, 80, 82,
255
- 182, 79, 189, 190, 191, 123, 192, 99,
256
- 100, 99, 192, 98, 83, 194, 195, 194,
257
- 196, 197, 83, 193, 87, 102, 103, 102,
258
- 104, 105, 87, 101, 90, 199, 200, 199,
259
- 98, 90, 198, 91, 107, 108, 107, 109,
260
- 91, 106, 192, 99, 100, 99, 94, 95,
261
- 96, 192, 93, 122, 202, 203, 202, 98,
262
- 98, 122, 201, 110, 113, 114, 113, 98,
263
- 115, 110, 112, 124, 205, 206, 205, 98,
264
- 124, 204, 116, 119, 120, 119, 121, 116,
265
- 118, 0
197
+ 2, 0, 1, 0, 2, 3, 4, 5,
198
+ 6, 7, 7, 0, 7, 7, 1, 8,
199
+ 10, 11, 10, 8, 9, 8, 10, 10,
200
+ 8, 9, 0, 2, 3, 13, 0, 12,
201
+ 8, 10, 11, 14, 15, 16, 17, 17,
202
+ 8, 17, 17, 9, 8, 10, 11, 18,
203
+ 8, 12, 8, 10, 11, 19, 20, 20,
204
+ 20, 20, 21, 22, 8, 20, 20, 9,
205
+ 0, 2, 3, 23, 24, 24, 24, 24,
206
+ 25, 26, 0, 24, 24, 1, 27, 29,
207
+ 27, 27, 27, 27, 28, 30, 31, 32,
208
+ 30, 30, 30, 30, 28, 33, 33, 33,
209
+ 33, 28, 34, 35, 35, 35, 35, 28,
210
+ 28, 28, 37, 38, 39, 28, 36, 40,
211
+ 42, 43, 42, 40, 41, 40, 42, 42,
212
+ 40, 41, 40, 42, 43, 44, 45, 46,
213
+ 47, 47, 40, 47, 47, 41, 40, 42,
214
+ 43, 48, 49, 49, 49, 49, 50, 51,
215
+ 40, 49, 49, 41, 52, 52, 52, 28,
216
+ 53, 54, 53, 53, 28, 55, 55, 55,
217
+ 55, 55, 55, 55, 28, 56, 56, 56,
218
+ 56, 56, 57, 58, 56, 56, 28, 56,
219
+ 56, 56, 56, 56, 59, 57, 58, 56,
220
+ 56, 28, 56, 56, 56, 56, 56, 60,
221
+ 57, 58, 56, 56, 28, 56, 56, 56,
222
+ 61, 56, 56, 57, 58, 56, 56, 28,
223
+ 62, 62, 62, 62, 62, 62, 62, 62,
224
+ 62, 28, 62, 56, 62, 62, 62, 62,
225
+ 62, 62, 62, 62, 28, 28, 28, 64,
226
+ 65, 66, 28, 63, 67, 2, 3, 2,
227
+ 67, 1, 67, 2, 3, 68, 69, 70,
228
+ 70, 67, 70, 70, 1, 67, 2, 3,
229
+ 2, 71, 71, 67, 71, 71, 1, 67,
230
+ 2, 3, 2, 72, 73, 73, 67, 73,
231
+ 73, 1, 67, 2, 3, 13, 74, 75,
232
+ 76, 77, 67, 12, 78, 10, 11, 10,
233
+ 78, 9, 78, 10, 11, 79, 80, 81,
234
+ 81, 78, 81, 81, 9, 78, 10, 11,
235
+ 10, 82, 82, 78, 82, 82, 9, 78,
236
+ 10, 11, 10, 83, 84, 84, 78, 84,
237
+ 84, 9, 78, 10, 11, 18, 74, 75,
238
+ 76, 77, 78, 12, 78, 10, 11, 18,
239
+ 75, 78, 12, 78, 10, 11, 10, 85,
240
+ 85, 78, 85, 9, 78, 10, 11, 10,
241
+ 86, 87, 86, 78, 86, 9, 78, 10,
242
+ 11, 88, 89, 89, 89, 89, 78, 89,
243
+ 89, 9, 78, 10, 11, 19, 20, 20,
244
+ 20, 20, 21, 22, 78, 20, 20, 9,
245
+ 78, 10, 11, 19, 20, 20, 20, 20,
246
+ 90, 21, 22, 78, 20, 20, 9, 78,
247
+ 10, 11, 19, 20, 20, 20, 20, 91,
248
+ 21, 22, 78, 20, 20, 9, 78, 10,
249
+ 11, 19, 20, 20, 92, 20, 20, 21,
250
+ 22, 78, 20, 20, 9, 78, 10, 11,
251
+ 10, 93, 93, 93, 93, 93, 78, 93,
252
+ 93, 93, 93, 9, 78, 10, 11, 10,
253
+ 93, 20, 93, 93, 93, 93, 78, 93,
254
+ 93, 93, 93, 9, 78, 10, 11, 14,
255
+ 15, 16, 17, 17, 78, 17, 17, 9,
256
+ 67, 2, 3, 4, 5, 6, 7, 7,
257
+ 67, 7, 7, 1, 67, 2, 3, 2,
258
+ 94, 94, 67, 94, 1, 67, 2, 3,
259
+ 2, 95, 96, 95, 67, 95, 1, 67,
260
+ 2, 3, 97, 98, 98, 98, 98, 67,
261
+ 98, 98, 1, 67, 2, 3, 23, 24,
262
+ 24, 24, 24, 25, 26, 67, 24, 24,
263
+ 1, 67, 2, 3, 23, 24, 24, 24,
264
+ 24, 99, 25, 26, 67, 24, 24, 1,
265
+ 67, 2, 3, 23, 24, 24, 24, 24,
266
+ 100, 25, 26, 67, 24, 24, 1, 67,
267
+ 2, 3, 23, 24, 24, 101, 24, 24,
268
+ 25, 26, 67, 24, 24, 1, 67, 2,
269
+ 3, 2, 102, 102, 102, 102, 102, 67,
270
+ 102, 102, 102, 102, 1, 67, 2, 3,
271
+ 2, 102, 24, 102, 102, 102, 102, 67,
272
+ 102, 102, 102, 102, 1, 103, 104, 105,
273
+ 28, 106, 42, 43, 42, 106, 41, 106,
274
+ 42, 43, 107, 108, 109, 109, 106, 109,
275
+ 109, 41, 106, 42, 43, 42, 110, 110,
276
+ 106, 110, 110, 41, 106, 42, 43, 42,
277
+ 111, 112, 112, 106, 112, 112, 41, 106,
278
+ 42, 43, 42, 37, 38, 39, 106, 36,
279
+ 106, 42, 43, 42, 113, 113, 106, 113,
280
+ 41, 106, 42, 43, 42, 114, 115, 114,
281
+ 106, 114, 41, 106, 42, 43, 116, 117,
282
+ 117, 117, 117, 106, 117, 117, 41, 106,
283
+ 42, 43, 48, 49, 49, 49, 49, 50,
284
+ 51, 106, 49, 49, 41, 106, 42, 43,
285
+ 48, 49, 49, 49, 49, 118, 50, 51,
286
+ 106, 49, 49, 41, 106, 42, 43, 48,
287
+ 49, 49, 49, 49, 119, 50, 51, 106,
288
+ 49, 49, 41, 106, 42, 43, 48, 49,
289
+ 49, 120, 49, 49, 50, 51, 106, 49,
290
+ 49, 41, 106, 42, 43, 42, 121, 121,
291
+ 121, 121, 121, 106, 121, 121, 121, 121,
292
+ 41, 106, 42, 43, 42, 121, 49, 121,
293
+ 121, 121, 121, 106, 121, 121, 121, 121,
294
+ 41, 106, 42, 43, 44, 45, 46, 47,
295
+ 47, 106, 47, 47, 41, 0
266
296
  };
267
297
 
268
298
  static const char _redcloth_attributes_trans_targs[] = {
269
- 60, 61, 1, 2, 60, 3, 4, 6,
270
- 5, 5, 6, 64, 9, 65, 70, 71,
271
- 73, 60, 64, 7, 8, 66, 10, 11,
272
- 67, 69, 68, 12, 13, 69, 14, 15,
273
- 6, 72, 16, 17, 69, 18, 6, 74,
274
- 19, 20, 69, 63, 21, 22, 75, 77,
275
- 76, 23, 24, 77, 78, 25, 26, 78,
276
- 27, 80, 28, 29, 81, 83, 82, 30,
277
- 31, 83, 32, 86, 33, 34, 83, 88,
278
- 35, 36, 83, 90, 37, 38, 77, 92,
279
- 39, 40, 77, 42, 43, 45, 93, 42,
280
- 43, 45, 44, 44, 45, 94, 95, 100,
281
- 102, 93, 94, 46, 47, 96, 48, 49,
282
- 97, 99, 98, 50, 51, 99, 52, 45,
283
- 101, 53, 54, 99, 55, 45, 103, 56,
284
- 57, 99, 52, 0, 55, 61, 62, 89,
285
- 91, 60, 63, 3, 21, 22, 75, 77,
286
- 3, 60, 66, 3, 10, 11, 67, 69,
287
- 68, 12, 13, 72, 15, 16, 17, 74,
288
- 18, 19, 20, 76, 5, 23, 24, 5,
289
- 79, 84, 85, 87, 60, 80, 28, 29,
290
- 81, 83, 82, 30, 31, 86, 15, 33,
291
- 34, 15, 88, 18, 35, 36, 18, 90,
292
- 37, 38, 92, 39, 40, 41, 58, 59,
293
- 93, 96, 48, 49, 97, 99, 98, 50,
294
- 51, 101, 53, 54, 103, 56, 57
299
+ 29, 30, 1, 2, 3, 32, 34, 51,
300
+ 29, 35, 4, 5, 35, 6, 7, 37,
301
+ 39, 50, 8, 9, 44, 45, 39, 10,
302
+ 55, 56, 34, 12, 0, 13, 12, 13,
303
+ 15, 14, 15, 14, 62, 63, 67, 69,
304
+ 61, 62, 16, 17, 18, 64, 66, 76,
305
+ 19, 70, 71, 66, 21, 21, 15, 23,
306
+ 23, 24, 15, 25, 26, 27, 28, 30,
307
+ 31, 52, 54, 29, 3, 32, 51, 33,
308
+ 34, 33, 36, 40, 41, 43, 29, 7,
309
+ 37, 50, 38, 39, 38, 42, 42, 39,
310
+ 9, 44, 46, 47, 48, 49, 53, 53,
311
+ 34, 10, 55, 57, 58, 59, 60, 11,
312
+ 20, 22, 61, 18, 64, 76, 65, 66,
313
+ 65, 68, 68, 66, 19, 70, 72, 73,
314
+ 74, 75
295
315
  };
296
316
 
297
317
  static const char _redcloth_attributes_trans_actions[] = {
298
- 27, 19, 0, 0, 29, 0, 5, 5,
299
- 1, 0, 7, 46, 0, 81, 46, 81,
300
- 81, 25, 19, 0, 0, 67, 0, 0,
301
- 97, 52, 67, 0, 0, 55, 0, 0,
302
- 9, 67, 0, 0, 58, 0, 11, 67,
303
- 0, 0, 61, 70, 0, 0, 101, 52,
304
- 70, 0, 0, 55, 19, 0, 0, 46,
305
- 0, 67, 0, 0, 97, 52, 67, 0,
306
- 0, 55, 0, 67, 0, 0, 58, 67,
307
- 0, 0, 61, 70, 0, 0, 58, 70,
308
- 0, 0, 61, 1, 0, 0, 23, 0,
309
- 5, 5, 1, 0, 7, 46, 77, 77,
310
- 77, 21, 19, 0, 0, 64, 0, 0,
311
- 93, 52, 64, 0, 0, 55, 0, 9,
312
- 64, 0, 0, 58, 0, 11, 64, 0,
313
- 0, 61, 1, 0, 1, 49, 89, 89,
314
- 89, 40, 85, 31, 1, 1, 70, 19,
315
- 13, 37, 81, 1, 1, 1, 67, 19,
316
- 81, 1, 1, 81, 1, 1, 1, 81,
317
- 1, 1, 1, 85, 31, 1, 1, 13,
318
- 81, 46, 81, 81, 73, 81, 1, 1,
319
- 67, 19, 81, 1, 1, 81, 31, 1,
320
- 1, 13, 81, 31, 1, 1, 13, 85,
321
- 1, 1, 85, 1, 1, 3, 3, 3,
322
- 34, 77, 1, 1, 64, 19, 77, 1,
323
- 1, 77, 1, 1, 77, 1, 1
318
+ 23, 17, 0, 0, 0, 40, 40, 17,
319
+ 21, 17, 0, 0, 31, 0, 0, 40,
320
+ 40, 17, 0, 0, 17, 17, 49, 0,
321
+ 17, 17, 49, 1, 0, 0, 0, 5,
322
+ 5, 1, 7, 0, 31, 31, 31, 31,
323
+ 19, 17, 0, 0, 0, 40, 40, 17,
324
+ 0, 17, 17, 49, 1, 0, 9, 1,
325
+ 0, 0, 11, 0, 0, 0, 0, 34,
326
+ 34, 34, 34, 28, 1, 17, 37, 37,
327
+ 43, 17, 31, 31, 31, 31, 52, 1,
328
+ 17, 37, 37, 43, 17, 37, 17, 46,
329
+ 1, 37, 17, 17, 17, 17, 37, 17,
330
+ 46, 1, 37, 17, 17, 17, 17, 3,
331
+ 3, 3, 25, 1, 17, 37, 37, 43,
332
+ 17, 37, 17, 46, 1, 37, 17, 17,
333
+ 17, 17
324
334
  };
325
335
 
326
336
  static const char _redcloth_attributes_to_state_actions[] = {
327
337
  0, 0, 0, 0, 0, 0, 0, 0,
328
338
  0, 0, 0, 0, 0, 0, 0, 0,
329
339
  0, 0, 0, 0, 0, 0, 0, 0,
340
+ 0, 0, 0, 0, 0, 13, 0, 0,
330
341
  0, 0, 0, 0, 0, 0, 0, 0,
331
342
  0, 0, 0, 0, 0, 0, 0, 0,
332
343
  0, 0, 0, 0, 0, 0, 0, 0,
344
+ 0, 0, 0, 0, 0, 13, 0, 0,
333
345
  0, 0, 0, 0, 0, 0, 0, 0,
334
- 0, 0, 0, 0, 15, 0, 0, 0,
335
- 0, 0, 0, 0, 0, 0, 0, 0,
336
- 0, 0, 0, 0, 0, 0, 0, 0,
337
- 0, 0, 0, 0, 0, 0, 0, 0,
338
- 0, 0, 0, 0, 0, 43, 0, 0,
339
- 0, 0, 0, 0, 0, 0, 0, 0
346
+ 0, 0, 0, 0, 0
340
347
  };
341
348
 
342
349
  static const char _redcloth_attributes_from_state_actions[] = {
343
350
  0, 0, 0, 0, 0, 0, 0, 0,
344
351
  0, 0, 0, 0, 0, 0, 0, 0,
345
352
  0, 0, 0, 0, 0, 0, 0, 0,
353
+ 0, 0, 0, 0, 0, 15, 0, 0,
346
354
  0, 0, 0, 0, 0, 0, 0, 0,
347
355
  0, 0, 0, 0, 0, 0, 0, 0,
348
356
  0, 0, 0, 0, 0, 0, 0, 0,
357
+ 0, 0, 0, 0, 0, 15, 0, 0,
349
358
  0, 0, 0, 0, 0, 0, 0, 0,
350
- 0, 0, 0, 0, 17, 0, 0, 0,
351
- 0, 0, 0, 0, 0, 0, 0, 0,
352
- 0, 0, 0, 0, 0, 0, 0, 0,
353
- 0, 0, 0, 0, 0, 0, 0, 0,
354
- 0, 0, 0, 0, 0, 17, 0, 0,
355
- 0, 0, 0, 0, 0, 0, 0, 0
359
+ 0, 0, 0, 0, 0
356
360
  };
357
361
 
358
362
  static const short _redcloth_attributes_eof_trans[] = {
359
- 0, 1, 1, 5, 5, 5, 5, 18,
360
- 18, 5, 18, 18, 18, 18, 18, 5,
361
- 18, 18, 5, 18, 18, 1, 1, 1,
362
- 1, 18, 18, 1, 18, 18, 18, 18,
363
- 18, 18, 18, 18, 18, 1, 1, 1,
364
- 1, 0, 87, 87, 87, 87, 98, 98,
365
- 98, 98, 98, 98, 87, 98, 98, 87,
366
- 98, 98, 0, 0, 0, 130, 130, 130,
367
- 138, 138, 138, 138, 138, 138, 138, 138,
368
- 138, 138, 138, 130, 130, 130, 165, 165,
369
- 165, 165, 165, 165, 165, 165, 165, 165,
370
- 165, 130, 130, 130, 130, 0, 193, 193,
371
- 193, 193, 193, 193, 193, 193, 193, 193
363
+ 0, 1, 1, 1, 9, 9, 1, 9,
364
+ 9, 9, 1, 0, 0, 0, 0, 0,
365
+ 41, 41, 41, 41, 0, 0, 0, 0,
366
+ 0, 0, 0, 0, 0, 0, 68, 68,
367
+ 68, 68, 68, 79, 79, 79, 79, 79,
368
+ 79, 79, 79, 79, 79, 79, 79, 79,
369
+ 79, 79, 79, 68, 68, 68, 68, 68,
370
+ 68, 68, 68, 68, 68, 0, 107, 107,
371
+ 107, 107, 107, 107, 107, 107, 107, 107,
372
+ 107, 107, 107, 107, 107
372
373
  };
373
374
 
374
- static const int redcloth_attributes_start = 60;
375
+ static const int redcloth_attributes_start = 29;
375
376
  static const int redcloth_attributes_error = 0;
376
377
 
377
- static const int redcloth_attributes_en_inline = 93;
378
- static const int redcloth_attributes_en_link_says = 60;
378
+ static const int redcloth_attributes_en_inline = 61;
379
+ static const int redcloth_attributes_en_link_says = 29;
379
380
 
380
381
  #line 18 "ext/redcloth_scan/redcloth_attributes.c.rl"
381
382
 
@@ -387,23 +388,24 @@ redcloth_attribute_parser(machine, self, p, pe)
387
388
  char *p, *pe;
388
389
  {
389
390
  int cs, act;
390
- char *ts = 0, *te = 0, *reg = 0, *bck = NULL, *eof = NULL;
391
+ char *ts = 0, *te = 0, *reg = 0, *bck = NULL, *attr_reg = NULL, *eof = NULL;
391
392
  VALUE regs = rb_hash_new();
393
+ VALUE attr_regs = rb_hash_new();
392
394
 
393
395
 
394
- #line 395 "ext/redcloth_scan/redcloth_attributes.c"
396
+ #line 397 "ext/redcloth_scan/redcloth_attributes.c"
395
397
  {
396
398
  cs = redcloth_attributes_start;
397
399
  ts = 0;
398
400
  te = 0;
399
401
  act = 0;
400
402
  }
401
- #line 31 "ext/redcloth_scan/redcloth_attributes.c.rl"
403
+ #line 32 "ext/redcloth_scan/redcloth_attributes.c.rl"
402
404
 
403
405
  cs = machine;
404
406
 
405
407
 
406
- #line 407 "ext/redcloth_scan/redcloth_attributes.c"
408
+ #line 409 "ext/redcloth_scan/redcloth_attributes.c"
407
409
  {
408
410
  int _klen;
409
411
  unsigned int _trans;
@@ -424,7 +426,7 @@ _resume:
424
426
  #line 1 "ext/redcloth_scan/redcloth_attributes.c.rl"
425
427
  {ts = p;}
426
428
  break;
427
- #line 428 "ext/redcloth_scan/redcloth_attributes.c"
429
+ #line 430 "ext/redcloth_scan/redcloth_attributes.c"
428
430
  }
429
431
  }
430
432
 
@@ -492,42 +494,46 @@ _eof_trans:
492
494
  {
493
495
  case 0:
494
496
  #line 5 "ext/redcloth_scan/redcloth_attributes.c.rl"
495
- { reg = p; }
497
+ { MARK(); }
496
498
  break;
497
499
  case 1:
498
500
  #line 6 "ext/redcloth_scan/redcloth_attributes.c.rl"
499
- { bck = p; }
501
+ { MARK_B(); }
500
502
  break;
501
503
  case 2:
502
504
  #line 7 "ext/redcloth_scan/redcloth_attributes.c.rl"
503
- { STORE("text"); }
505
+ { MARK_ATTR(); }
504
506
  break;
505
507
  case 3:
506
- #line 8 "ext/redcloth_scan/redcloth_attributes.c.rl"
507
- { CLEAR_REGS(); RESET_REG(); }
508
+ #line 9 "ext/redcloth_scan/redcloth_attributes.c.rl"
509
+ { STORE("text"); }
508
510
  break;
509
511
  case 4:
510
512
  #line 10 "ext/redcloth_scan/redcloth_attributes.c.rl"
511
- { STORE("class_buf"); }
513
+ { CLEAR_REGS(); RESET_REG(); }
512
514
  break;
513
515
  case 5:
514
- #line 10 "ext/redcloth_scan/redcloth_attributes.c.rl"
515
- {STORE("id_buf");}
516
+ #line 35 "ext/redcloth_scan/redcloth_attributes.c.rl"
517
+ { STORE_ATTR("class"); }
516
518
  break;
517
519
  case 6:
518
- #line 11 "ext/redcloth_scan/redcloth_attributes.c.rl"
519
- { STORE("lang_buf"); }
520
+ #line 36 "ext/redcloth_scan/redcloth_attributes.c.rl"
521
+ { STORE_ATTR("id"); }
520
522
  break;
521
523
  case 7:
522
- #line 12 "ext/redcloth_scan/redcloth_attributes.c.rl"
523
- { STORE("style_buf"); }
524
+ #line 38 "ext/redcloth_scan/redcloth_attributes.c.rl"
525
+ { STORE_ATTR("lang"); }
524
526
  break;
525
527
  case 8:
526
- #line 23 "ext/redcloth_scan/redcloth_attributes.c.rl"
527
- { STORE("name"); }
528
+ #line 39 "ext/redcloth_scan/redcloth_attributes.c.rl"
529
+ { STORE_ATTR("style"); }
528
530
  break;
529
531
  case 9:
530
- #line 24 "ext/redcloth_scan/redcloth_attributes.c.rl"
532
+ #line 20 "ext/redcloth_scan/redcloth_attributes.c.rl"
533
+ { STORE("name"); }
534
+ break;
535
+ case 10:
536
+ #line 21 "ext/redcloth_scan/redcloth_attributes.c.rl"
531
537
  { STORE_B("name_without_attributes"); }
532
538
  break;
533
539
  case 13:
@@ -535,66 +541,30 @@ _eof_trans:
535
541
  {te = p+1;}
536
542
  break;
537
543
  case 14:
538
- #line 19 "ext/redcloth_scan/redcloth_attributes.c.rl"
539
- {act = 1;}
540
- break;
541
- case 15:
542
- #line 19 "ext/redcloth_scan/redcloth_attributes.c.rl"
544
+ #line 16 "ext/redcloth_scan/redcloth_attributes.c.rl"
543
545
  {te = p;p--;{ SET_ATTRIBUTES(); }}
544
546
  break;
545
- case 16:
546
- #line 19 "ext/redcloth_scan/redcloth_attributes.c.rl"
547
+ case 15:
548
+ #line 16 "ext/redcloth_scan/redcloth_attributes.c.rl"
547
549
  {{p = ((te))-1;}{ SET_ATTRIBUTES(); }}
548
550
  break;
549
- case 17:
550
- #line 1 "ext/redcloth_scan/redcloth_attributes.c.rl"
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.c.rl"
563
- {act = 2;}
564
- break;
565
- case 19:
566
- #line 29 "ext/redcloth_scan/redcloth_attributes.c.rl"
567
- {act = 3;}
568
- break;
569
- case 20:
570
- #line 28 "ext/redcloth_scan/redcloth_attributes.c.rl"
551
+ case 16:
552
+ #line 25 "ext/redcloth_scan/redcloth_attributes.c.rl"
571
553
  {te = p;p--;{ SET_ATTRIBUTES(); }}
572
554
  break;
573
- case 21:
574
- #line 29 "ext/redcloth_scan/redcloth_attributes.c.rl"
555
+ case 17:
556
+ #line 26 "ext/redcloth_scan/redcloth_attributes.c.rl"
575
557
  {te = p;p--;{ SET_ATTRIBUTE("name_without_attributes", "name"); }}
576
558
  break;
577
- case 22:
578
- #line 28 "ext/redcloth_scan/redcloth_attributes.c.rl"
559
+ case 18:
560
+ #line 25 "ext/redcloth_scan/redcloth_attributes.c.rl"
579
561
  {{p = ((te))-1;}{ SET_ATTRIBUTES(); }}
580
562
  break;
581
- case 23:
582
- #line 29 "ext/redcloth_scan/redcloth_attributes.c.rl"
563
+ case 19:
564
+ #line 26 "ext/redcloth_scan/redcloth_attributes.c.rl"
583
565
  {{p = ((te))-1;}{ SET_ATTRIBUTE("name_without_attributes", "name"); }}
584
566
  break;
585
- case 24:
586
- #line 1 "ext/redcloth_scan/redcloth_attributes.c.rl"
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"
567
+ #line 568 "ext/redcloth_scan/redcloth_attributes.c"
598
568
  }
599
569
  }
600
570
 
@@ -603,15 +573,11 @@ _again:
603
573
  _nacts = (unsigned int) *_acts++;
604
574
  while ( _nacts-- > 0 ) {
605
575
  switch ( *_acts++ ) {
606
- case 10:
607
- #line 1 "ext/redcloth_scan/redcloth_attributes.c.rl"
608
- {ts = 0;}
609
- break;
610
576
  case 11:
611
577
  #line 1 "ext/redcloth_scan/redcloth_attributes.c.rl"
612
- {act = 0;}
578
+ {ts = 0;}
613
579
  break;
614
- #line 615 "ext/redcloth_scan/redcloth_attributes.c"
580
+ #line 581 "ext/redcloth_scan/redcloth_attributes.c"
615
581
  }
616
582
  }
617
583
 
@@ -630,7 +596,7 @@ _again:
630
596
 
631
597
  _out: {}
632
598
  }
633
- #line 35 "ext/redcloth_scan/redcloth_attributes.c.rl"
599
+ #line 36 "ext/redcloth_scan/redcloth_attributes.c.rl"
634
600
 
635
601
  return regs;
636
602
  }