Template:Key press

From Valve Developer Community
Jump to navigation Jump to search

English (en)Deutsch (de)Esperanto (eo)Español (es)Français (fr)Suomi (fi)Hrvatski (hr)Magyar (hu)Italiano (it)日本語 (ja)한국어 (ko)Nederlands (nl)Polski (pl)Português (pt)Português do Brasil (pt-br)Русский (ru)Slovenčina (sk)Svenska (sv)Türkçe (tr)Українська (uk)Tiếng Việt (vi)中文 (zh)中文(臺灣) (zh-tw)
Icon-translate.png Available doc translations
View
Page history


This is the {{key press}} template primarily designed to illustrate keys and keystrokes on a computer keyboard. With additional parameters, a single template can even illustrate a combination of multiple simultaneous keystrokes. A sequence of keystrokes, on the other hand, need to be demonstrated with separate templates.

Example

{{key press|A}}A

Keystroke combinations

To illustrate keystroke combinations, just use extra parameters:

{{key press|Alt|P}}Alt+P
{{key press|Ctrl|Alt|Del}}Ctrl+Alt+Del

This template currently handles up to 10 key name parameters, which should be more than enough to accommodate for any possible combination of simultaneous keystrokes. If it gets too many key name parameters it reports the page into Category:Keypress template parameter needs fixing. This means we can easily find those pages and fix them, or we can discover if we need to make this template take more parameters.

When you feed several key names to this template, it adds a "+" (or whatever the contents of the optional chain parameter) with no spaces around. This means it won't line wrap. But when you show key combinations for instance in a table then that might cause too wide items. Then instead manually build the key combination with spaces around the "+" so it can line wrap:

{{key press|Ctrl}} + {{key press|Alt}} + {{key press|Del}}Ctrl + Alt + Del
{{key press|Ctrl|Alt|Del|chain= + }}Ctrl + Alt + Del

On the other hand, to illustrate Windows Alt codes you might want to use separate templates with no intervening punctuation or space. In most Windows systems in North America and Western Europe, for example, the plus-minus sign (±) can be entered by holding down the Alt key while typing 0177 (with the numeric keypad):

{{key press|Alt|0}}{{key press|1}}{{key press|7}}{{key press|7}}Alt+0177

An example of a use case where more than 5 might be used is explaining usage of a macro (keyboard shortcut) created by a third-party application:

{{Key press|Ctrl|Alt|Shift|Win|Menu|fn|L}}Ctrl+Alt+⇧ Shift+⊞ Win+≣ Menu+fn+L

Wiki markup characters

Some wiki markup characters, like the pipe symbol, the semicolon and the equals sign, need to be entered using the {{!}}, {{

}} and {{=}} templates or as an HTML entity |, &#59;, = respectively
  • {{key press|{{pipe}}}}|
  • {{key press||}}|
  • {{key press|{{;}}}};
  • {{key press|&#59;}};
  • {{key press|{{=}}}}=
  • {{key press|=}}=

However, if the characters are marked as wikilinks, they can be entered as such:

  • {{key press|[[|]]}}
  • {{key press|[[;]]}};
  • {{key press|[[=]]}}=

Most markup characters also have aliases:

  • {{key press|pipe}}|
  • {{key press|semicolon}};
  • {{key press|equals}}=
  • {{key press|colon}}:
  • {{key press|asterisk}}*
  • {{key press|hash}}#

Key symbols

Some key names have a fitting Unicode character. This template automatically adds such "icons" to the following key names among others.

  • {{key press|Shift}}⇧ Shift
  • {{key press|Tab}}Tab ↹
  • {{key press|Enter}}↵ Enter
  • {{key press|Option}}⌥ Option
  • {{key press|Opt}}⌥ Opt
  • {{key press|Command}}⌘ Command
  • {{key press|Cmd}}⌘ Cmd
  • {{key press|Caps Lock}}⇪ Caps Lock
  • {{key press|Scroll Lock}}Scroll Lock
  • {{key press|Up}}
  • {{key press|Down}}
  • {{key press|Left}}
  • {{key press|Right}}

There are no characters for the Windows key and Menu key. So this template shows approximate characters for them, namely the 'SQUARED PLUS' and 'STRICTLY EQUIVALENT TO' from the Mathematical Operators block:

  • {{key press|Win}}⊞ Win
  • {{key press|Menu}}≣ Menu

Video games

Video game controllers often have specialized input labels that do not map easily. The following are mappings for various game consoles and input features.

Directional input

The following should only be used when the input sequence uses something other than the primary input or mixes input between directional devices.

  • {{key press|l-down}}L↓
  • {{key press|c-left}}c-left
  • {{key press|r-up}}R↑

Stick specific diagonals are also supported:

  • {{key press|l-nw}}L↖
  • {{key press|c-se}}c-se
  • {{key press|r-ne}}R↗
PlayStation
  • {{key press|ex}}×
  • {{key press|circle}}
  • {{key press|triangle}}
  • {{key press|square}}

Technical details

This template calls {{key press/core}}, which holds the code that otherwise would be repeated several times in {{key press}}, thus simplifying the code.