ex_aequo_color 0.1.0 → 0.2.0

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.
@@ -1,513 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- ANSI_COLORS = {
4
- aqua: [0, 255, 255],
5
- aquamarine1: [95, 255, 215],
6
- aquamarine3: [95, 215, 175],
7
- azure1: [240, 255, 255],
8
- bg_black: 40,
9
- bg_red: 41,
10
- bg_green: 42,
11
- bg_yellow: 43,
12
- bg_blue: 44,
13
- bg_magenta: 45,
14
- bg_cyan: 46,
15
- bg_white: 47,
16
- black: 30,
17
- blue1: [0, 0, 255],
18
- blue3: [0, 0, 175],
19
- blue: 34,
20
- blue_violet: [95, 0, 255],
21
- bold: 1,
22
- cadet_blue: [95, 175, 135],
23
- chartreuse1: [135, 255, 0],
24
- chartreuse2: [95, 255, 0],
25
- chartreuse3: [95, 175, 0],
26
- chartreuse4: [95, 135, 0],
27
- color0: [:color, 0],
28
- color1: [:color, 1],
29
- color2: [:color, 2],
30
- color3: [:color, 3],
31
- color4: [:color, 4],
32
- color5: [:color, 5],
33
- color6: [:color, 6],
34
- color7: [:color, 7],
35
- color8: [:color, 8],
36
- color9: [:color, 9],
37
- color10: [:color, 10],
38
- color11: [:color, 11],
39
- color12: [:color, 12],
40
- color13: [:color, 13],
41
- color14: [:color, 14],
42
- color15: [:color, 15],
43
- color16: [:color, 16],
44
- color17: [:color, 17],
45
- color18: [:color, 18],
46
- color19: [:color, 19],
47
- color20: [:color, 20],
48
- color21: [:color, 21],
49
- color22: [:color, 22],
50
- color23: [:color, 23],
51
- color24: [:color, 24],
52
- color25: [:color, 25],
53
- color26: [:color, 26],
54
- color27: [:color, 27],
55
- color28: [:color, 28],
56
- color29: [:color, 29],
57
- color30: [:color, 30],
58
- color31: [:color, 31],
59
- color32: [:color, 32],
60
- color33: [:color, 33],
61
- color34: [:color, 34],
62
- color35: [:color, 35],
63
- color36: [:color, 36],
64
- color37: [:color, 37],
65
- color38: [:color, 38],
66
- color39: [:color, 39],
67
- color40: [:color, 40],
68
- color41: [:color, 41],
69
- color42: [:color, 42],
70
- color43: [:color, 43],
71
- color44: [:color, 44],
72
- color45: [:color, 45],
73
- color46: [:color, 46],
74
- color47: [:color, 47],
75
- color48: [:color, 48],
76
- color49: [:color, 49],
77
- color50: [:color, 50],
78
- color51: [:color, 51],
79
- color52: [:color, 52],
80
- color53: [:color, 53],
81
- color54: [:color, 54],
82
- color55: [:color, 55],
83
- color56: [:color, 56],
84
- color57: [:color, 57],
85
- color58: [:color, 58],
86
- color59: [:color, 59],
87
- color60: [:color, 60],
88
- color61: [:color, 61],
89
- color62: [:color, 62],
90
- color63: [:color, 63],
91
- color64: [:color, 64],
92
- color65: [:color, 65],
93
- color66: [:color, 66],
94
- color67: [:color, 67],
95
- color68: [:color, 68],
96
- color69: [:color, 69],
97
- color70: [:color, 70],
98
- color71: [:color, 71],
99
- color72: [:color, 72],
100
- color73: [:color, 73],
101
- color74: [:color, 74],
102
- color75: [:color, 75],
103
- color76: [:color, 76],
104
- color77: [:color, 77],
105
- color78: [:color, 78],
106
- color79: [:color, 79],
107
- color80: [:color, 80],
108
- color81: [:color, 81],
109
- color82: [:color, 82],
110
- color83: [:color, 83],
111
- color84: [:color, 84],
112
- color85: [:color, 85],
113
- color86: [:color, 86],
114
- color87: [:color, 87],
115
- color88: [:color, 88],
116
- color89: [:color, 89],
117
- color90: [:color, 90],
118
- color91: [:color, 91],
119
- color92: [:color, 92],
120
- color93: [:color, 93],
121
- color94: [:color, 94],
122
- color95: [:color, 95],
123
- color96: [:color, 96],
124
- color97: [:color, 97],
125
- color98: [:color, 98],
126
- color99: [:color, 99],
127
- color100: [:color, 100],
128
- color101: [:color, 101],
129
- color102: [:color, 102],
130
- color103: [:color, 103],
131
- color104: [:color, 104],
132
- color105: [:color, 105],
133
- color106: [:color, 106],
134
- color107: [:color, 107],
135
- color108: [:color, 108],
136
- color109: [:color, 109],
137
- color110: [:color, 110],
138
- color111: [:color, 111],
139
- color112: [:color, 112],
140
- color113: [:color, 113],
141
- color114: [:color, 114],
142
- color115: [:color, 115],
143
- color116: [:color, 116],
144
- color117: [:color, 117],
145
- color118: [:color, 118],
146
- color119: [:color, 119],
147
- color120: [:color, 120],
148
- color121: [:color, 121],
149
- color122: [:color, 122],
150
- color123: [:color, 123],
151
- color124: [:color, 124],
152
- color125: [:color, 125],
153
- color126: [:color, 126],
154
- color127: [:color, 127],
155
- color128: [:color, 128],
156
- color129: [:color, 129],
157
- color130: [:color, 130],
158
- color131: [:color, 131],
159
- color132: [:color, 132],
160
- color133: [:color, 133],
161
- color134: [:color, 134],
162
- color135: [:color, 135],
163
- color136: [:color, 136],
164
- color137: [:color, 137],
165
- color138: [:color, 138],
166
- color139: [:color, 139],
167
- color140: [:color, 140],
168
- color141: [:color, 141],
169
- color142: [:color, 142],
170
- color143: [:color, 143],
171
- color144: [:color, 144],
172
- color145: [:color, 145],
173
- color146: [:color, 146],
174
- color147: [:color, 147],
175
- color148: [:color, 148],
176
- color149: [:color, 149],
177
- color150: [:color, 150],
178
- color151: [:color, 151],
179
- color152: [:color, 152],
180
- color153: [:color, 153],
181
- color154: [:color, 154],
182
- color155: [:color, 155],
183
- color156: [:color, 156],
184
- color157: [:color, 157],
185
- color158: [:color, 158],
186
- color159: [:color, 159],
187
- color160: [:color, 160],
188
- color161: [:color, 161],
189
- color162: [:color, 162],
190
- color163: [:color, 163],
191
- color164: [:color, 164],
192
- color165: [:color, 165],
193
- color166: [:color, 166],
194
- color167: [:color, 167],
195
- color168: [:color, 168],
196
- color169: [:color, 169],
197
- color170: [:color, 170],
198
- color171: [:color, 171],
199
- color172: [:color, 172],
200
- color173: [:color, 173],
201
- color174: [:color, 174],
202
- color175: [:color, 175],
203
- color176: [:color, 176],
204
- color177: [:color, 177],
205
- color178: [:color, 178],
206
- color179: [:color, 179],
207
- color180: [:color, 180],
208
- color181: [:color, 181],
209
- color182: [:color, 182],
210
- color183: [:color, 183],
211
- color184: [:color, 184],
212
- color185: [:color, 185],
213
- color186: [:color, 186],
214
- color187: [:color, 187],
215
- color188: [:color, 188],
216
- color189: [:color, 189],
217
- color190: [:color, 190],
218
- color191: [:color, 191],
219
- color192: [:color, 192],
220
- color193: [:color, 193],
221
- color194: [:color, 194],
222
- color195: [:color, 195],
223
- color196: [:color, 196],
224
- color197: [:color, 197],
225
- color198: [:color, 198],
226
- color199: [:color, 199],
227
- color200: [:color, 200],
228
- color201: [:color, 201],
229
- color202: [:color, 202],
230
- color203: [:color, 203],
231
- color204: [:color, 204],
232
- color205: [:color, 205],
233
- color206: [:color, 206],
234
- color207: [:color, 207],
235
- color208: [:color, 208],
236
- color209: [:color, 209],
237
- color210: [:color, 210],
238
- color211: [:color, 211],
239
- color212: [:color, 212],
240
- color213: [:color, 213],
241
- color214: [:color, 214],
242
- color215: [:color, 215],
243
- color216: [:color, 216],
244
- color217: [:color, 217],
245
- color218: [:color, 218],
246
- color219: [:color, 219],
247
- color220: [:color, 220],
248
- color221: [:color, 221],
249
- color222: [:color, 222],
250
- color223: [:color, 223],
251
- color224: [:color, 224],
252
- color225: [:color, 225],
253
- color226: [:color, 226],
254
- color227: [:color, 227],
255
- color228: [:color, 228],
256
- color229: [:color, 229],
257
- color230: [:color, 230],
258
- color231: [:color, 231],
259
- color232: [:color, 232],
260
- color233: [:color, 233],
261
- color234: [:color, 234],
262
- color235: [:color, 235],
263
- color236: [:color, 236],
264
- color237: [:color, 237],
265
- color238: [:color, 238],
266
- color239: [:color, 239],
267
- color240: [:color, 240],
268
- color241: [:color, 241],
269
- color242: [:color, 242],
270
- color243: [:color, 243],
271
- color244: [:color, 244],
272
- color245: [:color, 245],
273
- color246: [:color, 246],
274
- color247: [:color, 247],
275
- color248: [:color, 248],
276
- color249: [:color, 249],
277
- color250: [:color, 250],
278
- color251: [:color, 251],
279
- color252: [:color, 252],
280
- color253: [:color, 253],
281
- color254: [:color, 254],
282
- color255: [:color, 255],
283
- cornflower_blue: [95, 135, 255],
284
- cornsilk1: [255, 255, 215],
285
- cyan1: [0, 255, 255],
286
- cyan2: [0, 255, 215],
287
- cyan3: [0, 215, 175],
288
- cyan: 36,
289
- dark_blue: [0, 0, 135],
290
- dark_cyan: [0, 175, 135],
291
- dark_goldenrod: [175, 135, 0],
292
- dark_green: [0, 95, 0],
293
- dark_khaki: [175, 175, 95],
294
- dark_magenta: [135, 0, 135],
295
- dark_olive_green1: [215, 255, 95],
296
- dark_olive_green2: [175, 255, 95],
297
- dark_olive_green3: [135, 175, 95],
298
- dark_orange3: [175, 95, 0],
299
- dark_orange: [255, 135, 0],
300
- dark_red: [95, 0, 0],
301
- dark_sea_green1: [175, 255, 215],
302
- dark_sea_green2: [175, 215, 175],
303
- dark_sea_green3: [135, 215, 175],
304
- dark_sea_green4: [95, 135, 95],
305
- dark_sea_green: [135, 175, 135],
306
- dark_slate_gray1: [135, 255, 255],
307
- dark_slate_gray2: [95, 255, 255],
308
- dark_slate_gray3: [135, 215, 215],
309
- dark_turquoise: [0, 215, 215],
310
- dark_violet: [135, 0, 215],
311
- deep_pink1: [255, 0, 135],
312
- deep_pink2: [255, 0, 95],
313
- deep_pink3: [215, 0, 95],
314
- deep_pink4: [95, 0, 95],
315
- deep_sky_blue1: [0, 175, 255],
316
- deep_sky_blue2: [0, 175, 215],
317
- deep_sky_blue3: [0, 135, 175],
318
- deep_sky_blue4: [0, 95, 95],
319
- dim: 2,
320
- dodger_blue1: [0, 135, 255],
321
- dodger_blue2: [0, 95, 255],
322
- dodger_blue3: [0, 95, 215],
323
- fuchsia: [255, 0, 255],
324
- gold1: [255, 215, 0],
325
- gold3: [175, 175, 0],
326
- green1: [0, 255, 0],
327
- green3: [0, 175, 0],
328
- green4: [0, 135, 0],
329
- green: 32,
330
- green_yellow: [175, 255, 0],
331
- grey0: [0, 0, 0],
332
- grey100: [255, 255, 255],
333
- grey11: [28, 28, 28],
334
- grey15: [38, 38, 38],
335
- grey19: [48, 48, 48],
336
- grey23: [58, 58, 58],
337
- grey27: [68, 68, 68],
338
- grey30: [78, 78, 78],
339
- grey35: [88, 88, 88],
340
- grey37: [95, 95, 95],
341
- grey39: [98, 98, 98],
342
- grey3: [8, 8, 8],
343
- grey42: [108, 108, 108],
344
- grey46: [118, 118, 118],
345
- grey50: [128, 128, 128],
346
- grey53: [135, 135, 135],
347
- grey54: [138, 138, 138],
348
- grey58: [148, 148, 148],
349
- grey62: [158, 158, 158],
350
- grey63: [175, 135, 175],
351
- grey66: [168, 168, 168],
352
- grey69: [175, 175, 175],
353
- grey70: [178, 178, 178],
354
- grey74: [188, 188, 188],
355
- grey78: [198, 198, 198],
356
- grey7: [18, 18, 18],
357
- grey82: [208, 208, 208],
358
- grey84: [215, 215, 215],
359
- grey85: [218, 218, 218],
360
- grey89: [228, 228, 228],
361
- grey93: [238, 238, 238],
362
- grey: [128, 128, 128],
363
- honeydew2: [215, 255, 215],
364
- hot_pink2: [215, 95, 175],
365
- hot_pink3: [175, 95, 135],
366
- hot_pink: [255, 95, 175],
367
- indian_red1: [255, 95, 95],
368
- indian_red: [175, 95, 95],
369
- italic: 3,
370
- khaki1: [255, 255, 135],
371
- khaki3: [215, 215, 95],
372
- light_coral: [255, 135, 135],
373
- light_cyan1: [215, 255, 255],
374
- light_cyan3: [175, 215, 215],
375
- light_goldenrod1: [255, 255, 95],
376
- light_goldenrod2: [215, 215, 135],
377
- light_goldenrod3: [215, 175, 95],
378
- light_green: [135, 255, 95],
379
- light_pink1: [255, 175, 175],
380
- light_pink3: [215, 135, 135],
381
- light_pink4: [135, 95, 95],
382
- light_salmon1: [255, 175, 135],
383
- light_salmon3: [175, 135, 95],
384
- light_sea_green: [0, 175, 175],
385
- light_sky_blue1: [175, 215, 255],
386
- light_sky_blue3: [135, 175, 175],
387
- light_slate_blue: [135, 135, 255],
388
- light_slate_grey: [135, 135, 175],
389
- light_steel_blue1: [215, 215, 255],
390
- light_steel_blue3: [175, 175, 215],
391
- light_steel_blue: [175, 175, 255],
392
- light_yellow3: [215, 215, 175],
393
- lime: [0, 255, 0],
394
- magenta1: [255, 0, 255],
395
- magenta2: [215, 0, 255],
396
- magenta3: [175, 0, 175],
397
- magenta: 35,
398
- maroon: [128, 0, 0],
399
- medium_orchid1: [215, 95, 255],
400
- medium_orchid3: [175, 95, 175],
401
- medium_orchid: [175, 95, 215],
402
- medium_purple1: [175, 135, 255],
403
- medium_purple2: [175, 95, 255],
404
- medium_purple3: [135, 95, 175],
405
- medium_purple4: [95, 95, 135],
406
- medium_purple: [135, 135, 215],
407
- medium_spring_green: [0, 255, 175],
408
- medium_turquoise: [95, 215, 215],
409
- medium_violet_red: [175, 0, 135],
410
- misty_rose1: [255, 215, 215],
411
- misty_rose3: [215, 175, 175],
412
- navajo_white1: [255, 215, 175],
413
- navajo_white3: [175, 175, 135],
414
- navy: [0, 0, 128],
415
- navy_blue: [0, 0, 95],
416
- olive: [128, 128, 0],
417
- orange: [255, 128, 0],
418
- orange1: [255, 175, 0],
419
- orange3: [215, 135, 0],
420
- orange4: [95, 95, 0],
421
- orange_red1: [255, 95, 0],
422
- orchid1: [255, 135, 255],
423
- orchid2: [255, 135, 215],
424
- orchid: [215, 95, 215],
425
- pale_green1: [135, 255, 175],
426
- pale_green3: [95, 215, 95],
427
- pale_turquoise1: [175, 255, 255],
428
- pale_turquoise4: [95, 135, 135],
429
- pale_violet_red1: [255, 135, 175],
430
- pink1: [255, 175, 215],
431
- pink3: [215, 135, 175],
432
- plum1: [255, 175, 255],
433
- plum2: [215, 175, 255],
434
- plum3: [215, 135, 215],
435
- plum4: [135, 95, 135],
436
- purple3: [95, 0, 215],
437
- purple4: [95, 0, 135],
438
- purple: [128, 0, 128],
439
- red1: [255, 0, 0],
440
- red3: [175, 0, 0],
441
- red: 31,
442
- reset: 0,
443
- rosy_brown: [175, 135, 135],
444
- royal_blue1: [95, 95, 255],
445
- salmon1: [255, 135, 95],
446
- sandy_brown: [255, 175, 95],
447
- sea_green1: [95, 255, 135],
448
- sea_green2: [95, 255, 95],
449
- sea_green3: [95, 215, 135],
450
- silver: [192, 192, 192],
451
- sky_blue1: [135, 215, 255],
452
- sky_blue2: [135, 175, 255],
453
- sky_blue3: [95, 175, 215],
454
- slate_blue1: [135, 95, 255],
455
- slate_blue3: [95, 95, 175],
456
- spring_green1: [0, 255, 135],
457
- spring_green2: [0, 215, 135],
458
- spring_green3: [0, 175, 95],
459
- spring_green4: [0, 135, 95],
460
- steel_blue1: [95, 175, 255],
461
- steel_blue3: [95, 135, 215],
462
- steel_blue: [95, 135, 175],
463
- tan: [215, 175, 135],
464
- teal: [0, 128, 128],
465
- thistle1: [255, 215, 255],
466
- thistle3: [215, 175, 215],
467
- turquoise2: [0, 215, 255],
468
- turquoise4: [0, 135, 135],
469
- uline: 4,
470
- underline: 4,
471
- violet: [215, 135, 255],
472
- wheat1: [255, 255, 175],
473
- wheat4: [135, 135, 95],
474
- white: 37,
475
- yellow1: [255, 255, 0],
476
- yellow2: [215, 255, 0],
477
- yellow3: [175, 215, 0],
478
- yellow4: [135, 135, 0],
479
- yellow: 33
480
- }
481
-
482
- module ExAequo
483
- module Colorizer
484
- module ColorDefinitions extend self
485
-
486
- def get(color, no_color)
487
- color = find_color(color)
488
- if color
489
- return '' if no_color
490
- color
491
- end
492
- end
493
-
494
- private
495
- def find_color(color)
496
- case ANSI_COLORS.fetch(color.to_sym, nil)
497
- in [r, g, b]
498
- # not yet implemented
499
- nil
500
- in [:color, col]
501
- # not yet implemented
502
- nil
503
- in nil
504
- nil
505
- in value
506
- "\e[#{value}m"
507
- end
508
- end
509
- end
510
-
511
- end
512
- end
513
- # SPDX-License-Identifier: AGPL-3.0-or-later
@@ -1,130 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative './colorize/color_definitions'
4
-
5
- module ExAequo
6
- module Colorizer extend self
7
-
8
- def colorize(line, reset: false)
9
- line = line.chomp
10
- no_color = ENV.fetch('NO_COLOR', false)
11
- case parse(line.grapheme_clusters, no_color)
12
- in {ok: true, result:}
13
- {ok: true, result: join_result(result, no_color:, reset:)}
14
- in error
15
- error
16
- end
17
- end
18
-
19
- def colorize_file(file, reset: false)
20
- file = File.open(file, 'r') if String === file
21
-
22
- at_exit do
23
- file.close rescue nil
24
- end
25
- colorize_lines( file.readlines(chomp: true) )
26
- end
27
-
28
- def colorize_lines(lines, reset: false)
29
- lines = lines.split(%r{\n\r?}) if String === lines
30
- lines
31
- .each_with_index do | line, idx |
32
- case colorize(line, reset:)
33
- in {ok: true, result:}
34
- puts result
35
- in {ok: false, error:}
36
- $stderr.puts("ERROR in line #{idx.succ} ** #{error} **")
37
- end
38
- end
39
- end
40
-
41
- private
42
-
43
- def app(ary, ary_or_elem)
44
- case ary_or_elem
45
- when Array
46
- [*ary, *ary_or_elem]
47
- else
48
- [*ary, ary_or_elem]
49
- end
50
- end
51
-
52
- def check_color_definition(rest, no_color,color)
53
- case ColorDefinitions.get(color, no_color)
54
- in nil
55
- {ok: false, error: "undefined color #{color}"}
56
- in color
57
- {ok: true, color:}
58
- end
59
- end
60
-
61
- def get_color!(color, no_color)
62
- case ColorDefinitions.get(color, no_color)
63
- in nil
64
- raise "This should not have happened"
65
- in color
66
- color
67
- end
68
- end
69
-
70
- def join_result(result, no_color:, reset:)
71
- app(result, reset ? get_color!(:reset, no_color) : '')
72
- .join
73
- end
74
-
75
- def parse(line, no_color, result = [])
76
- # p(line:, result:)
77
- case line
78
- in []
79
- {ok: true, result:}
80
- in ['<', '<', *rest]
81
- parse(rest, no_color, app(result, '<'))
82
- in ['$', '$', *rest]
83
- parse(rest, no_color, app(result, '$'))
84
- in ['$', *rest]
85
- parse(rest, no_color, app(result, reset(no_color)))
86
- in ['<', *rest]
87
- parse_color(rest, no_color, result)
88
- in [char, *rest]
89
- parse(rest, no_color, app(result, char))
90
- end
91
- end
92
-
93
- def parse_color(line, no_color, result, color=[])
94
- # p(line:line, result:, color:)
95
- case line
96
- in []
97
- {ok: false, error: "Incomplete Color Spec #{color.join}"}
98
- in ['>', *rest]
99
- parse_continue_after_color(rest, no_color, result, color.join)
100
- in [',', *rest]
101
- parse_next_color(rest, no_color, result, color.join)
102
- in [char, *rest]
103
- parse_color(rest, no_color, result, app(color, char))
104
- end
105
- end
106
-
107
- def parse_continue_after_color(rest, no_color, result, color)
108
- case check_color_definition(rest, no_color, color)
109
- in {ok: true, color:}
110
- parse(rest, no_color, app(result, color))
111
- in error
112
- error
113
- end
114
- end
115
-
116
- def parse_next_color(rest, no_color, result, color)
117
- case check_color_definition(rest, no_color, color)
118
- in {ok: true, color:}
119
- parse_color(rest, no_color, app(result, color))
120
- in error
121
- error
122
- end
123
- end
124
-
125
- def reset(no_color)
126
- get_color!(:reset, no_color)
127
- end
128
- end
129
- end
130
- # SPDX-License-Identifier: AGPL-3.0-or-later
data/lib/ex_aequo.rb DELETED
@@ -1,6 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module ExAequo
4
-
5
- end
6
- # SPDX-License-Identifier: AGPL-3.0-or-later