appl 1.13 → 1.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/appl.rb +20 -7
  3. data/lib/applfan.rb +1 -1
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9e3306b330c4d69ef88e6b75511d7b0ab1e030f990aac1800305dcfa4afd0f65
4
- data.tar.gz: eff477635d40b6ff9c443b0fe1256107c85d31bf6aa7c0a2088f26ffa239111c
3
+ metadata.gz: 56c30027cafdb226bc4406d7e61c635a851ebdd6803db91619f7304ba8cb6aa6
4
+ data.tar.gz: ed5ff7e4c34536b77c992825ae62c5bcce3bb2c0ab279af23dadca6126e40eed
5
5
  SHA512:
6
- metadata.gz: 6ae84d8de622e2e2b4763ef8fbda40b9210edd326d48358707364f4a4c99b0fbee05c1ed1dc5b31d83d3f7429e74922a81af5eb22de7572a1a3c6ad7bec99925
7
- data.tar.gz: ab2ea5f6b9f7850bd62e741201cc10bdaa1c1c6be549c0a45fa435bb7ee55779fabfade33a0801fd931d7313d0b90f3a991b1ec38ee6749db19562ee6969afe2
6
+ metadata.gz: ca350b770a585c31c2d0f5f0cc3f49d9a284632cc59acb8acbaa5258660587bae444a299bd97057a3a734383b98c8cca702dc4c01da38c8c0469704311fe4ccb
7
+ data.tar.gz: e1e5e52163995309fbe55621e816265477889996466a3c74f6efd50e07f88b7fd07d0f048a309b193f3c0606769250534c3c846824c0f8f5153eca673eb999b8
data/lib/appl.rb CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  class Application
7
7
 
8
- APPL_VERSION = "1.13".freeze
8
+ APPL_VERSION = "1.15".freeze
9
9
 
10
10
  OPTIONS_ENV = nil
11
11
 
@@ -209,7 +209,9 @@ class Application
209
209
  arg &&= "#{arg}"
210
210
  dfl &&= "[#{dfl}]"
211
211
  arg << dfl if arg && dfl
212
- puts " %-*s %-*s %s" % [ root::W_OPTS, opt, root::W_ARGS, arg, desc]
212
+ l = " %-*s %-*s %s" % [ root::W_OPTS, opt, root::W_ARGS, arg, desc]
213
+ l.rstrip!
214
+ puts l
213
215
  end
214
216
  end
215
217
 
@@ -221,17 +223,28 @@ class Application
221
223
  [ self::NAME, *self::ALIASES].join "|"
222
224
  end
223
225
 
224
- def help
226
+ def full_name
225
227
  n = []
226
228
  s = self
227
- begin
229
+ loop do
228
230
  l = s.all_names
229
231
  n.unshift l
232
+ break if s == root
230
233
  s = s.root
231
- end while s != root
232
- puts "#{n.join ' '} -- #{self::SUMMARY}"
234
+ end
235
+ n.join ' '
236
+ end
237
+
238
+ def help
239
+ fn = full_name
240
+ puts "#{fn} -- #{self::SUMMARY}"
233
241
  puts
234
- puts self::DESCRIPTION
242
+ d = self::DESCRIPTION.gsub /#(\w+?)?#/ do
243
+ case $1
244
+ when "NAME" then fn
245
+ end
246
+ end
247
+ puts d
235
248
  puts
236
249
  show_options
237
250
  if block_given? then
data/lib/applfan.rb CHANGED
@@ -50,7 +50,7 @@ class ApplicationFan < Application
50
50
  super c
51
51
  end
52
52
  define_singleton_method :root do
53
- sub.root
53
+ sub
54
54
  end
55
55
  end
56
56
  )
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appl
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.13'
4
+ version: '1.15'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bertram Scharpf
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-11 00:00:00.000000000 Z
11
+ date: 2022-03-31 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: |
14
14
  A base class for command line applications doing options parsing