Я установил Python 2.7.14, pywin 2.7, natlink 4.1victor и dragonfly 0.6.6b1. У меня есть окна 10, где основным языком является английский, но раскладка клавиатуры на финском языке.
Если я перейду к "Блокноту" и отредактирую голосовые команды, выполните тестовую команду следующим образом:
Test command = "xx{hello[] | world}";
Выводит " xx7hello89 < world0
" с раскладкой на финском языке и " xx[hello[]\world]
" с английским английским.
При использовании финской клавиатуры это выглядит так, как будто кто-то пытался ввести эти символы, но не нажал Alt Gr (например, фигурная скобка сделана нажатием Alt Gr + 7)
Theres аналогичная, но немного другая проблема с готовыми грамматиками для языков программирования, за исключением того, что фигурные скобки вообще не отображаются.
Например, когда я использую _cs_grammar.py
с _cs_grammar.py
раскладкой клавиатуры, " for loop
" производит только " for(;;)
" и пару новых строк. Интересно, что когда я устанавливал клавиатуру на английский английский, то, что она производит, - это " for*<<(
" и никаких фигурных скобок.
"for loop": Text("for(;;) {") + Key("enter")+ Key("enter") + Text("}")
Я пытаюсь кодировать, используя распознавание голоса, и символы, подобные тем, кто не работает, вряд ли идеальны. Где и как определяется такое нажатие клавиши?
Dragonfly исторически (t4ngo/dragonfly) имел проблемы с альтернативными раскладками клавиатуры. Это исправлено в вилке сообщества стрекозы.
Я рекомендую использовать вилку Danesprite для стрекозы, которая интегрирует исправления из сообщества. Надеемся, что эти исправления будут втянуты в основной поддерживаемый репозиторий t4ngo/dragonfly когда-нибудь.
Проблема, связанная с исправлением альтернативных раскладок клавиатуры. https://github.com/Danesprite/dragonfly/issues/16
Позвольте мне знать, что это решает вашу проблему.