Evolution of Laptop Keyboard

By Xah Lee. Date: . Last updated: .

In past few years, there's notable change of laptop keyboards across board.

Let's look at the ThinkPad keyboard thru the years.

Thinkpad Keyboard

2000s, Widescreen + Full-Sized Laptop Keyboard

In about 2008, widescreen became popular, and laptop got larger, and have dedicated numerical keypad.

gateway p6831fx laptop 80288
Gateway P6831fx Laptop, released in 2008. [image source http://www.anandtech.com/show/2490 ]

In 2010s, laptop keyboard again don't have the number pad anymore. But, further, they started to not have page up/down keys. This is led by rise of popularity of Apple's laptops, which never had these keys, and Google's Chromebook, which has a vast simplified keyboard.

2012 to 2013 Laptop Keyboards

Here is a 2012 laptop keyboard.

Asus zenbook keyboard-3d39610f
ASUS Zenbook laptop. ASUS Zenbook

Again, there is no {PageUp, PageDown, Home, End} keys. But it does have Delete โŒฆ key, which is often used on Microsoft Windows and Linux.

It has PrintScreen Pause, but no ScrollLock

Dell Inspiron laptop keyboard 2014-02-07-2
Dell Inspiron 15 i15RV-953BLK Laptop, released in 2013. Dell laptop

Laptop Keyboard 2016

dell inspiron i7559 keyboard 86590
Dell Inspiron I7559 Keyboard (2016) Dell Inspiron 15 7559 Spec, 2015

Note that, it is essentially the same as a full-sized Microsoft Keyboards โŒจ. On this particular one, it doesn't have {โ–ค Menu, Pause,ScrollLock} keys.

Microsoft Surface Book 2016 Keyboard

Emacs Keybinding Design, Laptop Keyboards: No More Page Up, Page Down Keys, Multiple Keys for the Same Function?

Recently () , started to work on MacBook. One problem is that my Emacs: Xah Fly Keys ๐Ÿ“ฆ isn't designed for using on Apple keyboard. For example, Apple Keyboards in general don't have {Home, End, PageUp, PageDown} keys. So, i had to make a lot adjustments of my own keybinding.

[see Apple Keyboard Problems]

The gist here, is that when you design a keybinding system for general public use, such as ErgoEmacs Keybinding, you then have to consider popularly used keyboard hardware, their key arrangement. For example, if the only key shortcut to do page up is the PageUp key, and popular laptops don't have that key, then it's a problem. This is interesting because it touches on several issues.

When designing a keybinding system, ideally, a command should not have multiple keybinding, because it's confusing and redundant. (e.g. in emacs, there are 3 keys for undo: {Ctrl+_, Ctrl+/, Ctrl+x u}) However, this is almost unavoidable, because there are quite a lot different keyboard in popular use, some don't have particular key, some have them on different position. So, the ideal key only works on one subset of popular keyboards, and you need other keybinding for different keyboards.

The other interesting thing is that, if you really consider all keyboards, then you often ends up with a common denominator. Namely, do everything with a Ctrl combination, like most unix terminal software. Which means, very inefficient use of keys. [see Linux: Bash Keys]

Of course, i knew the above, and have kept them in mind. But there's a new trend i haven't thought about. That is, many of today's laptops, no longer have physical {PageUp, PageDown, Home, End} keys. This is a new trend, started few years ago, especially by Chromebooks. This mean, any software that assumed these keys, need to change.

This also has a major impact on key usage. For example, {Ctrl+PageUp, Ctrl+PageDown} are used in browsers to switch tabs. And also {Ctrl+Tab, Ctrl+Shift+Tab}. I'm not sure which is more popularly used. However, now, since many laptops don't have {PageUp, PageDown} anymore, so the habit may gravitate to {Ctrl+Tab, Ctrl+Shift+Tab}, and perhaps in a few years, shortcuts with {PageUp, PageDown} keys may become rare and deprecated.