My laptop has a Portuguese keyboard which I use when I am at
home, but at work, I use an external keyboard with a Belgian
layout. This is annoying because every time I switch keyboards, I
need to go to every open program and manually change its input
language with the language bar. Worse, when I start a new program,
it starts with the default language, which means that sometimes I
have to switch input language also.
One way to work around this problem could be to buy a new
keyboard, but I like the IBM model M keyboard and I have yet to
find a better keyboard.
Instead of doing that, I wrote a program that switches to the
correct input language when I start using a keyboard.