Skip to main content

4.1 Link Format

Org recognizes plain URIs, possibly wrapped within angle brackets1, and activate them as clickable links.

The general link format, however, looks like this:

[[LINK][DESCRIPTION]]

or alternatively

[[LINK]]

Some β€˜\’, β€˜[’ and β€˜]’ characters in the LINK part need to be β€œescaped", i.e., preceded by another β€˜\’ character. More specifically, the following characters, and only them, must be escaped:

  1. all β€˜[’ and β€˜]’ characters,
  2. every β€˜\’ character preceding either β€˜]’ or β€˜[’,
  3. every β€˜\’ character at the end of the link.

Functions inserting links (see Handling Links) properly escape ambiguous characters. You only need to bother about the rules above when inserting directly, or yanking, a URI within square brackets. When in doubt, you may use the function org-link-escape, which turns a link string into its escaped form.

Once a link in the buffer is complete, with all brackets present, Org changes the display so that β€˜DESCRIPTION’ is displayed instead of β€˜[[LINK][DESCRIPTION]]’ and β€˜LINK’ is displayed instead of β€˜[[LINK]]’. Links are highlighted in the org-link face, which, by default, is an underlined face.

You can directly edit the visible part of a link. This can be either the LINK part, if there is no description, or the DESCRIPTION part otherwise. To also edit the invisible LINK part, use C-c C-l with point on the link (see Handling Links).

If you place point at the beginning or just behind the end of the displayed text and press BS, you remove theβ€”invisibleβ€”bracket at that location2. This makes the link incomplete and the internals are again displayed as plain text. Inserting the missing bracket hides the link internals again. To show the internal structure of all links, use the menu: Org β†’ Hyperlinks β†’ Literal links.


  1. Plain URIs are recognized only for a well-defined set of schemes. See External Links. Unlike URI syntax, they cannot contain parenthesis or white spaces, either. URIs within angle brackets have no such limitation.↩
  2. More accurately, the precise behavior depends on how point arrived thereβ€”see (elisp)Invisible Text.↩