ISO standard: computer keyboard layouts
ISO/IEC 9995
Information technology ? Keyboard layouts for text and office systems
is an
ISO
/
IEC
standard series defining
layout
principles for computer keyboards. It does not define specific layouts but provides the base for national and industry standards which define such layouts.
[1]
The project of this standard was adopted at ISO in Berlin in 1985 under the proposition of Dr Yves Neuville. The ISO/IEC 9995 standard series dates to 1994 and has undergone several updates over the years.
Parts
[
edit
]
The ISO/IEC 9995 standard series currently (as of December 2023) consists of the following parts:
- ISO/IEC 9995-1:2009
General principles governing keyboard layouts
[2]
- ISO/IEC 9995-2:2009
Alphanumeric section
[3]
- ISO/IEC 9995-2:2009/Amd 1:2012
[4]
- ISO/IEC 9995-3:2010
Complementary layouts of the alphanumeric zone of the alphanumeric section
[5]
- ISO/IEC 9995-4:2009
Numeric section
[6]
- ISO/IEC 9995-5:2009
Editing and function section
[7]
ISO/IEC 9995-6:2006
Function section
(withdrawn)
[8]
- ISO/IEC 9995-7:2009
Symbols used to represent functions
[9]
- ISO/IEC 9995-7:2009/Amd 1:2012
[10]
- ISO/IEC 9995-8:2009
Allocation of letters to the keys of a numeric keypad
[11]
- ISO/IEC 9995-9:2016
Multilingual-usage, multiscript keyboard group layouts
[12]
- ISO/IEC 9995-9:2016/Amd 1:2019
[13]
- ISO/IEC 9995-10:2013
Conventional symbols and methods to represent graphic characters not uniquely recognizable by their glyph on keyboards and in documentation
[14]
- ISO/IEC 9995-11:2015
Functionality of dead keys and repertoires of characters entered by dead keys
[15]
Parts 1,
[16]
2,
[17]
3,
[18]
4,
[19]
and 11
[20]
are currently under revision.
ISO/IEC 9995-1
[
edit
]
ISO/IEC 9995-1 provides a fundamental description of keyboards suitable for text and office systems, and defines several terms which are used throughout the ISO/IEC 9995 standard series.
Physical division and reference grid
[
edit
]
The figure shows the division of a keyboard into sections, which are subdivided into zones.
- alphanumeric section
- alphanumeric zone (indicated by green coloring)
- function zones (indicated by blue coloring)
- numeric section
- numeric zone (indicated by darker red coloring)
- function zone (indicated by lighter red coloring)
- editing and function section (in fact covering all parts of the keyboard which do not belong to the alphanumeric or numeric section)
- cursor key zone (indicated by darker grey coloring)
- editing function zone (indicated by lighter grey coloring)
The presence of a numeric section is not required by the standard. Also, the standard does not prevent a numeric section to be placed left of the alphanumeric section.
By means of the reference grid, each key can be identified by a unique combination of a letter (indicating the row) and a sequence of two digits (indicating the column). E.g., the key visually marked as "1" on several layouts is identified as “Key E01”. The labeling rules do allow for function keys to be arranged other than above of the alphanumeric section, or to be arranged in more than one row (thus, e.g. an
AT keyboard
is compliant to the standard):
- Columns containing editing or function keys are to be numbered from 60 on when placed beyond a right numeric section, or from 80 downwards when placed left of the alphanumeric section.
- Rows above of the alphanumeric section are to be labeled from K on, and rows below the space key are to be labeled from Z downwards.
The grid may be angled (as shown in the figure within the alphanumeric section), or squared (thus, keyboards where the alphanumeric keys are ordered in pure vertical columns are compliant to the standard).
The standard does not constrain the numbers of rows and columns in the alphanumeric section.
Levels and groups
[
edit
]
The selection of level and group during the input of a character (e.g. by means of a
shift key
, an
AltGr key
, or a group selection key or key sequence) is specified in ISO/IEC 9995-2.
Levels (“unshifted” “shifted”, “AltGr”)
[
edit
]
The
characters
which can be input by the keys in the alphanumeric section usually are organized in levels. For
two-cased
scripts
like
Latin
, the basic level (“Level 1”) contains lower-case letters, while the “Level 2” contains capital letters (therefore, these levels are usually called “unshifted” and “shifted”). For characters which are not letters (like
punctuation marks
), no rules are given regarding their distribution among the levels. While
digits
are commonly in Level 1, there are exceptions (e.g. the
French keyboard layout
).
The standard allows for a third level (but not for more than three levels). Usually (but not mandatory by the standard), characters in such a level are selected by the means of an
AltGr key
.
Groups
[
edit
]
If the organization into three levels is not sufficient to accommodate all characters to be contained in a specific layout, then "groups" may be defined, which then constitute a higher hierarchical unit than levels. Thus, each such group is usually subdivided into up to three levels. Common examples are layouts allowing the input of characters of different scripts. On the
Japanese keyboard layout
, the
kana
constitutes the second group. The Canadian
Quebec layout
(1992) and the
German T2 layout
(2012) allow the input of considerably more characters than their preceding editions, to overcome the historic limits of mechanical
typewriters
.
The "Group selector" is defined in ISO/IEC 9995-2. As the
US-International
layout has four levels, the AltGr key or level 3 selector is repurposed as a group selector for the secondary group. Before ISO/IEC 9995-2, the new secondary group was called
third level
and
fourth level
. On layouts complying to ISO/IEC 9995-2’s initial design, the simultaneously pressed Shift and AltGr keys act as a group selector, since level 4 is prohibited as
inaccessible
, much like level 2 and level 3 are inaccessible depending on the disability, which is addressed by the
sticky keys
feature.
Depictions on the keytops
[
edit
]
According to ISO/IEC 9995-1, the level is indicated by the row where the character is depicted on the keytop:
- Level 2 (“shifted”) above of Level 1 (“unshifted”)
- Level 3 (“AltGr”) below Level 1 (“unshifted”).
The group is indicated by the column on the keytop:
- The first or “primary group” at the left keytop border
- The second or “secondary group” at the right keytop border
- Additional groups (if existing) in between.
When letters on a case pair are associated with a key, only the capital character needs to be shown on the keytop for the primary group, while the lowercase character only is shown for the secondary group.
Thus, on the depicted key of the German T2 layout, in the primary group are the characters “#” in Level 1 (unshifted), “'” in Level 2 (shifted), and “®” in Level 3 (accessed by the
AltGr key
). In the secondary group, there is the lowercase letter “
?
” in Level 1 (unshifted) and its capital counterpart “?” in Level 2 (shifted).
For layouts containing only one group, characters in Level 3 may be depicted in the lower right corner of a keytop, to allow larger depictions for ergonomic reasons. For instance, on the depicted key of the German T1 layout, the “\” is in Level 3 (of the only defined group), to be accessed by the AltGr key.
ISO/IEC 9995-2
[
edit
]
ISO/IEC 9995-2 specifies requirements for the keys contained in the alphanumeric section (see the description of ISO/IEC 9995-1 above).
The alphanumeric zone (being a part of the alphanumeric section) has to contain 47 or more keys used to input
characters
, including the
Space bar
which has to be placed in the lowest row (row A according to the reference grid specified in ISO/IEC 9995-1). Also, there must be:
- at least 12 keys in row E (the upmost row) in positions E00 to E15, containing all keys to input the decimal digits,
- at least 12 keys in row D in positions D01 to D15,
- at least 11 keys in row C in positions C01 to C15,
- at least 10 keys in row B in positions B00 to B11.
The space bar has to expand at least over the positions A03 to A07. This implies that
Japanese keyboards
containing
muhenkan
,
henkan
, and the
Katakana
/
Hiragana
switch keys (the first one left, the other two right of the space bar) are not compliant to the standard if taken literally. This, however, is considered neglectable as the space bar has less importance in
Japanese
writing than in
Latin
or similar ones, as Japanese words usually are not separated by spaces.
Layouts which are designed for the
Latin script
must contain at least the 26 basic letters A…Z and a…z, the decimal digits 0…9, and the following characters contained in
ISO 646
: ! " % & ' * ( ) + , - . / : ; < = > ? _ and
space
.
Alphanumeric section of a keyboard, showing several details specified in ISO/IEC 9995-2:2009 (including the possibilities of
numeric keypad
emulation specified in amendment 1 of 2012)
The keys shown grey in the figure, all being function keys, constitute the left and right function zones, while all other keys constitute the alphanumeric zone. The reference grid position of any function key may vary according to the specifications listed below. Especially, on a keyboard with considerably more than 47 keys in the alphanumeric zone, the right function keys will get higher column numbers.
The symbols shown for the function keys are specified in ISO/IEC 9995-7. Letterings which are commonly used instead of the symbols are shown in their English version in parentheses.
The harmonized 48 graphic key keyboard arrangement
[
edit
]
Keyboards which comply to this narrower specification contain all the keys shown in white in the figure above, the key at C12 shown in yellow, and one of the two keys at E13 and B00 shown in red. The standard does not require this; it only says that keyboards complying to this narrower specification can be called such.
A key at E00 is not required, but when it is present on the keyboard, the positions E13 and B00 (shown in red) may have no key (e. g. the
US layout
with the Backspace or Delete key at E14 enlarged to E13 and the left Shift key at B99 enlarged to B00); but most international layouts having a key at E00 also have at least one key on E13 (with a narrow Backspace or Delete key on row E at E14, but a left Shift key at B99 enlarged to B00) or B00 (with a narrow left Shift key at B99, but a Backspace or Delete key at E14 enlarged to E13). Key at E00 may also be used to allocate a function key (notably the Escape key on compact keyboards), in which case a key will generally be present at E13 (on compact US layout), or B00, or both (on compact international layouts). Finally the key at E00 may also be used to place the digit 0 at start of the row instead of the more common location at E10, in which case there two positions E13 and B00 may be used to enlarge both the Backspace or Delete key at E14 to E13 and the left Shift Key at B99 to B00).
In fact, several layouts (e. g. the
US layout
), to allow a wider return key, have a key at D13 (shown in green) instead of C12 (shown in yellow). Thus, while they cannot be called “harmonized 48 graphic key keyboards” according to the standard, they still comply to the standard itself. ISO/IEC 9995-3:2010, in referring to the basic layout within its specific scope, does take a possible substitution of C12 by D13 into account.
Function keys
[
edit
]
A
tabulation
key shall be present, occupying position D00 (i. e., the key may be wider, spanning over additional positions like D99 left of D00).
A key providing one of the functions
Capitals lock
(usually called “Caps Lock”),
Level 2 lock
(i. e. “Shift lock”), or
Generalized lock
shall be present, occupying the position C00. (The function “Generalized lock” is not specified in the ISO/IEC 9995 series). The specific way the Caps Lock or Shift Lock works (i. e. swapping the lock state by hitting the key, as it is usually implemented) is not specified in the ISO/IEC 9995 series. Thus, solutions avoiding the status dependency as well as the problem of inadvertent hitting (e.g., the lock key pressed together with Shift turns Shift lock on, together with AltGr turns Caps Lock on, pressed alone switches off any lock status but has no effect when no lock status is activated) would not prevent compliance to the standard.
A
Return key
has to be present, right of the character input keys in row C. It is recommended that it expands to row D (thus spanning over position D13 when located on position C13 as shown in the figure), as it e. g. does on the
German layout
.
A key providing one of the functions
Backspace
or
Backward erase
shall be present in row A or (as it is more common) Row E, right of the character input keys.
If at least one
Alternate
key (commonly called “Alt key”) is present, it is to be positioned left of the space bar (or, if a function key specific to the writing system supported by the keyboard layout is there, left of that key).
If at least one
Control
key (commonly abbreviated “Ctrl”) is present, it has to be placed leftmost in row A (as it is more common), or row B.
If a
Function
key (commonly abbreviated “Fn”) is present, it is to be positioned left the space bar and left of an “Alternate” key, if such one is present. (It is allowed but explicitly not recommended to place the “Function” key left of the “Control” key.)
Level and group selection
[
edit
]
To select the Level 2 (commonly called “shifted”, see the subsection “Levels and Groups” of the section “ISO/IEC 9995-1” above), two keys shall be present in row B (commonly called
Shift keys
). The left one shall occupy position B99, while the right one shall be located right of the character input keys of that row. The exact function of these keys (commonly pressing them together with the affected character input key) is not specified in the standard. Thus, solutions where the shift key is pressed, then released before the character input key is pressed, are compliant with the standard.
To select the Level 3 (if this is present on a layout), at least one
Level 3 select
key (frequently marked
AltGr
) shall be present. On keyboards compliant to the “harmonized 48 graphic key keyboard arrangement” (see above), such keys shall be placed in row A or row B. Like for the shift keys, the exact function of these keys (commonly pressing them together with the affected character input key) is not specified in the standard.
For layouts containing more than one group, several mechanisms for group selection are specified. A dedicated
Group selection
key (marked by
?
according to ISO/IEC 9995-7), if present, shall be positioned adjacent to a “Level 3 select” (AltGr) key. For layouts containing a “Group 2” as specified in ISO/IEC 9995-3, this key shall work as a “latch” (i. e., when it is pressed and then released, the actuation of the next character input key causes the selection of a character of Group 2. After this, the status is reverted, thus subsequent character input key actuations refer to the basic group unless the “group selection” key is actuated again). If no dedicated “Group selection” key is present, its function is obtained by pressing the “Level 2 select” and “Level 3 select” (i. e. “Shift” and “AltGr”) key simultaneously and releasing them before actuating the selected character input key.
Allocation guidelines for layouts containing the Latin alphabet
[
edit
]
An informative annex “Allocation guidelines” provides a basic pattern for arrangements of Latin letters, which in fact specifies a foundation for the kinds of keyboard layouts known as
QWERTY
,
QWERTZ
, or
AZERTY
. As this annex is not normative, it does not prevent other arrangements like the
Dvorak keyboard
or the
Turkish
F-keyboard
being compliant to the ISO/IEC 9995 standard series.
The figure shows letters in black where a unique position is given, while the letters shown in red may alternatively occupy any of the positions where they are shown. Digits may be allocated on Level 0 (unshifted) or Level 1 (shifted). An asterisk indicates “any other character”.
Numeric keypad emulation
[
edit
]
The amendment 1 of ISO/IEC 9995-2:2009, which was published in 2012, specifies two ways of the
emulation
of a
numeric keypad
within the alphanumeric section of a keyboard. One way, with mappings to keys in the left half of the alphanumeric section (shown green in the diagram above), emulates a numeric keypad with the digits 1,2,3 in the upper row. The other way, with mappings to keys in the right half (shown blue in the diagram above), emulates one with the digits 7,8,9 in the upper row. The affected keys of any emulation, if in effect, are to be pressed simultaneously with the
Function key
(which has to be present outside of the alphanumeric section) to provide the effect of the according key of a numeric keypad.
ISO/IEC 9995-3
[
edit
]
Common secondary group
[
edit
]
ISO/IEC 9995-3:2010
[21]
defines a common secondary layout (“common secondary group”) for the alphanumeric keyboard. These are engraved on the right part of the keytops; the standard defines their position independent of the characters of the primary layout. Thus, e. g. the
Yen
symbol “¥” occupies the shifted position on the 6th letter key of the second row, whether this is the Y key on a
QWERTY
keyboard (like the
US layout
) or the Z key on a
QWERTZ
keyboard (like the German layout).
Diacritical marks and peculiar characters
[
edit
]
The
diacritical marks
contained in the common secondary group act as
dead keys
, i.e. they are to be entered before the base characters they apply to. This mechanism is also to be used for sequences of more than one diacritical marks, to write languages like
Vietnamese
and
Navajo
.
Moreover, ISO/IEC 9995-3:2010 defines a list of “Peculiar Characters which can be entered as combinations using diacritical marks”.
This list specifies combinations of a diacritical mark and a second key. E.g., symbols like the
not-equal sign
“≠” (
Unicode
U+2160) can be entered this way. Especially, letters with a horizontal stroke (like
Serbo-Croatian
đ/đ,
Maltese
Ħ/ħ, or
Comanche
?/?) are entered this way using the "horizontal stroke accent" located on the K key.
Outdated common secondary group
[
edit
]
The third edition ISO/IEC 9995-3:2010 additionally defines an “outdated common secondary group” for compatibility purposes only. This resembles the “common secondary group” defined in the earlier edition of the standard, ISO/IEC 9995-3:2002 (second edition). The
CSA keyboard
also named “Canadian Keyboard Standard for the English and French Languages” used mostly in the province of Quebec (Canada) is based on this version.
Complementary Latin group layout
[
edit
]
For cases where no national keyboard layout is available, or to be used as an additional group on layouts designed for other scripts than Latin, the standard specifies a “Complementary Latin group layout”. It is based on the “harmonized 48 graphic key keyboard arrangement” as defined in ISO/IEC 9995-2 (see description above). The assignment shown with red background shall occur once at one of the indicated positions.
The Complementary Latin group layout according to ISO/IEC 9995-3:2010
ISO/IEC 9995-4
[
edit
]
ISO/IEC 9995-4 specifies the layout of the numeric section of a keyboard, if such one exists. It is subdivided into the function zone (shown with grey background in the left figure) and the numeric zone (shown with white background). The leftmost key in the lowest row may span to the left, occupying the position shown with yellow background.
The decimal digits 1…9 may be arranged in an “1-2-3 layout” (shown in green, named according to the keys in the D row), or in a ”7-8-9 layout” (shown in blue).
On a keyboard used for telematic functions, the symbols
?
and
?
represent the initiator and the terminator. On a keyboard used for office purposes, the key denoted by
?
shall show the
decimal separator
(usually a dot or a comma, dependent on the user language). On such keyboards, the key position marked by the asterisk may be an extension of the “0” key, or a “double zero” key. Accordingly, if the yellow key position is used, it may be also an extension of the “0” key, a “double zero” key, or a “triple zero” key.
The keys in the function zone may be associated to the arithmetic function they denote, or to the arithmetic characters, dependent of the software which is used. If an additional
tabulator key
or another special key is used, it shall be located at the position C54 (according to the reference grid specified in ISO/IEC 9995-1), thus occupying the lower half of the place shown for the “=” key.
Numeric sections on usual keyboards for
personal computers
do not comply to the standard, as they usually have a
Num lock
key in the upper left corner where the standard requires the “+” key, and therefore also show a different arrangement of the other arithmetic keys (usually lacking an “=” key; see the second picture). By this, the standard in its present form (ISO/IEC 9995-4:2009) can be considered outdated.
ISO/IEC 9995-5
[
edit
]
ISO/IEC 9995-5 specifies the layout of the editing and function section of a keyboard. In fact, it specifies only two items:
- The
Escape key
has to be at the position K00 according to the reference grid specified in ISO/IEC 9995-1, or to the left of it (i. e., it has to be positioned near the left border of the first row above of the alphanumeric section).
- The four
cursor
keys (up, down, left, and right) in the cursor key zone (as specified in ISO/IEC 9995-1) have to be arranged in a “cross layout” or an “inverted T layout” (see figure). The recommended placement is such that the “cursor down” key is placed on row A (i. e., in the same row as the space bar).
ISO/IEC 9995-7
[
edit
]
ISO/IEC 9995-7 specifies several keyboard symbols used to represent functions. Some of these symbols have been encoded as
Unicode
code points
; the figure shown above in the ISO/IEC 9995-2 section shows several examples. The rest have been proposed for encoding,
[22]
but (as of November 2021) have been postponed pending evidence of use in running text other than by ISO and
DIN
.
[23]
[24]
They are used extensively e. g. in the keyboard standard of the
Province of Quebec
,
Canada
.
[25]
ISO/IEC 9995-8
[
edit
]
ISO/IEC 9995-8:2009 defines an assignment identical to
E.161
of the 26 letters A?Z to the number keys of a numeric keypad. The space character is not assigned.
ISO/IEC 9995-9
[
edit
]
ISO/IEC 9995-9:2016 defines multi-lingual, multiscript keyboard layouts.
[26]
ISO/IEC 9995-10
[
edit
]
ISO/IEC 9995-10 specifies several symbols to enable the unique identification of characters on keytops which otherwise can easily be misidentified (as em vs. en
dashes
). Also, it specifies a way to present
diacritical marks
, especially on
dead keys
. There is a publicly available listing of these symbols in a proposal to encode them as
Unicode
characters
[22]
(which has been postponed for lack of demonstrated use, as of November 2021).
[23]
[24]
ISO/IEC 9995-11
[
edit
]
ISO/IEC 9995-11:2015 is related to the “functionality of dead keys and repertoires of characters entered by dead keys”. It has a limited scope of specifying an algorithm designed to palliate certain limitations in keyboard layout drivers on a widely used platform, and thus “is primarily intended for word-processing and text-processing applications.”
[27]
External links
[
edit
]
References
[
edit
]
ISO
standards
by standard number
|
---|
|
1?9999
| |
---|
10000?19999
| |
---|
20000?29999
| |
---|
30000+
| |
---|
|