How to Set Up a Virtual On-Screen Keyboard in Linux

On Screen Keyboard Linux Feature

While there are often challenges for the blind or visually disabled on Linux, the state of accessibility has come a long way in the last couple of years. One of the little things that users may be looking for is an on-screen keyboard, and there’s no better place to look than the built-in tools in many of the mainstream distributions. Here we cover how to set up a virtual on-screen keyboard in Linux, including using multiple languages.

Turning on the On-Screen Keyboard in Gnome

The on-screen keyboard in Gnome is the easiest to use. To turn on the On-Screen Keyboard in GNOME, access the Settings Menu. You can either do that by pressing the Super key and typing “Settings” or by clicking on the System Tray in the upper-right corner and clicking “Settings.”

On Screen Keyboard Linux Searching Settings
On Screen Keyboard Linux Clicking Settings

In the menu on the left, scroll down until you get all the way to the bottom and find the segment that says “Universal Access.” Scroll until you see the option for “Screen Keyboard” and switch it on. It’s just that simple.

On Screen Keyboard Linux Settings Screen Keyboard On

Now when you go to type something, there should be a virtual keyboard on screen. It will continue to pop up even when you’re set to unlock your screen, and you can turn it on in the GDM login screen.

On Screen Keyboard Linux Screen Keyboard Working
On Screen Keyboard Linux Lock Screen
On Screen Keyboard Linux Login Screen

Once you set this Screen Keyboard setting, you’ll also see the Universal Access Menu sitting next to the System Tray in the top right. You can also toggle more Universal Access settings from that menu, but if you want to make it persist even once you turn all the settings off, there’s a toggle in the same Universal Access section in the Settings Menu.

Depending on the application, you may have to shrink the window in order to make the on-screen keyboard appear. For example, I had a lot of trouble getting it to open with most web browsers, but Epiphany (GNOME Web) always worked well. Just be aware that your mileage may vary.

Setting Up Multiple Keyboard Languages

If you need to set up another language on your virtual keyboard, click on the “Region and Language” option in GNOME Settings. From there, click the little “+” icon underneath whatever your main keyboard language is. You should be able to search from the huge library of languages to find whichever one you’d like to add to your system.

On Screen Keyboard Linux Settings Language

On the Screen Keyboard, click the little flag button next to the space bar. There, you should be able to choose from whichever languages you’ve chosen in the “Region and Language” section of GNOME Settings.

On Screen Keyboard Linux Screen Keyboard Language Selection

Virtual Keyboards on Other Desktop Environments

If you’re not using GNOME, most popular DEs, like KDE and Cinnamon, also come with a pre-installed virtual keyboard. Simply go to the Application menu and type “virtual keyboard” to launch the on-screen keyboard.

If your desktop manager doesn’t come with a virtual keyboard, there are a couple of on-screen keyboard software you can install. These are not desktop dependent, so you can use them regardless of the DE you are using. One of the best is Florence.

Florence: Virtual Keyboard Software

Florence can be somewhat complicated to install, but once it’s downloaded from its page on SourceForge, the installation documentation is excellent. It walks you through all necessary dependencies, which should all be in the repositories for your distro, and the exact process for installing from source. There are also packages in most distro repositories, so it may just be as simple as

# Debian/Ubuntu based distro
sudo apt install florence

or

# Fedora
sudo yum install florence

From there, just launch the Florence app and it’s ready to use. There’s an icon that populates into your system tray and a little window on your desktop that allows you to toggle it on and off. There is no auto-open option with Florence, as it’s not integrated in the DE.

On Screen Keyboard Linux Xfce

Beyond the lack of auto-open options, Florence is really nice to use. There’s good auditory feedback if that’s something you’re interested in, and it’s really snappy to use.

Alternatively, if you are looking to change the keyboard layout in Linux, follow this guide, or maybe you prefer to create your own keyboard shortcut.

John Perkins
John Perkins

John is a young technical professional with a passion for educating users on the best ways to use their technology. He holds technical certifications covering topics ranging from computer hardware to cybersecurity to Linux system administration.

Subscribe to our newsletter!

Our latest tutorials delivered straight to your inbox