Skip to content

Commit 0180707

Browse files
committed
Update MathCATPreferences.py
1 parent 1f2dd66 commit 0180707

File tree

1 file changed

+155
-131
lines changed

1 file changed

+155
-131
lines changed

NVDA-addon/addon/globalPlugins/MathCAT/MathCATPreferences.py

Lines changed: 155 additions & 131 deletions
Original file line numberDiff line numberDiff line change
@@ -168,137 +168,161 @@ def load_user_preferences():
168168
user_preferences.update(yaml.load(f, Loader=yaml.FullLoader))
169169

170170
def validate_user_preferences():
171-
global user_preferences
172-
#check each user preference value to ensure it is present and valid, set default value if not
173-
174-
# Speech:
175-
#Impairment: Blindness # LearningDisability, LowVision, Blindness
176-
valid_test_passed = False
177-
try:
178-
if user_preferences["Speech"]["Impairment"] in ["LearningDisability", "LowVision", "Blindness"]:
179-
valid_test_passed = True
180-
except:
181-
pass
182-
if not valid_test_passed:
183-
user_preferences["Speech"]["Impairment"] = "Blindness"
184-
185-
# Verbosity: Medium # Terse, Medium, Verbose
186-
valid_test_passed = False
187-
try:
188-
if user_preferences["Speech"]["Verbosity"] in ["Terse", "Medium", "Verbose"]:
189-
valid_test_passed = True
190-
except:
191-
pass
192-
if not valid_test_passed:
193-
user_preferences["Speech"]["Verbosity"] = "Medium"
194-
195-
# MathRate: 100 # Change from text speech rate (%)
196-
valid_test_passed = False
197-
try:
198-
if (user_preferences["Speech"]["MathRate"] >= 10) and (user_preferences["Speech"]["MathRate"] <= 1000):
199-
valid_test_passed = True
200-
except:
201-
pass
202-
if not valid_test_passed:
203-
user_preferences["Speech"]["MathRate"] = "100"
204-
205-
# SpeechStyle: ClearSpeak # Any known speech style (falls back to ClearSpeak)
206-
#no validity test
207-
208-
# SubjectArea: General # FIX: still working on this
209-
#no validity test
210-
211-
# Chemistry: SpellOut # SpellOut (H 2 0), AsCompound (Water), Off (H sub 2 O)
212-
valid_test_passed = False
213-
try:
214-
if user_preferences["Speech"]["Chemistry"] in ["SpellOut", "AsCompound", "Off"]:
215-
valid_test_passed = True
216-
except:
217-
pass
218-
if not valid_test_passed:
219-
user_preferences["Speech"]["Chemistry"] = "SpellOut"
220-
221-
#Navigation:
222-
# NavMode: Enhanced # Enhanced, Simple, Character
223-
valid_test_passed = False
224-
try:
225-
if user_preferences["Navigation"]["NavMode"] in ["Enhanced", "Simple", "Character"]:
226-
valid_test_passed = True
227-
except:
228-
pass
229-
if not valid_test_passed:
230-
user_preferences["Navigation"]["NavMode"] = "Enhanced"
231-
232-
# ResetNavMode: false # remember previous value and use it
233-
valid_test_passed = False
234-
try:
235-
if (user_preferences["Navigation"]["ResetNavMode"]) or (not user_preferences["Navigation"]["ResetNavMode"]) :
236-
valid_test_passed = True
237-
except:
238-
pass
239-
if not valid_test_passed:
240-
user_preferences["Navigation"]["ResetNavMode"] = "false"
241-
242-
# Overview: false # speak the expression or give a description/overview
243-
valid_test_passed = False
244-
try:
245-
if (user_preferences["Navigation"]["Overview"]) or True :
246-
valid_test_passed = True
247-
except:
248-
pass
249-
if not valid_test_passed:
250-
user_preferences["Navigation"]["Overview"] = "false"
251-
252-
# ResetOverview: true # remember previous value and use it
253-
valid_test_passed = False
254-
try:
255-
if (user_preferences["Navigation"]["ResetOverview"]) or True :
256-
valid_test_passed = True
257-
except:
258-
pass
259-
if not valid_test_passed:
260-
user_preferences["Navigation"]["ResetOverview"] = "true"
261-
262-
# NavVerbosity: Medium # Terse, Medium, Full (words to say for nav command)
263-
valid_test_passed = False
264-
try:
265-
if user_preferences["Navigation"]["NavVerbosity"] in ["Terse", "Medium", "Full"]:
266-
valid_test_passed = True
267-
except:
268-
pass
269-
if not valid_test_passed:
270-
user_preferences["Navigation"]["NavVerbosity"] = "Medium"
271-
272-
# AutoZoomOut: true # Auto zoom out of 2D exprs (use shift-arrow to force zoom out if unchecked)
273-
valid_test_passed = False
274-
try:
275-
if (user_preferences["Navigation"]["AutoZoomOut"]) or True :
276-
valid_test_passed = True
277-
except:
278-
pass
279-
if not valid_test_passed:
280-
user_preferences["Navigation"]["AutoZoomOut"] = "true"
281-
282-
#Braille:
283-
# BrailleNavHighlight: EndPoints # Highlight with dots 7 & 8 the current nav node -- values are Off, FirstChar, EndPoints, All
284-
valid_test_passed = False
285-
try:
286-
if user_preferences["Braille"]["BrailleNavHighlight"] in ["Off", "FirstChar", "EndPoints", "All"]:
287-
valid_test_passed = True
288-
except:
289-
pass
290-
if not valid_test_passed:
291-
user_preferences["Braille"]["BrailleNavHighlight"] = "EndPoints"
292-
293-
# BrailleCode: "Nemeth" # Any supported braille code (currently Nemeth, UEB)
294-
valid_test_passed = False
295-
try:
296-
if user_preferences["Braille"]["BrailleCode"] in ["Nemeth", "UEB"]:
297-
valid_test_passed = True
298-
except:
299-
pass
300-
if not valid_test_passed:
301-
user_preferences["Braille"]["BrailleCode"] = "Nemeth"
171+
global user_preferences
172+
#check each user preference value to ensure it is present and valid, set default value if not
173+
174+
# Speech:
175+
#Impairment: Blindness # LearningDisability, LowVision, Blindness
176+
valid_test_passed = False
177+
try:
178+
if user_preferences["Speech"]["Impairment"] in ["LearningDisability", "LowVision", "Blindness"]:
179+
valid_test_passed = True
180+
except:
181+
pass
182+
if not valid_test_passed:
183+
user_preferences["Speech"]["Impairment"] = "Blindness"
184+
185+
# Language: en # any known language code and sub-code -- could be en-uk, etc
186+
valid_test_passed = False
187+
try:
188+
if user_preferences["Speech"]["Language"] != "":
189+
valid_test_passed = True
190+
except:
191+
pass
192+
if not valid_test_passed:
193+
user_preferences["Speech"]["Language"] = "en"
194+
195+
# Verbosity: Medium # Terse, Medium, Verbose
196+
valid_test_passed = False
197+
try:
198+
if user_preferences["Speech"]["Verbosity"] in ["Terse", "Medium", "Verbose"]:
199+
valid_test_passed = True
200+
except:
201+
pass
202+
if not valid_test_passed:
203+
user_preferences["Speech"]["Verbosity"] = "Medium"
204+
205+
# MathRate: 100 # Change from text speech rate (%)
206+
valid_test_passed = False
207+
try:
208+
if (user_preferences["Speech"]["MathRate"] > 0):
209+
valid_test_passed = True
210+
except:
211+
pass
212+
if not valid_test_passed:
213+
user_preferences["Speech"]["MathRate"] = 100
214+
215+
# SpeechStyle: ClearSpeak # Any known speech style (falls back to ClearSpeak)
216+
valid_test_passed = False
217+
try:
218+
if user_preferences["Speech"]["SpeechStyle"] != "":
219+
valid_test_passed = True
220+
except:
221+
pass
222+
if not valid_test_passed:
223+
user_preferences["Speech"]["SpeechStyle"] = "ClearSpeak"
224+
225+
# SubjectArea: General # FIX: still working on this
226+
valid_test_passed = False
227+
try:
228+
if user_preferences["Speech"]["SubjectArea"] != "":
229+
valid_test_passed = True
230+
except:
231+
pass
232+
if not valid_test_passed:
233+
user_preferences["Speech"]["SubjectArea"] = "General"
234+
235+
# Chemistry: SpellOut # SpellOut (H 2 0), AsCompound (Water), Off (H sub 2 O)
236+
valid_test_passed = False
237+
try:
238+
if user_preferences["Speech"]["Chemistry"] in ["SpellOut", "AsCompound", "Off"]:
239+
valid_test_passed = True
240+
except:
241+
pass
242+
if not valid_test_passed:
243+
user_preferences["Speech"]["Chemistry"] = "SpellOut"
244+
245+
#Navigation:
246+
# NavMode: Enhanced # Enhanced, Simple, Character
247+
valid_test_passed = False
248+
try:
249+
if user_preferences["Navigation"]["NavMode"] in ["Enhanced", "Simple", "Character"]:
250+
valid_test_passed = True
251+
except:
252+
pass
253+
if not valid_test_passed:
254+
user_preferences["Navigation"]["NavMode"] = "Enhanced"
255+
256+
# ResetNavMode: false # remember previous value and use it
257+
valid_test_passed = False
258+
try:
259+
if (user_preferences["Navigation"]["ResetNavMode"]) or (not user_preferences["Navigation"]["ResetNavMode"]) :
260+
valid_test_passed = True
261+
except:
262+
pass
263+
if not valid_test_passed:
264+
user_preferences["Navigation"]["ResetNavMode"] = False
265+
266+
# Overview: false # speak the expression or give a description/overview
267+
valid_test_passed = False
268+
try:
269+
if (user_preferences["Navigation"]["Overview"]) or True :
270+
valid_test_passed = True
271+
except:
272+
pass
273+
if not valid_test_passed:
274+
user_preferences["Navigation"]["Overview"] = False
275+
276+
# ResetOverview: true # remember previous value and use it
277+
valid_test_passed = False
278+
try:
279+
if (user_preferences["Navigation"]["ResetOverview"]) or True :
280+
valid_test_passed = True
281+
except:
282+
pass
283+
if not valid_test_passed:
284+
user_preferences["Navigation"]["ResetOverview"] = True
285+
286+
# NavVerbosity: Medium # Terse, Medium, Verbose (words to say for nav command)
287+
valid_test_passed = False
288+
try:
289+
if user_preferences["Navigation"]["NavVerbosity"] in ["Terse", "Medium", "Verbose"]:
290+
valid_test_passed = True
291+
except:
292+
pass
293+
if not valid_test_passed:
294+
user_preferences["Navigation"]["NavVerbosity"] = "Medium"
295+
296+
# AutoZoomOut: true # Auto zoom out of 2D exprs (use shift-arrow to force zoom out if unchecked)
297+
valid_test_passed = False
298+
try:
299+
if (user_preferences["Navigation"]["AutoZoomOut"]) or True :
300+
valid_test_passed = True
301+
except:
302+
pass
303+
if not valid_test_passed:
304+
user_preferences["Navigation"]["AutoZoomOut"] = True
305+
306+
#Braille:
307+
# BrailleNavHighlight: EndPoints # Highlight with dots 7 & 8 the current nav node -- values are Off, FirstChar, EndPoints, All
308+
valid_test_passed = False
309+
try:
310+
if user_preferences["Braille"]["BrailleNavHighlight"] in ["Off", "FirstChar", "EndPoints", "All"]:
311+
valid_test_passed = True
312+
except:
313+
pass
314+
if not valid_test_passed:
315+
user_preferences["Braille"]["BrailleNavHighlight"] = "EndPoints"
316+
317+
# BrailleCode: "Nemeth" # Any supported braille code (currently Nemeth, UEB)
318+
valid_test_passed = False
319+
try:
320+
if user_preferences["Braille"]["BrailleCode"] in ["Nemeth", "UEB"]:
321+
valid_test_passed = True
322+
except:
323+
pass
324+
if not valid_test_passed:
325+
user_preferences["Braille"]["BrailleCode"] = "Nemeth"
302326

303327
def write_user_preferences():
304328
if not os.path.exists(UserInterface.path_to_user_preferences_folder()):

0 commit comments

Comments
 (0)