I was thinking the other day about how to access settings that aren't accessible from the GUI in a slightly safer way. I came up with a scheme similar to the mozilla about:config editor.
http://www.instantbird.com/
- call the advancedConfig function in the python console of NVDA.
A dialog appears. There's a search field, a list of config keys and their values.
Keys are placed in the dialog by concatenating every item in the key with a ".". For example, "general.language", "virtualBuffers.passThroughAudioIndication", "speech.speechPlayerInEspeak.rateBoost", "schemaVersion"
- When the list appears, either find the configuration value you'd like, or press shift+tab to filter.
- If you are in the search box, type anything. Space separated words are searched separately, and items that match all given tokens are considered. Case is ignored.
- Example search: "braille cursor blink" shows
Key Value
braille.cursorBlinkRate 500
braille.cursorBlink True
"braille blink cursor" yields the same results.
"debugLog" shows all items with debugLog somewhere in the key.
"debugLog." shows all items with a section called debugLog.
.log shows only items that are below some section with log in them.
- search isn't currently powerful enough to search only in the last node of the dotted key.
- search can't currently ask for only items that match the first node of the dotted key.
Actions available from the list:
- When enter is pressed on a key in the list, a dialog appears with either a checkbox, or edit field to edit said config value.
- If okay is pressed in this dialog, the config and UI are updated.
- if cancel is pressed, Well, it should be obvious, nothing happens.
- if delete is pressed on a key in the list, that key is deleted if the user says yes.
- Currently, okay/cancel do nothing at all in the main dialog.
Thoughts on other things to implement or concerns before I create a pull request?
I was thinking the other day about how to access settings that aren't accessible from the GUI in a slightly safer way. I came up with a scheme similar to the mozilla about:config editor.
http://www.instantbird.com/
A dialog appears. There's a search field, a list of config keys and their values.
Keys are placed in the dialog by concatenating every item in the key with a ".". For example, "general.language", "virtualBuffers.passThroughAudioIndication", "speech.speechPlayerInEspeak.rateBoost", "schemaVersion"
"debugLog" shows all items with debugLog somewhere in the key.
"debugLog." shows all items with a section called debugLog.
.log shows only items that are below some section with log in them.
Actions available from the list:
Thoughts on other things to implement or concerns before I create a pull request?