+ Turn on indentation echo temporarily with a keyboard combo

This commit is contained in:
theadam 2025-04-14 20:06:16 +02:00
parent b3d14157d4
commit 8ab30ac7d8
3 changed files with 16 additions and 1 deletions

View file

@ -41,11 +41,11 @@ My script - based on Freedom's code - fixes this problem by adding the UIA suppo
- Prevent announcing unneccessary information (honour the keyboard echo setting)
- Support the auto-completion feature
- Support UIA only in Terminal (and let other events, E.G. volume changes to handle the default script)
- Turn on (temporarily) and off the indentation echo feature in Terminal with JAWSKEy+Shift+i command. Supported in text editors (Nano, Vim) and command outputs (E.G. `kubectl ... -o yaml` or `argocd ... -o yaml`).
## Known issues and todo
- Try to detect prompt and turn it's announce off when navigating on the command history (up and down arrow).
- Ability to temporarily disable UIA for a while to avoid too large amount of text, E.G. using mtr or top, where content changing randomly
- Ability to switch the indentation announce feature with a hotkey to make easier to use argocd, kubectl and edit yaml files easily
- Saying bad characters when try to mark text in mark mode. Workaround is to mark only lines with CTRL+up-down arrow and press CTRL-SHIFT-c to copy. Do not mark single characters or partialy section of lines.

2
wt-access/WindowsTerminal.JKM Executable file
View file

@ -0,0 +1,2 @@
[Common Keys]
Shift+JAWSKey+I=ToggleSayIndentation

View file

@ -82,6 +82,19 @@ EndIf
PerformScript BottomOfFile()
EndScript
script ToggleSayIndentation()
var int status = GetJCFOption (OPT_INDICATE_INDENTATION)
if status == 0
; turn it on
Say ("Indentation echo on", OT_JAWS_MESSAGE, false)
SetJCFOption (OPT_INDICATE_INDENTATION, 1)
else
; turn it off
Say ("Indentation echo off", OT_JAWS_MESSAGE, false)
SetJCFOption (OPT_INDICATE_INDENTATION, 0)
endif
EndScript
string function ProcessUiaText(string text)
var stringArray lines = StringSplit (text, "\n", false)
var int x = 0