---
name: "xrus"
section: "1"
platform: "linux"
package: "xruskb"
version: "1.15.3-3"
release: "Debian 4.0 (Etch)"
platforms: ["linux"]
url: "https://new.carta.tech/xrus"
---

# xrus(1)

X localized keyboard switch and autolock

## NAME

xrus - X localized keyboard switch and autolock

## SYNOPSIS

**xrus** *\[OPTIONS\] \[keyboard\_map\_file\]*

## DESCRIPTION

**xrus** is a X client that watches keyboard and mouse events and serves as localized keyboard switch and autolock.

To switch the keyboard, it swaps 1,2 and 3,4 columns of the keyboard map. If the map has more columns, xrus swaps the halves. Thus for **xrus** to operate properly, keyboard map has to have four or more columns. If it does not, **xrus** terminates with error message. If *keyboard\_map\_file* is specified, xrus calls **xmodmap** to load the file as keyboard map. If the specified keymap file does not exist, **xrus** tries to find the keymap in */usr/share/xruskb/* and then tries to append *.xmm* to keymap name, also looking in that directory.

By default, **xrus** switches the keyboard mode when left and right shifts are pressed simultaneously; it is possible to tune the key combinations either in resources or in the properties sheet.

When a time period passed without keyboard and mouse events, **xrus** starts a locker, "xlock -remote" by default.

To tune various parameters, to lock screen or terminate **xrus,** press third mouse button on the icon and select appropriate action from popup menu.

## OPTIONS

- **{-\|+}bell**

  Turn on/off the bell when switching. You can also set this in properties or resources (\*bell)

- **{-\|+}icon**

  Show/not show the icon with keyboard mode indication. Also in resources (\*icon)

- **-led led\_no**

  Use keyboard led *led\_no* to indicate keyboard mode. Resource \*led

- **+led**

  Don't use led for indication

- **{-\|+}autolock**

  Allow/disable autolock function

- **-locker locker cmd**

  Specify locker command

- **-timeout sec**

  Set autolock timeout

- **-nofork**

  Don't fork to background. This is default for -wmaker option too.

- **-wmaker**

  Display state in Window Maker appicon.

- **-wmicon**

  Display state in window manager's icon for xrus. In this case you won't be able to click on xrus' icon to switch or call menu, because window managers usually trap clicks to their icons.

- **-perwindow**

  Remember keyboard state for each top level window and switch keyboard on focus change.

- **-keylog**

  Log all key presses to specified file.

## RESOURCES

Here are described only Xrus' own resources, to change resources of widgets used look into their documentation and **xrus.doc**. Some useful resources can be seen in **Xrus.ad** too.

- **\*autolock**

  (type boolean; default false; option -autolock) Specifies whether to use the autolock feature. This option can be changed in properties sheet.

- **\*locker**

  (type string; default "xlock -remote"; option -locker \<command\>) Specifies the locker to launch to lock screen. This option can be changed in properties sheet.

- **\*timeout**

  (type int; default 30; option -timeout \<value\>) Specifies the amount of minutes without keyboard and mouse activity before starting locker. This option can be changed in properties sheet.

- **\*useBell**

  (type boolean; default false; option -bell,+bell) Specifies whether to beep when switching keyboard mode. This option can be changed in properties sheet.

- **\*xmodmap**

  (type string; option \<filename\>) Specifies a file name to load with xmodmap at startup.

- **\*switchKeys**

  (type string; default Shift\_L+Shift\_R) Specifies key combination on which Xrus switches keyboard mode. This option can be changed in properties sheet.

- **\*toLatKeys**

  (type string) Specifies key combination on which Xrus sets latin (primary) keyboard mode. This option can be changed in properties sheet.

- **\*toRusKeys**

  (type    string) Specifies key combination on which Xrus sets russian (secondary) keyboard mode. This option can be changed in properties sheet.

- **\*switchForOneKeys**

  (type string) Specifies key combination on which Xrus changes input mode for one following key.

- **\*led**

  (type int; option -led \<num\>) Specifies led number to light in secondary keyboard mode. 0 means none.

- **\*altMaps**

  (type string) Defines a  list  of  file names  with  alternative keyboard maps.  If you  want to use  it, define  also resources \*altmapX.labelString, where X - the  number of file in \*altMaps starting  with  0.  If  you have compiled Xrus  with  Xaw,  use  resources \*altmapX.label instead. The strings will be shown in menu then.

- **\*icon**

  (type boolean; default true; option -icon,+icon) Specifies whether to show the icon.

- **\*adjustModeButtons**

  (type boolean; default true) Specifies whether the  icon size  is the same in both states (true) or can differ (false).

- **\*alwaysOnTop**

  (type boolean; default false) Specifies whether the icon should float above other windows.

- **\*alwaysMapped**

  (type  boolean; default true) Specifies whether to map the icon back when it is unmapped. This option works only with certain window managers (mwm, dtwm, ovwm, probably some other).

- **\*capsLockEmu**

  (type boolean; default false) Emulate capslock key. Useful when Xlib is not localized properly.

- **\*capsLockLed**

  (type int) Specifies which led to light when emulated capslock is pressed. 0 means none.

- **\*recheckTime**

  (type int; default 1500) Sets  time interval  in  milliseconds  between window  mapping  and  rechecking  of event  mask  of  the  main application. This  is useful when  some application  first asks for an  event and then  withdraws its request,  expecting event propagation to work.  This situation is quite rare,  and X does not provide an event on change of event mask.

- **\*wMaker**

  (type bool; default false) Same as -wmaker option.

- **\*wmIcon**

  (type bool; default false) Same as -wmicon option.

- **\*noFork**

  (type bool; default false) Same as -nofork option.

- **\*xmodmapProgram**

  (type string; default /usr/bin/xrusmodmap) Use specified program for keyboard map loading.

- **\*title0** and **\*title1**

  (type string; default Xrus:LAT and Xrus:RUS) Set icon name for window manager in primary and secondary mode accordingly.

- **\*perWindow**

  (type bool; default false) Same as -perwindow option.

- **\*titlePerWindow0** and **\*titlePerWindow1**

  (type string; default (LAT) and (RUS)) Append these strings to window title in per-window mode.

- **\*keyLog**

  (type string; no default) Same as -keylog option.

## SIGNALS

- **SIGTERM**

  switch to primary keyboard mode and terminate.

- **SIGUSR1**

  switch to primary keyboard mode.

- **SIGUSR2**

  switch to secondary keyboard mode.

## AUTHOR

**xrus** was written by Alexander V. Lukyanov \<lav@yars.free.net\>.
