|In Unicode||U+002D - HYPHEN-MINUS (HTML |
|Different from||U+2010 ‐ HYPHEN |
U+2014 — EM DASH
The hyphen-minus, character used in digital documents and computing to represent a hyphen , a minus sign , or an en dash . Typewriter keyboards and early computer encodings had only one character that looked like this, so its design had to be a compromise between the different typographical appearances. The proper name is rarely used: the character is referred to as a hyphen, a dash or a minus according to the context where it is being used., is a
|- + −|
hyphen-minus, plus, minus signs compared
The use of a single character for both hyphen and minus was a compromise made in the early days of fixed-width (monospaced font) typewriters and computer displays. However, in proper typesetting and graphic design, there are distinct characters for hyphens, dashes, and the minus sign. Usage of the hyphen-minus nonetheless persists in many contexts, as it is well known, easy to enter on keyboards, and in the same location in all common character sets.
In proportional fonts the hyphen-minus is usually the size of, or slightly bigger than, a hyphen, and smaller than a minus sign (which is usually the same width as a plus sign).[a] This results in an unattractive appearance when mixed with plus signs. Also many word processors will allow a word wrap after a hyphen-minus, unlike the minus sign proper which is treated as a mathematical symbol no different (typographically) from any unspaced number or letter.
This character is often typed when a hyphen, a minus sign or an en dash (as in "the Boston–London flight") is wanted. Based on old typewriter conventions, it is common to use a pair to represent an em dash , and some word processors automatically convert this pair to an em dash. The character can also be typed multiple times to simulate a horizontal line though, in most fonts, repeated typing of the underscore will produce a smoother line. Alternating the hyphen-minus with spaces produces a "dashed" line to indicate where paper is to be cut.
Most programming languages use the hyphen-minus for denoting subtraction and negation. It is almost never used to indicate a range, due to ambiguity with subtraction. Generally other characters, such as the Unicode U+2212 − MINUS SIGN are not recognized.
The character is often used when specifying command-line options, a convention mostly started by Unix. Options might be
-y, a user can specify both by using
-xy. Various implementations of the
getopt function allow two hyphen-minuses to specify "long" option names as
--description, which are much easier to read while being much harder to memorize and write (recent software does not care about the number of hyphen-minuses, and either doesn't allow combinations of single-letter options or require the user to rearrange them so they don't match a long option). A double hyphen-minus by itself (followed by a space) indicates that there are no more options, which is useful when one needs to specify a filename that starts with a hyphen-minus. An option of just a hyphen-minus (followed by a space) may be recognized in lieu of a filename and indicates that stdin is to be read.
- The precise relationships depend on typeface design choices that may differ between designers.
- Jukka K. Korpela (2006). Unicode explained. O'Reilly. p. 382. ISBN 978-0-596-10121-3.
- Fischer, Eric. "The Evolution of Character Codes, 1874-1968". CiteSeerX 10.1.1.96.678. Cite journal requires
- French, Nigel (2006). InDesign Type: Professional Typography with Adobe InDesign CS2. Adobe Press. p. 72. ISBN 9780321385444. Retrieved 4 July 2020.
- Ritchie, Dennis (c. 1975). "C Reference Manual" (PDF). Bell Labs. Retrieved 7 December 2016.
- Marlow, Simon (ed.). Haskell 2010 Language Report (PDF). Retrieved 7 December 2016.[page needed]