четверг, 22 января 2009 г.

Xneur - автоматическое переключение раскладок под Linux (аналог Punto Switcher) (rus lang x11)



From: Павел Закляков

Date: Mon, 21 Jan 2009 17:02:14 +0000 (UTC)
Subject: Xneur - автоматическое переключение раскладок под Linux (аналог Punto Switcher)


Материал предоставлен редакцией журнала Системный администратор.
Опубликовано в журнале "Системный администратор" N 10 2008

Казалось, на пути внедрения Linux на рабочие станции пользователей
решены все проблемы, а нет. Есть ещё одна проблема - это привычки
пользователей. На днях один мой знакомый признался: "Если на
компьютере не будет привычного Punto Switcher - не поставлю эту
операционную систему". Пришлось мне ему не только рассказать про
xneur, но и показать, как это работает. Результат его сколько
порадовал, столько и озадачил, ведь теперь перейти на Linux ему ничего
не мешает.

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

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

Большая часть читателей наверняка слышали, а то и используют программу
Punto Switcher [3], написанную Сергеем Москалёвым [4]. Это не
единственная программа автоматического переключения раскладок, есть и
менее известные, как Keyboard Ninja и Orfo Switcher. Все они хороши, но
их недостаток в том, что они не работают под Linux.

Но не всё так плохо. Благодаря Андрею Кузнецову и Янкину Николаю (чьи
электронные адреса содержатся в исходных кодах) для Linux имеется своя
программа - X Neural Switcher (Xneur) [4], распространяемая по лицензии
GPL, об установке которой и пойдёт речь.


X Neural Switcher

Несмотря на то что последняя версия программы датируется 30 июля 2008
года, то есть свежая и актуальная, разнообразием скомпилированных
версий она не отличается. В мае вышла Fedora 9, а на сайте нет даже
скомпилированного пакета под Fedora 8. Исходные коды если и есть, то
требуют большого числа зависимых библиотек, ставить которые вручную
очень утомительно. Предполагаю, что автор программы и ещё ряд
программистов используют программу для себя и для них нет проблем с
компиляцией, в то время как, если установка программы сложнее
привычного "yum install имя_программы", то число её пользователей
становится в разы меньше.

В моём случае выбора не было. Одной ссылкой на сайт xneur [4] я бы не
отделался, а выставлять ОС Linux с плохой стороны, где ничего не
работает, мне не хотелось, поэтому программу пришлось ставить. Так как
под рукой оказался дистрибутив Fedora 8, на нём мне и пришлось
демонстрировать всю мощь Linux.


Установка xneur на Linux Fedora 8

Так как других подходящих версий нет - скачиваем [5] старую версию
программы (для Fedora Core 7):

wget http://dists.xneur.ru/release-0.9.0/rpm/Fedora/xneur-0.9.0-0.fc7.i386.rpm
wget http://dists.xneur.ru/release-0.9.0/rpm/Fedora/gxneur-0.9.0-0.fc7.i386.rpm


Далее, ставим freealut (иначе xneur не ставится):

# yum install freealut


а после ставим пакеты:

# rpm -ihv xneur-0.9.0-0.fc7.i386.rpm gxneur-0.9.0-0.fc7.i386.rpm


После установки в меню "Приложения -> Стандартные" появляется
"Переключатель раскладок клавиатуры"

После запуска через меню на панели появится соответствующая картинка с
флагом, соответствующим языку раскладки. Всё, установка
закончена, переключение раскладок осуществляется автоматически.

Если необходимо, то запуск соответствующего пункта меню можно прописать
в автозагрузку через меню "Система -> Параметры -> Персональные ->
Сеансы".


Поддержка других языков

Нигде в описании программы не написано, что поддержка ограничивается
двумя языками - русским и английским. Так как другие раскладки я не
использую, то и не проверял. Беглое изучение исходных кодов показало,
что имеются директории c файлами: uk, ru, be, fr, kz, ro, de, что
напоминает двухбуквенные обозначений стран согласно ISO 3166.

Заключение

Большое спасибо авторам за их программу. Надеюсь, что после этой статьи
их ряды пополнятся, количество скомпилированных версий под разные
операционные системы увеличится, а все остальные смогут использовать
xneur.

1. Домашняя страница программы Punto Switcher -
http://punto.yandex.ru (http://punto.ru, http://www.punto-switcher.ru).

2. О программе Punto Switcher - http://ru.wikipedia.org/wiki/Punto_Switcher

3. Интервью с автором программы Punto Switcher - http://www.kv.by/index2002042801.htm

4. X Neural Switcher (Xneur) - http://www.xneur.ru

5. Старые версии программы xneur - http://xneur.ru/wiki/VersionsArchive

Комментариев нет: