51

Ok, I've used Ubuntu with GNOME for a while, but now I'm using XUbuntu. In Ubuntu, there used to be a keyboard preference which makes the numpad more sane, it was called something like "Make Shift+NumPad work like Windows".

The problem this options solves is, that when you press NumPad 7, it acts like the "Home" key, which is all fine, but if you press Shift+NumPad 7, it acts like the "7" key, which is not fine because I'm on a laptop and the regular "Home" key requires me to pull of an anatomically insane move. Anyways, this option made Shift+NumPad 7 act like the "Home" key.

I can't find that option under XUbuntu. How do I set it?

Update: GUI or command line, doesn't matter.

Raphael R.
  • 1,311

10 Answers10

65

After some grepping I found the solution: You need to add the numpad:microsoft option to the XkbOptions. On older Ubuntus, do that in your xorg.conf. On newer ones open the file /etc/default/keyboard and change this line:

XKBOPTIONS=""

to

XKBOPTIONS="numpad:microsoft"

Save and reboot (restarting X doesn't seem to work, at least not with RAlt+PrintScreen+K). You may need to run sudo dpkg-reconfigure keyboard-configuration for changes to take effect.

Raphael R.
  • 1,311
21

Ubuntu 14.04 have no more "Miscellaneous compatibility options" in the keyboard settings. Editing /etc/default/keyboard also is not a working solution. But dconf database contains the required options with key /org/gnome/desktop/input-sources/xkb-options. This options should be completed with numpad:microsoft to something like ['grp:alt_shift_toggle', 'grp_led:scroll', 'numpad:microsoft'] manually in dconf-editor or using this script:

# !/bin/bash
old=`gsettings get org.gnome.desktop.input-sources xkb-options`
new=`echo $old | sed "s/'numpad:microsoft'//g" | sed -r "s/(, )+/, /g" | sed -r "s/(, )?]/, 'numpad:microsoft']/"`
gsettings set org.gnome.desktop.input-sources xkb-options "$new"
tbrush
  • 311
19

In Xubuntu 16.04 the XKBOPTIONS setting ( XKBOPTIONS="numpad:microsoft" ) in /etc/default/keyboard is ignored - I consider this to be a bug.

I'm using the following command as workaround:
setxkbmap -option 'numpad:microsoft'

In order to run the above command automatically when starting the graphical desktop environment, I've create an Application Autostart entry:
Menu > Settings > Session and Startup > Application Autostart > Add

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

F.M.
  • 291
13

Glad I found your post. Using Natty Narwhal, I found a similar option in the Keyboard settings.

  1. Search for Keyboard
  2. Click Layouts tab
  3. Click Options button
  4. Expand miscellaneous compatibility options
  5. Check "Shift with numeric keypad keys works as in MS Windows"
  6. Close and you're good!
Kit Menke
  • 230
6

For 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. Close dconf Editor, no reboot required.

AlainD
  • 869
3

On Ubuntu 19.10, you can get this functionality by installing gnome-tweak-tool, then opening it, going to Keyboard & Mouse -> Additional Layout Options then expanding Miscellaneous compatibility options and checking Num Lock on: digits; Shift for arrow keys, Num Lock off: arrow keys (as in Windows), as shown here:

Gnome Tweak Tool Config

The changes take effect immediately. It seems to change the same setting as the answer by @AlainD

SteveK
  • 141
3

I had a similar problem on lubuntu. I tried changing the /etc/default/keyboard file, but it didn't help.

I think the reason might be that I had Layout changer on my system. However, adding numpad:microsoft in the "Advanced setxkbmap Options" field in the options of the Keyboard Layout Handler actually worked. I didn't even have to reboot the X.

guntbert
  • 13,475
1

Kubuntu 20.04 also has Miscellaneous compatibility options menu! So, you can fix numlock and shift+home / shift+end issue.

enter image description here

James Bond
  • 860
  • 8
  • 7
0

Running Ubuntu 20.04 in Virtual Box on a Windows host, I needed to turn on these options in Tweaks to get shift- and control-shift- keys to work in Windows style.

  • Tweaks > Keyboard & Mouse > Additional Layout Options > Miscellaneous compatibility options > Shift does not cancel Num Lock, chooses 3rd level instead
  • Tweaks > Keyboard & Mouse > Additional Layout Options > Layout of Numeric Keypad > Wang 724 keypad with unicode additions (arrows and math operators; math operators on default level)

For example, in a text editor with NumLock on, this allows ctrl-shift-numpad4 to move left to the start of a word while selecting the word.

CMerrill
  • 101
-1

For me 'keypad:pointerkeys' option helped on Lubuntu 18.04 Bionic Beaver