Как стать автором
Обновить

Комментарии 33

MacSwitch.exe не является приложением Win32.

Это только у меня?
скачал файл и проверил на трех компьютерах (Win 10 и Win 7) — работает
у меня win2k3
возможно собрать под эту ось?
НЛО прилетело и опубликовало эту надпись здесь
Под XP(2k3) нужна сборка net-программы x86, а не AnyCPU, иначе ЭТО.
Чем Вам нативный Win+Space в Windows 10 не угодил?
Для систем помладше я ещё понимаю, но в Windows 10\8 эта программа бесполезна.

Кстати, компилировали под какой .net Framework?
.net 4.52. Чем не угодил нативный: у меня на одном компьютере установлена OSX и Windows. Основное время я провожу в маке и пользуюсь маковской клавиатурой. И когда я иногда загружаю виндовс, то в силу вступает привычка. Я переключаю языки не задумываясь, как привык и наличие третьего языка в виндовсе сильно раздражало. Виндовс переключает языки по порядку, а мак — между двумя последними, которые использовали. Сначала в виндовсе не хватало возможности регулировать громкость с маковской клавиатуры, но это легко исправляется через BootCamp 5/6. Ситауцию с переключением пришлось решать написанием этой программы.
А чем обусловлен выбор .net 4.52? Потому что по умолчанию? Отсюда и проблемы запуска на XP\2003 могут быть.

А переключение между двумя последними языками… Видимо, я не понимаю этой прелести потому, что никогда не использовал больше двух.
Но в Windows есть такая фича, как «метод ввода» — на одну и ту же раскладку можно навешать больше одного языка и переключать другим сочетанием. Таким образом, для переключения на редко используемый язык надо делать нажатия на два разных сочетания клавиш.
Не знаю, как на маке переключиться на третью почти не используемую раскладку, но способ Windows мне кажется удобнее.
Выбор ничем не обсуславливался. Делал для себя. Исходники в открытом доступе. Каждый желающий может скомпилировать. Если с этим проблемы, то могу скомпилировать под необходимый фреймверк. Все дело в привычке, а привычки у всех разные. На третью и любую другую раскладке в маке можно переключиться так же как в виндовсе. Разница только в первом нажатии Win+Space. Виндовс переключает на следующий в списке язык, мак — на предыдущий. При последующих нажатиях и мак и виндовс просто переключают по кругу (пока ужерживаем кнопку Win, она же Cmd на маковской клавиатуре).
Господи, я даже не знал про Win+Space, спасибо. Жаль не по центру отображается, как в маке, было бы куда удобнее.
но лично я знаю людей, у которых 4 языка это норма и для них переключение языков доставляет некоторые неудобства из-за чего выбирать нужный язык приходится кликом мышки, а не комбинацией кнопок.


Не знаю, как вы пользуетесь тремя и более языками, но способ OS X мне кажется как раз неудобным. У меня, например, три активных языка, и в то короткое время, когда я пользовался маком, весьма раздражало, что я не мог произвольно переключать между языками простым сочетанием клавиш — нужно смотреть на экран и выбирать язык (если он не в списке последних двух).

В Windows сочетание типа alt+shift переключает языки по кругу, а ещё можно задать конкретное сочетание для конкретного языка, например, LeftAlt+Shift+1.
Хотя, конечно, фиксированные сочетания для языков в винде периодически слетают. (интересно, когда пофиксят? с семёрки ещё баг).
Есть способ обохода этого бага — после настройки сочетаний клавиш нужно применить их к лок-скрину. (Control Panel\Clock, Language, and Region\Language\Advanced settings -> Apply language settings to welcome screen)
У самого три языка и переключение по кругу с помощью Shift+CapsLock вполне удобно. Знаешь, что, например, русский третий в списке, а английский на первом месте — нажимаешь сочетание два раза => профит.
А от фразы "… приходится выбирать кликом мыши...", мне почему-то представляется человек только вчера познакомившийся с «ентим вашим камплютером».

Но за статью все же спасибо.
У меня Windows 7 и я не вижу где выбрать Shift+CapsLock. Это наверное только в новых версиях или с использованием доп программы (PuntoSwitcher например)? Или, возможно, это где-то в другом месте устанавливается? Не подскажите?
У меня Debian просто. :D
На двух мониторах надпись «Язык» показывается только на основном, вне зависимости от активного окна.
Также виснет окно пока не закроется надпись на панели задач.
Windows 7.
Уже много лет что на винде что на линуксе использую хоткей из трёх клавиш для каждого из трёх языков в системе.
Например english — Alt+Shift+1, russian Alt+Shift+2 и тд.
Нажимается легко одной рукой в слепую, настолько удобно что не нужно никаких сторонних приложений и танцов с бубнами.
У винды эта возможность есть прямо в настройках, у линукса прописывается новый хоткей и вешается специальная команда и делов то.
Есть яндексовский Punto Switcher, переключения раскладки «по кругу» использую стандартную комбинацию ALT+SHIFT, а для рус и англ в Punto Switcher настроил на рус одно нажатие на CTRL, а для англ одно нажатие на SHIFT, для меня удобно.
а скайп не подвисает при использовании Вашей переключалки?
скачал последнюю версию скайпа для проверки — не виснет. так же проверил в Skype Preview из Windows 10 — тоже не виснет.
действительно не виснет, но проверил и своё приложение — тоже перестал зависать Скайп при переключении, видимо что-то починили в консерватории.

А вот интересно — на экране показываются сообщения «English» и «русский» — это виндовс такие строки отдает, с разной капитализацией первой буквы или в программе так заложено?
Виндовс так отдает. Я ничего не меняю. Исходный код программы доступен по ссылке в статье.
Попробавал. У меня подвисают все программы — Windows 7 SP1 x64 ENG (раскладки: English (United Kingdom) + RUS + UKR). Skype при этом запущен (v7.26.80.101).

Выключил Skype — все равно подвисает но уже намного быстрее отходит (раза в 2 наверное)… но все равно занимает где-то секунды 3. Когда подвисает то видно что появляется окошко (в панельке задач) этой вот программы (сужу по стандартной VS иконке).
Вот сколько за последние 20 лет добавлялось дополнительных клавиш на клавиатуры, но специальную клавишу переключения языка никто до сих пор не добавил! А такая клавиша была почти на всех советских компьютерах для переключения «Рус/лат».
Вот сколько за последние 20 лет добавлялось дополнительных клавиш на клавиатуры

Внезапно, ни одной! Все экзотические клавиши уже были на Microsoft Natural keyboard 22 года назад, в 1994 году.
При этом Scroll Lock реализует разве что Excel.
А где и когда использовался SysReq я так и не узнал.
В Windows, начиная с Win7 переключение языков можно повесить на сочетания ctrl + 1… ctrl + 0, До Win7 это делалось через alt + shift + цифра. У меня 5 языков и прекрасно работает.
> на маке переключение языков происходит между двумя последними использовавшимися.
Кстати, на винде есть переключение языков И клавиатур.
Например:
Французский язык с французской и английской клавиатурами
Русский язык с русской и английской клавиатурами
Эстонский язык с эстонской и английской клавиатурами

Такое использование полностью меняет user experience.
Что-то не вижу, — где на Win10 можно назначать сочетания клавиш — очень помогло бы — как и писал автор — 4 раскладки не хухры мухры… (Русский, татарский (иногда приходится писать на нём), английский и японский (изучаю его, и порой бывает нужно написать на нём что-то, да и вообще Japanese IME прикольная чтука)
Там же, где и в любой другой Windows:
Панель управления - Язык - Дополнительные параметры - Изменить сочетания клавиш языковой панели
Спасибо за утилитку — сам после мака с трудом привыкаю к виндовому переключению.

С удивлением обнаружил, что системные комбинации срабатывают даже при последовательном нажатии с очень маленькой задержкой. С еще бОльшим удивлением обнаружил, что примерно в 80 % случаев, я именно последовательно их и нажимаю. Соответсвенно при использовании утилиты часто вместо смены языка открывается меню пуск. Я — единственный с таким рассинхроном?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории