Utilities

Code/Tech Snippets - Alt Codes & Unicode

Copy/paste coding-friendly characters fast: backticks, arrows, ellipsis, curly quotes, non-breaking space.

Characters & shortcuts

Alt codes & Unicode table

CharacterNameAlt codeUnicodeCopy
`backtickAlt + 96U+0060
β†’right arrowUnicodeU+2192
←left arrowUnicodeU+2190
↔left right arrowUnicodeU+2194
…ellipsisAlt + 0133U+2026
β€œleft double curly quoteAlt + 0147U+201C
”right double curly quoteAlt + 0148U+201D
β€˜left single curly quoteAlt + 0145U+2018
’right single curly / apostropheAlt + 0146U+2019
Β non-breaking spaceAlt + 0160U+00A0

Reference

Characters for Code, Docs and Terminals

This table gathers the characters that come up when writing about code rather than writing code: the backtick that opens a fenced block or inline span in Markdown, the arrows used in documentation and diagrams, the ellipsis, the curly quotation marks, and the invisible spaces that control layout. The mix reflects a real need β€” technical writing sits between plain code, where only ASCII is safe, and prose, where proper typography is expected.

The backtick is the one people hunt for most. It opens inline code in Markdown, wraps template literals in JavaScript, and performs command substitution in shell scripts. On most keyboards it shares a key with the tilde at the top left, but on several international layouts it is a dead key β€” pressing it produces nothing until you press another key, which then receives a grave accent. On a French AZERTY or a US International layout, pressing backtick then space is the usual way to get a literal one, and this catches out developers switching machines constantly.

The single most important rule in this table is where not to use these characters. Curly quotation marks and the true ellipsis belong in prose about code and must never appear inside code itself. A smart-quote substitution inside a code block is one of the most common and most confusing bugs in technical writing: the code looks correct, but the string delimiters are U+201C and U+201D rather than the ASCII quote, and the interpreter rejects it with an error that points nowhere useful. Word processors and some note apps apply this substitution automatically, which is why pasting code through them corrupts it. If a copied snippet fails with a syntax error near a string, check the quote characters first.

The arrows earn their place in documentation. β†’ is standard for describing navigation paths and transformations β€” File β†’ Export, or input β†’ output β€” and reads far better than a hyphen and a greater-than sign, which many readers parse as an operator. The bidirectional ↔ marks two-way relationships in architecture notes and diagrams. These are the only arrows most technical writing needs.

The two invisible characters at the end of the table solve formatting problems in documentation. The non-breaking space keeps a command name from splitting across a line, or holds a version number to its product name. The narrow no-break space does the same in tighter typographic settings. Both are safe in prose and dangerous in code, for the same reason smart quotes are: a non-breaking space inside a command line looks exactly like a normal space and will not work. When a copied terminal command fails inexplicably, an invisible U+00A0 picked up from a web page is a frequent culprit, and retyping the spaces is usually faster than finding it.

FAQ

Frequently Asked Questions

How do I type these on Windows?

Use Alt codes on a numpad (Num Lock on) for the listed codes; or copy directly from this table for quick paste.

How do I type them on Mac?

Some have shortcuts (ellipsis Option+;). Arrows/quotes vary by layoutβ€”copy from this table if needed.

Can I copy these symbols directly?

Yesβ€”click Copy in the table and paste anywhere. No installation needed.

Do these work in code editors?

Yes. These are plain Unicode characters. Use with care in code; for plain text or docs they paste safely.

Why do copied code snippets sometimes fail with syntax errors?

Word processors and note apps substitute curly quotes for straight ones. The code looks right but the string delimiters are U+201C and U+201D rather than ASCII quotes. Check the quotes first.

How do I type a backtick on an international layout?

On layouts where it is a dead key, such as US International or French AZERTY, press backtick then space to get a literal one.

Why does a copied terminal command not work?

It often contains a non-breaking space picked up from a web page. It looks identical to a normal space but the shell does not treat it as a separator. Retyping the spaces fixes it.

Should I use β†’ in documentation?

Yes, for navigation paths and transformations: File β†’ Export. It reads more clearly than -> which many readers parse as a code operator.