10 May 2008

«Типографские» раскладки клавиатуры

Typography
По просьбам трудящихся коснёмся темы «типографских» раскладок клавиатуры. То есть, как системных средств Windows, так и сторонних программ, позволяющих вводить различные специальные символы с помощью клавиатуры (обычно, правой клавиши Alt, она же AltGr).

Большинство вспомнят раскладку Ильи Бирмана, но она не идеальна для нужд контент-менеджера или дизайнера. Заслуга её в том, что Рунету был продемонстрирован путь создания таких раскладок.

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

В статье я перечислю известные решения для создания и использования «типографских» раскладок, а в конце расскажу о том, чем мы с коллегами пользуемся сами.

Последняя оговорка, которую нужно сделать: идеальных раскладок не бывает. Каждому требуется решать свои специфические задачи: программисту — программистские, HTML-верстальщику — верстальщицкие, контент-менеджеру — контент-менеджерские. Мне приходится решать в основном последние задачи, поэтому и об удобстве тех или иных способов или раскладок я могу говорить с позиций контент-менеджера. Вероятно, эти способы не будут лучшими для программистов или верстальщиков.

Решения для Windows

Системные раскладки клавиатуры


Все раскладки клавиатуры, которые можно установить в систему, создаются с помощью бесплатной программы Microsoft Keyboard Layout Creator.

Достоинства:
  • для использования раскладки не требуется дополнительный софт;
  • программа для создания раскладок бесплатна;
  • последняя версия, 1.4, уже умеет делать раскладки для Windows Vista.
Недостатки:
  • раскладки нельзя установить в систему в отсутствие администраторских прав;
  • к сожалению, MSKLC всё ещё имеет ряд багов и глючит в некоторых случаях использования dead keys (клавиш-модификаторов);
  • если на «Alt + Ctrl + что-нибудь» назначен какой-либо шорткат в какой-либо программе, то соответствующий символ работать не будет.
Известные раскладки для русского/английского языков:

Сторонние программы


AutoHotKey


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

Достоинства:
  • программа распространяется под GNU GPL;
  • для использования программы не требуются права администратора;
  • работает в Windows Vista;
  • программа портабельна — её можно запускать с флешки;
  • можно как угодно настраивать скрипты под себя, функциональность гораздо мощнее обычных системных раскладок (например, можно по нажатию какой-либо клавиши выводить целую последовательность символов);
  • можно задавать приоритет раскладки или шортката для любого приложения отдельно;
  • небольшой вес (процесс занимает максимум 5—6 МБ, а обычно — не более 3 МБ);
  • внушительное англоязычное коммьюнити на форуме поддержки.
Недостатки:
  • программу нужно запускать вручную в системе, либо прописывать в автозапуске;
  • для настройки программы под себя нужно упорно изучать её скриптовый язык.

Keyboard Ninja


Keyboard Ninja 2.1 — также не требует установки, настраивается не каким-то языком, а помощью настроек в GUI. Неизвестно, работает ли она под Windows Vista.

Достоинства:
  • для использования программы не требуются права администратора;
  • программа портабельна — её можно запускать с флешки;
  • изменения раскладки производятся в GUI и активируются «на лету»;
  • имеет функции автоматического определения и переключения раскладки (аналогично Punto Switcher);
  • исправляет опечатки;
  • небольшой вес (процесс занимает около 2,5 МБ).
Недостатки:
  • программу нужно запускать вручную в системе, либо записывать в автозапуск.

KbdEdit


KbdEdit — платная программа, судя по всему, имеет весьма удобный интерфейс. Однако, требует установки в системе, а созданные ей раскладки нельзя запускать отдельно от программы. То есть, даже если я создам раскладку в версии Full, которая стоит 20 ?, то коллеги смогут воспользоваться ей только после установки у себя минимум версии Player, которая стоит 8 ?.

Решения для Linux

Раскладки клавиатуры


Сергей Столяров приспособил под *nix раскладку Бирмана.

Дмитрий Макаров сделал свою раскладку. Полагаю, что по аналогии можно делать любые раскладки по желанию пользователя. Описание технологии есть также и на Хабре, в блоге «Убунтариум» (спасибо yoreeq за наводку).

Клавиша Compose


Существует также решение с использованием клавиши Compose, как в MacOS.

Наше решение для Windows

Поскольку мы искали решение именно для контент-менеджеров, то начали мы с использования системных раскладок в Windows. Все описанные выше раскладки были неудобны тем, что не содержали некоторых нужных символов (например, тонкой шпации, минуса и знаков минуты и секунды). Также, поскольку в основном мы работаем с сайтами финансовой тематики, нужны были символы различных валют.

В результате мы родили раскладку Scrype (версии для Windows XP и для Windows Vista). Она содержит все знаки, принятые в русской типографике, символы стрелок «↑←↓→», символы наиболее распространённых мировых валют, а также буквы украинского и белорусского алфавитов.

К сожалению, пока не дошли руки, чтобы нарисовать красивую картинку, но в целом раскладка основана на раскладке Артёма Сапегина, однако с большим количеством изменений:
  • «AltGr + -» — длинное тире, «AltGr + +» — минус, «AltGr + Shift + -» — дефис, «AltGr + Shift + +» — плюс-минус.
  • «AltGr + Space» — неразрывный пробел, «AltGr + Shift + Space» — тонкая шпация.
  • «AltGr + ё» — знак ударения.
  • Стрелки вверх, влево, вправо и вниз набираются с помощью «AltGr + q, a, s, z».
  • «AltGr + 8» — знак умножения ×. Однако, «бирмановский» вариант с «AltGr + x» также работает.
  • «AltGr + m» — знак торговой марки.
  • Основные валюты есть на «AltGr»: ? — «AltGr + e», ¥ — «AltGr + y», £ — «AltGr + f».
  • Наиболее распространённые знаки мировых валют набираются через «AltGr + Shift»: вона — «w», евро — «e», иена — «y», фунт стерлингов — «f» и «p», рупия — «r», шекель — «s», донг — «d», гривня — «g», бат — «z», цент — «c». Все вышеперечисленные комбинации работают и в русской, и в английской раскладках.
  • В русской раскладке можно набирать украинские є («AltGr + е»), ґ («AltGr + г»), ї («AltGr + j»), і («AltGr + и») и белорусскую ў («AltGr + v»), а также их прописные варианты Є, Ґ, Ї, І, Ў через «AltGr + Shift».
  • Чтобы набрать прямые и фигурные скобки, не нужно переключаться в английскую раскладку, работают комбинации «AltGr + х, ъ» для квадратных скобок и «AltGr + Shift+ х, ъ» для фигурных.
  • Простейшие дроби реализованы с помощью клавиш-модификаторов. Так, чтобы набрать символ ⅝, нужно сначала нажать «AltGr + 5», отпустить, а потом нажать «8».
Раскладка Scrype с нажатым AltGr
Раскладка Scrype с нажатым AltGr

Раскладка Scrype с нажатыми AltGr + Shift
Раскладка Scrype с нажатыми AltGr + Shift

Также можно скачать упакованный в RAR файл PDF с описанием раскладки и пояснениями к ней.

Английская раскладка в дополнительной части отличается от русской только отсутствием украинских и белорусских букв.

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

Наши планы на будущее


У нас есть большое желание ещё больше ускорить работу подготовленного контент-менеджера, и мы видим, как это можно сделать. В настоящее время мы разрабатываем скрипт для AutoHotKey, который помимо улучшенной раскладки будет позволять переключаться в режим HTML-разметки текста и автоматически обрамлять выделенный текст тегами абзаца, списка, неразрывного текста и так далее, а также вставлять вместо символов Unicode их HTML-подстановки. Кроме этого, планируется прикрутить жесты мышкой для быстрой HTML-разметки скопированного текста без помощи клавиатуры. Естественно, речь идёт о простейшей разметке текста, а не о сложной HTML-вёрстке.

Так что надеюсь, что когда работы будут завершены, общественность примет участие в тестировании. :)
Tags:типографикаклавиатурараскладки
Hubs: Typography
+39
24.8k 137
Comments 84