I am used to use the numeric keypad for navigation (e.g. : [KP7] -> Start, [KP1] -> End, [KP4] -> Left, etc... ). I am also used to use it for selection (e.g. : Shift+[KP7] -> Select from cursor position to beginning of line, Shift+[KP1] -> Select from cursor position to end of line, etc...)

With the keyboard configuration installed with Ubuntu, though, Shift+[KP7] prints the character "7", Shift+[KP1] prints "1", etc...

How can I change this so that Shift+[KP-key] is not mapped to [key], but to Shift+[KP-key] ?


I finally found out there was a standard ubuntu option to set this :

  • Open "keyboard preferences" ; in the "Layouts" tab, click the "Options..." buton
  • Look for the "Miscellaneous compatibility options" group
  • Select the "Shift with numeric keypad keys work as in MS Windows" checkbox.

EDIT 1: In newer versions (eg.Ubuntu 18.04) look at Tweaks> Keyboard and Mouse>Additional Layout options>Miscellaneous compatibility options>"Num Lock on: digits; Shift for arrow keys. Num Lock off: arrow keys (as in Windows)"

EDIT 2: Or, as suggested in XUbuntu: Make Shift+NumPad work like Windows

Use the following command as workaround:
setxkbmap -option 'numpad:microsoft'

In order to run the above command automatically when starting the graphical desktop environment, create an Application Startup entry:
Search for Startup Applications > Add

          Name: Make Shift+NumPad work like MS Windows
Description: whatsoever
   Command:setxkbmap -option 'numpad:microsoft'

  • 1
    To install Tweaks: sudo apt install gnome-tweaks – AlainD Sep 4 '19 at 8:38
  • To install Tweak Tool: sudo apt install gnome-tweak-tool Look for the Typing tab if not finding the setting elsewhere. – juanitogan Feb 2 '20 at 7:52

May not be the exact method, but think this helps

# gconf-editor

If gocnf-editor is not installed, install it with apt-get.

Then browse to apps->metacity->global_keybindings.

There you can find Name and value columns. Some are filled. Unfilled ones have "value" set as "disabled". Select anyone of them and set the desired key.

Now you have to assign the command to be invoked. For that move to the next option "keybinding_commands" (apps->metacity->keybinding_commands). Corresponding to the Name-Value pair set earlier set the command to be invoked.


On uBuntu 18.04: Another options is to use Dconf-Editor, a powerful GUI for most uBuntu settings. If not installed, open Terminal and type:

  • apt-get update
  • apt-get install dconf-editor -y

Open dconf Editor, then /org/gnome/desktop/input-sources/xkb-options.

On a fresh uBuntu installation, Custom value will be blank. Turn Use default value OFF then:

  • insert ['numpad:microsoft'] (if blank) or
  • append , 'numpad:microsoft' (after whatever is there, if not blank)

For example, ['caps:none', 'numpad:microsoft'] which both disables Caps Lock and uses the NumPad as in Windows.

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.