16
января
2008

Индикатор клавиатурной раскладки

Этот пост был задуман около месяца назад. Индикатор активной клавиатурной раскладки (элементарная, казалось бы, вещь) — одна из задач дизайна интерфейсов, неэффективное решение которой стало традиционным. В любой операционной системе с графическим интерфейсом, для отображения текущего языка ввода, сегодня используют значек в углу экрана:

Решение привычное для абсолютного большинства пользователей, но совершенно неработающее. Для подтверждения достаточно оценить количество описок возникающих из-за неправильного языка ввода (а так же количество разных слов, исторгаемых пользователями, когда они поднимают глаза с клавиатуры на экран и обнаруживают, что набрали последние несколько фраз на «марсианском» диалекте).

При наборе текста, взгляд обращен к области на экране, где появляются буквы, или к клавиатуре. Второй вариант встречается даже чаще, т.к. далеко не многие умеют печать, не глядя на кнопки. Постоянно контролировать состояние индикатора в углу экрана неудобно, особенно, если монитор — 30", или этих мониторов стоит перед человеком 4 штуки.

Как не сложно догадаться, для того чтобы пользователь мог постоянно знать активный язык ввода, не отвлекаясь от набора текста, необходимо, чтобы индикатор находился в поле его зрения (варианты с невизуальной индикацией рассматривать не будем, — в этом контексте такие решения будут выглядеть слишком экзотически и неоправданно-сложно).

Некоторое время назад мне на глаза попадалась программа, меняющая цвет рамки активного окна, в соответствии с выбранной раскладкой. Идея гораздо более правильная, чем стандартная пиктограмма: цвет рамки почти всегда заметен боковым зрением и не требует лишний раз отрывать взгляд. Тем не менее, у программы были свои минусы. Например, при развороте окна на весь экран, рамка оставалась за пределами видимости. Кроме того, жирная граница нарушала целостновть стандартного стиля UI, придавая окнам аляповатый вид.

У меня у самого была идея сделать аппаратное решение: достаточно яркий светодиондный индикатор с двумя цветами, вмонтированный в клавиатуру или установленный у края монитора, мог бы отображать своим цветом текущую раскладку и быть всегда заметным боковым зрением. Решение тоже не идеальное, в первую очередь, из-за трудоемкости и нежелательности лишних проводов на столе.

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

На Хабрахабре некто eXtractor предложил отличную идею индикатора раскладки и несколько неполную ее программную реализацию (не в обиду автору будь сказано, за инициативу, в любом случае, — респект). В комментариях к его посту тут же нашлась ссылка на уже сущетвующую и более точную реализацию идеи.

Эта идея затмила своей простотой все предшествующие варианты. Решение настолько очевидное, что даже удивительно, почему оно до сих пор не реализовано, как стандартная опция в распространенных ОС.

Программа Comfort Lang Switcher переносит индикатор раскладки непосредственно туда, куда смотрит пользователь — к текстовому курсору. И это прекрасно.

У CLS есть пара недостатков. Первый из них — неработоспособность в некоторых программах. В частности в Firefox (в том числе, в формах на веб-страницах), Open Office и Corel Draw. Две последние для меня не актуальны, а вот отсутствие флажка в Firefox — мелочь, но непрятно, т.к. к хорошему быстро привыкаешь.

Второй недостаток — платность. И дело здесь не в том, что жалко послать автору за труды эти 12$, а в том, что сделать это из Росии — совершенно фиг-его-знает-как.

Кстати, у программы есть более развитая версия — Comfort Keys, относящаяся к категории интерфейсных твикеров-приблуд для Windows, которые, по большей части, я терпеть не могу. В ней присутствует огромное количество функций, возможно, полезных для какой-то категории пользователей. Но для себя я нашел всего одну действительно-полезную вещь — отображение флажка около курсора. Все остальное тут же захотелось отключить, хотя в полной мере сделать это, к сожалению, нельзя. Например она, не спрашивая разрешения, заменяет собой стандартный вид окна Task switcher-а. В принципе, новый вариант более функционален, но раздражал своей нестандартностью. Так что расширенную версию я снес, ограничившисьузко-специализированной CLS.

PS: Ссылки на кряк здесь не будет. Ибо девелопер, проповедующий пиратство, подобен корове, пропагандирующей говядину.

Ссылки по теме:

  • Comfort Lang Switcher homepage.
  • Flean (программа Экстрактора с Хабра).
  • Aml Maple — похожая по идее программа, отображающая флажок около курсора мыши. На мой взгляд, менее удачное решение, т.к. мышиный курсор при наборе текста может быть неизвестно где. Программа вроде бы бесплатна.

Комментарии к заметке «Индикатор клавиатурной раскладки»

# MiRacLe: (17 января, 2008 @ 00:53)

А я вот не соглашусь с тем что Aml Maple менее удачное решение. Постоянно маячащий флажок быстрее потеряет смысл (его просто перестанешь замечать через некоторое время – он станет частью фона), а aml maple показывает этот самый флажок лишь тогда, когда это “надо” – пользуюсь её много лет и доволен как слон :)

# admin: (17 января, 2008 @ 01:01)

MiRacLe: Определенная логика есть, но я в своей оценке руководствовался тем, что курсор мыши может быть, например, задвинут за правую границу окна и по-любому придется минимум “ездить” взгляд по всему экрану, чтобы узнать активную раскладку.
Посмотрим, приживется ли у меня CLS. Пока что за день использования смысл флажка никуда не потерялся (:

# MiRacLe: (17 января, 2008 @ 01:23)

Ну и у меня логика проста как три копейки – обычно чтобы понять какая раскладка используется в данный момент нужно ДО ввода, т.е. когда ставишь фокус в редактируемое поле, а я его(фокус) в 90% случаев ставлю курсором мыши…

# MiRacLe: (17 января, 2008 @ 01:26)

Ну и у меня логика проста как три копейки – обычно понять какая раскладка используется в данный момент нужно ДО ввода, т.е. когда ставишь фокус в редактируемое поле, а я его(фокус) в 90% случаев ставлю курсором мыши…

# larin: (17 января, 2008 @ 11:14)

@admin
Большое спасибо за пост. Поставил себе Aml Maple и радуюсь. Действительно удобная и легкая вещь.

# admin: (17 января, 2008 @ 15:38)

larin: Прикол в том, что информационным поводом для поста стал анонс Flean, я в своем тексте расхваливал Comfort Lang Switcher, а судя по комментам, все выбрали для себя Aml Maple (: Пожалуйста, anyway.

# bonusov: (17 января, 2008 @ 23:03)

очень удабная штука. спасибо!

# eXtractor: (19 января, 2008 @ 12:25)

Спасибо.

В следующей версии Flean будет опция показа флажка рядом с текстовой кареткой.

# eXtractor: (19 января, 2008 @ 12:41)

День добрый.
В следующей версии Flean будет опция показа флажка рядом с текстовой кареткой.

# admin: (19 января, 2008 @ 13:39)

eXtractor: очень ждем следующую версию. До конца trial period Comfort Lang Switcher’a у меня на компе осталось где-то 28 дней :)

# al777: (19 января, 2008 @ 23:55)

а когда обещают новую версию?

# eXtractor: (22 января, 2008 @ 13:49)

На этой неделе.

# Алексей: (5 февраля, 2008 @ 14:41)

Я тоже попробывал Maple.Вроде ничего

# tigso: (1 июня, 2008 @ 07:12)

Скачал flean, проверяю. Хочу запустить блокнот. Нажимаю Win+R, и получаю окно без фокуса, ну ладно, alt+tab, набираю notepad — и опять неактивное окно, alt+tab, ладно печатаю, и опять несколько раз фокус пропадает. Так что пока программа больше неудобств создает. Лично для меня такая функция нужна была бы там, где часто меняю раскладку, а это OO Writer и firefox. Но как раз в них эта программа не работает. Так что автору — за идею отл, реализацию — на “пересдачу”.

Кто свободно владеет английским – подкиньте аналогичную идею разработчикам плагинов для Firefox. Или давайте сами напишем, только мне еще не приходилось этим заниматься.

# Imqer: (24 июля, 2008 @ 23:55)

Это смотря про какую Aml Maple говорить…
Старые версии 1.хх поддерживали только индикацию в курсоре мыши. А вот версии 2.хх поддерживают индикацию и в текстовом курсоре. Она меняет цвет текстового курсора, и (опционально) умеет кстати показывать и аббревиатуру языка вроде ru/en в этом цветном курсоре. Причем работает это всё прекрасно и в той же Opera, и Corel`е точно также. Да в фотошопе фуручит, и в формах в IE, а не только в адресной строке IE.
Опять же повторюсь и в Opera работает отлично. Я не разу не ошибся набирая “Opera” в самой же Опере, печатая этот текст, именно потому что Мапля рулит – цвет, буквы языка, флаг страны – ВСЁ работает!
Ну, а новая версия 2.10 умеет показывать и флажок в текстовом курсоре, точно также как и в мышином.
Причем все 3 варианта полностью опциональны: не нравится что-то, неудобно, не по душе – дык нет проблем. Хотите флажков – включайте флажки, хотите буквы – нате вам буквы, хотите в текстовом курсоре – пожалста, хотите в мышином – так же просто.
Вообще говоря большая часть всех этих возможностей есть уже очень давно. Только чтобы о них знать нужно все-таки прочесть описание или тот же ридми (опять же есть и русский) из ZIP-архива, в конце концов хотя бы просто кликнуть по иконки Мапли в трее.

# Oleg: (2 декабря, 2009 @ 14:25)

В Comfort Lang Switcher есть комбинации клавиш для быстрого исправления регистра букв и перекодирования выделеного текста на другой язык. Можно выбрать сочетание клавиш для переключения языка ввода. Также можно задать степень прозрачности индикатора флага при наборе текста и отображение флага языка в трее. Всего этого нет в Aml Maple.

Я выбираю CLS!

# GreIVI: (31 декабря, 2009 @ 21:07)

На днях появилась новая идея и я написал программу, которая переносит индикатор раскладки туда, куда действительно смотришь при наборе текста – на клавиатуру. Точнее говоря, на индикатор Scroll Lock. Кому интересно, лежит на grem.net.ru

Написать комментарий

Можно использовать следующие HTML теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> .