Leopard и переключение раскладок

Совсем недавно перебравшись с Windows на Mac OS X Leopard, я, разумеется, столкнулся со множеством непривычных вещей. Многочисленные отличия этой системы заставляют много думать, т.к. становится интересно: а почему разрабочики сделали именно так. Потому что от них — от разработчиков — ожидаешь тщательного подхода к деталям интерфейса. Об одной такой детали я и хотел бы поразмышлять вслух и послушать сведущих людей. Это переключение раскладок клавиатуры.


Одно из отличий Mac OS от Windows, касающихся раскладок клавиатуры, заключается в том, что в Windows при переходе в другое приложение текущая раскладка запоминается, а потом при возвращении восстанавливается. (Где-то я читал, что такое же поведение было свойственно и Tiger). Почему же в Leopard не так?

Возможно, причина кроется в стремлении избежать режимы (которое мне лично импонирует). Вот что про это пишет Джеф Раскин:

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

«Интерфейс: новые направления в проектировании компьютерных систем», 3.2.2


То есть, чтобы пользователю не приходилось следить за тем, какое у него приложение активно, чтобы раскладки не переключались как будто самопроизвольно, возможно, и было сделано так, как это сделано.

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

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

А что вы думаете по этому поводу?
+4
13 мая 2008, 07:16
anatoly_rr 97,8

комментарии (38)

+5
BuriK666 #
в Pidgin (да, это реклама) я чаще всего пишу русскими буквами, а в IDE/консоли и т.д. я пишу английскими. и мне удобнее чтоб состояние раскладки сохранялось для каждого приложения свое.
0
anatoly_rr #
Мне тоже так удобнее, нпаример, когда я перевожу: перевод я пишу по-русски, а слова в лингве смотрю – английские.

Я про то, что если что-то делать – то делать до конца. Потому что у отсутствия режимов тоже есть свои плюсы. Если уж принимать решение следовать такой парадигме, то нужно это делать последовательно. А то получается ни то ни сё.
+1
quark #
У меня миранда поснит раскладку для каждого таба - архиудобно...
0
quark #
поМнит, извините...
–1
izen #
>находится в локусе внимания
исправьте пожалуйста))
+6
anatoly_rr #
не, все правильно: речь идет не про фокус, а именно про локус.
+2
izen #
Впервые слышу))0_0 Спасибо за развитие моего кругозора)
0
anatoly_rr #
ох, психологов и когнитивистов почитать — и не такого насмотреться можно! ;)
+6
banzalik #
> А что вы думаете по этому поводу?

на самом деле это баг, просто баг, у Apple не самая лучшая региональная поддержка.

Примеров достаточно:
- проверка грамматики
- раскладка
- перевод некоторых папок (ну блин, кто придумал написать "Общий почтовый ящик" для папки incoming)

использую inputswitcher, он позволяет запоминать язык для каждого приложения, иногда глючит, но в целом юзабельно.
–1
mg2i #
Замечал за сабой, что когда приходится в разных приложениях писать на разных языках, то поведение Windows просто раздражает. Как отключить это не нашел.
0
kortunov #
о боже, такую теорию подвели под банальный баг. кстати, я не заметил какого-то особого поведения раскладки в леопарде, по сравнению с тигром. да что греха таить, я не заметил особой разницы с windows, только клавиши другие переключают и все. что я делаю не так?
0
unclegluk #
В Тайгере запятая на русском языке набирается через Shift+6, а точка Shift+7 и это никак не изменить. На Леопарде можно поставить виндовую раскладку и разницы с виндами не будет. А если еще и сменить шорткат для переключения раскладок на виндовый, то разницы не будет ВООБЩЕ.
0
kortunov #
Ну, собственно, я об этом и писал. Кстати, яблоко+пробел намного удобнее, чем виндовые ctrl-shift, так как не нужно тянуться к краю клавиатуры.
0
black_voron #
это да, но работая в фотошопе и флеше приходится от такой комбанации отказатся так как яблоко+пробел - увеличение масшатаба, и раскладка постоянно переключается. а яблоко+shift или control+shift поставить невозможно, по этой причине я сейчас в неведеньи
0
kortunov #
я, наверное, в каком-то другом фотошопе работаю. у меня всегда и везде работает яблоко+пробел. а увеличение в фотошопе это яблоко+"+"... ааааа, я кажется понимаааю
0
quark #
Ukelele - оно может все :)
0
ognevsky #
В тигре можно скачать эту раскладку, которая в леопарде (как я узнал позавчера) предустановлена. И клавиши будут как в винде.
0
anatoly_rr #
Да не, не подводил я теории :) Просто после таких книг как книга Раскина начинаешь смотреть на вещи еще с одной стороны. Так сказать появляется новая система отсчёта. Тут вот эта система с режимами мне показалась актуальной :)

А разницу с Windows я указал: переключение раскладок для приложения или для всей системы.

Вообщем, это может и не баг вовсе. Просто возможно разработчики решили реализовать такое поведение. Почему нет?
0
unclegluk #
«…почему же нет возможности настроить сочетания клавиш для переключения на конкретную раскладку?…»

Нету такого. В виндах тоже не припомню такого, хотя может просто у меня небыло необходимости в таком переключении.

В System Preferences — International — Input Menu есть радиокнопка Input source options. У меня она стоит на Use one input source in all documents. Во всех программах, кроме, сцука, Иллюстратора всегда одна раскладка (Иллюстратору на эту опцию почемуто глубоко положить). Все это про Тайгер, Леопард у меня дома, так, что только вечером смогу проверить на нем.
0
advancedcustomer #
По идее в keyboard shortcuts можно настроить очень много чего. Попробуйте посмотреть там.
0
anatoly_rr #
Честное слово искал :) Уже думаю, что нужно сделать свой какой-нибудь workflow и повесить его на горячии клавиши, но пока даже не знаю в правильном ли направлении думаю, не говоря уже о том, как конкретно делать :)

Вспомнилась хрестоматийная ситуация:

У программиста спрашивают:
— Можешь это сделать?
— Могу, но не знаю как.
0
malaka #
я, например, против того, чтоб программы запоминали раскладку, потому что пишу часто в одной и той же программе или одному и тому же адресату на немецком и русском. поэтому переключаю кнопками или мышей с фонетической русской на немецкую. это не трудно. а если б запоминалка работала как в винде, я б напрягся.
0
coolspot #
Лучше бы спросили про отсутствие правой кнопки мыши (заменено Ctrl+LM), отсутствие delete (на ноутах во всяком случае, замена - fn + backspace), но при этом есть два Enter совсем рядом друг с другом. Точка вообще ахтунг!: shift+6

P.S. Эх... Люблю свой MacBook.
0
anatoly_rr #
Дык я писал же не о различиях и непривычностях, а о мотивации разработчиков сделать это именно так, а не иначе. Хочется верить, что есть какие-то глубокие, не замеченные мной, основания для такой реализации, а не просто «оно такое, потому что так получилось».

Хотя, судя по всему, именно так и есть. :\
0
coolspot #
Мне как раз интересно что за мотивы у них такие были сделать правую мышку эмуляцией через Ctrl+MouseButton =)
0
meako #
А я снова влезу со своим линуксом =)
У меня раскладки переключаются по CapsLock - что просто таки мегаудобно, и не идет в сравнение со всякими альтшифтами, и запоминаются отдельно для каждого окна.
А после того, как я открыл для себя комбинированную типографскую раскладку, содержащую и украинские и росийские символы, жизнь стала слаще меда:)

Не-оставление возможности настроить переключение раскладок — на мой взгляд преступление со стороны разработчиков macOsX.
0
Adam_B #
На маке с раскладками все ок, нужно только поискать хинты. И по капслоку раскладку менять можно, и было где-то как конкретную раскладку ставить, а уж про удобство ввода доп.символов (ыћ
0
egor #
а какого аналога Punto Switcher для мака нету?
0
anatoly_rr #
Да, говорят есть, но я пока ещё их не смотрел. Да и вообще, под Windows PuntoSwitcher я использую только для того, чтобы можно было переключать раскладки одной кнопкой и «переключать раскладку» уже набранного текста. Он мешает когда пишешь код, например.
0
melfa #
Вообще, задолбало постоянно смотреть на индикатор раскладки вверху экрана (или внизу, не важно). Как будто нельзя это показывать рядом с курсором или прямо в поле вводе — там, куда собственно я и смотрю.
0
anatoly_rr #
Ну, совсем всегда его показывать рядом с курсором — это не хорошо: будет мельтешить. Можно было бы скрывать, как только человек начинает ввод и показывать обратно через несколько секунд (предположив, что локус внимания человека был смещён.

Кстати, мне не даёт покоя ещё такая мысль: можно реализовать в небольших полях ввода (input type="password" в первую очередь) такое же поведение, как для капса: если раскладка отличается от латиницы — показывать соответствующий значок.
0
melfa #
Слава богу, хотя бы в Firefix догадались блокировать ввод в адресной строке, можно вводить только латиницу. И про пароли догадаются. В windows 2000 по-моему при логине выдавалось предупреждение, если был нажат CAPS LOCK. Но только при логине и только CAPS LOCK.
0
anatoly_rr #
> Firefix
Это описка?

Блокировать ввод тоже нельзя. Некоторые, бывает, в Википедию ходят вручную ;) Хотя, иногда возможности PuntoSwitcher'а не помешали бы: вряд ли "цццю" набирается специально, например ;)

В XP при логине выводится раскладка. Про caps lock они предупреждают пузырём.
0
melfa #
Описка, да, Firefox. Ввод латиницы там можно разблокировать, для этого специальная иконка висит.
0
melfa #
В смысле, ввод не латиницы.
0
Donet #
вы, наверное, пошутили. всегда в адресной строке набираю запросы для гугла. будет очень неудобно, если будет по-вашему. :(
0
melfa #
Адресная строка для того и адресная, чтобы туда URL вводить. Именно поэтому рядом с адресной строкой есть отдельное поле для ввода поисковых запросов.
0
anatoly_rr #
ну ничего себе вы откопали пост под слоем хабрапыли ;)

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.