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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 62c96e82e12b2a0c9eb03ad38b65af63c348731faf58ac3920de4d87c77e2d1c
4
- data.tar.gz: 16c049e5e33c1b18cdb374afbf9117299fd47bddc91c15042284f2f41f96dc6b
3
+ metadata.gz: 52fb3c41b9427605e9a78c258c5f4e5d7303c98f8988b52aba750597cb164900
4
+ data.tar.gz: 60ccc8a6c1dd2c25d29dd159134c7953e133a1f7a0bb9d710696807f853e8139
5
5
  SHA512:
6
- metadata.gz: c37bef0e90cbea57f8e0d860e2751c1508028b97b9c76e669c6a9f33d5921dc7cf34ea819249c744c7e30a0e08aa9ebb9e9c4bc19fbacc85e56f1ebd7121a9df
7
- data.tar.gz: bf47f7d0bbe809195ad6576269532e0ed4b26cae918ae605b671e6c562fcfdf1e5fba892bd7e0c936a18082b8a9c291c0bfec75a44eb9b9ec3f320e1bec1e52f
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.
@@ -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