Tilde

The tilde (/ˈtɪldə/[1] or /ˈtɪldi/), ˜ or ~), is a grapheme with several uses.[lower-alpha 1] The name of the character came into English from Spanish and from Portuguese, which in turn came from the Latin titulus, meaning "title" or "superscription".[1]

~
Tilde
˜ ̃
Small tilde Tilde operator Combining tilde
See alsoDouble tilde: Approximation [≈] or Double negation [ ~(~ ]
̃
Combining tilde
Diacritics in Latin & Greek
accent
acute´
double acute˝
grave`
double grave ̏
circumflexˆ
caron, háčekˇ
breve˘
inverted breve  ̑  
cedilla¸
diaeresis, umlaut¨
dot·
palatal hook  ̡
retroflex hook  ̢
hook above, dấu hỏi ̉
horn ̛
iota subscript ͅ 
macronˉ
ogonek, nosinė˛
perispomene ͂ 
overring˚
underring˳
rough breathing
smooth breathing᾿
Marks sometimes used as diacritics
apostrophe
bar◌̸
colon:
comma,
full stop/period.
hyphen˗
prime
tilde~
Diacritical marks in other scripts
Arabic diacritics
Early Cyrillic diacritics
kamora ҄
pokrytie ҇
titlo ҃
Gurmukhī diacritics
Hebrew diacritics
Indic diacritics
anusvara
chandrabindu
nukta
virama
visarga
IPA diacritics
Japanese diacritics
dakuten
handakuten
Khmer diacritics
Syriac diacritics
Thai diacritics
Related
Dotted circle
Punctuation marks
Logic symbols

The reason for the name was that it was originally written over an omitted letter or several letters as a scribal abbreviation, or "mark of suspension" and "mark of contraction",[2] shown as a straight line when used with capitals. Thus, the commonly used words Anno Domini were frequently abbreviated to Ao Dñi, with an elevated terminal with a suspension mark placed over the "n". Such a mark could denote the omission of one letter or several letters. This saved on the expense of the scribe's labour and the cost of vellum and ink. Medieval European charters written in Latin are largely made up of such abbreviated words with suspension marks and other abbreviations; only uncommon words were given in full.

The tilde has since been applied to a number of other uses as a diacritic mark or a character in its own right. These are encoded in Unicode with many precomposed characters as well as individually at U+0303 ̃ COMBINING TILDE and U+007E ~ TILDE (as a spacing character), and there are additional similar characters for different roles. In lexicography, the latter kind of tilde and the swung dash, , are used in dictionaries to indicate the omission of the entry word.[3]

History

Use by medieval scribes

Text of Exeter Domesday Book of 1086

The text of the Domesday Book of 1086, relating for example, to the manor of Molland in Devon (see image left), is highly abbreviated as indicated by numerous tildes. The text with abbreviations expanded is as follows:

Mollande tempore regis Edwardi geldabat pro quattuor hidis et uno ferling. Terra est quadraginta carucae. In dominio sunt tres carucae et decem servi et triginta villani et viginta bordarii cum sedecim carucis. Ibi duodecim acrae prati et quindecim acrae silvae. Pastura tres leugae in longitudine et latitudine. Libras ad pensam. Huic manerio est adjuncta Blachepole. Elwardus tenebat tempore regis Edwardi pro manerio et geldabat pro dimidia hida. Terra est duae carucae. Ibi sunt quinque villani cum uno servo. Valet viginti solidos ad pensam et arsuram. Eidem manerio est injuste adjuncta Nimete et valet quindecim solidos. Ipsi manerio pertinet tercius denarius de Hundredis Nortmoltone et Badentone et Brantone et tercium animal pasturae morarum.

Role of mechanical typewriters

The incorporation of the tilde into ASCII is a direct result of its appearance as a distinct character on mechanical typewriters in the late nineteenth century. When all character sets were pieces of metal permanently installed, and number of characters much more limited than in typography, the question of which languages and markets required which characters was an important one. Any good typewriter store had a catalog of alternative keyboards that could be specified for machines ordered from the factory.

At that time, the tilde was used only in Spanish and Portuguese typewriters (keyboards). In Modern Spanish, the tilde is used only with ñ and Ñ. Both were conveniently assigned to a single mechanical typebar, which sacrificed a key that was felt to be less important, usually the 1214 key.

Portuguese, however, uses not ñ but nh for (almost) the same phoneme. It uses the tilde on the vowels a and o. So as not to sacrifice two of the tightly limited keys to ã Ã õ Õ, the decision was made to make the ~ a separate "dead" character in which the carriage holding the paper did not move after the symbol was typed. When the 'normal' character was typed, it is printed under the previously-typed tilde, creating the desired accented character. (For example, ~ then n produces ñ). Dead keys had a notch cut out to evade the mechanical linkage that triggered carriage movement and thus enabled this process of "overstriking").

On mechanical typewriters, Spanish keyboards (the first, or one of the first, non-English keyboards) already had a dead key for the acute accent, ´  used over any vowel  and the dieresis, ¨  used only over u. The same technology was adopted to create a dead key mechanism for a Portuguese keyboard so the ~ was born as a typographical character to be overstruck with a and o. Thus ~, which did not exist previously as a type or hot-lead printing character, came to exist as a distinct grapheme.

Connection to Spanish

Logo of the Instituto Cervantes
Logo of CNN en Español

As indicated by the etymological origin of the word "tilde" in English, this symbol has been closely associated with the Spanish language. The connection stems from the use of the tilde above the letter n to form the (different) letter ñ in Spanish, a feature shared by only a few other languages, all historically connected to Spanish. This peculiarity can help non-native speakers quickly identify a text as being written in Spanish with little chance of error. In addition, most native speakers, although not all, use the word español to refer to their language. Particularly during the 1990s, Spanish-speaking intellectuals and news outlets demonstrated support for the language and the culture by defending this letter against globalisation and computerisation trends that threatened to remove it from keyboards and other standardised products and codes.[4][5] The Instituto Cervantes, founded by Spain's government to promote the Spanish language internationally, chose as its logo a highly stylised Ñ with a large tilde. The 24-hour news channel CNN in the US later adopted a similar strategy on its existing logo for the launch of its Spanish-language version. And similarly to the National Basketball Association (NBA), the Spain men's national basketball team is nicknamed "ÑBA".

In Spanish itself the word tilde is used more generally for diacritics, including the stress-marking acute accent.[6] The diacritic ~ is more commonly called virgulilla or la tilde de la eñe, and is not considered an accent mark in Spanish, but rather simply a part of the letter ñ (much like the dot over ı makes an i character that is familiar to readers of English).

Usage

Common use

This symbol (in US English) informally[7] means "approximately", "about", or "around", such as "~30 minutes before", meaning "approximately 30 minutes before".[8][9] It can mean "similar to",[10] including "of the same order of magnitude as",[7] such as: "x ~ y" meaning that x and y are of the same order of magnitude. Another approximation symbol is the double tilde , meaning "approximately equal to".[8][10][11] The tilde is also used to indicate congruence of shapes by placing it over an = symbol, thus: . In the computing field, especially in Unix-based systems, the tilde indicates the user's home directory.

In more recent digital usage, tildes on either side of a word or phrase have sometimes come to convey a particular tone that "let[s] the enclosed words perform both sincerity and irony", which can pre-emptively defuse a negative reaction.[12] For example, BuzzFeed journalist Joseph Bernstein interprets the tildes in the following tweet:

in the ~ spirit of the season ~ will now link to some of the (imho) #Bestof2014 sports reads. if you hate nice things, mute that hashtag.

as a way of making it clear that both the author and reader are aware that the enclosed phrase – "spirit of the season" – "is cliche and we know this quality is beneath our author, and we don't want you to think our author is a cliche person generally".[12][lower-alpha 2]

Diacritical use

In some languages, the tilde is a diacritic mark placed over a letter to indicate a change in its pronunciation:

Pitch

The tilde was first used in the polytonic orthography of Ancient Greek, as a variant of the circumflex, representing a rise in pitch followed by a return to standard pitch.

Abbreviation

Carta marina showing Finnish economy, with the captions Hic fabricantur naves and Hic fabricantur bombarde abbreviated

Later, it was used to make abbreviations in medieval Latin documents. When an n or m followed a vowel, it was often omitted, and a tilde (physically, a small N) was placed over the preceding vowel to indicate the missing letter; this is the origin of the use of tilde to indicate nasalization (compare the development of the umlaut as an abbreviation of e.) The practice of using the tilde over a vowel to indicate omission of an n or m continued in printed books in French as a means of reducing text length until the 17th century. It was also used in Portuguese, and Spanish.

The tilde was also used occasionally to make other abbreviations, such as over the letter q, making , to signify the word que ("that").

Nasalization

It is also as a small n that the tilde originated when written above other letters, marking a Latin n which had been elided in old Galician-Portuguese. In modern Portuguese it indicates nasalization of the base vowel: mão "hand", from Lat. manu-; razões "reasons", from Lat. rationes. This usage has been adopted in the orthographies of several native languages of South America, such as Guarani and Nheengatu, as well as in the International Phonetic Alphabet (IPA) and many other phonetic alphabets. For example, [ljɔ̃] is the IPA transcription of the pronunciation of the French place-name Lyon.

In Breton, the symbol ñ after a vowel means that the letter n serves only to give the vowel a nasalised pronunciation, without being itself pronounced, as it normally is. For example, an gives the pronunciation [ãn] whereas gives [ã].

In the DMG romanization of Tunisian Arabic, the tilde is used for nasal vowels õ and ṏ.

Palatal n

The tilded n (ñ, Ñ) developed from the digraph nn in Spanish. In this language, ñ is considered a separate letter called eñe (IPA: [ˈeɲe]), rather than a letter-diacritic combination; it is placed in Spanish dictionaries between the letters n and o. In Spanish, the word tilde actually refers to diacritics in general, e.g. the acute accent in José,[13] while the diacritic in ñ is called "virgulilla" (IPA: [birɣuˈliʝa]).[14] Current languages in which the tilded n (ñ) is used for the palatal nasal consonant /ɲ/ include:

Tone

In Vietnamese, a tilde over a vowel represents a creaky rising tone (ngã).

International Phonetic Alphabet

In phonetics, a tilde is used as a diacritic that is placed above a letter, below it or superimposed onto the middle of it:

  • A tilde above a letter indicates nasalization, e.g. [ã], [ṽ].
  • A tilde superimposed onto the middle of a letter indicates velarization or pharyngealization, e.g. [ɫ], [z̴]. If no precomposed Unicode character exists, the Unicode character U+0334 ̴ COMBINING TILDE OVERLAY can be used to generate one.
  • A tilde below a letter indicates laryngealisation, e.g. [d̰]. If no precomposed Unicode character exists, the Unicode character U+0330 ̰ COMBINING TILDE BELOW can be used to generate one.

Letter extension

In Estonian, the symbol õ stands for the close-mid back unrounded vowel, and it is considered an independent letter.

Other uses

Some languages and alphabets use the tilde for other purposes:

  • Arabic script: A symbol resembling the tilde (U+0653 ـٓ ARABIC MADDAH ABOVE) is used over the letter ا (/a/) to become آ, denoting a long /aː/ sound.
  • Guaraní: The tilded (note that G/g with tilde is not available as a precomposed glyph in Unicode) stands for the velar nasal consonant. Also, the tilded y () stands for the nasalized upper central rounded vowel [ɨ̃]. Munduruku, Parintintín, and two older spellings of Filipino words also use .
  • Syriac script: A tilde (~) under the letter Kaph represents a [t͡ʃ] sound, transliterated as ch or č.[15]
  • Estonian uses the tilde above the letter o (õ) to indicate the vowel [ɤ], a rare sound among languages.
  • Unicode has a combining vertical tilde character: U+033E ̾ COMBINING VERTICAL TILDE. It is used to indicate middle tone in linguistic transcription of certain dialects of the Lithuanian language.[16]

Precomposed Unicode characters

The following letters using the tilde as a diacritic exist as precomposed or combining Unicode characters:

Letter Code point Name
U+1EB4LATIN CAPITAL LETTER A WITH BREVE AND TILDE
U+1EB5LATIN SMALL LETTER A WITH BREVE AND TILDE
U+1EAALATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE
U+1EABLATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE
ÃU+00C3LATIN CAPITAL LETTER A WITH TILDE
ãU+00E3LATIN SMALL LETTER A WITH TILDE
U+1D6CLATIN SMALL LETTER B WITH MIDDLE TILDE
U+1D6DLATIN SMALL LETTER D WITH MIDDLE TILDE
U+1EC4LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE
U+1EC5LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE
U+1E1ALATIN CAPITAL LETTER E WITH TILDE BELOW
U+1E1BLATIN SMALL LETTER E WITH TILDE BELOW
U+1EBCLATIN CAPITAL LETTER E WITH TILDE
U+1EBDLATIN SMALL LETTER E WITH TILDE
U+1D6ELATIN SMALL LETTER F WITH MIDDLE TILDE
U+1E2CLATIN CAPITAL LETTER I WITH TILDE BELOW
U+1E2DLATIN SMALL LETTER I WITH TILDE BELOW
ĨU+0128LATIN CAPITAL LETTER I WITH TILDE
ĩU+0129LATIN SMALL LETTER I WITH TILDE
U+2C62LATIN CAPITAL LETTER L WITH MIDDLE TILDE
ɫU+026BLATIN SMALL LETTER L WITH MIDDLE TILDE
U+AB5EMODIFIER LETTER SMALL L WITH MIDDLE TILDE
U+AB38LATIN SMALL LETTER L WITH DOUBLE MIDDLE TILDE
◌ᷬU+1DECCOMBINING LATIN SMALL LETTER L WITH DOUBLE MIDDLE TILDE
U+1D6FLATIN SMALL LETTER M WITH MIDDLE TILDE
U+1D70LATIN SMALL LETTER N WITH MIDDLE TILDE
ÑU+00D1LATIN CAPITAL LETTER N WITH TILDE
ñU+00F1LATIN SMALL LETTER N WITH TILDE
U+1ED6LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE
U+1ED7LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE
U+1EE0LATIN CAPITAL LETTER O WITH HORN AND TILDE
U+1EE1LATIN SMALL LETTER O WITH HORN AND TILDE
U+1E4CLATIN CAPITAL LETTER O WITH TILDE AND ACUTE
U+1E4DLATIN SMALL LETTER O WITH TILDE AND ACUTE
U+1E4ELATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS
U+1E4FLATIN SMALL LETTER O WITH TILDE AND DIAERESIS
ȬU+022CLATIN CAPITAL LETTER O WITH TILDE AND MACRON
ȭU+022DLATIN SMALL LETTER O WITH TILDE AND MACRON
ÕU+00D5LATIN CAPITAL LETTER O WITH TILDE
õU+00F5LATIN SMALL LETTER O WITH TILDE
U+1D71LATIN SMALL LETTER P WITH MIDDLE TILDE
U+1D73LATIN SMALL LETTER R WITH FISHHOOK AND MIDDLE TILDE
U+1D72LATIN SMALL LETTER R WITH MIDDLE TILDE
U+AB68LATIN SMALL LETTER TURNED R WITH MIDDLE TILDE
U+1D74LATIN SMALL LETTER S WITH MIDDLE TILDE
U+1D75LATIN SMALL LETTER T WITH MIDDLE TILDE
U+1EEELATIN CAPITAL LETTER U WITH HORN AND TILDE
U+1EEFLATIN SMALL LETTER U WITH HORN AND TILDE
U+1E78LATIN CAPITAL LETTER U WITH TILDE AND ACUTE
U+1E79LATIN SMALL LETTER U WITH TILDE AND ACUTE
U+1E74LATIN CAPITAL LETTER U WITH TILDE BELOW
U+1E75LATIN SMALL LETTER U WITH TILDE BELOW
ŨU+0168LATIN CAPITAL LETTER U WITH TILDE
ũU+0169LATIN SMALL LETTER U WITH TILDE
U+1E7CLATIN CAPITAL LETTER V WITH TILDE
U+1E7DLATIN SMALL LETTER V WITH TILDE
U+1EF8LATIN CAPITAL LETTER Y WITH TILDE
U+1EF9LATIN SMALL LETTER Y WITH TILDE
U+1D76LATIN SMALL LETTER Z WITH MIDDLE TILDE

Punctuation

The tilde is used in various ways in punctuation:

Range

In some languages (though not generally in English), a tilde-like wavy dash may be used as punctuation (instead of an unspaced hyphen, en dash or em dash) between two numbers, to indicate a range rather than subtraction or a hyphenated number (such as a part number or model number). For example, "12~15" means "12 to 15", "~3" means "up to three", and "100~" means "100 and greater". Japanese and other East Asian languages almost always use this convention, but it is often done for clarity in some other languages as well. Chinese uses the wavy dash and full-width em dash interchangeably for this purpose. In English, the tilde is often used to express ranges and model numbers in electronics, but rarely in formal grammar or in type-set documents, as a wavy dash preceding a number sometimes represents an approximation (see below).

Approximation

Before a number the tilde can mean 'approximately; '~42' means 'approximately 42'.[17] When used with currency symbols that precede the number (national conventions differ), the tilde precedes the symbol, thus for example '~$10' means 'about ten dollars'.[18]

The symbols (almost equal to) and (approximately equal to) are among the other symbols used to express approximation.

Japanese

The wave dash (波ダッシュ, nami dasshu) is used for various purposes in Japanese, including to denote ranges of numbers, in place of dashes or brackets, and to indicate origin. The wave dash is also used to separate a title and a subtitle in the same line, as a colon is used in English.

When used in conversations via email or instant messenger it may be used as a sarcasm mark.

The sign is used as a replacement for the chouon, katakana character, in Japanese, extending the final syllable.

Unicode and Shift JIS encoding of wave dash
Correct JIS wave dash.
Previous Unicode wave dash (incorrect).

In practice the full-width tilde (全角チルダ, zenkaku chiruda), Unicode U+FF5E, is often used instead of the wave dash (波ダッシュ, nami dasshu), Unicode U+301C, because the Shift JIS code for the wave dash, 0x8160, which is supposed to be mapped to U+301C,[19][20] is instead mapped to U+FF5E[21] in Windows code page 932 (Microsoft's code page for Japanese), a widely used extension of Shift JIS.

This avoided a shape definition error in the Unicode code charts: the wave dash reference glyph in JIS / Shift JIS[22][23] matches the Unicode reference glyph for U+FF5E,[24] while the reference glyph for U+301C[25] was reflected, incorrectly,[26] when Unicode imported the JIS wave dash. In other platforms such as the classic Mac OS and macOS, 0x8160 is correctly mapped to U+301C. It is generally difficult, if not impossible, for users of Japanese Windows to type U+301C, especially in legacy, non-Unicode applications.

A similar situation exists regarding the Korean KS X 1001 character set, in which Microsoft maps the EUC-KR or UHC code for the wave dash (0xA1AD) to U+223C (Tilde Operator),[27][28] while IBM and Apple map it to U+301C.[29][30][31] Microsoft also uses U+FF5E to map the KS X 1001 raised tilde (0xA2A6),[28] while Apple uses U+02DC (˜).[31]

The current Unicode reference glyph for U+301C has been corrected[26] to match the JIS standard[32] in response to a 2014 proposal, which noted that while the existing Unicode reference glyph had been matched by fonts from the discontinued Windows XP, all other major platforms including later versions of Microsoft Windows shipped with fonts matching the JIS reference glyph for U+301C.[33]

The JIS / Shift JIS wave dash is still formally mapped to U+301C as of JIS X 0213,[34] whereas the WHATWG Encoding Standard used by HTML5 follows Microsoft in mapping 0x8160 to U+FF5E.[35] These two code points have a similar or identical glyph in several fonts, reducing the confusion and incompatibility.

Mathematics

As a unary operator

A tilde in front of a single quantity can mean "approximately", "about" or "of the same order of magnitude as."

In written mathematical logic, the tilde represents negation: "~p" means "not p", where "p" is a proposition. Modern use often replaces the tilde with the negation symbol (¬) for this purpose, to avoid confusion with equivalence relations.

As a relational operator

In mathematics, the tilde operator (Unicode U+223C), sometimes called "twiddle", is often used to denote an equivalence relation between two objects. Thus "x ~ y" means "x is equivalent to y". It is a weaker statement than stating that x equals y. The expression "x ~ y" is sometimes read aloud as "x twiddles y", perhaps as an analogue to the verbal expression of "x = y".[36]

The tilde can indicate approximate equality in a variety of ways. It can be used to denote the asymptotic equality of two functions. For example, f (x) ~ g(x) means that .[7]

A tilde is also used to indicate "approximately equal to" (e.g. 1.902 ~= 2). This usage probably developed as a typed alternative to the libra symbol used for the same purpose in written mathematics, which is an equal sign with the upper bar replaced by a bar with an upward hump, bump, or loop in the middle (︍︍♎) or, sometimes, a tilde (≃). The symbol "≈" is also used for this purpose.

In physics and astronomy, a tilde can be used between two expressions (e.g. h ~ 10−34 J s) to state that the two are of the same order of magnitude.[7]

In statistics and probability theory, the tilde means "is distributed as";[7] see random variable.

A tilde can also be used to represent geometric similarity (e.g. ABC ~ ∆DEF, meaning triangle ABC is similar to DEF). A triple tilde () is often used to show congruence, an equivalence relation in geometry.

As an accent

The symbol "" is pronounced as "eff tilde" or, informally, as "eff twiddle" or, in American English, "eff wiggle".[37][38] This can be used to denote the Fourier transform of f, or a lift of f, and can have a variety of other meanings depending on the context.

A tilde placed below a letter in mathematics can represent a vector quantity (e.g. ).

In statistics and probability theory, a tilde placed on top of a variable is sometimes used to represent the median of that variable; thus would indicate the median of the variable . A tilde over the letter n () is sometimes used to indicate the harmonic mean.

In machine learning, a tilde may represent a candidate value for a cell state in GRUs or LSTM units. (e.g. c̃)

Physics

Often in physics, one can consider an equilibrium solution to an equation, and then a perturbation to that equilibrium. For the variables in the original equation (for instance ) a substitution can be made, where is the equilibrium part and is the perturbed part.

A tilde is also used in particle physics to denote the hypothetical supersymmetric partner. For example, an electron is referred to by the letter e, and its superpartner the selectron is written .

Economics

For relations involving preference, economists sometimes use the tilde to represent indifference between two or more bundles of goods. For example, to say that a consumer is indifferent between bundles x and y, an economist would write x ~ y.

Electronics

It can approximate the sine wave symbol (∿, U+223F), which is used in electronics to indicate alternating current, in place of +, −, or ⎓ for direct current.

Linguistics

The tilde may indicate alternating allomorphs or morphological alternation, as in //ˈniː~ɛl+t// for kneel~knelt (the plus sign '+' indicates a morpheme boundary).[39][40]

Computing

Directories and URLs

On Unix-like operating systems (including AIX, BSD, Linux and macOS), tilde normally indicates the current user's home directory. For example, if the current user's home directory is /home/user, then the command cd ~ is equivalent to cd /home/user, cd $HOME, or cd. This convention derives from the Lear-Siegler ADM-3A terminal in common use during the 1970s, which happened to have the tilde symbol and the word "Home" (for moving the cursor to the upper left) on the same key. When prepended to a particular username, the tilde indicates that user's home directory (e.g., ~janedoe for the home directory of user janedoe, such as /home/janedoe).[41]

Used in URLs on the World Wide Web, it often denotes a personal website on a Unix-based server. For example, http://www.example.com/~johndoe/ might be the personal web site of John Doe. This mimics the Unix shell usage of the tilde. However, when accessed from the web, file access is usually directed to a subdirectory in the user's home directory, such as /home/username/public_html or /home/username/www.[42]

In URLs, the characters %7E (or %7e) may substitute for tilde if an input device lacks a tilde key.[43] Thus, http://www.example.com/~johndoe/ and http://www.example.com/%7Ejohndoe/ will behave in the same manner.

Computer languages

The tilde is used in the AWK programming language as part of the pattern match operators for regular expressions:

  • variable ~ /regex/ returns true if the variable is matched.
  • variable !~ /regex/ returns false if the variable is matched.

A variant of this, with the plain tilde replaced with =~, was adopted in Perl, and this semi-standardization has led to the use of these operators in other programming languages, such as Ruby or the SQL variant of the database PostgreSQL.

In APL and MATLAB, tilde represents the monadic logical function NOT, and in APL it additionally represents the dyadic multiset function without (set difference).

In the C, C++ and C# programming languages, the tilde character is used as bitwise NOT operator, following the notation in logic (an ! causes a logical NOT, instead). In C++ and C#, the tilde is also used as the first character in a class's method name (where the rest of the name must be the same name as the class) to indicate a destructor – a special method which is called at the end of the object's life. The MySQL database also use tilde as bitwise invert.[44]

In ASP.NET application tilde ('~') is used as a shortcut to the root of the application's virtual directory.

In the CSS stylesheet language, the tilde is used for the indirect adjacent combinator as part of a selector.

In the D programming language, the tilde is used as an array concatenation operator, as well as to indicate an object destructor and bitwise not operator. Tilde operator can be overloaded for user types, and binary tilde operator is mostly used to merging two objects, or adding some objects to set of objects. It was introduced because plus operator can have different meaning in many situations. For example, what to do with "120" + "14" ? Is this a string "134" (addition of two numbers), or "12014" (concatenation of strings) or something else? D disallows + operator for arrays (and strings), and provides separate operator for concatenation (similarly PHP programming language solved this problem by using dot operator for concatenation, and + for number addition, which will also work on strings containing numbers).

In Eiffel, the tilde is used for object comparison. If a and b denote objects, the boolean expression a ~ b has value true if and only if these objects are equal, as defined by the applicable version of the library routine is_equal, which by default denotes field-by-field object equality but can be redefined in any class to support a specific notion of equality. If a and b are references, the object equality expression a ~ b is to be contrasted with a = b which denotes reference equality. Unlike the call a.is_equal (b), the expression a ~ b is type-safe even in the presence of covariance.

In the Apache Groovy programming language the tilde character is used as an operator mapped to the bitwiseNegate() method.[45] Given a String the method will produce a java.util.regex.Pattern. Given an integer it will negate the integer bitwise like in different C variants. =~ and ==~ can in Groovy be used to match a regular expression.[46][47]

In Haskell, the tilde is used in type constraints to indicate type equality.[48] Also, in pattern-matching, the tilde is used to indicate a lazy pattern match.[49]

In the Inform programming language, the tilde is used to indicate a quotation mark inside a quoted string.

In "text mode" of the LaTeX typesetting language a tilde diacritic can be obtained using, e.g., \~{n}, yielding "ñ". A stand-alone tilde can be obtained by using \textasciitilde or \string~. In "math mode" a tilde diacritic can be written as, e.g., \tilde{x}. For a wider tilde \widetilde can be used. The \sim command produce a tilde-like binary relation symbol that is often used in mathematical expressions, and the double-tilde is obtained with \approx. The url package also supports entering tildes directly, e.g., \url{http://server/~name}. In both text and math mode, a tilde on its own (~) renders a white space with no line breaking.

In MediaWiki syntax, four tildes are used as a shortcut for a user's signature.

In Common Lisp, the tilde is used as the prefix for format specifiers in format strings.[50] In Max/MSP, a tilde is used to denote objects that process at the computer's sampling rate, i.e. mainly those that deal with sound.

In Standard ML, the tilde is used as the prefix for negative numbers and as the unary negation operator.

In OCaml, the tilde is used to specify the label for a labeled parameter.

In Microsoft's SQL Server Transact-SQL (T-SQL) language, the tilde is a unary Bitwise NOT operator.

In JavaScript, the tilde is used as a unary bitwise complement (or bitwise negation) operation (~number). Because JavaScript internally uses floats and the bitwise complement only works on integers, numbers are stripped of their decimal part before applying the operation. This has also given rise to using two tildes ~~number as a short syntax for a cast to integer (numbers are stripped of their decimal part and changed into their complement, and then back. The net result is thus only the removal of the decimal part). For positive numbers, this is equivalent to the mathematical floor function.

In Object REXX, the twiddle is used as a "message send" symbol. For example, Employee.name~lower() would cause the lower() method to act on the object Employee's name attribute, returning the result of the operation. ~~ returns the object that received the method rather than the result produced. Thus it can be used when the result need not be returned or when cascading methods are to be used. team~~insert("Jane")~~insert("Joe")~~insert("Steve") would send multiple concurrent insert messages, thus invoking the insert method three consecutive times on the team object.

Backup filenames

The dominant Unix convention for naming backup copies of files is appending a tilde to the original file name. It originated with the Emacs text editor[51] and was adopted by many other editors and some command-line tools.

Emacs also introduced an elaborate numbered backup scheme, with files named filename.~1~, filename.~2~ and so on. It didn't catch on, as the rise of version control software eliminates the need for this usage.

Microsoft filenames

The tilde was part of Microsoft's filename mangling scheme when it extended the FAT file system standard to support long filenames for Microsoft Windows. Programs written prior to this development could only access filenames in the so-called 8.3 format—the filenames consisted of a maximum of eight characters from a restricted character set (e.g. no spaces), followed by a period, followed by three more characters. In order to permit these legacy programs to access files in the FAT file system, each file had to be given two names—one long, more descriptive one, and one that conformed to the 8.3 format. This was accomplished with a name-mangling scheme in which the first six characters of the filename are followed by a tilde and a digit. For example, "Program Files" might become "PROGRA~1".

The tilde symbol is also often used to prefix hidden temporary files that are created when a document is opened in Windows. For example, when a document "Document1.doc" is opened in Word, a file called "~$cument1.doc" is created in the same directory. This file contains information about which user has the file open, to prevent multiple users from attempting to change a document at the same time.

Other uses

Computer programmers use the tilde in various ways and sometimes call the symbol (as opposed to the diacritic) a squiggle, squiggly, or twiddle. According to the Jargon File, other synonyms sometimes used in programming include not, approx, wiggle, enyay (after eñe) and (humorously) sqiggle /ˈskɪɡəl/. It is used in many languages as a binary inversion operator, swapping a number's binary 1's and 0's for example ~10 (binary ~1010) is equal to 5 (binary 0101).

In Raku, "~~" is used instead of "=~".

Juggling notation

In the juggling notation system Beatmap, tilde can be added to either "hand" in a pair of fields to say "cross the arms with this hand on top". Mills Mess is thus represented as (~2x,1)(1,2x)(2x,~1)*.[52]

Similar characters

There are many Unicode characters for tildes, symbols incorporating tildes, and characters visually similar to a tilde:

Character Code point Name Comments
~U+007ETILDESame as keyboard tilde. In-line.
˜U+02DCSMALL TILDERaised but quite small.
˷U+02F7MODIFIER LETTER LOW TILDE
◌̃U+0303COMBINING TILDE
◌̰U+0330COMBINING TILDE BELOWUsed in IPA to indicate creaky voice.
◌̴U+0334COMBINING TILDE OVERLAYUsed in IPA to indicate velarization or pharyngealization.
◌̾U+033ECOMBINING VERTICAL TILDE
◌͂U+0342COMBINING GREEK PERISPOMENIUsed as an Ancient Greek accent under the name "circumflex"; it can also be written as an inverted breve.
◌͊U+034ACOMBINING NOT TILDE ABOVERaised, small, with slash through.
◌͠◌U+0360COMBINING DOUBLE TILDE
◌֘U+0598HEBREW ACCENT ZARQAHebrew cantillation mark.
◌֮U+05AEHEBREW ACCENT ZINORHebrew cantillation mark.
◌᷉U+1DC9COMBINING ACUTE-GRAVE-ACUTEUsed in IPA as a tone mark.
U+2053SWUNG DASH
U+223CTILDE OPERATORUsed in mathematics. In-line. Ends not curved as much.
U+223DREVERSED TILDEIn some fonts it is the tilde's simple mirror image; others extend the tips to resemble a ᔕ, or an open .
U+223FSINE WAVEUsed in electronics to indicate alternating current, in place of +, −, or ⎓ for direct current.
U+2241NOT TILDE
U+2242MINUS TILDE
U+2243ASYMPTOTICALLY EQUAL TO
U+2244NOT ASYMPTOTICALLY EQUAL TO
U+2245APPROXIMATELY EQUAL TO
U+2246APPROXIMATELY BUT NOT ACTUALLY EQUAL TO
U+2247NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO
U+2248ALMOST EQUAL TO
U+2249NOT ALMOST EQUAL TO
U+224AALMOST EQUAL OR EQUAL TO
U+224BTRIPLE TILDE
U+224CALL EQUAL TO
U+22CDREVERSED TILDE EQUALS
U+2368APL FUNCTIONAL SYMBOL TILDE DIAERESIS
U+236BAPL FUNCTIONAL SYMBOL DEL TILDE
U+236DAPL FUNCTIONAL SYMBOL STILE TILDE
U+2371APL FUNCTIONAL SYMBOL DOWN CARET TILDE
U+2372APL FUNCTIONAL SYMBOL UP CARET TILDE
U+2972TILDE OPERATOR ABOVE RIGHTWARDS ARROW
U+2973LEFTWARDS ARROW ABOVE TILDE OPERATOR
U+2974RIGHTWARDS ARROW ABOVE TILDE OPERATOR
U+29E4EQUALS SIGN AND SLANTED PARALLEL WITH TILDE ABOVE
U+2A24PLUS SIGN WITH TILDE ABOVE
U+2A26PLUS SIGN WITH TILDE BELOW
U+2A6ATILDE OPERATOR WITH DOT ABOVE
U+2A6BTILDE OPERATOR WITH RISING DOTS
U+2A73EQUALS SIGN ABOVE TILDE OPERATOR
U+2AC7SUBSET OF ABOVE TILDE OPERATOR
U+2AC8SUPERSET OF ABOVE TILDE OPERATOR
U+2AF3PARALLEL WITH TILDE OPERATOR
U+2B41REVERSE TILDE OPERATOR ABOVE LEFTWARDS ARROW
U+2B47REVERSE TILDE OPERATOR ABOVE RIGHTWARDS ARROW
U+2B49TILDE OPERATOR ABOVE LEFTWARDS ARROW
U+2B4BLEFTWARDS ARROW ABOVE REVERSE TILDE OPERATOR
U+2B4CRIGHTWARDS ARROW ABOVE REVERSE TILDE OPERATOR
U+2E1BTILDE WITH RING ABOVE
U+2E1ETILDE WITH DOT ABOVE
U+2E1FTILDE WITH DOT BELOW
U+2E2FVERTICAL TILDE
U+301CWAVE DASHUsed in Japanese punctuation.
U+3030WAVY DASH
◌︢U+FE22COMBINING DOUBLE TILDE LEFT HALF
◌︣U+FE23COMBINING DOUBLE TILDE RIGHT HALF
◌︩U+FE29COMBINING TILDE LEFT HALF BELOW
◌︪U+FE2ACOMBINING TILDE RIGHT HALF BELOW
U+FE4BWAVY OVERLINE
U+FE4FWAVY LOW LINE
U+FF5EFULLWIDTH TILDEEm wide. In-line. Ends not curved much.
  ~  U+E007ETAG TILDEFormatting tag control character.

ASCII tilde (U+007E)

Serif: —~—
Sans-serif: —~—
Monospace: —~—
A tilde between two em dashes
in three font families
Raised tilde from a dot matrix printer

Most modern proportional fonts align the plain ASCII spacing tilde at the same level as dashes, or only slightly upper. This distinguishes it from the small tilde ( ˜ ) introduced with Windows-1252, which is always raised. But in some monospace fonts, especially used in text user interfaces, ASCII tilde character is raised too. This apparently is a legacy of typewriters, where pairs of similar spacing and combining characters relied on one glyph. Even in line printers' age character repertoires were often not large enough to distinguish between plain tilde, small tilde and combining tilde. Overprinting of a letter by the tilde was a working method of combining a letter.

Keyboards

Where a tilde is on the keyboard depends on the computer's language settings according to the following chart. On many keyboards it is primarily available through a dead key that makes it possible to produce a variety of precomposed characters with the diacritic. In that case, a single tilde can typically be inserted with the dead key followed by the space bar, or alternatively by striking the dead key twice in a row.

To insert a tilde with the dead key, it is often necessary to simultaneously hold down the Alt Gr key. With a Macintosh either of the Alt/Option keys function similarly.

In the US and European Windows systems, the Alt code for a single tilde is 126.

KeyboardInsert a single tilde (~)Insert a precomposed character with tilde (e.g. ã)
Arabic (Saudi Arabia) ⇧ Shift+`ذّ
Croatian Alt Gr+1
Czech Alt Gr+1
Danish Alt Gr+¨ followed by Space Alt Gr+¨ followed by the relevant letter
Dvorak Alt Gr+= followed by Space, or

Alt Gr+⇧ Shift+' followed by Space

Alt Gr+= followed by the relevant letter, or

Alt Gr+⇧ Shift+' followed by the relevant letter

English (Australia) ⇧ Shift+`
English (Canada) ⇧ Shift+`
English (UK) ⇧ Shift+# AltGr+# followed by the relevant letter (UK-extended layout, Chrome OS)
English (US) ⇧ Shift+` Ctrl+~ followed by the relevant letter
Faroese Alt Gr+ð followed by Space Alt Gr+ð followed by the relevant letter
Finnish Alt Gr+¨ followed by Space, or

Alt Gr+¨¨

Alt Gr+¨ followed by the relevant letter
French (Canada) Alt Gr+ç followed by Space, or

Alt Gr+çç

Alt Gr+ç followed by the relevant letter
French (France) Alt Gr+é followed by Space, or

Alt Gr+éé
⌥ Option+n (on Mac OS X)

Alt Gr+é followed by the relevant letter
French (Switzerland) Alt Gr+^ followed by Space, or

Alt Gr+^^

Alt Gr+^ followed by the relevant letter
Bépo (French Dvorak) Alt Gr+N followed by Space, or

Alt Gr+K

Alt Gr+N followed by the relevant letter
German (Germany) Alt Gr++
German (Switzerland) Alt Gr+^ followed by Space, or

Alt Gr+^^

Alt Gr+^ followed by the relevant letter
Hebrew (Israel) ⇧ Shift+~ Ctrl+⇧ Shift+~ followed by the relevant letter
Hindi (India) Alt Gr+⇧ Shift+ the key to the left of 1
Hungarian Alt Gr+1
Icelandic Alt Gr+' (the same key as ?)
Italian ⌥ Option+5 (on Mac OS X)

Alt Gr+ì (on Linux)

Alt+126 (on Windows)

Norwegian Alt Gr+¨ followed by Space, or

Alt Gr+¨¨.

On Mac: Ctrl+⌥ Option+¨, or ⌥ Option+¨ followed by Space.

Alt Gr+¨ followed by the relevant letter.

On Mac: ⌥ Option+¨ followed by the relevant letter.

Polish ⇧ Shift+` followed by Space, or

⇧ Shift+``

The dead key is not generally used for inserting characters with tilde; when followed

by [ a c e l n o s x z ], it results in [ ą ć ę ł ń ó ś ź ż ] instead.

Portuguese ~ followed by Space ~ followed by the relevant letter
Slovak Alt Gr+1
Spanish (Spain) Alt Gr+4 followed by Space, or

Alt Gr+44 (on Windows)

On Linux: Alt Gr+4, or Alt Gr+¡ followed by Space.

On Mac: Ctrl+⌥ Option+Ñ, or ⌥ Option+Ñ followed by Space.

Alt Gr+4 (on Windows) followed by the relevant letter.

Alt Gr+¡ (on Linux) followed by the relevant letter.

On Mac: ⌥ Option+Ñ followed by the relevant letter.

Spanish (Latin America) Alt Gr++
Swedish Alt Gr+¨ followed by Space, or

Alt Gr+¨¨

Alt Gr+¨ followed by the relevant letter
Turkish Alt Gr+ü followed by Space, or

Alt Gr+üü

Alt Gr+ü followed by the relevant letter
gollark: Also, why develop an entirely new language and not use some existing interpreter thing?
gollark: *Is* that great? I mean, if something goes wrong, you probably want an obvious error and not just end up being confused.
gollark: ++tel graph
gollark: Oh no, not this again.
gollark: BEEP BOOP`error.exe` MY SECRET HAS BEEN `discovered.js`INITIATING PROTOCOL `kill-all-humans`

See also

Notes

  1. Several more or less common informal names are used for the tilde that usually describe the shape, including squiggly, squiggle(s), and flourish.
  2. See also Air quotes.

References

  1. tilde in the American Heritage dictionary
  2. Martin, Charles Trice (1910). The record interpreter : a collection of abbreviations, Latin words and names used in English historical manuscripts and records (2nd ed.). London, preface, p.5
  3. "Swung dash", WordNet (search) (3.0 ed.)
  4. "26 argumentos para seguir defendiendo la Ñ". La Razón. 11 January 2011. Retrieved 31 January 2016.
  5. AFP (18 November 2004). "Batalla de la Ñ: Una aventura quijotesca para defender el alma de la lengua". Periódico ABC Paraguay. Retrieved 31 January 2016.
  6. Diccionario de la lengua española, Real Academia Española
  7. "Tilde". Wolfram/MathWorld. 3 November 2011. Retrieved 11 November 2011.
  8. "All Elementary Mathematics – Mathematical symbols dictionary". Bymath. Retrieved 11 November 2011.
  9. "Character design standards - Maths".
  10. Quinn, Liam. "HTML 4.0 Entities for Symbols and Greek Letters". HTML help. Retrieved 11 November 2011.
  11. "Math Symbols... Those Most Valuable and Important: Approximately Equal Symbol". Solving Math problems. 20 September 2010. Retrieved 11 November 2011.
  12. Bernstein, Joseph. "The Hidden Language Of The ~Tilde~". BuzzFeed News.
  13. Ortografía de la lengua española. Madrid: Real Academia Española. 2010. p. 279. ISBN 978-84-670-3426-4.
  14. "Lema en la RAE". Real Academia Española. Retrieved 10 October 2015.
  15. Nestle, Eberhard (1888). Syrische Grammatik mit Litteratur, Chrestomathie und Glossar. Berlin: H. Reuther's Verlagsbuchhandlung. [translated to English as Syriac grammar with bibliography, chrestomathy and glossary, by R. S. Kennedy. London: Williams & Norgate 1889. p. 5].
  16. Lithuanian Standards Board (LST), proposal for a zigzag diacritic
  17. "Tilde Definition". linfo.org. The Linux Information Project. 24 June 2005. Retrieved 27 January 2020.
  18. "Using a tilde with currency".
  19. "Appendix 1: Shift_JIS-2004 vs Unicode mapping table", JIS X 0213:2004, X 0213.
  20. Shift-JIS to Unicode, Unicode.
  21. "Windows 932_81". Microsoft. Retrieved 30 July 2010.
  22. "ISO-IR-087: Japanese Graphic Character Set for Information Interchange" (PDF). JP: Information Technology Standards Commission of Japan (IPSJ/ITSCJ).
  23. "ISO-IR-233: Japanese Graphic Character Set for Information Interchange, Plane 1" (PDF). JP: Information Technology Standards Commission of Japan (IPSJ/ITSCJ).
  24. Halfwidth and Fullwidth Forms (PDF) (chart), Unicode.
  25. CJK Symbols and Punctuation (Unicode 6.2) (PDF) (chart), Unicode.
  26. Errata Fixed in Unicode 8.0.0, Unicode
  27. "windows-949-2000 (lead byte A1)". ICU Demonstration - Converter Explorer. International Components for Unicode.
  28. "Lead Byte A1-A2 (Code page 949)". MSDN. Microsoft.
  29. "ibm-1363_P110-1997 (lead byte A1)". ICU Demonstration - Converter Explorer. International Components for Unicode.
  30. "euc-kr (lead byte A1)". ICU Demonstration - Converter Explorer. International Components for Unicode.
  31. "Map (external version) from Mac OS Korean encoding to Unicode 3.2 and later". Apple.
  32. CJK Symbols and Punctuation (PDF) (chart), Unicode
  33. Komatsu, Hiroyuki, L2/14-198: Proposal for the modification of the sample character layout of WAVE_DASH (U+301C) (PDF)
  34. Shift_JIS-2004 (JIS X 0213:2004 Appendix 1) vs Unicode mapping table, x0213.org
  35. "Shift_JIS visualization", Encoding Standard, WHATWG
  36. Derbyshire, J (2004), Prime Obsession: Bernhard Riemann and the Greatest Unsolved Problem in Mathematics, New York: Penguin.
  37. "Tilde". Wolfram Research. Retrieved 4 June 2018.
  38. Choy, Stephen TL; Jesudason, Judith Packer; Lee, Peng Yee (1988). Proceedings of the Analysis Conference, Singapore 1986. Elsevier. ISBN 9780080872612. Retrieved 11 November 2011.
  39. Collinge (2002) An Encyclopedia of Language, §4.2.
  40. Hayes, Bruce (2011). Introductory Phonology. John Wiley & Sons. pp. 87–88. ISBN 9781444360134.
  41. "Tilde expansion", C Library Manual, The GNU project, retrieved 4 July 2010.
  42. "Module mod_userdir", HTTP Server Documentation (version 2.0 ed.), The Apache foundation, retrieved 4 July 2010.
  43. RFC 3986, IETF.
  44. "MySQL :: Reference Manual :: Bit Functions and Operators". dev.mysql.com. Retrieved 20 December 2019.
  45. "The Groovy programming language - Operators".
  46. Groovy Regular Expression User Guide, Code haus.
  47. Groovy RegExp FAQ, Code haus.
  48. "Type Families", Haskell Wiki.
  49. "Lazy pattern match - HaskellWiki".
  50. "CLHS: Section 22.3". Lispworks.com. 11 April 2005. Retrieved 30 July 2010.
  51. Emacs Manual
  52. "The Internet Juggling Database". Archived from the original on 28 July 2005. Retrieved 6 November 2009.

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.