I have (and often change) 3 keyboard layouts on my Mint 17/Mate. I would like to see a notification on my screen when layout is changed, e.g. "Switched to English/US". I tried to do it via keyboard settings, to find a program or script to do it, but I couldn't.

The question is: are there any programs to show current layout OR is there a way to catch layout change event from X11 in user script? Any advice or guide to information would be appreciated.

Update: I've found notify-send to actually send notification, now I need to catch layout change event.

  • How do you switch between layouts? If it's with XKB, see stackoverflow.com/questions/15499723/… . I don't know what ready-made programs react to that event. Sep 3, 2014 at 20:59
  • @Gilles Thanks for reference, need to check full event processing loop in X11 / GTK, but it is still helpful and still better than nothing
    – d.sergeiev
    Sep 11, 2014 at 16:39

1 Answer 1


I didn't change my keyboard layout very often, but when i do it, i use (for exemple) :

setxkbmap fr

There's also an option to show the current layout of your keyboard :

setxkbmap -query

result :

rules:      evdev
model:      pc105
layout:     fr
options:    terminate:ctrl_alt_bksp

Considering this, you could do something with the notify-send command to send the layout as a notification. Something like this :

notify-send $(setxkbmap -query | grep layout)
  • Thanks for answer. I hoped there is a way to catch the layout change, but looks like i'll have to stick to catching layout change key press and work with it.
    – d.sergeiev
    Sep 3, 2014 at 14:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.