[LON-CAPA-cvs] cvs: modules /gerd xrus.doc-koi8

sakharuk lon-capa-cvs@mail.lon-capa.org
Thu, 13 Nov 2003 20:55:52 -0000


This is a MIME encoded message

--sakharuk1068756952
Content-Type: text/plain

sakharuk		Thu Nov 13 15:55:52 2003 EDT

  Added files:                 
    /modules/gerd	xrus.doc-koi8 
  Log:
  Example of KOI8-R.
  
  
--sakharuk1068756952
Content-Type: text/plain
Content-Disposition: attachment; filename="sakharuk-20031113155552.txt"


Index: modules/gerd/xrus.doc-koi8
+++ modules/gerd/xrus.doc-koi8
   Индикатор и переключатель клавиатуры Xrus (Версия 1.4.2)
   =========================================================

   Описание программы
   ~~~~~~~~~~~~~~~~~~
   Основное   назначение   данной  программы   -   переключение
регистров  клавиатуры   РУС/ЛАТ,  хотя  в  принципе   ее  можно
использовать для переключения других алфавитов, для зтого нужны
только  шрифты и  раскладка  клавиатуры.  Программа написана  с
использованием библиотек  Motif/Xaw.
   Механизм действия  программы прост -  она ловит  все нажатия
клавиш  и при  нажатии  определенной  комбинации клавиш  меняет
местами 1,2 и 3,4 колонки раскладки клавиатуры (modmap).
   В  данной  версии  программы   переключение  происходит  при
одновременном  нажатии левого  и правого  Shift (по  умолчанию;
можно задать любую другую комбинацию)  или при нажатии мышью на
кнопку индикатора.  Можно также  указать комбинации  клавиш для
нетриггерного переключения клавиатуры.
   Для обеспечения  запирания экрана программа  принимает также
события мыши. По  истечении заданного времени без  событий мыши
и   клавиатуры   (timeout)   запускается   заданная   программа
блокирования экрана (locker).

   Запуск программы
   ~~~~~~~~~~~~~~~~
   Для  запуска программы  необходимо предварительно  загрузить
раскладку русской  клавиатуры с  помощью программы  xmodmap или
указать  имя  файла  с  раскладкой в  командной  строке  или  в
ресурсах. Раскладка может быть любой,  в частности - ЙЦУКЕН или
ЯВЕРТЫ. Следующие действия обычно выполняются в файле .xinitrc:

   xmodmap jcuken-koi8-xrus.xmm
   xrus

   или

   xrus jcuken-koi8-xrus.xmm

   или просто xrus, если в ресурсах указана строка
   Xrus*xmodmap: jcuken-koi8-xrus.xmm

   Файлы  раскладок  для  Xrus  отличаются  от  соответствующих
раскладок  широко распространенных  в  сети только  отсутствием
изменения модификаторов.  В оригинальных  раскладках (by  Serge
Vakulenko)   CapsLock  добавлялся   к   Mod2  для   обеспечения
переключения по CapsLock; в Xrus это  не нужно. Если у Вас есть
какая-нибудь  русская раскладка,  которую  Вы использовали  без
Xrus, то  можно либо продолжать  использовать ее,  либо удалить
изменение  модификаторов.   В  первом  случае   CapsLock  будет
продолжать переключать режим (но Xrus не будет это отображать).
   Рекомендуется  поместить  в  каталог  .../app-defaults  файл
Xrus, в  котором записаны ресурсы  данной программы  (взятые из
Xrus.ad). Xrus  не требует  этого, но  если вы  хотите изменить
какие либо ресурсы, удобно иметь под рукой шаблон с умолчаниями
и  комментариями.  Если  у  Вас  был  старый  Xrus.ad,  то  его
обязательно нужно либо удалить, либо заменить на новый.

   Собственные ресурсы программы
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   Name           Type        Default     Corresponding option
   -------------- ----------- ----------- --------------------
   *autolock      boolean     false       -autolock
   *locker        string      xlock       -locker <command>
   *timeout       int         30          -timeout <value>
   *useBell       boolean     true        -bell,+bell
   *xmodmap       string      ""          <filename>
   *switchKeys    string      Shift_L+Shift_R   none
   *toLatKeys     string      ""          none
   *toRusKeys     string      ""          none
   *led           int         0           -led <num>
   *altMaps       string      ""          none
   *icon          boolean     true        -icon,+icon
   *adjustModeButtons boolean true        none
   *alwaysOnTop   boolean     false       none
   *alwaysMapped  boolean     true        none
   *capsLockEmu   boolean     false       none
   *capsLockLed   int         0           none

   timeout измеряется в минутах.
   -bell включает писк при переключении, +bell - выключает.
   switchKeys,    toLatkeys   и    toRusKeys   имеют    формат:
<Key>+<Key>+...,  где Key  -  стандартное  название клавиши  из
файла keysymdef.h без приставки XK_.
   -led задает  номер клавиатуного  индикатора для  отображения
русского  режима  клавиатуры.  0   означает  отсутствие  такого
отображения.
   *altMaps задает список файлов  с альтернативными раскладками
клавиатуры. Для  загрузки этих  раскладок запускается  xmodmap.
Чтобы  задать названия  раскладок, появляющиеся  в меню,  нужно
задать ресурсы  *altmapX.labelString, где X -  порядковый номер
начиная с нуля. (altmapX -  объект типа XmPushButton). В случае
компиляции  с Xaw  нужно  указывать  вместо labelString  просто
label.
   *icon  и  опции   -+icon  определяют,  будет  ли   иконка  с
индикатором отображаться  на экране. Если Вы  компилировали без
Motif'a, то иконки не будет всегда.
   Если  *adjustModeButtons  равен  True, то  размер  иконки  в
состояниях  РУС/ЛАТ  уравнивается.   Используются  максимальные
размеры двух состояний.
   Если *alwaysOnTop равен True, то  иконка будет 'плавать' над
прочими окнами.
   Если  *alwaysMapped   равен  True,  то  Xrus   будет  всегда
восстанавливать иконку на экране, когда VWM пытается ее убрать.
(похоже, это не работает с fvwm, но работает с mwm/dtwm)
   При  '*capsLockEmu: true'  Xrus  эмулирует действие  клавиши
CapsLock, таким образом позволяя вводить большие русские буквы.
CapsLock при этом удаляется из модификаторов.
   *capsLockLed устанавливает номер  индикатора для CapsLock'a.
Используется только при '*capsLockEmu: true'.

   Динамическое изменение параметров и т.д.
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   При нажатии на кнопку переключения алфавита правой (третьей)
клавишей мыши  появляется меню из которого  можно заблокиробать
экран, войти в  режим настроек или завершить  программу Xrus. В
окне настроек можно изменить  параметры выполнения Xrus'а и/или
сохранить их в файл "~/.xrus".

   Виртуальные window manager'ы (vwm)
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   При работе с vwm удобно приклеить кнопку-индикатор к экрану,
чтобы  она не  исчезала из  вида  при переключении  виртуальных
desktop'ов.  Это можно  сделать либо  вручную  - выбрать  опцию
Stick из  меню vwm, либо  автоматически, настроив  ресурсы vwm.
Для fvwm нужно  указать что-нибудь вроде "Sticky  Xrus" в файле
system.fvwmrc или .fvwmrc;  для olvwm - в  ресурс VirtualSticky
добавить   строчку  Xrus.
   Тем не  менее, Xrus  имеет возможность  игнорировать попытки
vwm  убрать  иконку  с   экрана.  Эта  возможновть  управляется
ресурсом *alwaysMapped  (boolean), по  умолчанию она  включена.
Похоже,   что   это    не   работает   с   fvwm    (иконка   не
восстанавливается,  никаких других  побочных эффектов),  однако
прекрасно работает с dtwm(CDE).  Вероятно, fvwm не обрабатывает
MapRequestEvent.

   Проблемы с xlock
   ~~~~~~~~~~~~~~~~
   Если  в русском  режиме клавиатуры  запустить  xlock (не  из
xrus,  а, скажем,  из xterm),  то возникают  проблемы с  вводом
пароля (если только у Вас пароль не состоит из русских букв ;).
Для  избежания  подобных  трудностей   можно  использовать  три
приема:
   1.  Всегда  запускать xlock  из  xrus.  В этом  случае  xrus
автоматически переключается на латинский режим.
   2.  Предусмотреть   какую-нибудь  клавишу   в  xmodmap   для
модификатора Mod2, и если Вы все таки запистили xlock в русском
режиме клавиатуры, то набирайте пароль удерживая эту клавишу.
   3.  Переименовать xlock,  а вместо  xlock поставить  скрипт,
который  будет   загружать  латинскую  раскладку   и  запускать
оригинальный xlock.

   Проблемы с некоторыми другими программами
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   xv - читает раскладку клавиатуры только один раз при старте,
поэтому  не переключается,  и если  запустить в  режиме РУС  то
постоянно пищит.
   scoterm  - пытается  эмулировать  сканкоды,  что у  него  не
получается  для русских  букв. Это  можно отключить  следующими
ресурсами:

   scoterm*keyboard:       usa
   scoterm*charset:        iso8859
   scoterm*scancodesOn:    false


   Откуда можно скачать последнюю версию
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   ftp://ftp.yars.free.net/pub/software/unix/X11/xrus-A.B.C.tar.gz
   ftp://ftp.kiae.su/x11/cyrillic/xrus-A.B.C.tar.gz

   Пакеты (package) Xrus для Solaris, собранные Димой Антиповым
<dima@elvis.msk.su>:
   ftp://ftp.elvis.ru/pub/sun/Solaris/             SPARC
   ftp://ftp.elvis.ru/pub/sun/Solaris/x86/         Intel
   или соответственно, с описанием что есть что:
   http://ftp.elvis.ru/ftp/pub/sun/Solaris/
   http://ftp.elvis.ru/ftp/pub/sun/Solaris/x86/

   Дерево объектов (для Motif-версии)
   ~~~~~~~~~~~~~~~
   ApplicationShell(xrus)
   |
   +-XmForm(form)
     |
     +-XmPushButton(modeButton0)
     +-XmPushButton(modeButton1)

   XmMenuShell()
   |
   +-XmRowColumn(menu)
     |
     +-XmPushButton(lock)
     +-XmPushButton(props)
     +-XmCascadeButton(altmap) {создается не всегда}
     +-XmPushButton(exit)

   XmMenuShell()
   |
   +-XmRowColumn(altmap_menu)
     |
     +-XmPushButton(altmap0)
     ...
     +-XmPushButton(altmapN)

   XmDialogShell(props)
   |
   +-XmForm(form)
     |
     +-XmFrame(frame1)
     | |
     | +-XmForm(form1)
     |   |
     |   +-XmToggleButton(allow_locker)
     |   +-XmScale(autolock_delay)
     |   +-XmLabel(locker_label)
     |   +-XmTextField(locker)
     |   +-XmPushButton(locker_test)
     |   +-XmPushButton(locker_def)
     |
     +-XmFrame(frame2)
     | |
     | +-XmForm(form2)
     |   |
     |   +-XmToggleButton(use_bell)
     |   +-XmLabel(switch_keys_label)
     |   +-XmTextField(switch_keys)
     |   +-XmLabel(to_lat_keys_label)
     |   +-XmTextField(to_lat_leys)
     |   +-XmLabel(to_rus_keys_label)
     |   +-XmTextField(to_rus_keys)
     |   +-XmPushButton(switch_keys_def)
     |
     +-XmForm(form4)
       |
       +-XmPushButton(ok)
       +-XmPushButton(cancel)
       +-XmPushButton(apply)
       +-XmPushButton(save)

   Автор
   ~~~~~
   Лукьянов Александр Владимирович (Alexander V. Lukyanov)
   e-mail: lav@yars.free.net
   paper-mail:
      150051, Ярославль, пр-кт Авиаторов, 80-45

      Aviatorov st. 80-45, Yaroslavl 150051, Russia

   Распространение  разрешается в  соответствии  с GNU  General
Public Licence  (см. COPYING).  Программа распространяется  без
гарантий (NO WARRANTY).
   Комментарии/баг-репорты/пожелания/патчи приветствуются.
   ______________________________

--sakharuk1068756952--