---
name: "xkbind"
section: "1"
platform: "linux"
package: "xkbind"
version: "2010.05.20-1+b3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/xkbind"
---

# xkbind(1)

X Keyboard Extension Indicator for the X Window System

## NAME

xkbind - X Keyboard Extension Indicator for the X Window System

## SYNOPSIS

**xkbind -help**\
 **xkbind -version**\
 **xkbind \[-display *displayname*\] \[-force\] \[-nodetach\] \[-defgrp *group*\] \[-deflbl *label*\] \[-label0 *label*\] \[-label1 *label*\] \[-label2 *label*\] \[-label3 *label*\] \[-iname *\<name list\>*\] \[-iclass *\<class list\>*\] \[-ireverse\] \[-inowild\]**

## DESCRIPTION

The *xkbind* program (X Keyboard Extension Indicator) is a small and light indicator of keyboard layout (XKB group) for  the X Window System; it shows current keyboard layout in titles of top-level windows. *xkbind* allows to simulate separate keyboard layout for each handled window and it works with most of window managers.

*xkbind* exits 0 on success, and greater than 0 if an error occurs.

## OPTIONS

*xkbind* accepts a number options most of which can be specified either on the command line, in the user's $HOME/.xkbindrc, $HOME/.Xdefaults (or $HOME/.Xresources), or in the system-wide configuration file. Description of all the acceptable options is given below. The command line option is specified first with correspondent X resource name (if any) in parenthesis afteward. Options specified on the command line have the highest priority. The -version and -help options interpreted even if *xkbind* can not open the display.

- **-help**

  Print a short help message to stderr and exit.

- **-version**

  Print a version number of *xkbind* to stderr and exit.

- **-force**

  Do not allow *xkbind* automatically check existence of its own copy already running on the specified X server.

- **-nodetach**

  Do not detach as a background process.

- **-display *displayname* (display)**

  The X server to use. This option overrides the contents of DISPLAY environment variable.

- **-defgrp *group* (defgroup)**

  Group number that *xkbind* initially binds to each handled window.

- **-deflbl *label* (label.default)**

  The default value for options **label.group\[0-3\]**.

- **-label\[0-3\] *label* (label.group\[0-3\])**

  A label string for the specified keyboard group.

- **-iname *\<name list\>* (ignore.name)**

  Space- or tab-separated list of window names (WM\_CLASS(res\_name) property) that should be ignored by *xkbind*.

- **-iclass *\<class list\>* (ignore.class)**

  Space- or tab-separated list of window classes (WM\_CLASS(res\_class) property) that should be ignored by *xkbind*.

- **-reverse (ignore.reverse)**

  Indicates that the "ignore list" in options **ignore.name** and **ignore.class** should be interpreted as "accept list"

- **-nowild (ignore.usewild)**

  Disable pattern matching while searching in window lists.

## RESOURCES

The format of the option in the X resources files is "Xkbind.option: value", where the option name is the one specified below.

- **display**

  The X server to use. The default is the contents of environment variable DISPLAY.

- **defgroup**

  Group number that *xkbind* initially binds to each handled window. The default is the current group when the program starts.

- **label.default**

  The default value for options **label.group\[0-3\]**. It defaults itself to the empty string.

- **label.group\[0-3\]**

  A label string for the specified keyboard group. The default is the value of *label.default* option.

- **ignore.name**

  Space- or tab-separated list of window names (WM\_CLASS(res\_name) property) that should be ignored by *xkbind*.

- **ignore.class**

  Space- or tab-separated list of window classes (WM\_CLASS(res\_class) property) that should be ignored by *xkbind*.

- **ignore.reverse**

  Specifies whether or not an "ignore list" in options **ignore.name** and **ignore.class** should be interpreted as an "accept list". The default is "False".

- **ignore.usewild**

  Specifies whether or not symbols '\*', '?' and '\\' in the name and class lists should be interpreted in the special way (like in the shell pattern matching). The default is "True".

## SIGNALS

- **SIGALRM**

  - **SIGVTALRM**

  - **SIGHUP**

  - **SIGPROF**

  *xkbind* ignores these signals.

- **SIGINT**

  - **SIGTERM**

  - **SIGABRT**

  *xkbind* performs cleanup and normal exit.

## ENVIRONMENT

- **DISPLAY**

  Default host and display number.

## FILES

*xkbind* reads configuration options from the following files in the order of priority:

- **$HOME/.xkbindrc**

  User's private configuration file.

- **$HOME/.Xresources or $HOME/.Xdefaults**

  User's X defaults file.

- **/etc/local/lib/xkbind/app-defaults/Xkbind**

  System-wide X defaults file. The actual pathname may differ on your system.

## BUGS

Compount text encoding of international characters in label strings is not implemented.

## AUTHORS

Copyright (C) 2004 CHG

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
