Горячая клавиша для переключения языка ввода в Windows 7

Горячая клавиша для переключения языка ввода в Windows 7

Я использую Windows 7 и хотел бы назначить специальную горячую клавишу для переключения между различными языками ввода.

Я знаю, что могу изменить их на Ctrl+ Shift, Left Alt+ Shiftили гравис, но мне не нравится ни один из них. ТАК есть ли способ определить что-то вроде Ctrl+ Spaceдля переключения языка ввода?

решение1

Я думаю, что Windows изначально не поддерживает изменение этих ключей. В любом случае, вы можете написатьАвтоИтскрипт для прослушивания пользовательских сочетаний клавиш и программной отправки в систему одного из предопределенных сочетаний клавиш для изменения раскладки клавиатуры.

;^ = Ctrl
;! = Alt
;# = WinKey (Meta)
;+ = Shift

HotKeySet("^{Space}", "change") ;Registers Control + Space

;Main loop
While 1
    Sleep(100)
WEnd

;Changes Keyboard Layout
Func change()
    Send ("{ALTDOWN}") ;Hold down Alt
    Sleep(100) ;Wait 100 milliseconds
    Send("{LSHIFT}{ALTUP}") ;Press Left-Shift and release Alt
EndFunc

Просто скачайте и установите AutoIt (используйтеэта ссылкадля загрузки и установки) и создайте файл с .au3расширением. Скопируйте и вставьте код выше и сохраните его. Вы можете поместить этот файл в папку «Автозагрузка», если хотите, чтобы он открывался при входе в систему.

решение2

Приведенный выше скрипт у меня не работал, но я его модифицировал, и теперь он работает.

#Include <Misc.au3>
;~ #RequireAdmin
;^ = Ctrl
;! = Alt
;# = WinKey (Meta)
;+ = Shift

HotKeySet("^{Space}", "change") ;Registers Contorl + Space
$dll = DllOpen("user32.dll")

ToolTip("Try to use ^Space"&@CRLF&"!!!!!!!!!!!!!!!!!!!")
Sleep(3000)
ToolTip('')

;Main loop
While 1
    Sleep(100)
WEnd

;Changes Keyboard Layout
Func change()
 While _IsPressed("11",$dll)
  Sleep(10)
 WEnd
 Send ("{ALTDOWN}") ;Hold down Alt
    Sleep(100) ;Wait 100 milliseconds
    Send("{LSHIFT}{ALTUP}") ;Press Left-Shift and release Alt
EndFunc

решение3

В Windows 7 в разделе Панель управления\Язык и региональные стандарты\Клавиатуры и язык выберите «Изменить клавиатуру». Вы увидите небольшое всплывающее окно; там выберите «Дополнительные параметры клавиш», что позволит вам задать комбинации для прямого доступа к каждой целевой клавиатуре, а также общую последовательность клавиш переключения.

решение4

Альтернативный ответ

Если две раскладки клавиатуры не отличаются большим количеством символов, вы можете добавить Alt-модификаторы для иностранного языка (например, стандартные символы американской раскладки на слое Alt немецкой клавиатуры) с помощью такой утилиты, как AutoHotKey или аналогичной.

Или создайтераскладка клавиатуры для ОСчто является более правильным способом сделать это.

  • никогда не придется переключаться и гадать, какой язык активен (может сильно отвлекать)
  • вы можете часто обращаться к слою Alt, и это замедляет ваш поток.

Для некоторых европейских языков можно перемещать символы навсегда, вместо создания слоя.

Например, [] и {} — комбинации Alt/Shift (), а [];:'" — клавиши рядом с üäö, что позволяет сохранить почти обычную американскую раскладку для кодирования и освободить место для символов вашего языка в тех местах, где они обычно находятся.

Связанный контент