dcm 0.1.1 → 0.1.2
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/cli.rb +13 -8
- data/lib/codinginfo.rb +0 -0
- data/lib/core_ext.rb +0 -0
- data/lib/diff_viewer.rb +0 -0
- data/lib/file_reader.rb +0 -0
- data/lib/label_selector.rb +10 -8
- data/lib/list_colorizer.rb +0 -0
- data/lib/tempfile_handler.rb +0 -0
- data/lib/variant_filter.rb +0 -0
- data/lib/version.rb +1 -1
- metadata +8 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6db7c49cb1da0de6bcd54718303b1e7336f07cc5745e08756e1e94b55046036b
|
4
|
+
data.tar.gz: 2278bcb9d4245fdfa89b999702e7c11b96bc3b8ef6028fbd2a7a275dabcc290d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d29a0eca7b6249f94e5cee2ac7c1806eb9278f80efcc40881801a9ccd55f2235b6070aa8ccb68b6fa451e998a87062094036717dc44eda2b99f78395945fd644
|
7
|
+
data.tar.gz: f45c51b8ad651ba05103c1870d660c4520e505a620e59f62941d68afaa4a58c91860cfbae344e8a128480e89a45d08e534c0ca93598115ae0a8b1e7dc4c050aa
|
data/lib/cli.rb
CHANGED
@@ -23,7 +23,7 @@ module Dcm
|
|
23
23
|
|
24
24
|
class CLI < Thor
|
25
25
|
|
26
|
-
def help
|
26
|
+
def help(cmd)
|
27
27
|
super
|
28
28
|
puts <<~EOS
|
29
29
|
Options:
|
@@ -38,6 +38,11 @@ module Dcm
|
|
38
38
|
display_list(list: parse_file(file), detail: options[:oneline] ? :onelinefull : true)
|
39
39
|
end
|
40
40
|
|
41
|
+
desc "json FILE", "Convert all labels in FILE to JSON"
|
42
|
+
def json(file=nil)
|
43
|
+
display_list(list: parse_file(file), format: :json)
|
44
|
+
end
|
45
|
+
|
41
46
|
desc "new [SPEC]", "Create a new dcm from scratch"
|
42
47
|
option :indented, aliases: ["-i"], type: :boolean, default: false
|
43
48
|
def new(*spec)
|
@@ -51,7 +56,8 @@ module Dcm
|
|
51
56
|
desc "liveview FILE", "Live search and view labels in FILE"
|
52
57
|
def liveview(file=nil)
|
53
58
|
list = parse_file(file)
|
54
|
-
|
59
|
+
selector = LabelSelector.new(list)
|
60
|
+
loop { selector.choose }
|
55
61
|
end
|
56
62
|
|
57
63
|
desc "creta2begu FILTER CODING FILE", "Convert a hierarchical DCM to a flat DCM"
|
@@ -88,7 +94,6 @@ module Dcm
|
|
88
94
|
option :lab, type: :boolean, aliases: ["-l"]
|
89
95
|
def list(file=nil)
|
90
96
|
display_list(list: parse_file(file),
|
91
|
-
detail: false,
|
92
97
|
format: (options[:lab] ? :lab : :tty))
|
93
98
|
end
|
94
99
|
|
@@ -280,14 +285,14 @@ module Dcm
|
|
280
285
|
Ecu::LabelList.new([label])
|
281
286
|
end
|
282
287
|
|
283
|
-
def display_list(list:, detail
|
288
|
+
def display_list(list:, detail: false, format: :tty)
|
284
289
|
case format
|
285
|
-
|
290
|
+
in :tty
|
286
291
|
puts list.map { ListColorizer.call(_1.to_s(detail: detail)) }.join("\n")
|
287
|
-
|
292
|
+
in :lab
|
288
293
|
puts list.to_lab
|
289
|
-
|
290
|
-
|
294
|
+
in :json
|
295
|
+
puts list.to_json
|
291
296
|
end
|
292
297
|
end
|
293
298
|
|
data/lib/codinginfo.rb
CHANGED
File without changes
|
data/lib/core_ext.rb
CHANGED
File without changes
|
data/lib/diff_viewer.rb
CHANGED
File without changes
|
data/lib/file_reader.rb
CHANGED
File without changes
|
data/lib/label_selector.rb
CHANGED
@@ -3,8 +3,13 @@ require_relative "selecta"
|
|
3
3
|
require_relative "list_colorizer"
|
4
4
|
|
5
5
|
class LabelSelector
|
6
|
-
def
|
7
|
-
|
6
|
+
def initialize(list)
|
7
|
+
@keys = list.map(&:name)
|
8
|
+
@values = list.map { |e| ListColorizer.call(e.to_s(detail: true)) }
|
9
|
+
end
|
10
|
+
|
11
|
+
def choose
|
12
|
+
view = selecta(@keys, @values)
|
8
13
|
print view
|
9
14
|
STDIN.gets
|
10
15
|
rescue Interrupt => e
|
@@ -12,15 +17,12 @@ class LabelSelector
|
|
12
17
|
exit 0
|
13
18
|
end
|
14
19
|
|
15
|
-
def
|
16
|
-
clear_screen
|
17
|
-
Selecta.new.main_api(keys: list.map(&:name),
|
18
|
-
values: list.map { |e| ListColorizer.call(e.to_s(detail: true)) },
|
19
|
-
options: { height: "full" })
|
20
|
+
def selecta(keys, values)
|
20
21
|
clear_screen
|
22
|
+
Selecta.new.main_api(keys: keys, values: values, options: { height: "full" }).tap { clear_screen }
|
21
23
|
end
|
22
24
|
|
23
|
-
def
|
25
|
+
def clear_screen
|
24
26
|
print "\e[2J\e[H"
|
25
27
|
end
|
26
28
|
end
|
data/lib/list_colorizer.rb
CHANGED
File without changes
|
data/lib/tempfile_handler.rb
CHANGED
File without changes
|
data/lib/variant_filter.rb
CHANGED
File without changes
|
data/lib/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dcm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonas Mueller
|
8
|
+
autorequire:
|
8
9
|
bindir: bin
|
9
10
|
cert_chain: []
|
10
|
-
date: 2025-04-
|
11
|
+
date: 2025-04-30 00:00:00.000000000 Z
|
11
12
|
dependencies:
|
12
13
|
- !ruby/object:Gem::Dependency
|
13
14
|
name: automotive-ecu
|
@@ -15,14 +16,14 @@ dependencies:
|
|
15
16
|
requirements:
|
16
17
|
- - "~>"
|
17
18
|
- !ruby/object:Gem::Version
|
18
|
-
version: 0.2.
|
19
|
+
version: 0.2.2
|
19
20
|
type: :runtime
|
20
21
|
prerelease: false
|
21
22
|
version_requirements: !ruby/object:Gem::Requirement
|
22
23
|
requirements:
|
23
24
|
- - "~>"
|
24
25
|
- !ruby/object:Gem::Version
|
25
|
-
version: 0.2.
|
26
|
+
version: 0.2.2
|
26
27
|
- !ruby/object:Gem::Dependency
|
27
28
|
name: thor
|
28
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -187,6 +188,7 @@ homepage: https://sr.ht/~muellerj/dcm
|
|
187
188
|
licenses:
|
188
189
|
- MIT
|
189
190
|
metadata: {}
|
191
|
+
post_install_message:
|
190
192
|
rdoc_options: []
|
191
193
|
require_paths:
|
192
194
|
- lib
|
@@ -201,7 +203,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
201
203
|
- !ruby/object:Gem::Version
|
202
204
|
version: '0'
|
203
205
|
requirements: []
|
204
|
-
rubygems_version: 3.
|
206
|
+
rubygems_version: 3.5.22
|
207
|
+
signing_key:
|
205
208
|
specification_version: 4
|
206
209
|
summary: A small wrapper around the automotive-ecu API handling DCM files
|
207
210
|
test_files: []
|