• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

data/H03-May-2022-1,2721,110

debian/H23-Oct-2021-209141

doc/H03-May-2022-1,3151,077

man/H23-Oct-2021-565491

src/H23-Oct-2021-2,7751,974

Makefile.amH A D05-Nov-2020529 158

Makefile.inH A D23-Oct-202124.5 KiB787690

README.mdH A D18-Apr-20214.4 KiB151109

aclocal.m4H A D23-Oct-202150.9 KiB1,4091,274

autogen.shH A D05-Nov-2020545 2517

compileH A D23-Oct-20217.2 KiB349259

configureH A D23-Oct-2021181.6 KiB6,1715,096

configure.acH A D23-Oct-20212 KiB6152

depcompH A D23-Oct-202123 KiB792502

install-shH A D23-Oct-202115 KiB542352

missingH A D23-Oct-20216.7 KiB216143

README.md

1# **gxkb**
2[![Latest release](https://img.shields.io/github/release/zen-tools/gxkb.svg)](https://github.com/zen-tools/gxkb/releases) [![Build Status](https://travis-ci.org/zen-tools/gxkb.svg?branch=master)](https://travis-ci.org/zen-tools/gxkb)
3
4`X11` keyboard layout indicator and switcher
5
6![screenshot 1](https://zen-tools.github.io/gxkb/images/gxkb_tray_layouts.png "gxkb layouts")
7![screenshot 2](https://zen-tools.github.io/gxkb/images/gxkb_tray_menu.png "gxkb menu")
8
9## **Description**
10`gxkb` is a tiny indicator applet which allows to quickly switch between different keyboard layouts in `X`.
11A flag corresponding to the country of the active layout is shown in the indicator area.
12The applet is written in `C` and uses `GTK+` library and therefore does not depend on any `GNOME` components.
13
14## **Dependencies**
15
16* `GTK3`
17* `libwnck-3`
18* `libxklavier16`
19* `libayatana-appindicator3`
20
21## **Installing**
22
23### Debian and Ubuntu
24
25```bash
26sudo apt-get install gxkb
27```
28
29### Fedora
30
31```bash
32sudo dnf install gxkb
33```
34
35## **Building from source**
36
37* Install dependencies
38
39    + Debian
40
41        ```bash
42        sudo apt-get install libwnck-3-dev libxklavier-dev libgtk-3-dev dh-autoreconf dh-make devscripts fakeroot
43        ```
44        For AppIndicator support:
45        ```bash
46        sudo apt-get install libayatana-appindicator3-dev
47        ```
48
49* Build
50
51    ```bash
52    wget https://github.com/zen-tools/gxkb/archive/master.tar.gz -O gxkb.tar.gz
53    tar xzf gxkb.tar.gz
54    cd gxkb-master
55    ./autogen.sh
56    ./configure
57    ```
58    For AppIndicator support:
59    ```bash
60    ./configure --enable-appindicator=yes
61    ```
62    Then:
63    ```bash
64    make && sudo make install
65    ```
66
67## **Usage**
68
69* Show version and features
70
71    ```bash
72    gxkb -v
73    ```
74
75* Run from a terminal
76
77    ```bash
78    gxkb &
79    ```
80
81## **Features**
82
83* [AppIndicator](https://wiki.ubuntu.com/DesktopExperienceTeam/ApplicationIndicators) support
84
85    To switch that off use the following command during building phase:
86
87    ```bash
88    ./configure --enable-appindicator=no
89    ```
90
91* Custom flags support
92
93    Put your flag images in `.local/share/gxkb/flags` in PNG format
94    with the names like `<country code>.png`,
95    e.g. `us.png`, `ru.png`, `ua.png`
96    and the sizes of 24x24 pixels each
97
98* Scrolling support
99
100    Switch layouts by scrolling while hovering over the flag
101
102* Using Scroll Lock led to indicate alternate layouts
103
104    Can be changed in `.config/gxkb/gxkb.cfg`
105
106## **Configuration**
107
108Configuration is done via config file: `.config/gxkb/gxkb.cfg`
109
110The most interesting options are:
111`layouts=us,ru,ua`
112`toggle_option=grp:alt_shift_toggle,grp_led:scroll,terminate:ctrl_alt_bksp`
113
114Instead of `grp:alt_shift_toggle` you can use whatever the following command gives you:
115`grep grp:.*toggle /usr/share/X11/xkb/rules/base.lst`
116
117## **Known issues**
118
119* In Elementary OS Freya `gxkb` does not work. Trying to figure out why.
120
121* In Gnome2/Gnome3, Unity, E17, possibly in KDE3/KDE4:
122  **Q**: _The layout does not get changed properly while switching between
123  windows._
124  **A**: In your DE settings find keyboard layout control settings, disable
125  the inheriting of the layouts from parent window and disable splitting
126  layouts between windows.
127
128* In Gnome3/Unity:
129  **Q**: _The layout icon is not displayed in system tray area._
130  **A**: Due to different versions of Gnome3 there is no easy answer, Google
131  might help to find the right one.
132  But in fact `gxkb` works under the hood, so you can use the Gnome3/Unity
133  system indicators for icon displaying, just don't forget to disable the
134  splitting layouts between different windows.
135
136* In XFCE 4.12:
137  **Q**: _The layout icon is not displayed in system tray area._
138  **A**: In "sessions and startup" settings try to find and disable
139  <code>indicator&#8209;application&#8209;service</code>.
140  More details [here](https://forum.xfce.org/viewtopic.php?pid=32908#p32908).
141
142* In Unity + AppIndicator:
143  **Q**: _The layout switching does not work._
144  **A**: It can happen when the system layout switcher
145  <code>indicator&#8209;keyboard</code> uses the same key combination.
146  One possible solution to this may be to assign an unused key combination
147  for <code>indicator&#8209;keyboard</code>.
148  Another solution may be to remove the package
149  <code>indicator&#8209;keyboard</code>, but that will also remove the Unity
150  control center, which will be replaced by a Gnome control center.
151