Create / modify keyboard shortcuts in Gnome under Linux / UNIX

last updated in Categories , , , , ,

Q. I’m using Ubuntu Linux and I’d like to create or modify keyboard shortcuts in Gnome desktop system? How do I do it?


A. You need to use GConf-Editor or gnome keyboard shortcut tool. GConf-Editor is a tool used for editing the GConf configuration database. It might be useful when the proper configuration utility for some software provides no way of changing some option. The main window consists of a tree showing the GConf configuration database hierarchy, a list of the keys available, and documentation for the selected key. Key values can be changed by either changing them directly in the list, or right clicking on them and selecting Edit key. Changes take immediate effect in running programs. New keys can be added by right clicking in the list and selecting New key.

Easy to use – Keyboard Shortcuts tool

Use the Keyboard Shortcuts preference tool to customize the default keyboard shortcuts to your requirements.

Click on System > Preferences > Keyboard Shortcuts to launch the application and view the preconfigured shortcuts.
Create / modify keyboard shortcuts in Gnome under Linux / UNIX  with Keyboard Shortcuts tool

To edit a keyboard shortcut, perform the following steps:

  1. Click the action in the list. If you are using the the keyboard, use the arrow keys to select the shortcut and press Return.
  2. Press the new key or key combination you want to assign to the action.
  3. To clear a shortcut, press Backspace. The action is now marked as Disabled.
  4. To cancel assigning a shortcut, click elsewhere in the window or press Escape.

Advance keyboard shortcuts tool – gconf-editor (GConf-Editor)

You need to install this tool using any one of the following command (Debian / Ubuntu Linux):
$ sudo apt-get install gconf-editor
Or if you are using Fedora / CentOS /RHEL Linux:
# yum install gconf-editor

Run gconf-editor

Use menus or type a command as follows:
$ gconf-editor &

  • Next double click the “apps” folder
  • Next double click the “metacity” folder
  • Finally click the global_keybindings folder


Please note that all these keyboard shortcuts and other settings are saved on a user basis (inside a home directory), so each user can create their own custom setup.


Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

16 comment

  1. thanks for that, exactly what i needed, I wanted to set a keyboard shortcut to start a particular program. your gconf-editor tip did it for me.

  2. Very nice topic ! Almoust exactly what i was looking for. I got a problem with shortcuts in Fedora 9. I can not assign the keyboard shotrtcut for HOME directory. It seems to be set in a right way and I also have xml file for this shortcut but it does not works. If you have some idea in mind … I will be thankful.

  3. global_keybindings (run_command_1 to _10) can be set to keybindings (P, just type it in literally), then set the corresponding command in keybindings_commands (command_1 = pidgin). This way you get to set ten commands without overriding any other keyboard shortcuts.

  4. What file does the key binding info get stored in?
    When I want to do a key combo with the window button e.g. “Mod4(windows) + t” it won’t let me. I’d like to edit the file directly.

  5. is there a manual way to assign kbd shortcuts in Gnome? ‘coz in 10.04 Ubuntu ,Gnome-2.30 has disabled these options for the app I wanted to assing kbd shortcut – gnome-terminal.
    any IdeA?

  6. from command line ;)

    gconftool-2 –type=string –set /apps/metacity/global_keybindings/run_command_1 ‘l’

    gconftool-2 –type=string –set /apps/metacity/keybinding_commands/command_1 ‘bot’

    assigns control + l for a command called bot

  7. Gordon, they are stored per user under ~/.gconf by default. Something like:
    (find . | xargs grep your_shortcut_name) 2> /dev/null
    should help you find the exact file for your shortcut. Not sure you can use the Windows key though

  8. Is there possibly a way to assign a key command to another key? For instance the Up key could be executed by hitting Ctrl-e, Down key with Ctrl-x, left key with Ctrl-s and right key Ctrl-d like in Wordstar. I’m trying to find a way to setup linux to globally use the Wordstar command set. You can do it in windows with Ctrlplus and it can be done in Tcsh, but I can’t seem to find a way to do so within X. Xmodmap doesn’t seem to be able to do this either. You can swap keys but not a key for a key command.

  9. Thanks a lot for that, It works and enable Volume Mute button of my Dell Latitude D630. Thanks again.

  10. Is there a way to set a keyboard shortcut for an ordinary mouse left-click?
    Often in slideshows, there are many clicks made to the same mouse position.
    I think it would be easier on my hand to press a key (perhaps function key)
    than holding my hand over the mouse.
    (I am running Gnome 2 under Ubuntu 10.04)

  11. Is there any way to disable the default LMB shortucut? Using 3d packages I need it for other functions ……. :(

    Still, have a question? Get help on our forum!