program_information 1.2.6 → 1.2.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c2617208ef9fa70961acf4153a404c136f1b4364d64a12178037819909d5c35b
4
- data.tar.gz: bbb7289a5306d918eaf85fc38de85e131527342c8ce0db83e43811f694175414
3
+ metadata.gz: 53e8bc28a72a4c97854d6ae0a999ea70bba84d0ceff8811c767afdbbdaa8db99
4
+ data.tar.gz: c4ea22bf184c5eb7a5a356a68106d49d2174a25e0fff0e687f1efb832b13c543
5
5
  SHA512:
6
- metadata.gz: fdf51dc3e64b3bbc4c32aef4ed0a4c0ed5e8c314025f288471d2df0649c106bfa8438ea91457d696c858723d94d4325419649fffaca8bfd6014ea9823e20d054
7
- data.tar.gz: cc16f4e64ea82647d50e856e5d356576bce50c4ae884d4105b7a13cfbee281b6989969e6dc6b9ee98f802c70433b5deec14fa807dcd96eb3356f2ec08fd41801
6
+ metadata.gz: 239b16d41362f0ae71f4628f150d1f549f41d5bdccb9301135ab145308d6a6ceaeccb6b9e4db36d9c86d95c2e28fdfc241cf43ba602b886518c2355284f3a33c
7
+ data.tar.gz: 97c9ac8257aaf588d403094da235de5706cc9187df0139dd88f04d0f7629f1c50535c971c02d408669a71c9dbc935033871252dab17566819dcd9097c932ef2b
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/ruby -w
2
+ # Encoding: UTF-8
3
+ # frozen_string_literal: true
4
+ # =========================================================================== #
5
+ require 'program_information'
6
+
7
+ if ARGV.first
8
+ _ = ProgramInformation::ProgramInformation.new(ARGV)
9
+ puts _.program_version?
10
+ end
@@ -43,37 +43,161 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
43
43
  require 'program_information/toplevel_methods/remove_archive_type.rb'
44
44
  require 'program_information/constants/constants.rb'
45
45
  require 'program_information/version/version.rb'
46
- require 'program_information/initialize.rb'
47
- require 'program_information/menu.rb'
48
- require 'program_information/reset.rb'
49
- require 'program_information/report.rb'
50
- require 'program_information/run.rb'
51
46
 
52
- # ========================================================================= #
47
+ # ========================================================================== #
48
+ # === initialize
49
+ #
50
+ # Specific usage example:
51
+ #
52
+ # ProgramInformation::ProgramInformation.new('util-linux-ng-2.15')
53
+ #
54
+ # ========================================================================== #
55
+ def initialize(
56
+ i = ARGV,
57
+ run_already = true,
58
+ optional_be_verbose = false
59
+ )
60
+ reset
61
+ if optional_be_verbose
62
+ set_be_verbose(optional_be_verbose)
63
+ end
64
+ set_input(i)
65
+ case run_already
66
+ # ======================================================================= #
67
+ # === :do_run_already
68
+ # ======================================================================= #
69
+ when :do_run_already
70
+ run_already = true
71
+ # ======================================================================= #
72
+ # === :dont_run_already
73
+ # ======================================================================= #
74
+ when :dont_run_already,
75
+ :do_not_run_already
76
+ run_already = false
77
+ end
78
+ run if run_already
79
+ end
80
+
81
+ # ========================================================================== #
82
+ # === reset (reset tag)
83
+ # ========================================================================== #
84
+ def reset
85
+ set_be_verbose
86
+ # ======================================================================= #
87
+ # === @short_name
88
+ # ======================================================================= #
89
+ @short_name = nil
90
+ # ======================================================================= #
91
+ # === @real_short_name
92
+ # ======================================================================= #
93
+ @real_short_name = nil
94
+ # ======================================================================= #
95
+ # === @program_version
96
+ # ======================================================================= #
97
+ @program_version = nil
98
+ set_shall_we_downcase # Should become before set_input().
99
+ # ======================================================================= #
100
+ # === @remove_plus_and_minus
101
+ # ======================================================================= #
102
+ @remove_plus_and_minus = REMOVE_PLUS_AND_MINUS
103
+ # ======================================================================= #
104
+ # === @replace_plus_with_long_name
105
+ # ======================================================================= #
106
+ @replace_plus_with_long_name = REPLACE_PLUS_WITH_LONG_NAME
107
+ # ======================================================================= #
108
+ # === @remove_plus_token
109
+ # ======================================================================= #
110
+ @remove_plus_token = REMOVE_PLUS_TOKEN
111
+ if @remove_plus_and_minus # Overrule always in this case.
112
+ @replace_plus_with_long_name = false
113
+ end
114
+ if @remove_plus_and_minus
115
+ @remove_plus_token = false
116
+ end
117
+ end
118
+
119
+ # ========================================================================== #
120
+ # === menu (menu tag)
121
+ # ========================================================================== #
122
+ def menu(i)
123
+ if i.is_a? Array
124
+ i.each {|entry| menu(entry) }
125
+ else
126
+ case i
127
+ # ===================================================================== #
128
+ # === help
129
+ # ===================================================================== #
130
+ when /-?-?help$/i
131
+ show_help
132
+ exit
133
+ end
134
+ end
135
+ end
136
+
137
+ # ========================================================================== #
138
+ # === report (debug tag, report tag)
139
+ # ========================================================================== #
140
+ def report(
141
+ be_verbose = be_verbose?
142
+ )
143
+ case be_verbose
144
+ when :do_report, :be_verbose
145
+ be_verbose = true
146
+ end
147
+ lpad = 90
148
+ rpad = 49
149
+ if be_verbose
150
+ inner_ljust = 28
151
+ # ===================================================================== #
152
+ # === real short name
153
+ # ===================================================================== #
154
+ e (NAME_OF_CLASS+(' Program real short name ').ljust(inner_ljust)+'('+
155
+ yellow?+'@real_short_name'+rev+') is: ').ljust(lpad)+
156
+ (apostroph?+real_short_name?+apostroph?).
157
+ ljust(rpad)
158
+ # ===================================================================== #
159
+ # === short name
160
+ # ===================================================================== #
161
+ e (
162
+ NAME_OF_CLASS+(' Program name').ljust(inner_ljust)+'('+
163
+ yellow?+'@short_name'+rev+' ) is: '
164
+ ).ljust(lpad)+(apostroph?+short_name?+apostroph?).
165
+ ljust(rpad)
166
+ # ===================================================================== #
167
+ # === program version
168
+ # ===================================================================== #
169
+ e (NAME_OF_CLASS+(' Program version ').ljust(inner_ljust)+'('+
170
+ yellow?+'@program_version'+rev+') is: ').ljust(lpad)+
171
+ (apostroph?+version?+apostroph?).
172
+ ljust(rpad)
173
+ end
174
+ end; alias report_result report # === report_result
175
+
176
+ # ========================================================================== #
53
177
  # === return_proper_pipe_token_to_this_input
54
- # ========================================================================= #
178
+ # ========================================================================== #
55
179
  def return_proper_pipe_token_to_this_input(i)
56
180
  ::ProgramInformation.return_proper_pipe_token_to_this_input(i)
57
181
  end
58
182
 
59
- # ========================================================================= #
183
+ # ========================================================================== #
60
184
  # === remove_file_suffix
61
185
  #
62
186
  # Delegate towards class RemoveFileSuffix. This is easier to handle
63
187
  # Archive.
64
- # ========================================================================= #
188
+ # ========================================================================== #
65
189
  def remove_file_suffix(i)
66
190
  RemoveFileSuffix[i.to_s]
67
191
  end
68
192
 
69
- # ========================================================================= #
193
+ # ========================================================================== #
70
194
  # === do_not_replace_plus
71
- # ========================================================================= #
195
+ # ========================================================================== #
72
196
  def do_not_replace_plus
73
197
  @replace_plus_with_long_name = false
74
198
  end; alias do_not_replace_anything do_not_replace_plus # === do_not_replace_anything
75
199
 
76
- # ========================================================================= #
200
+ # ========================================================================== #
77
201
  # === set_program_version
78
202
  #
79
203
  # Use this method whenever you wish to assign to the @program_version
@@ -87,7 +211,7 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
87
211
  # Until March 2015 we also replaced all '_' with '.' characters,
88
212
  # but input such as "ncbi_cxx--12_0_0.tar.gz" would break as a
89
213
  # consequence, so this was disabled again.
90
- # ========================================================================= #
214
+ # ========================================================================== #
91
215
  def set_program_version(i)
92
216
  i = remove_file_suffix(i) unless i.nil? # Disallow archive-types here.
93
217
  # ======================================================================= #
@@ -110,88 +234,88 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
110
234
  @program_version = i
111
235
  end; alias set_version set_program_version # === set_version
112
236
 
113
- # ========================================================================= #
237
+ # ========================================================================== #
114
238
  # === be_verbose?
115
- # ========================================================================= #
239
+ # ========================================================================== #
116
240
  def be_verbose?
117
241
  @be_verbose
118
242
  end
119
243
 
120
- # ========================================================================= #
244
+ # ========================================================================== #
121
245
  # === remove_plus_token?
122
- # ========================================================================= #
246
+ # ========================================================================== #
123
247
  def remove_plus_token?
124
248
  @remove_plus_token
125
249
  end
126
250
 
127
- # ========================================================================= #
251
+ # ========================================================================== #
128
252
  # === input?
129
- # ========================================================================= #
253
+ # ========================================================================== #
130
254
  def input?
131
255
  @input
132
256
  end
133
257
 
134
- # ========================================================================= #
258
+ # ========================================================================== #
135
259
  # === return_array
136
260
  #
137
261
  # This method will return a composite, 3-member Array that will hold the
138
262
  # short_name, the real_short_name, and the program_version.
139
- # ========================================================================= #
263
+ # ========================================================================== #
140
264
  def return_array
141
265
  [ short_name?, real_short_name?, program_version? ]
142
266
  end; alias array? return_array # === array?
143
267
 
144
- # ========================================================================= #
268
+ # ========================================================================== #
145
269
  # === remove_plus_and_minus?
146
- # ========================================================================= #
270
+ # ========================================================================== #
147
271
  def remove_plus_and_minus?
148
272
  @remove_plus_and_minus
149
273
  end; alias remove_plus_and_minus remove_plus_and_minus? # === remove_plus_and_minus
150
274
 
151
- # ========================================================================= #
275
+ # ========================================================================== #
152
276
  # === apostroph?
153
- # ========================================================================= #
277
+ # ========================================================================== #
154
278
  def apostroph?
155
279
  APOSTROPH
156
280
  end
157
281
 
158
- # ========================================================================= #
282
+ # ========================================================================== #
159
283
  # === replace_plus_with_long_name?
160
- # ========================================================================= #
284
+ # ========================================================================== #
161
285
  def replace_plus_with_long_name?
162
286
  @replace_plus_with_long_name
163
287
  end
164
288
 
165
- # ========================================================================= #
289
+ # ========================================================================== #
166
290
  # === short_name_and_version?
167
291
  #
168
292
  # This method returns an aggregated @short_name+'-'+@program_version
169
293
  # string.
170
- # ========================================================================= #
294
+ # ========================================================================== #
171
295
  def short_name_and_version?
172
296
  "#{short_name?}-#{program_version?}"
173
297
  end; alias short_name_and_version short_name_and_version? # === short_name_and_version
174
298
 
175
- # ========================================================================= #
299
+ # ========================================================================== #
176
300
  # === set_short_name_then_version
177
301
  #
178
302
  # This method will combine two other methods.
179
- # ========================================================================= #
303
+ # ========================================================================== #
180
304
  def set_short_name_then_version(a, b)
181
305
  set_short_name(a)
182
306
  set_program_version(b)
183
307
  end; alias set_name_then_version set_short_name_then_version # === set_name_then_version
184
308
 
185
- # ========================================================================= #
309
+ # ========================================================================== #
186
310
  # === return_real_short_name_and_version
187
311
  #
188
312
  # We delegate to the module-method here.
189
- # ========================================================================= #
313
+ # ========================================================================== #
190
314
  def return_real_short_name_and_version(i)
191
315
  ::ProgramInformation.return_real_short_name_and_version(i)
192
316
  end
193
317
 
194
- # ========================================================================= #
318
+ # ========================================================================== #
195
319
  # === return_name_and_version
196
320
  #
197
321
  # This method will return an array with two elements:
@@ -240,7 +364,7 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
240
364
  # "CrownCutlass-Alpha1.4"
241
365
  # unless we assume that alpha is a part of the version,
242
366
  # which is possibly correct.
243
- # ========================================================================= #
367
+ # ========================================================================== #
244
368
  def return_name_and_version(i = nil)
245
369
  if i
246
370
  determine_the_three_main_variables(i)
@@ -258,36 +382,44 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
258
382
  ]
259
383
  end; alias rnav return_name_and_version # === rnav
260
384
 
261
- # ========================================================================= #
385
+ # ========================================================================== #
262
386
  # === set_shall_we_downcase
263
- # ========================================================================= #
387
+ # ========================================================================== #
264
388
  def set_shall_we_downcase(
265
389
  i = SHALL_WE_DOWNCASE
266
390
  )
267
391
  @shall_we_downcase = i
268
392
  end
269
393
 
270
- # ========================================================================= #
394
+ # ========================================================================== #
271
395
  # === do_not_downcase
272
- # ========================================================================= #
396
+ # ========================================================================== #
273
397
  def do_not_downcase
274
398
  @shall_we_downcase = false
275
399
  end
276
-
277
- # ========================================================================= #
400
+
401
+ # ========================================================================== #
278
402
  # === set_be_verbose
279
403
  #
280
404
  # Set to report in a verbose way here.
281
- # ========================================================================= #
405
+ # ========================================================================== #
282
406
  def set_be_verbose(i = BE_VERBOSE)
283
407
  case i
408
+ # ======================================================================== #
409
+ # === :be_quiet
410
+ # ======================================================================== #
411
+ when :be_quiet
412
+ i = false
413
+ # ======================================================================== #
414
+ # === :be_verbose
415
+ # ======================================================================== #
284
416
  when :be_verbose
285
417
  i = true
286
418
  end
287
419
  @be_verbose = i
288
420
  end
289
421
 
290
- # ========================================================================= #
422
+ # ========================================================================== #
291
423
  # === determine_the_three_main_variables
292
424
  #
293
425
  # This method will determine the three main instance variables:
@@ -304,8 +436,10 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
304
436
  # Note that presently, set_input() will modify the given input and
305
437
  # ensure that there will be a '-' token, even in input that does
306
438
  # not have any '-' or '_' such as in 'sendmail.8.15.2'.
307
- # ========================================================================= #
308
- def determine_the_three_main_variables(i = @input)
439
+ # ========================================================================== #
440
+ def determine_the_three_main_variables(
441
+ i = input?
442
+ )
309
443
  if i
310
444
  if i.include? '|'
311
445
  splitted = i.split('|')
@@ -314,12 +448,15 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
314
448
  set_short_name(short_name)
315
449
  set_program_version(program_version)
316
450
  else
317
- opn; e "The input `#{i}` does not include a | character."
451
+ set_program_version(i) if (i =~ /\d+/)
452
+ if be_verbose?
453
+ opn; e "The input `#{i}` does not include a | character."
454
+ end
318
455
  end
319
456
  end
320
457
  end; alias determine_name_and_program_version determine_the_three_main_variables # === determine_name_and_program_version
321
458
 
322
- # ========================================================================= #
459
+ # ========================================================================== #
323
460
  # === set_real_short_name
324
461
  #
325
462
  # The instance variable @real_short_name is not allowed to include any
@@ -330,20 +467,20 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
330
467
  #
331
468
  # Note that as of September 2017, we also disallow '.' tokens, such as
332
469
  # may occur accidentally in input like "sendmail.5.8.2".
333
- # ========================================================================= #
470
+ # ========================================================================== #
334
471
  def set_real_short_name(i = @short_name)
335
472
  i = i.to_s.dup.delete('-_.').rstrip
336
473
  @real_short_name = i
337
474
  end
338
475
 
339
- # ========================================================================= #
476
+ # ========================================================================== #
340
477
  # === set_short_name
341
478
  #
342
479
  # Use this method whenever you wish to assign to the @short_name variable.
343
480
  #
344
481
  # This variable is allowed to keep '-' and '_' entries, but some
345
482
  # settings may also modify this.
346
- # ========================================================================= #
483
+ # ========================================================================== #
347
484
  def set_short_name(i)
348
485
  i = i.dup
349
486
  # ======================================================================= #
@@ -372,9 +509,9 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
372
509
  end; alias set_name set_short_name # === set_name
373
510
  alias set_program_name set_short_name # === set_program_name
374
511
 
375
- # ========================================================================= #
512
+ # ========================================================================== #
376
513
  # === remove_source_like_strings
377
- # ========================================================================= #
514
+ # ========================================================================== #
378
515
  def remove_source_like_strings(i)
379
516
  # ======================================================================= #
380
517
  # i.gsub!(/--/,'-') if i.include? '--' # Replace '--' with '-'.
@@ -386,26 +523,26 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
386
523
  return i
387
524
  end
388
525
 
389
- # ========================================================================= #
526
+ # ========================================================================== #
390
527
  # === remove_archive_type
391
- # ========================================================================= #
528
+ # ========================================================================== #
392
529
  def remove_archive_type(i)
393
530
  ::ProgramInformation.remove_archive_type(i)
394
531
  return i
395
532
  end
396
533
 
397
- # ========================================================================= #
534
+ # ========================================================================== #
398
535
  # === e
399
- # ========================================================================= #
536
+ # ========================================================================== #
400
537
  def e(i = '')
401
538
  ::ProgramInformation.e(i)
402
539
  end
403
540
 
404
- # ========================================================================= #
541
+ # ========================================================================== #
405
542
  # === real_short_name?
406
543
  #
407
544
  # Keep in mind that @real_short_name does not have any '-' tokens.
408
- # ========================================================================= #
545
+ # ========================================================================== #
409
546
  def real_short_name?
410
547
  @real_short_name
411
548
  end; alias real_name? real_short_name? # === real_name?
@@ -413,13 +550,13 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
413
550
  alias real_short_name real_short_name? # === real_short_name
414
551
  alias name_of_the_program? real_short_name? # === name_of_the_program?
415
552
 
416
- # ========================================================================= #
553
+ # ========================================================================== #
417
554
  # === short_name?
418
555
  #
419
556
  # Reader method for the @short_name instance variable.
420
557
  #
421
558
  # short_name is an alias to @short_name.
422
- # ========================================================================= #
559
+ # ========================================================================== #
423
560
  def short_name?
424
561
  @short_name
425
562
  end; alias program_name short_name? # === program_name
@@ -432,11 +569,11 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
432
569
  alias first short_name? # === first
433
570
  alias return_program_real_name short_name? # === return_program_real_name
434
571
 
435
- # ========================================================================= #
572
+ # ========================================================================== #
436
573
  # === program_version?
437
574
  #
438
575
  # Getter method for the @program_version variable.
439
- # ========================================================================= #
576
+ # ========================================================================== #
440
577
  def program_version?
441
578
  @program_version
442
579
  end; alias program_version program_version? # === program_version
@@ -446,14 +583,14 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
446
583
  alias last program_version? # === last?
447
584
  alias version_of_the_program? program_version? # === version_of_the_program?
448
585
 
449
- # ========================================================================= #
450
- # === show_help (help tag)
586
+ # ========================================================================== #
587
+ # === show_help (help tag)
451
588
  #
452
589
  # To invoke this method, try:
453
590
  #
454
591
  # pinfo --show-help
455
592
  #
456
- # ========================================================================= #
593
+ # ========================================================================== #
457
594
  def show_help
458
595
  e
459
596
  e 'This class is able to split a given input (a string) into'
@@ -475,18 +612,19 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
475
612
  e
476
613
  end
477
614
 
478
- # ========================================================================= #
615
+ # ========================================================================== #
479
616
  # === set_input
480
617
  #
481
618
  # This method will, after performing some sanitize-operations, assign
482
619
  # to the @input variable.
483
- # ========================================================================= #
620
+ # ========================================================================== #
484
621
  def set_input(i)
485
622
  if i.is_a? Array
486
623
  menu(i)
487
624
  i = i.join(' ').strip
488
625
  end
489
626
  i = i.to_s.dup if i.frozen?
627
+ original_input = i.dup
490
628
  i = File.basename(i)
491
629
  # ======================================================================= #
492
630
  # We .squeeze away '--' tokens.
@@ -548,9 +686,21 @@ class ProgramInformation # === ProgramInformation::ProgramInformation
548
686
  i.delete!('+') if i.include? '+'
549
687
  end
550
688
  i = return_proper_pipe_token_to_this_input(i)
689
+ case i
690
+ when '|' # Sanitize it in this case.
691
+ i = original_input
692
+ set_be_verbose(:be_quiet)
693
+ end
551
694
  @input = i
552
695
  end
553
696
 
697
+ # ========================================================================== #
698
+ # === run (run tag)
699
+ # ========================================================================== #
700
+ def run
701
+ determine_the_three_main_variables
702
+ end
703
+
554
704
  end
555
705
 
556
706
  # =========================================================================== #
@@ -11,12 +11,12 @@ class ProgramInformation
11
11
  # ========================================================================= #
12
12
  # === VERSION
13
13
  # ========================================================================= #
14
- VERSION = '1.2.6'
14
+ VERSION = '1.2.7'
15
15
  DEFAULT_VERSION = VERSION # Use an "alias" to the above constant.
16
16
 
17
17
  # ========================================================================= #
18
18
  # === LAST_UPDATE
19
19
  # ========================================================================= #
20
- LAST_UPDATE = '17.03.2024'
20
+ LAST_UPDATE = '04.04.2024'
21
21
 
22
22
  end; end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: program_information
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.6
4
+ version: 1.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert A. Heiler
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-03-17 00:00:00.000000000 Z
11
+ date: 2024-04-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: colours
@@ -51,6 +51,7 @@ extra_rdoc_files: []
51
51
  files:
52
52
  - README.md
53
53
  - bin/program_information
54
+ - bin/program_information_version
54
55
  - doc/CONVENTIONS.md
55
56
  - doc/README.gen
56
57
  - lib/program_information.rb
@@ -58,14 +59,9 @@ files:
58
59
  - lib/program_information/constants/colours.rb
59
60
  - lib/program_information/constants/constants.rb
60
61
  - lib/program_information/constants/regex.rb
61
- - lib/program_information/initialize.rb
62
- - lib/program_information/menu.rb
63
62
  - lib/program_information/program_information.rb
64
63
  - lib/program_information/project/project.rb
65
- - lib/program_information/report.rb
66
64
  - lib/program_information/requires/require_the_program_information_project.rb
67
- - lib/program_information/reset.rb
68
- - lib/program_information/run.rb
69
65
  - lib/program_information/toplevel_methods.rb
70
66
  - lib/program_information/toplevel_methods/e.rb
71
67
  - lib/program_information/toplevel_methods/opnn.rb
@@ -93,9 +89,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
93
89
  requirements:
94
90
  - - ">="
95
91
  - !ruby/object:Gem::Version
96
- version: 3.5.6
92
+ version: 3.5.7
97
93
  requirements: []
98
- rubygems_version: 3.5.6
94
+ rubygems_version: 3.5.7
99
95
  signing_key:
100
96
  specification_version: 4
101
97
  summary: This library is called program_information. It allows you to return the
@@ -1,43 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- module ProgramInformation
6
-
7
- class ProgramInformation # === ProgramInformation::ProgramInformation
8
-
9
- # ========================================================================= #
10
- # === initialize
11
- #
12
- # Specific usage example:
13
- #
14
- # ProgramInformation::ProgramInformation.new('util-linux-ng-2.15')
15
- #
16
- # ========================================================================= #
17
- def initialize(
18
- i = ARGV,
19
- run_already = true,
20
- optional_be_verbose = false
21
- )
22
- reset
23
- set_input(i)
24
- if optional_be_verbose
25
- set_be_verbose(optional_be_verbose)
26
- end
27
- case run_already
28
- # ======================================================================= #
29
- # === :do_run_already
30
- # ======================================================================= #
31
- when :do_run_already
32
- run_already = true
33
- # ======================================================================= #
34
- # === :dont_run_already
35
- # ======================================================================= #
36
- when :dont_run_already,
37
- :do_not_run_already
38
- run_already = false
39
- end
40
- run if run_already
41
- end
42
-
43
- end; end
@@ -1,29 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- # require 'program_information/menu.rb'
6
- # =========================================================================== #
7
- module ProgramInformation
8
-
9
- class ProgramInformation # === ProgramInformation::ProgramInformation
10
-
11
- # ========================================================================= #
12
- # === menu (menu tag)
13
- # ========================================================================= #
14
- def menu(i)
15
- if i.is_a? Array
16
- i.each {|entry| menu(entry) }
17
- else
18
- case i
19
- # ===================================================================== #
20
- # === help
21
- # ===================================================================== #
22
- when /-?-?help$/i
23
- show_help
24
- exit
25
- end
26
- end
27
- end
28
-
29
- end; end
@@ -1,48 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- module ProgramInformation
6
-
7
- class ProgramInformation
8
-
9
- # ========================================================================= #
10
- # === report (debug tag, report tag)
11
- # ========================================================================= #
12
- def report(
13
- be_verbose = be_verbose?
14
- )
15
- case be_verbose
16
- when :do_report, :be_verbose
17
- be_verbose = true
18
- end
19
- lpad = 90
20
- rpad = 49
21
- if be_verbose
22
- inner_ljust = 28
23
- # ===================================================================== #
24
- # === real short name
25
- # ===================================================================== #
26
- e (NAME_OF_CLASS+(' Program real short name ').ljust(inner_ljust)+'('+
27
- yellow?+'@real_short_name'+rev+') is: ').ljust(lpad)+
28
- (apostroph?+real_short_name?+apostroph?).
29
- ljust(rpad)
30
- # ===================================================================== #
31
- # === short name
32
- # ===================================================================== #
33
- e (
34
- NAME_OF_CLASS+(' Program name').ljust(inner_ljust)+'('+
35
- yellow?+'@short_name'+rev+' ) is: '
36
- ).ljust(lpad)+(apostroph?+short_name?+apostroph?).
37
- ljust(rpad)
38
- # ===================================================================== #
39
- # === program version
40
- # ===================================================================== #
41
- e (NAME_OF_CLASS+(' Program version ').ljust(inner_ljust)+'('+
42
- yellow?+'@program_version'+rev+') is: ').ljust(lpad)+
43
- (apostroph?+version?+apostroph?).
44
- ljust(rpad)
45
- end
46
- end; alias report_result report # === report_result
47
-
48
- end; end
@@ -1,46 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- # require 'program_information/reset.rb'
6
- # =========================================================================== #
7
- module ProgramInformation
8
-
9
- class ProgramInformation # === ProgramInformation::ProgramInformation
10
-
11
- # ========================================================================= #
12
- # === reset
13
- # ========================================================================= #
14
- def reset
15
- # ======================================================================= #
16
- # === @short_name
17
- # ======================================================================= #
18
- @short_name = nil
19
- # ======================================================================= #
20
- # === @real_short_name
21
- # ======================================================================= #
22
- @real_short_name = nil
23
- # ======================================================================= #
24
- # === @program_version
25
- # ======================================================================= #
26
- @program_version = nil
27
- set_shall_we_downcase # Should become before set_input().
28
- set_be_verbose
29
- # ======================================================================= #
30
- # === @remove_plus_and_minus
31
- # ======================================================================= #
32
- @remove_plus_and_minus = REMOVE_PLUS_AND_MINUS
33
- # ======================================================================= #
34
- # === @replace_plus_with_long_name
35
- # ======================================================================= #
36
- @replace_plus_with_long_name = REPLACE_PLUS_WITH_LONG_NAME
37
- @remove_plus_token = REMOVE_PLUS_TOKEN
38
- if @remove_plus_and_minus # Overrule always in this case.
39
- @replace_plus_with_long_name = false
40
- end
41
- if @remove_plus_and_minus
42
- @remove_plus_token = false
43
- end
44
- end
45
-
46
- end; end
@@ -1,18 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- # require 'program_information/run.rb'
6
- # =========================================================================== #
7
- module ProgramInformation
8
-
9
- class ProgramInformation
10
-
11
- # ========================================================================= #
12
- # === run
13
- # ========================================================================= #
14
- def run
15
- determine_the_three_main_variables
16
- end
17
-
18
- end; end