aac-metrics 0.2.0 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +18 -0
- data/lib/aac-metrics/loader.rb +13 -2
- data/lib/aac-metrics/metrics.rb +273 -117
- data/lib/ingester.rb +2 -0
- data/sets/ac99-3db3a9ef48.obfset +99885 -0
- data/sets/base_words.en.json +1738 -0
- data/sets/cbc-a58fb7ec74.obfset +5124 -0
- data/sets/cbu-2ae9aef211.obfset +372 -0
- data/sets/l84ns-2f9h2f9.en.obfset +82466 -0
- data/sets/preview.html +327 -0
- data/sets/sc12-3309ddfa88.obfset +16078 -0
- data/sets/sc30-c14f4bdc24.obfset +105622 -0
- data/sets/sc50-40100cbd63.obfset +135833 -0
- data/sets/sentences.en.json +3 -2
- data/sets/seq15-555e3cd10a.obfset +19893 -0
- data/sets/vc12-9db81b58c4.obfset +57148 -0
- data/sets/wp108-c428d7f2dc.en.analysis +16243 -15551
- data/sets/wp108-c428d7f2dc.en.obfset +7906 -2634
- data/sets/wp20-163743e671.obfset +266 -78
- data/sets/wp42-f67dc6f4a9.obfset +3767 -1549
- data/sets/wp60-ce5120b0d2.obfset +5694 -2385
- data/sets/wp80-dad3aeda5e.common.en.analysis +15423 -14787
- data/sets/wp80-dad3aeda5e.common.en.obfset +8049 -2846
- metadata +12 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 52fb3c41b9427605e9a78c258c5f4e5d7303c98f8988b52aba750597cb164900
|
4
|
+
data.tar.gz: 60ccc8a6c1dd2c25d29dd159134c7953e133a1f7a0bb9d710696807f853e8139
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ac227f5770623d9df36635c92f71aa7a122404fa40f006dce31432be0bd17b6199c0c16ec6a4f5c777f19255106bf1c7f8811bfe4972996b9d12980a75b2911a
|
7
|
+
data.tar.gz: fd2ef145c944fea960a30282b6f3960f313d5f6f44d0db13f3a4581909744e127455010371d5b4138e546132a2e8d4cfb26ec291793f9ff83b970b54d47aeed9
|
data/README.md
CHANGED
@@ -2,6 +2,24 @@
|
|
2
2
|
|
3
3
|
A tool for analysing and comparing grid-based AAC board sets
|
4
4
|
|
5
|
+
To compare two datasets
|
6
|
+
`ruby setup.rb qc24 qc112`
|
7
|
+
|
8
|
+
To compare two datasets and export the minimal obfset for the first
|
9
|
+
`ruby setup.rb qc24 qc112 export`
|
10
|
+
`ruby setup.rb qc24 qc112 render` # updates interactive preview in sets/preview.html
|
11
|
+
|
12
|
+
To generate an obfset from an external data source
|
13
|
+
`ruby lib/ingester.rb path/to/manifest-from-unzipped-obz.json`
|
14
|
+
`ruby lib/ingester.rb path/to/compiled-set.obfset`
|
15
|
+
`ruby lib/ingester.rb path/to/root-file.obf`
|
16
|
+
|
17
|
+
|
18
|
+
NOTE: if you add an obfset to sets, it will be accessible
|
19
|
+
simply by its prefix. If you add ".common" to the filename
|
20
|
+
similar to the existing files, it will be added to the
|
21
|
+
corpus of "common" word sets.
|
22
|
+
|
5
23
|
## License
|
6
24
|
|
7
25
|
Licensed under the MIT License.
|
data/lib/aac-metrics/loader.rb
CHANGED
@@ -20,6 +20,8 @@ module AACMetrics::Loader
|
|
20
20
|
}
|
21
21
|
if button['load_board'] && button['load_board']['id']
|
22
22
|
new_button['load_board'] = {'id' => button['load_board']['id']}
|
23
|
+
new_button['load_board']['temporary_home'] = button['load_board']['temporary_home'] if button['load_board']['temporary_home'] == true || button['load_board']['temporary_home'] == 'prior'
|
24
|
+
new_button['load_board']['add_to_sentence'] = true if button['load_board']['add_to_sentence']
|
23
25
|
end
|
24
26
|
new_board['buttons'].push(new_button)
|
25
27
|
end
|
@@ -72,11 +74,11 @@ module AACMetrics::Loader
|
|
72
74
|
if json.is_a?(Array)
|
73
75
|
json.each do |brd|
|
74
76
|
brd['buttons'].each do |btn|
|
75
|
-
if btn['label'].match(/^\$/)
|
77
|
+
if (btn['label'] || '').match(/^\$/)
|
76
78
|
word = base[btn['label'].sub(/^\$/, '')]
|
77
79
|
btn['label'] = word if word
|
78
80
|
end
|
79
|
-
btn['label'] = btn['label'].gsub(/’/, '')
|
81
|
+
btn['label'] = (btn['label'] || '').gsub(/’/, '')
|
80
82
|
end
|
81
83
|
end
|
82
84
|
elsif json.is_a?(Hash)
|
@@ -158,6 +160,12 @@ module AACMetrics::Loader
|
|
158
160
|
# record load_board reference
|
159
161
|
btn_idx += 1
|
160
162
|
if btn['load_board']
|
163
|
+
if !btn['load_board']['path'] && btn['load_board']['id']
|
164
|
+
bpath = File.join(File.dirname(path), btn['load_board']['id'] + '.obf')
|
165
|
+
if File.exists?(bpath)
|
166
|
+
btn['load_board']['path'] = bpath
|
167
|
+
end
|
168
|
+
end
|
161
169
|
if btn['load_board']['path']
|
162
170
|
if visited_paths[btn['load_board']['path']]
|
163
171
|
new_btn['load_board'] = {'id' => "brd#{visited_paths[btn['load_board']['path']]}"}
|
@@ -175,8 +183,11 @@ module AACMetrics::Loader
|
|
175
183
|
new_btn['load_board'] = {'tmp_path' => btn['load_board']['data_url']}
|
176
184
|
end
|
177
185
|
else
|
186
|
+
puts path
|
178
187
|
puts "Link found with no access #{btn['load_board'].to_json}"
|
179
188
|
end
|
189
|
+
new_btn['load_board']['temporary_home'] = true if new_btn['load_board'] && btn['load_board']['temporary_home']
|
190
|
+
new_btn['load_board']['add_to_sentence'] = true if new_btn['load_board'] && btn['load_board']['add_to_sentence']
|
180
191
|
elsif btn['action']
|
181
192
|
# TODO: track keyboard actions and don't
|
182
193
|
# treat action buttons for metrics
|