Предлагаемый мной способ не является чем-то уникальным и/или неизвестным. В любой из двух поисковых системы вы легко найдёте множество заметок о том, как настроить в Windows переключение языка ввода с помощью любой кнопки клавиатуры, прямо как в Linux, только чуть сложнее и с перезагрузкой. Однако, я так и не нашёл (тут можно меня поправить и предложить в комментариях ссылку) готовой инструкции, включающей в себя и такой немаловажный пункт, как спасение буквы Ё, а равно и обратного апострофа с тильдой. Таковую инструкцию я вам и предлагаю.
Суть проблемы
ОС Windows 7 предоставляет пользователю долгожданную возможность переключать языки ввода по обратному апострофу:
Казалось бы, удобно, но нет. Лично я вижу следующие недостатки:
- маленькая клавиша
- на домашней Linux-машине всё-таки CapsLock настроен
- пропала буква Ё
- пропала тильда и обратный апостроф
Для тех, кто как и я, обречён ходить на develop/production сервера с использованием PuTTY, потеря тильды и обратного апострофа весьма чувствительна. Я не выдержал и месяца, хотя, казалось бы, как легко запомнить Alt+126 и Alt+96. Надо что-то делать!
Меняем скан-коды
Решение для переключения раскладки по CapsLock — это переопределение скан-кодов через реестр. Есть множество описаний как это сделать. Я могу предложить прочитать одно из них по ссылке: www.howtogeek.com.
Готовый результат выглядит вот так (файл SwitchLangByCaps.reg):
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlKeyboard Layout] "Scancode Map"=hex:00,00,00,00,00,00,00,00,04,00,00,00,29,00,3a,00,3a,00,46,00,56,00,29,00,00,00,00,00
Как можно видеть, в реестре прописывается одно или несколько правил подмены вида:
<что выдавать, если><пришёл такой сканкод><что выдавать, если><пришёл такой сканкод>...
Так что нам надо распланировать алгоритм перестановки. Первая перестановка очевидна — по нажатию CapsLock (0x3a) эмулировать нажатие на Ё (0x29). Вторая тоже примерно понятна — для того, чтобы всё-таки оставить функциональность капса, требуется переназначить на него какую-нибудь ненужную клавишу. В моём примере этой клавишей оказался ScrolLock (0x46). А вот третья перестановка отвечает за спасение буквы Ё. Для этого хитрого кода нам нужна «ненужная клавиша» с текстовой клавиатуры, Pause/Break не подойдёт. Однако, тут нам повезло. Даже на полностью задействованной русскоязычной раскладке клавиатуры есть дублирующиеся клавиши:
Вот эта кнопка в левом нижнем углу и подойдёт на роль замены букве Ё, а равно и тильде с обратным апострофом. Имеет она сканкод 0x56 и отсутствует на большинстве клавиатур, так что именно её будем эмулировать при нажатии на Ё-кнопку.
На этом этапе можно произвести изменения в реестре и отправить машину в перезагрузку.
Добавляем раскладки
Как несложно догадаться, после перезагрузки вместо буквы Ё мы получим косую черту. Для исправления ситуации, требуется поправить имеющуюся клавиатурную раскладку. Редактировать раскладки клавиатуры можно посредством утилиты Microsoft Keyboard Layout Creator 1.4. Использование программы несложно — загружаем исходную клавиатуру из списка, делаем изменения (меняем символы клавиши 0x56 на требуемые буквы Ёё), сохраняем source-файл и собираем установочный пакет из меню Project.
Ту же операцию следует проделать и с английской клавиатурой, изменив поведение обратного слэша на обратный апостроф и тильду.
В результате должны получиться две папки с установочным пакетом для клавиатурной раскладки. Выполняем установку каждой, запуская setup.exe и переходим к следующему шагу.
Настройка раскладок
Открываем «языковые настройки». Для начала, выставьте переключение раскладок по Grave accent, как показано на первой картинке этой статьи. Затем добавьте только что установленные раскладки: US-Custom и Russian-Custom. И наконец, установите дефолтный ввод через US-Custom. Это необходимо, так как раскладку US удалить не получится, но в этом тоже есть плюс — теперь при смене языка ввода меняется размер значка в трее и гораздо легче заметить, попал ли ты по CapsLock или промахнулся. Результат должен выглядеть как-то так:
Если всё прошло удачно, то вы получили возможность переключения языков ввода по CapsLock, не поплатившись за это ничем существенным. Можно спокойно покупать в офис и на работу одинаковые клавиатуры и, не задумываясь больше над алгоритмом переключения, получать удвоенное удовольствие от слепой десятипальцевой печати.
Приложение
Готовые проекты раскладок, их исходники и патч к реестру можно найти по ссылке: Я.Диск.
Примечание
Проверено на win7 и win10. На 10-ке использовались уже скомпилённые проекты, ссылка на которые дана выше.
Делаем так, чтобы при нажатии Caps Lock в Windows 10 менялась раскладка клавиатуры.
Не помню точно момент, когда я стал на всех машинах и ОС перебивать дефолтный Shift + Alt на Caps Lock. Хотелось попробовать, а рациональные аргументы были такие, что меньше кнопок жать, и вообще капс никто и нигде не использует. Сейчас я уже настолько к этому привык, что по-другому просто неудобно.
AutoHotkey — скриптовый язык
Если в Linux Mint надо просто ткнуть галочку в гуе настройки клавы, то в винде из коробки так сделать не дают. Поэтому будем использовать софтину AutoHotkey. Бесплатная, опенсорсная, GPL.
Вообще говоря, AutoHotkey — это скриптовый язык, который позволяет делать макросы, биндить что-то на сочетания клавиш и прочее. Вероятно, потенциал у программы больше, чем просто перебиндить одну клавишу, но другими функциями пользоваться, увы, не доводилось.
Скачиваем AutoHotkey (версию 1.1*)
Идем на официальный сайт AutoHotkey и скачиваем установщик, устанавливаем.
Стоит отметить, что речь в этом тексте идет про версию v1.1.28.02. В альфа тестировании находится вторая версия, в которой будет сломана обратная совместимость. Я попробовал было ее, но с разбегу старый скрипт не завелся.
Создаем скрипт
В любом текстовом редакторе создаем файл с произвольным именем и расширением .ahk
(UTF-8, CRLF). Например caps_to_change_kb_layout.ahk
. Содержимое такое:
SendMode Input
SetWorkingDir %A_ScriptDir%
CapsLock::Send, {Alt Down}{Shift Down}{Shift Up}{Alt Up}
Надо сделать так, чтобы файлы .ahk
ассоциировались с AutoHotkey. Поэтому щелкаем два раза на созданный скрипт или «Открыть с помощью», выбираем AutoHotkey, «Всегда использовать это приложение для открытия .ahk файлов». Уже после этого можно потыкать капс — раскладка должна меняться.
Добавляем в автозапуск
Если не лень или не всегда надо, можно все время запускать скрипт руками. Чтобы скрипт запускался сам, я закинул его в папку C:UsersyourusernameAppDataRoamingMicrosoftWindowsStart MenuProgramsStartup
, где yourusername
— имя вашего пользователя.
По русски путь будет такой: C:ПользователиyourusernameAppDataRoamingMicrosoftWindowsГлавное менюПрограммыАвтозагрузка
.
После этого при загрузке винды будет выполняться скрипт и можно будет менять раскладку по Caps Lock. В трее будет иконка AutoHotkey.
А если я хочу писать капсом?
Тогда жмем Shift + Caps Lock.
Post Views:
4 188
Как в Windows 10 настроить переключение раскладки языка с помощью Caps Lock? Не думал, что в ультра современном и продвинутым Microsoft, простейшая настройка может обернуться такими сложностями.
задан 30 окт 2022 в 1:22
Поставь Punto Switcher — там есть такая настройка. Только не забудь автопереключение выключить и запуск от администратора отметить (а то в программах от админа работать не будет). Ну и остальные опции по желанию расставить.
ответ дан 30 окт 2022 в 2:21
Qwertiy♦Qwertiy
119k24 золотых знака117 серебряных знаков285 бронзовых знаков
2
Сразу надо сделать оговорку: смена раскладки клавиатуры и языка ввода – это разные вещи, и вы в этом убедитесь немного позже. Однако среди пользователей ПК в большинстве случаев эти два понятия воспринимаются за синонимы, и в рамках данной статьи не будем нарушать эту традицию дабы не вносить путаницу.
Метод 1. Штатные возможности Windows
В поисковом окне Windows 10 наберите слово «клавиатуры» и в результатах поиска кликните на пункт «Параметры ввода с клавиатуры».
«>
В открывшемся окне кликните на пункт «Дополнительные параметры клавиатуры» — «Сочетания клавиш для языков ввода».
Откроется окно «Языки и службы текстового ввода», где надо перейти на закладку «Переключение клавиатуры» и нажать кнопку «Сменить сочетание клавиш».
Нас интересует настройка смены языка ввода. Оказывается, штатными средствами Windows это можно делать нажатием всего лишь одной кнопки Ё, или знака ударения. Попробуйте активировать эту опцию и проверить.
Всё казалось бы хорошо, и первоначальная задача, которая была поставлена в начале статьи, решена. Однако данный метод имеет несколько существенных минусов:
- Вы не сможете больше набрать букву Ё в тексте, так как при её нажатии будет сразу меняться язык ввода.
- Указанная клавиша находится в верхней части клавиатуры и тянуться к ней любым из пальцев далеко и неудобно. Конечно со временем можно и привыкнуть, но это не мой вариант.
По этой причине можно выбрать другой, более подходящий для вас способ быстрой смены раскладки.
Метод 2. Бесплатная утилита AutoHotkey
При помощи маленькой утилиты AutoHotkey, имеющей открытый исходный код и лицензию GPL, вы можете переключать язык ввода нажатием какой угодно клавиши. Многие изначально останавливаются на Caps Lock.
/webtous.ru/wp-content/uploads/2020/06/capslock-key-300×86.jpg» target=»_blank»>https://webtous.ru/wp-content/uploads/2020/06/capslock-key-300×86.jpg 300w» sizes=»(max-width: 800px) 100vw, 800px» />
Во-первых, она удобно расположена для быстрого нажатия вслепую. Во-вторых, данную клавишу я не использую вообще, а потому лично для меня она относится к разряду бесполезных, наряду с Scroll Lock, Pause Break, Home.
Итак, первым делом скачиваем и устанавливаем саму утилиту с официального сайта. Она не имеет никакого интерфейса или настроек, так как по сути даже не является софтом, а просто скриптовым языком, позволяющим запускать различные макросы.
Создадим макрос для смены раскладки клавиатуры при нажатии Caps Lock. Он будет выглядеть следующим образом:
SendMode Input
SetWorkingDir %A_ScriptDir%CapsLock::Send, {Alt Down}{Shift Down}{Shift Up}{Alt Up}
Откройте любой текстовый редактор, например штатный Блокнот, скопируйте и вставьте туда данный код и сохраните файл с именем capslock_language_change.ahk
Имя может быть любое, но расширение непременно .ahk
Теперь ассоциируем данный файл с AutoHotkey. Нажимаем на нем правой клавишей мыши – Открыть с помощью – AutoHotkey. Обязательно отметить галочкой пункт «Всегда использовать это приложение для открытия .ahk файлов».
На данном этапе уже можно нажать Caps Lock и убедиться, что языковая раскладка клавиатуры меняется. Согласитесь, очень удобно.
Напоследок следует сделать так, чтобы созданный нами скрипт запускался автоматически при каждом старте Windows. Для этого созданный нами файл переносим в папку C:ПользователиИмяПользователяAppDataRoamingMicrosoftWindowsStart MenuProgramsStartup
Не забудьте включить в проводнике отображение скрытых элементов, чтобы найти указанные выше системные папки.
На этом дело сделано. Теперь при нажатии Caps Lock у вас всегда будет меняться язык ввода с русского на английский и наоборот (если иные языки не заданы вами в настройках ОС).
А если вам вдруг понадобится воспользоваться указанной клавишей для перевода набираемого текста в верхний регистр, используйте сочетание клавиш Shift + Caps Lock.
Итог
Многие используют второй метод и крайне им довольны. Теперь при наборе текста не будет «осечек» с переключением языков.
Утилиту AutoHotkey вы можете использовать для написания и запуска макросов не только смены раскладки клавиш и их переназначения, но и для решения различных иных всевозможных задач: автоматическое заполнение форм, автонажатие по кнопкам, автозапуск программ, автонабор текста и пр.
Содержание
- Смена языковой раскладки в Виндовс 10
- Windows 10 (версия 1809)
- Windows 10 (версия 1803)
- Windows 10 (до версии 1803)
- Дополнительно
- Заключение
- Вопросы и ответы
«Десятка», будучи последней версией Windows, обновляется довольно активно, и у этого есть как достоинства, так и недостатки. Говоря о последних, нельзя не отметить тот факт, что в попытке привести операционную систему к единому стилю, разработчики из Microsoft часто меняют не только внешний вид некоторых ее компонентов и элементов управления, но и просто перемещают их в другое место (например, из «Панели управления» в «Параметры»). Подобные изменения, причем уже в третий раз менее чем за год, затронули и средство переключения раскладки, отыскать которое сейчас не так-то просто. Мы же расскажем не только о том, где его найти, но и как настроить под свои нужды.
Читайте также: Изменение языка ввода в Windows 10
На момент написания данной статьи, на компьютерах большинства пользователей «десятки» установлена одна из двух ее версий – 1809 или 1803. Обе они вышли в 2018 году, с разницей буквально в полгода, поэтому назначение комбинации клавиш для переключения раскладки в них осуществляется по схожему алгоритму, но все же не без нюансов. А вот в прошлогодних версиях ОС, то есть до 1803, все делается совсем иначе. Далее мы рассмотрим, какие действия требуется выполнить отдельно в двух актуальных версиях Windows 10, а затем и во всех предшествующих им.
Читайте также: Как узнать версию Виндовс 10
Windows 10 (версия 1809)
С выходом масштабного октябрьского обновления операционная система от Майкрософт стала не только более функциональной, но и куда более целостной в плане внешнего вида. Управление большинством ее возможностей осуществляется в «Параметрах», и для настройки переключения раскладки нам потребуется обратиться именно к ним.
- Откройте «Параметры» через меню «Пуск» или нажмите «WIN+I» на клавиатуре.
- Из списка представленных в окне разделов выберите «Устройства».
- В боковом меню перейдите во вкладку «Ввод».
- Пролистайте вниз перечень представленных здесь опций
и перейдите по ссылке «Дополнительные параметры клавиатуры». - Далее выберите пункт «Параметры языковой панели».
- В открывшемся окне, в списке «Действие», нажмите сначала по пункту «Переключить язык ввода» (если до этого он не был выделен), а затем по кнопке «Сменить сочетание клавиш».
- Оказавшись в окне «Изменение сочетания клавиш», в блоке «Смена языка ввода» выберите одну из двух доступных и хорошо всем знакомых комбинаций, после чего нажмите «ОК».
- В предыдущем окне поочередно кликните по кнопкам «Применить» и «ОК», чтобы закрыть его и сохранить заданные вами параметры.
- Внесенные изменения сразу же вступят в силу, после чего вы сможете переключать языковую раскладку посредством установленной комбинации клавиш.
Вот так легко, хотя и отнюдь не интуитивно понятно, настраивается смена раскладки в последней на сегодняшний день (конец 2018 года) версии Виндовс 10. В предшествующих ей все делается более очевидно, о чем и расскажем далее.
Windows 10 (версия 1803)
Решение озвученной в теме нашей сегодняшней задачи в данной версии Виндовс тоже осуществляется в ее «Параметрах», правда, в другом разделе этого компонента ОС.
- Нажмите «WIN+I», чтобы открыть «Параметры», и перейдите к разделу «Время и язык».
- Далее перейдите во вкладку «Регион и язык», расположенную в боковом меню.
- Пролистайте в самый низ перечень доступных в данном окне опций
и перейдите по ссылке «Дополнительные параметры клавиатуры».
- Выполните действия, описанные в пунктах №5-9 предыдущей части статьи.
Если сравнивать с версией 1809, можно смело сказать, что в 1803 расположение раздела, предоставляющего возможность настройки переключения языковой раскладки, было более логичным и понятным. К сожалению, с обновлением об этом можно забыть.
Читайте также: Как обновить Виндовс 10 до версии 1803
Windows 10 (до версии 1803)
В отличие от актуальных «десяток» (по крайней мере, на 2018 год), настройка и управление большинством элементов в версиях до 1803 осуществлялось в «Панели управления». Там же мы с вами можем задать свою комбинацию клавиш для смены языка ввода.
Читайте также: Как открыть «Панель управления» в Виндовс 10
- Откройте «Панель управления». Проще всего это сделать через окно «Выполнить» — нажмите «WIN+R» на клавиатуре, введите команду
«control»
без кавычек и нажмите кнопку «ОК» или клавишу «Enter». - Переключитесь на режим просмотра «Значки» и выберите пункт «Язык», либо, если установлен режим просмотра «Категория», перейдите к разделу «Изменение способа ввода».
- Далее, в блоке «Переключение методов ввода» кликните по ссылке «Изменить сочетание клавиш языковой панели».
- В боковой (левой) панели открывшегося окна нажмите по пункту «Дополнительные параметры».
- Выполните действия, описанные в шагах №6-9 части данной статьи «Windows 10 (версия 1809)», рассмотренной нами в первую очередь.
Рассказав о том, как настраивается сочетание клавиш для смены раскладки в старых версиях Виндовс 10 (как бы странно это не звучало), мы все же возьмем на себя смелость порекомендовать вам обновиться, в первую очередь, из соображений безопасности.
Читайте также: Как обновить Windows 10 до последней версии
Дополнительно
К сожалению, заданные нами настройки переключения раскладки в «Параметрах» или «Панели управления» применяются только ко «внутренней» среде операционной системы. На экране блокировки, где для входа в Windows вводится пароль или пин-код, по-прежнему будет использоваться стандартная комбинация клавиш, она же будет установлена для других пользователей ПК, если таковые есть. Изменить такое положение дел можно следующим образом:
- Любым удобным способом откройте «Панель управления».
- Активировав режим просмотра «Мелкие значки», перейдите к разделу «Региональные стандарты».
- В открывшемся окне откройте вкладку «Дополнительно».
- Важно:
Для выполнения дальнейших действий необходимо обладать правами администратора, ниже представлена ссылка на наш материал о том, как их получить в Виндовс 10.
Подробнее: Как получить права администратора в Windows 10
Нажмите по кнопке «Копировать параметры».
- В нижней области окна «Параметры экрана…», которое будет открыто, установите галочки напротив только первого или сразу двух пунктов, расположенных под надписью «Копировать текущие параметры в», после чего нажмите «ОК».
Для закрытия предыдущего окна тоже нажмите «ОК».
Выполнив вышеописанные действия, вы сделаете так, что комбинация клавиш для переключения раскладки, настроенная на предыдущем этапе, будет работать в том числе на экране приветствия (блокировки) и в других учетных записях, если таковые имеются в операционной системе, а также в тех, которые вы будете создать в будущем (при условии, что был отмечен и второй пункт).
Заключение
Теперь вы знаете, как настроить переключение языковой раскладки в Windows 10, независимо от того, установлена ли на вашем компьютере последняя ее версия или одна из предыдущих. Надеемся, эта статья была полезна для вас. Если же по рассмотренной нами теме остались вопросы, смело задавайте их в комментариях ниже.
Многие пользователи Windows знают, что переключать раскладку языка в системе можно разными способами. Кто-то предпочитает делать это мышкой, кто-то же привык пользоваться для этого горячими клавишами.
Обычно в качестве горячих клавиш используется комбинация Alt+Shift илиCtrl+Shift. Некоторые при этом знают, что переключить язык в Windows можно также через клавишу Win+Пробел. Мне часто приходится переключать раскладки во время набора текста и для меня удобнее всего переключать язык через однократное нажатие кнопки Caps Lock. Вместо того, чтобы пользоваться этой кнопкой по прямому назначению, я изменил ее поведение на то, которое мне нужно. В этой статье расскажу, как настроить приключения раскладки в Windows по кнопке Caps Lock.
Cмена языка в Windows по Caps Lock
Настроив переключение языка в Windows по Caps Lock, мы лишаемся возможности набирать текст заглавными буквами. Для этого теперь придется постоянно удерживать клавишу Shift, но по мне, так это не велика потеря.
К сожалению, простого пути через настройки Windows, переключать язык не выйдет. Но выход есть, для этого можно воспользоваться утилитой Punto Switcher, которая предназначена для автоматической корректировки раскладки, когда вы неправильно набрали текст. Автопереключение мы выключим (на всякий случай), а Caps Lock установим в качестве кнопки для переключения раскладки.
Качаем Punto Switcher по ссылке ниже.
Устанавливаем программу как обычно. Программа запустится и возле часов у вас появится значок с раскладкой.
Теперь у нас два значка, которые только сбивают с толку. Сейчас мы его уберем, но для начала, сделаем настройки.
Первым делом выключаем автопереключение языка, которое через месяц будет вас бесить. Жмем правой кнопкой мыши по значку и выключаем автопереключение.
После этого идем в настройки.
В разделе Общие выключаем проверку обновлений (там уже сто лет ничего не обновляется)
Также выключаем показывать полезные советы в самом низу раздела Общие.
Дальше, для того чтобы сделать переключение раскладки по Caps Lock в Windows, ставим переключатель Переключать по. Выбираем в списке Caps Lock. А также можно выбрать только русский/английский. Эта настройка не обязательна.
После этого язык в вашей системе будет меняться по Caps Lock. Внимание: в некоторых приложениях переключение языка по капс локу не работает, тогда нужно переключать язык обычными хоткеями Windows.
Кроме того, иногда настройка переключения раскладки по Caps Lock слетает и весь текст начинает писаться КАПсом. Чтобы вылечить эту проблему, открывайте настройки Punto Switcher и отключите пункт Переключать по и снова включите его. Проблема должна исчезнуть.
Настроить переключение раскладки по Caps Lock можно в любой системе Windows. Проверено на Windows 10 и Windows 11.
Чтобы больше не смотреть на два значка переключения языка на панели задач, просто берем значок Punto Switcher и тянем его на стрелку вверх, где и оставляем его.
В macOS можно очень удобно назначить переключение раскладки на Caps Lock (а когда нужно включить именно Caps — просто зажать его). Из-за специфики работы приходится работать на Windows, а потому захотелось подобного решения, и оно есть — AutoHotkey.
Скачиваем AutoHotkey с официального сайта.
Открываем в проводнике директорию с автозапуском:
%USERPROFILE%AppDataRoamingMicrosoftWindowsStart MenuProgramsStartup
Создаем новый текстовый файл с таким содержимым:
SendMode Input
SetWorkingDir %A_ScriptDir% CapsLock::Send, {Alt Down}{Shift Down}{Shift Up}{Alt Up}{Ctrl Down}{Shift Down}{Shift Up}{Ctrl Up}
Переименовываем файл в caps_to_change_kb_layout.ahk
(название любое, расширение должно быть ahk
).
Запускаем файл. Впоследствии он будет запускаться автоматически при входе в систему.
P.S. Можно указать в скрипте только нужную комбинацию для переключения раскладки — Ctrl+Shift или Alt+Shift. Локально я использую Ctrl+Shift, а на удаленных серверах по RDP по умолчанию настроен Alt+Shift, поэтому в скрипте обрабатываются одновременно оба варианта.
P.P.S. Переключение раскладки по Caps Lock не работает в оснастке Active Directory и иногда слетает при подключении по RDP (в последнем случае нужно просто через ПКМ по иконке AutoHotkey в трее перезапустить скрипт).