sterile 1.0.1 → 1.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/.autotest +1 -1
- data/.yaropts +1 -0
- data/Gemfile +1 -1
- data/Gemfile.lock +1 -1
- data/lib/sterile/data/codepoints_data.rb +46527 -0
- data/lib/sterile/data/html_entities_data.rb +264 -0
- data/lib/sterile/data/smart_format_rules.rb +45 -0
- data/lib/sterile/entities.rb +48 -0
- data/lib/sterile/smart_format.rb +41 -0
- data/lib/sterile/string_extensions.rb +19 -0
- data/lib/sterile/tags.rb +78 -0
- data/lib/sterile/titlecase.rb +123 -0
- data/lib/sterile/transliterate.rb +65 -0
- data/lib/sterile/utilities.rb +43 -0
- data/lib/sterile/version.rb +1 -1
- data/lib/sterile.rb +7 -314
- metadata +13 -5
- data/lib/sterile/codepoints.rb +0 -46523
- data/lib/sterile/html_entities.rb +0 -260
- data/lib/sterile/smart_format_rules.rb +0 -41
@@ -1,260 +0,0 @@
|
|
1
|
-
# encoding: UTF-8
|
2
|
-
|
3
|
-
module Sterile
|
4
|
-
# @private
|
5
|
-
HTML_ENTITIES = {
|
6
|
-
"quot" => 34,
|
7
|
-
"amp" => 38,
|
8
|
-
"apos" => 39,
|
9
|
-
"lt" => 60,
|
10
|
-
"gt" => 62,
|
11
|
-
"nbsp" => 160,
|
12
|
-
"iexcl" => 161,
|
13
|
-
"cent" => 162,
|
14
|
-
"pound" => 163,
|
15
|
-
"curren" => 164,
|
16
|
-
"yen" => 165,
|
17
|
-
"brvbar" => 166,
|
18
|
-
"sect" => 167,
|
19
|
-
"uml" => 168,
|
20
|
-
"copy" => 169,
|
21
|
-
"ordf" => 170,
|
22
|
-
"laquo" => 171,
|
23
|
-
"not" => 172,
|
24
|
-
"shy" => 173,
|
25
|
-
"reg" => 174,
|
26
|
-
"macr" => 175,
|
27
|
-
"deg" => 176,
|
28
|
-
"plusmn" => 177,
|
29
|
-
"sup2" => 178,
|
30
|
-
"sup3" => 179,
|
31
|
-
"acute" => 180,
|
32
|
-
"micro" => 181,
|
33
|
-
"para" => 182,
|
34
|
-
"middot" => 183,
|
35
|
-
"cedil" => 184,
|
36
|
-
"sup1" => 185,
|
37
|
-
"ordm" => 186,
|
38
|
-
"raquo" => 187,
|
39
|
-
"frac14" => 188,
|
40
|
-
"frac12" => 189,
|
41
|
-
"frac34" => 190,
|
42
|
-
"iquest" => 191,
|
43
|
-
"Agrave" => 192,
|
44
|
-
"Aacute" => 193,
|
45
|
-
"Acirc" => 194,
|
46
|
-
"Atilde" => 195,
|
47
|
-
"Auml" => 196,
|
48
|
-
"Aring" => 197,
|
49
|
-
"AElig" => 198,
|
50
|
-
"Ccedil" => 199,
|
51
|
-
"Egrave" => 200,
|
52
|
-
"Eacute" => 201,
|
53
|
-
"Ecirc" => 202,
|
54
|
-
"Euml" => 203,
|
55
|
-
"Igrave" => 204,
|
56
|
-
"Iacute" => 205,
|
57
|
-
"Icirc" => 206,
|
58
|
-
"Iuml" => 207,
|
59
|
-
"ETH" => 208,
|
60
|
-
"Ntilde" => 209,
|
61
|
-
"Ograve" => 210,
|
62
|
-
"Oacute" => 211,
|
63
|
-
"Ocirc" => 212,
|
64
|
-
"Otilde" => 213,
|
65
|
-
"Ouml" => 214,
|
66
|
-
"times" => 215,
|
67
|
-
"Oslash" => 216,
|
68
|
-
"Ugrave" => 217,
|
69
|
-
"Uacute" => 218,
|
70
|
-
"Ucirc" => 219,
|
71
|
-
"Uuml" => 220,
|
72
|
-
"Yacute" => 221,
|
73
|
-
"THORN" => 222,
|
74
|
-
"szlig" => 223,
|
75
|
-
"agrave" => 224,
|
76
|
-
"aacute" => 225,
|
77
|
-
"acirc" => 226,
|
78
|
-
"atilde" => 227,
|
79
|
-
"auml" => 228,
|
80
|
-
"aring" => 229,
|
81
|
-
"aelig" => 230,
|
82
|
-
"ccedil" => 231,
|
83
|
-
"egrave" => 232,
|
84
|
-
"eacute" => 233,
|
85
|
-
"ecirc" => 234,
|
86
|
-
"euml" => 235,
|
87
|
-
"igrave" => 236,
|
88
|
-
"iacute" => 237,
|
89
|
-
"icirc" => 238,
|
90
|
-
"iuml" => 239,
|
91
|
-
"eth" => 240,
|
92
|
-
"ntilde" => 241,
|
93
|
-
"ograve" => 242,
|
94
|
-
"oacute" => 243,
|
95
|
-
"ocirc" => 244,
|
96
|
-
"otilde" => 245,
|
97
|
-
"ouml" => 246,
|
98
|
-
"divide" => 247,
|
99
|
-
"oslash" => 248,
|
100
|
-
"ugrave" => 249,
|
101
|
-
"uacute" => 250,
|
102
|
-
"ucirc" => 251,
|
103
|
-
"uuml" => 252,
|
104
|
-
"yacute" => 253,
|
105
|
-
"thorn" => 254,
|
106
|
-
"yuml" => 255,
|
107
|
-
"OElig" => 338,
|
108
|
-
"oelig" => 339,
|
109
|
-
"Scaron" => 352,
|
110
|
-
"scaron" => 353,
|
111
|
-
"Yuml" => 376,
|
112
|
-
"fnof" => 402,
|
113
|
-
"circ" => 710,
|
114
|
-
"tilde" => 732,
|
115
|
-
"Alpha" => 913,
|
116
|
-
"Beta" => 914,
|
117
|
-
"Gamma" => 915,
|
118
|
-
"Delta" => 916,
|
119
|
-
"Epsilon" => 917,
|
120
|
-
"Zeta" => 918,
|
121
|
-
"Eta" => 919,
|
122
|
-
"Theta" => 920,
|
123
|
-
"Iota" => 921,
|
124
|
-
"Kappa" => 922,
|
125
|
-
"Lambda" => 923,
|
126
|
-
"Mu" => 924,
|
127
|
-
"Nu" => 925,
|
128
|
-
"Xi" => 926,
|
129
|
-
"Omicron" => 927,
|
130
|
-
"Pi" => 928,
|
131
|
-
"Rho" => 929,
|
132
|
-
"Sigma" => 931,
|
133
|
-
"Tau" => 932,
|
134
|
-
"Upsilon" => 933,
|
135
|
-
"Phi" => 934,
|
136
|
-
"Chi" => 935,
|
137
|
-
"Psi" => 936,
|
138
|
-
"Omega" => 937,
|
139
|
-
"alpha" => 945,
|
140
|
-
"beta" => 946,
|
141
|
-
"gamma" => 947,
|
142
|
-
"delta" => 948,
|
143
|
-
"epsilon" => 949,
|
144
|
-
"zeta" => 950,
|
145
|
-
"eta" => 951,
|
146
|
-
"theta" => 952,
|
147
|
-
"iota" => 953,
|
148
|
-
"kappa" => 954,
|
149
|
-
"lambda" => 955,
|
150
|
-
"mu" => 956,
|
151
|
-
"nu" => 957,
|
152
|
-
"xi" => 958,
|
153
|
-
"omicron" => 959,
|
154
|
-
"pi" => 960,
|
155
|
-
"rho" => 961,
|
156
|
-
"sigmaf" => 962,
|
157
|
-
"sigma" => 963,
|
158
|
-
"tau" => 964,
|
159
|
-
"upsilon" => 965,
|
160
|
-
"phi" => 966,
|
161
|
-
"chi" => 967,
|
162
|
-
"psi" => 968,
|
163
|
-
"omega" => 969,
|
164
|
-
"thetasym" => 977,
|
165
|
-
"upsih" => 978,
|
166
|
-
"piv" => 982,
|
167
|
-
"ensp" => 8194,
|
168
|
-
"emsp" => 8195,
|
169
|
-
"thinsp" => 8201,
|
170
|
-
"zwnj" => 8204,
|
171
|
-
"zwj" => 8205,
|
172
|
-
"lrm" => 8206,
|
173
|
-
"rlm" => 8207,
|
174
|
-
"ndash" => 8211,
|
175
|
-
"mdash" => 8212,
|
176
|
-
"lsquo" => 8216,
|
177
|
-
"rsquo" => 8217,
|
178
|
-
"sbquo" => 8218,
|
179
|
-
"ldquo" => 8220,
|
180
|
-
"rdquo" => 8221,
|
181
|
-
"bdquo" => 8222,
|
182
|
-
"dagger" => 8224,
|
183
|
-
"Dagger" => 8225,
|
184
|
-
"bull" => 8226,
|
185
|
-
"hellip" => 8230,
|
186
|
-
"permil" => 8240,
|
187
|
-
"prime" => 8242,
|
188
|
-
"Prime" => 8243,
|
189
|
-
"lsaquo" => 8249,
|
190
|
-
"rsaquo" => 8250,
|
191
|
-
"oline" => 8254,
|
192
|
-
"frasl" => 8260,
|
193
|
-
"euro" => 8364,
|
194
|
-
"image" => 8465,
|
195
|
-
"weierp" => 8472,
|
196
|
-
"real" => 8476,
|
197
|
-
"trade" => 8482,
|
198
|
-
"alefsym" => 8501,
|
199
|
-
"larr" => 8592,
|
200
|
-
"uarr" => 8593,
|
201
|
-
"rarr" => 8594,
|
202
|
-
"darr" => 8595,
|
203
|
-
"harr" => 8596,
|
204
|
-
"crarr" => 8629,
|
205
|
-
"lArr" => 8656,
|
206
|
-
"uArr" => 8657,
|
207
|
-
"rArr" => 8658,
|
208
|
-
"dArr" => 8659,
|
209
|
-
"hArr" => 8660,
|
210
|
-
"forall" => 8704,
|
211
|
-
"part" => 8706,
|
212
|
-
"exist" => 8707,
|
213
|
-
"empty" => 8709,
|
214
|
-
"nabla" => 8711,
|
215
|
-
"isin" => 8712,
|
216
|
-
"notin" => 8713,
|
217
|
-
"ni" => 8715,
|
218
|
-
"prod" => 8719,
|
219
|
-
"sum" => 8721,
|
220
|
-
"minus" => 8722,
|
221
|
-
"lowast" => 8727,
|
222
|
-
"radic" => 8730,
|
223
|
-
"prop" => 8733,
|
224
|
-
"infin" => 8734,
|
225
|
-
"ang" => 8736,
|
226
|
-
"and" => 8743,
|
227
|
-
"or" => 8744,
|
228
|
-
"cap" => 8745,
|
229
|
-
"cup" => 8746,
|
230
|
-
"int" => 8747,
|
231
|
-
"there4" => 8756,
|
232
|
-
"sim" => 8764,
|
233
|
-
"cong" => 8773,
|
234
|
-
"asymp" => 8776,
|
235
|
-
"ne" => 8800,
|
236
|
-
"equiv" => 8801,
|
237
|
-
"le" => 8804,
|
238
|
-
"ge" => 8805,
|
239
|
-
"sub" => 8834,
|
240
|
-
"sup" => 8835,
|
241
|
-
"nsub" => 8836,
|
242
|
-
"sube" => 8838,
|
243
|
-
"supe" => 8839,
|
244
|
-
"oplus" => 8853,
|
245
|
-
"otimes" => 8855,
|
246
|
-
"perp" => 8869,
|
247
|
-
"sdot" => 8901,
|
248
|
-
"lceil" => 8968,
|
249
|
-
"rceil" => 8969,
|
250
|
-
"lfloor" => 8970,
|
251
|
-
"rfloor" => 8971,
|
252
|
-
"lang" => 10216,
|
253
|
-
"rang" => 10217,
|
254
|
-
"loz" => 9674,
|
255
|
-
"spades" => 9824,
|
256
|
-
"clubs" => 9827,
|
257
|
-
"hearts" => 9829,
|
258
|
-
"diams" => 9830
|
259
|
-
}
|
260
|
-
end
|
@@ -1,41 +0,0 @@
|
|
1
|
-
# encoding: UTF-8
|
2
|
-
|
3
|
-
module Sterile
|
4
|
-
# @private
|
5
|
-
SMART_FORMAT_RULES = [
|
6
|
-
["'tain't", "’tain’t"],
|
7
|
-
["'twere", "’twere"],
|
8
|
-
["'twas", "’twas"],
|
9
|
-
["'tis", "’tis"],
|
10
|
-
["'twill", "’twill"],
|
11
|
-
["'til", "’til"],
|
12
|
-
["'bout", "’bout"],
|
13
|
-
["'nuff", "’nuff"],
|
14
|
-
["'round", "’round"],
|
15
|
-
["'cause", "’cause"],
|
16
|
-
["'cos", "’cos"],
|
17
|
-
["i'm", "i’m"],
|
18
|
-
['--"', "—”"],
|
19
|
-
["--'", "—’"],
|
20
|
-
["--", "—"],
|
21
|
-
["...", "…"],
|
22
|
-
["(tm)", "™"],
|
23
|
-
["(TM)", "™"],
|
24
|
-
["(c)", "©"],
|
25
|
-
["(r)", "®"],
|
26
|
-
["(R)", "®"],
|
27
|
-
[/s\'([^a-zA-Z0-9])/, "s’\\1"],
|
28
|
-
[/"([:;])/, "”\\1"],
|
29
|
-
[/\'s$/, "’s"],
|
30
|
-
[/\'(\d\d(?:’|\')?s)/, "’\\1"],
|
31
|
-
[/(\s|\A|"|\(|\[)\'/, "\\1‘"],
|
32
|
-
[/(\d+)"/, "\\1′"],
|
33
|
-
[/(\d+)\'/, "\\1″"],
|
34
|
-
[/(\S)\'([^\'\s])/, "\\1’\\2"],
|
35
|
-
[/(\s|\A|\(|\[)"(?!\s)/, "\\1“\\2"],
|
36
|
-
[/"(\s|\S|\Z)/, "”\\1"],
|
37
|
-
[/\'([\s.]|\Z)/, "’\\1"],
|
38
|
-
[/(\d+)x(\d+)/, "\\1×\\2"],
|
39
|
-
[/([a-z])'(t|d|s|ll|re|ve)(\b)/i, "\\1’\\2\\3"]
|
40
|
-
]
|
41
|
-
end
|