Introduction
Disclaimer: I am the author of this indicator
The lks-indicator
allows showing the status of all the lock keys , such as Caps, Num, and Scroll lock. By default it shows green icon when no keys are engaged, and switches to red if one or more is engaged, while also showing text representation of which key is active.
Usage:
As shown by -h
option:
usage: lks-indicator [-h] [--show-all] [-m]
[--ignore-keys IGNORE_KEYS [IGNORE_KEYS ...]]
lks-indicator - Indicates on/off status of Lock keys.
optional arguments:
-h, --help show this help message and exit
--show-all Show all keys in label
-m, --monochrome Use monochrome icon
--ignore-keys IGNORE_KEYS [IGNORE_KEYS ...]
Ignore specified keys (C, N or S)
Starting the indicator via command line is simple:
python lks-indicator
Users can specify which keys to ignore , with multiple keys separated by spaces. For example,
python lks-indicator --ignore-keys N S
By default , indicator only shows text representation of keys when they are engaged. If you want to always show them use --show-all
option.

Please use, Quit
button to close the indicator, as Ctrl+C shortcut via command line doesn't work well with app-indicators
The indicator by default works with color icons, red and green, but there's also -m
option to use monochrome icon.

Installation
git approach
For those who have git
installed:
cd /opt
sudo git clone https://github.com/SergKolo/lks-indicator.git
chmod -R +x /opt/lks-indicator/
git
will also allow keeping it updated easily with cd /opt/lks-indicator ; git pull
, so I strongly recommend using this method.
Zip package approach:
Alternatively, you can download zip package and extract it where you see fit. Debian package is also available in the repository.
To make it start on every login into Unity , please consult this post: How do I start applications automatically on login?
Gnome Users : you will need AppIndicator Support installed , and optionally Gnome Tweak Tool. Otherwise the bracketed text wont be displayed, only red/green icon.
The indicator also has been tested in MATE and Ubuntu Kylin.
indicator-sysmonitor
and add custom script which obtains the status information (using the aformentioned terminal command(s)). Refer to this answer and follow the trail.