|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - AutoHotKey: Замена запятой на точку и ввод "і" и "ї" из русской раскладки. |
|
Любой язык - AutoHotKey: Замена запятой на точку и ввод "і" и "ї" из русской раскладки.
|
Пользователь Сообщения: 125 |
Профиль | Отправить PM | Цитировать Добрый день,
подскажите, как написать 2 скрипта для горячих клавиш в русской раскладке клавиатуры. 1. На цифровом блоке клавиатуры при нажатии клавиши "," в любой раскладке вместо "," вводилась точка "." (как в английской) ? 2. В русской раскладке клавиатуры: При нажатии LeftAlt + "ы" вводилась "і"; при нажатии LeftAlt + shift + "ы" вводилась "І". При нажатии LeftAlt + "ъ" вводилась "ї"; при нажатии LeftAlt + shift + "ъ" вводилась "Ї". |
|
Отправлено: 12:29, 20-10-2021 |
Старожил Сообщения: 193
|
Профиль | Отправить PM | Цитировать 2 - почему не подходит просто сменить раскладку на украинскую?
|
Отправлено: 16:50, 20-10-2021 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 125
|
Профиль | Отправить PM | Цитировать Цитата Fors1k:
Есть такая заготовка: #Persistent NumpadDot:: ; ввод точки вместо запятой на нампаде Send, . return RU() ; Проверка языка ввода. { WinID := WinExist("A") ThreadID := DllCall("GetWindowThreadProcessId", "UInt", WinID, "UInt", 0) InputLocaleID := DllCall("GetKeyboardLayout", "UInt", ThreadID, "UInt") If InputLocaleID = 0x4190419 Return True Else Return False } <!sc1F:: if RU() = 1 Send, i ; если русский язык, то ввод i if RU() = 0 Send, s ;если другой язык, то ввод s return <!+sc1F:: if RU() = 1 Send, I ;если русский язык, то ввод I if RU() = 0 Send, S ;если другой язык, то ввод S return <!sc1B:: if RU() = 1 Send, ї ; если русский язык, то ввод i return <!+sc1B:: if RU() = 1 Send, Ї ;если русский язык, то ввод I return Еще непонятно, почему цикла нет. Он же закончится после одного нажатия. |
|
Последний раз редактировалось stuermer01, 20-10-2021 в 17:59. Отправлено: 17:54, 20-10-2021 | #3 |
Старожил Сообщения: 193
|
Профиль | Отправить PM | Цитировать Для возможности автоматизации нажатий клавиш и кликов,
установите модуль psClick в PowerShell. Теперь можем отслеживать и подменять нажатые клавиши: cls while($true){ Sleep -m 2 if((Get-KeyboardLayout).Culture -ne "ru-RU"){continue} if(Get-KeyState Decimal){ Send-Key Back Sleep -m 16 Send-Text "." -Handle (Get-FocusWindow) Sleep -m 16 } if(Get-KeyState S){ Send-Key Back Sleep -m 16 if((Get-KeyState LShiftKey) -eq 2) {Send-Text "І" -Handle (Get-FocusWindow)} else {Send-Text "і" -Handle (Get-FocusWindow)} Sleep -m 16 } if(Get-KeyState Oem6){ Send-Key Back Sleep -m 16 if((Get-KeyState LShiftKey) -eq 2) {Send-Text "Ї" -Handle (Get-FocusWindow)} else {Send-Text "ї" -Handle (Get-FocusWindow)} Sleep -m 16 } } Это тоже можно решить, но надо будет делать перехват самих нажатий, что приведёт к увеличению объема кода. Для набора текста этого варианта должно быть вполне достаточно. Кстати, идея насчет замены , на . очень неплохая. |
Последний раз редактировалось Fors1k, 06-11-2021 в 15:13. Отправлено: 22:07, 20-10-2021 | #4 |
Ветеран Сообщения: 2708
|
Профиль | Отправить PM | Цитировать |
|
------- Последний раз редактировалось megaloman, 21-10-2021 в 07:44. Отправлено: 23:53, 20-10-2021 | #5 |
Пользователь Сообщения: 125
|
Профиль | Отправить PM | Цитировать Цитата Fors1k:
Цитата megaloman:
Microsoft Keyboard Layout Creator |
||
Последний раз редактировалось stuermer01, 21-10-2021 в 21:51. Отправлено: 16:35, 21-10-2021 | #6 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата stuermer01:
|
|
Отправлено: 12:47, 23-10-2021 | #7 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Как убрать переход вверх из "Моего компьютера" на "Рабочий стол"? | Yewgeniy | Хочу все знать | 3 | 15-06-2018 17:56 | |
CMD/BAT - [решено] Нужно создать "батник" - вырезать из "2.txt" первых n строк и вставить их в "1.txt" | temphard | Скриптовые языки администрирования Windows | 12 | 10-01-2014 18:36 | |
[решено] При открытие "vk.com", "выкидывает" на страницу для "разморозки страницы" | sovenok | Лечение систем от вредоносных программ | 17 | 21-11-2013 04:09 | |
Разное - [решено] перестала набираться буква "я" и "z", замена клавиатуры ничего не дает | Pavel_aka_KIT | Microsoft Windows 2000/XP | 8 | 18-08-2013 08:50 | |
Запретить/удалить пункт "Programs" ("Программы") из меню кнопки "Start" ("Пуск") | submaster | Microsoft Windows NT/2000/2003 | 5 | 13-09-2006 12:29 |
|