Ziplinks is the new name for the old Quick Links method of rapid link creation and whose function has been completely rewritten as of v8.6.0. The ziplinks method is particularly useful for adding references to glossary terms, frequently-used sources, or oft-mentioned people and places; in fact anything where the destination note name makes logical anchor text for the link.
Note that the ziplinks method is keyboard-centric, albeit enhanced, of creating normal text links with normal link anchor text. Once the link is generated, the link anchor is no different from any other text link anchor, i.e. the ziplinks method do not create a special type of anchor text. There is no specific type of link that is a 'ziplink'.
Creating a new link (and note) using the ziplinks method
To use the ziplinks method to a named note, precede the name of the note with two square brackets and follow its name with two square brackets like this
[[like this]]. If there is no note with this name in the document, Tinderbox will create one as the sibling of the note being editing.
From v8.7.1, notes created via the ziplinks method now observe document settings to expand vertically or horizontally if additional space is required for the name. In addition, such notes are positioned to avoid adornments as well as other notes.
From v8.8.0, the new note’s $CreatedFrom attribute contains the path to the note that created the note (i.e. the source of the creating text link).
From v8.9.0, Option-clicking in the ziplink popup menu autocompletes the chosen ziplink but leaves the ziplink open for further editing. For example, after typing
[[tar and then choosing "target" from the popup while pressing the option key, the text will read
[[target and wait for you to complete the ziplink.
Ziplinks method syntax
Once zip links creation is invoked the following logic applies:
[[ shows a list of all notes in the current document.
[[D shows a list of all notes with names that contain a "d" (case-insensitive match).
In documents with many notes it makes sense to type a few characters to avoid excessive numbers of possible matches being listed.
When typing ziplinks input, Tinderbox will show a list of related note names to the left of the text pane; the list displays all notes that contain the ziplinks input string, not just those that begin with the string. Choose any of these listed notes to make the link (without further typing); or, press the up-arrow or down-arrow keys to select the preferred target note then press the Return key (↩) to complete the link. When typing ziplinks input, you can choose that option by pressing Tab key (⇥) if either:
- there is only one choice in the ziplinks match menu
- an item in the quicklink window has been selected with the up-arrow and down-arrow keys.
Each item in the ziplinks match popup menu shows a tool tip with the note's full path.
Locale-based sorting. When typing ziplinks input on an English locale system, diacritics are ignored when looking for matches. However, the ziplinks list of related notes takes into account the user's locale, so 'étude' will sort appropriately for French users and 'Ångstrom' will sort correctly in Norway. Bear in mind the process works off the OS locale so if working under one locale and using accented characters from a different language/locale sorting is still locale based.
Linking to a note in a specified container
If wishing to use the ziplinks method make a link to a note in a different container, type the container path in the ziplinks input:
Additional logical syntax applies when typing paths:
[[/ shows a list of all top-level containers.
[[/D shows a list of all top-level notes that begin with a "d" (case-insensitive match).
[[/Dog/ shows a list of all notes in /Dog.
[[/Dog/R shows a list of all notes in /Dog that begin with "r".
[[./ shows a list of all siblings of this note.
[[../ shows the parent of this note and all the parent's siblings.
When typing the start of ziplinks input, e.g.
[[A, Tinderbox shows all notes in the document starting with A. Typing
[[/container/A, Tinderbox shows only notes in the specified container. To see a list of just those notes that are siblings of this note, type
[[./A (note the full stop before the slash character).
When typing ziplinks input, the popup menu displays names of containers in bold. Selecting a container from the ziplinks-match menu does not close the ziplinks input immediately. Instead, a new menu of items inside the container appears. Type closing brackets "]]" to link to the container, or select any note or container inside that container from the menu.
From v8.7.0, when typing ziplinks input, Tinderbox now prefers to link to the original note rather than an alias. Pressing [tab] selects the option currently selected in the popup menu. If no item is selected but there is only one item in the menu, pressing [tab] selects it. If there are several items in the menu but none is selected, [tab] selects the first item.
Adding anchor text for the new link
The ziplinks syntax allows for specifying link anchor text, using a pipe ('|') symbol delimiter. The following will replace the brackets with the anchor text and link it to the designated note.:
[[note name|anchor text]]
If also needing to specify additional $Text for the note (see below), it goes after the optional anchor text:
Adding text to the target note
To aid rapid note-taking, it is possible to also set or add to the $Text of a ziplinks method target note:
[[note::some new text]]
If the note already exists, the new text is appended to the note's existing $Text. Otherwise, the supplied text forms the entire $Text of the new note; where no text is supplied, new notes generated by the ziplinks method have no $Text.
From v8.6.1, there is no limit on the size of the ziplinks input string. Previously it was limited to 50 chars. If needing to add more target text than is currently supported, there is a simple alternative. Use the ziplinks method to create a link without adding any text. Then click the link. This navigates to the link target. Now add the desired $Text. Then use shortcut [Cmd]+['] (⌘+') to navigate back to the original note. These navigation controls are also accessible from the Note menu.
Adding a backlink from the link target
From v8.7.0, the ziplinks method can create backlinks from the destination note. [[<that note>]] will create a link to "that note", and then will append the name of this note to the text of "that note" and link the name back to this note. The mark-up needed is used as a wrapper around the entire input string. Thus:
…will create a new note called 'New Idea' and link to it. If this method is mixed with other ziplinks techniques, like so:
[[<New Idea|great idea::Recent innovation>]]
…will create a new note called 'New Idea' and link to it via anchor text 'great idea' and add a backlink with the anchor text 'Recent innovation'.
IMPORTANT: note how the closing '>' comes at the end, immediately before the closing ']]' and not before the '|' as might be assumed if all the different parts of syntax were just chained.
Stamps & Ziplinks
From v8.9.0, if a stamp changes the text, Tinderbox will immediately expand any ziplinks mark-up found in the revised text.
Suppressing the Ziplink feature
It can be useful to disable this feature in notes using code examples or square brackets, and (from v8.6.0) the system attribute $Ziplinks supports this behaviour. Built-in prototypes, such as HTML and Code have $Ziplinks set to false for just such a reason.
Effects of changing
Quick links behaviour pre-v8.6.0
The previous 'Quick links' behaviour using a "[[" trigger is described separately.