l43_rmap 0.1.2 → 0.1.3
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.
- checksums.yaml +4 -4
- data/lib/l43_rmap/cli/color.rb +1 -0
- data/lib/l43_rmap/cli.rb +37 -20
- data/lib/l43_rmap/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9bd7417484c513b2d71b9e69d4a9eb88bc452680df0c0084598177116915d6fa
|
|
4
|
+
data.tar.gz: ceb5ecb1605bcaa3d3e6e2210866321bbfc8500438df7cc3965f207c74cf62d6
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 25e4f5a82994057fc6c60a09455845f4f7fa5c8b070b59032bab278763109d984f6494f94abdc0722af595ba918d9c35fc14d080360f262594a99a5e982ac43f
|
|
7
|
+
data.tar.gz: 4415aa7b21e450d857d5a8e7ff06f14e8bbbcc446f9ba7376afd48eecb4de133cfb9372cd4a30cd82d362741d02a7d85fd8561c720b9fabfdc5bf2ff16d8318b
|
data/lib/l43_rmap/cli/color.rb
CHANGED
data/lib/l43_rmap/cli.rb
CHANGED
|
@@ -6,6 +6,7 @@ require_relative '../l43_rmap'
|
|
|
6
6
|
require_relative 'predefined_patterns'
|
|
7
7
|
require_relative 'cli/color'
|
|
8
8
|
require_relative 'cli/help'
|
|
9
|
+
require_relative 'version'
|
|
9
10
|
module L43Rmap
|
|
10
11
|
class Cli
|
|
11
12
|
include L43::SimpleColor
|
|
@@ -15,28 +16,14 @@ module L43Rmap
|
|
|
15
16
|
attr_reader :args, :kwds, :pattern, :runtime
|
|
16
17
|
|
|
17
18
|
def run(args)
|
|
18
|
-
parser.parse(args)
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
return help_predefined if kwds.help_predefined
|
|
25
|
-
return help_sexp if kwds.help_sexp
|
|
26
|
-
|
|
27
|
-
return unless check_args
|
|
28
|
-
|
|
29
|
-
return dry_run if kwds.dry_run
|
|
30
|
-
replace_pattern_if_predefined
|
|
31
|
-
return show_parsed if kwds.parse_only
|
|
32
|
-
|
|
33
|
-
_compile
|
|
34
|
-
return compiled if kwds.compile_only
|
|
35
|
-
|
|
36
|
-
_run
|
|
19
|
+
case parser.parse(args)
|
|
20
|
+
in :ok, {kwds:, args:}
|
|
21
|
+
correct_args(kwds:, args:)
|
|
22
|
+
in :error, message
|
|
23
|
+
puterr(message)
|
|
24
|
+
end
|
|
37
25
|
end
|
|
38
26
|
|
|
39
|
-
|
|
40
27
|
private
|
|
41
28
|
def initialize
|
|
42
29
|
parser
|
|
@@ -51,6 +38,7 @@ module L43Rmap
|
|
|
51
38
|
.flag(:help_predefined, desc: ["Describe ", :bold, :blue, "predefined patterns"], stop: true)
|
|
52
39
|
.flag(:help_sexp, desc: ["Describe ", :bold, :blue, "s-expressions"], stop: true)
|
|
53
40
|
.flag(:randomize, :r, desc: ["Does not write to the ", arg1("output stream"), " immideately but into a buffer, the buffer is then randomized before being printed to ", arg1("output stream")])
|
|
41
|
+
.flag(:version, :v, desc: ["Just print current version ",dimmed(version_string)], stop: true)
|
|
54
42
|
.section("Options")
|
|
55
43
|
.keyword(:input, :i, desc: ["file to read from, defaults to ", :bold, :cyan, '$stdin'], default: $stdin)
|
|
56
44
|
.keyword(:output, :o, desc: ["file to write to, defaults to ", :bold, :cyan, '$stdout'], default: $stdout)
|
|
@@ -87,6 +75,28 @@ module L43Rmap
|
|
|
87
75
|
:ok
|
|
88
76
|
end
|
|
89
77
|
|
|
78
|
+
def correct_args(kwds:, args:)
|
|
79
|
+
@kwds = kwds
|
|
80
|
+
@args = args
|
|
81
|
+
return help if kwds.help
|
|
82
|
+
return print_version if kwds.version
|
|
83
|
+
return help_pattern if kwds.help_pattern
|
|
84
|
+
return help_named if kwds.help_named
|
|
85
|
+
return help_predefined if kwds.help_predefined
|
|
86
|
+
return help_sexp if kwds.help_sexp
|
|
87
|
+
|
|
88
|
+
return unless check_args
|
|
89
|
+
|
|
90
|
+
return dry_run if kwds.dry_run
|
|
91
|
+
replace_pattern_if_predefined
|
|
92
|
+
return show_parsed if kwds.parse_only
|
|
93
|
+
|
|
94
|
+
_compile
|
|
95
|
+
return compiled if kwds.compile_only
|
|
96
|
+
|
|
97
|
+
_run
|
|
98
|
+
end
|
|
99
|
+
|
|
90
100
|
def dry_run
|
|
91
101
|
putcol(:cyan, :bold, {kwds: kwds.to_h}.inspect)
|
|
92
102
|
putcol(:blue, :bold, {args:}.inspect)
|
|
@@ -104,6 +114,13 @@ module L43Rmap
|
|
|
104
114
|
end
|
|
105
115
|
|
|
106
116
|
def parser = @__parser__ ||= L43::OptParser.new(with_help: true)
|
|
117
|
+
|
|
118
|
+
def print_version
|
|
119
|
+
putcol(:bold, "rmap: ", :green, version_string)
|
|
120
|
+
:helped
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
def version_string = "v#{VERSION}"
|
|
107
124
|
end
|
|
108
125
|
end
|
|
109
126
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
data/lib/l43_rmap/version.rb
CHANGED