Verweise, Links und Rückverweise
Jeder Block hat genau einen Ort, an dem er zu Hause ist, und lässt sich von überall sonst aus ansprechen. Auf diesem Satz ist das ganze Produkt gebaut, und auf dieser Seite wird er zu etwas, das Sie tippen können.
Fünf Dinge zeigen auf etwas anderes, sie sehen im Menü ähnlich aus, und sie verhalten sich verschieden. Deshalb kommt die Tabelle zuerst.
| Was Sie wollen | Was Sie tippen | Was erscheint | Was später passiert |
|---|---|---|---|
| Eine Seite verlinken | @ oder [[, dann die Seite wählen |
Ein Chip mit Symbol und Titel des Ziels | Das Symbol folgt der Seite, der Text nicht. Der Chip taucht im Verlinkt von des Ziels auf |
| Eine Seite als gewöhnlichen Text verlinken | Wörter markieren, dann ⌘K / Strg + K |
Ein gewöhnlicher Link wie jeder andere | Nichts folgt der Seite. Er taucht nicht im Verlinkt von auf |
| Eine Seite einbetten | ![[, dann die Seite wählen |
Die ganze Seite, in einem Rahmen, lebendig und beschreibbar | Jede Änderung ist eine Änderung an der Seite selbst. Sie taucht im Verlinkt von des Ziels auf |
| Einen Block referenzieren | Verweis kopieren, dann / → Blockverweis einfügen |
Genau dieser eine Block, in einem Rahmen, lebendig | Ebenso: Der Block hat ein Zuhause, und das hier ist ein Fenster darauf. Er taucht im Verlinkt von und in den Referenzierten Blöcken auf |
| Eine Person erwähnen | @, dann die Person wählen |
Ihr Name als Chip | Die Erwähnung landet im Posteingang dieser Person für diesen Workspace. Sie ist kein Link und kein Rückverweis |
Ein Verweis ist nie eine Kopie. Nichts wird dupliziert: Gespeichert wird ein Paar von Kennungen, und alles, was Sie im Rahmen sehen, wird von der Seite gelesen, zu der es gehört — so, wie es dort gerade steht. Zwei Menschen, die dieselbe eingebettete Seite ansehen, sehen einander darin tippen.
Und ein Verweis verschafft nie Zugriff. Dürfen Sie das Ziel nicht lesen, sagt der Rahmen das und bleibt leer — er holt den Inhalt nicht und nennt ihn nicht. Das gilt bis nach unten durch: Eine Seite, die niemand für Sie freigegeben hat, wird nicht dadurch lesbar, dass sie irgendwo eingebettet wird, wo Sie lesen dürfen.
Eine Seite verlinken
Drei Wege hinein, und sie fügen zwei verschiedene Dinge ein.
@durchsucht Seiten und die Mitglieder dieses Workspace und fügt ein, was Sie wählen — einen Seiten-Chip oder eine Erwähnung. Seiten stehen vorn, außer wenn das Getippte den Anfang eines Wortes aus dem Namen einer Person trifft: Dann steht sie oben, denn einen Namen tippen undEingabedrücken muss die Person meinen.@allein, bevor Sie etwas getippt haben, zeigt die ersten zehn Mitglieder und keine Seiten — ein bloßes@ist keine Aufforderung, einen ganzen Workspace aufzulisten.[[ist dieselbe Auswahl, auf Seiten beschränkt. Es gibt sie, weil ein Seitenlink in Markdown so geschrieben wird und weil![[daraus gebaut ist.⌘K/Strg+Küber markiertem Text öffnet das Linkfeld: Seiten suchen oder Link einfügen…. Wählen Sie eine Seite, wird der markierte Text ein Link dorthin; fügen Sie einehttp(s)-Adresse ein, wird er ein Link dahin. Ist nichts markiert, gehört⌘Knicht dem Editor — dann öffnet es die Suche über den Workspace, so wie überall sonst in der App.
Die Auswahl bietet Seiten und sonst nichts an. Ein Workspace kann andere Arten von Dokument enthalten, und die Suche findet sie auch; diese Auswahl filtert sie heraus, denn ein Link auf etwas, das keine Seite ist, wird in Ihrem Dokument zu einem dauerhaften Kein Zugriff — aus einer Zeile, die die Auswahl selbst vorgeschlagen hat.
Nichts wird hinter Ihrem Rücken verlinkt. Eine getippte URL ist Text; eine URL, die Sie auf eine Markierung einfügen, wird zum Link auf dieser Markierung; und eine URL, die Sie ins Leere einfügen, wird ein schlichter Link mit einer kleinen Auswahl daneben (siehe unten). Automatisches Verlinken ist bewusst aus: Links entstehen absichtlich, über die Auswahl.
Der Text ist festgeschrieben, das Symbol wird nachgeschlagen
Ein Seiten-Chip speichert die Kennung des Ziels und den Titel so, wie er beim Einfügen lautete. Benennen Sie die Seite später um, behält der Chip die alten Wörter. Beim Symbol ist es umgekehrt: Es steht nie auf dem Chip, sondern wird bei jedem Zeichnen neu aufgelöst — es kann also nie eine veraltete Kopie vom Symbol einer fremden Seite sein.
Diese Zweiteilung ist gewollt und nicht in der einen Hälfte vergessen worden: Ein Text ist Teil Ihres Satzes — „Die Zahlen stehen im [[Q3-Plan]]“ soll sich nicht stillschweigend um Ihre Grammatik herum umschreiben —, während ein Symbol immer nur ein Bild des Ziels ist, und ein falsches ist ein Bild von nichts.
Einem Chip folgen Sie mit einem Klick, oder Sie stellen den Cursor daneben und
drücken ⌘⏎ / Strg + Eingabe. Dieselbe Tastenkombination öffnet eine
eingebettete Seite, wenn deren Rahmen ausgewählt ist statt beschrieben zu
werden — im Rahmen sind Sie bereits in der eingebetteten Seite, und dort gehört
die Tastenkombination dem Block, in dem der Cursor steht.
Eine Seite einbetten
![[ fügt eine Seiteneinbettung ein: einen Rahmen mit dem Titel des Ziels
und einem öffnen ↗, und darin den ganzen Textkörper der Zielseite, lebendig.
Sie schreiben darin wie überall sonst, und was Sie schreiben, steht auf jener
Seite — es gibt keine zweite Fassung, die später abgeglichen werden müsste.
Der Rahmen zeigt den Textkörper und nichts drumherum: keine Eigenschaften, keine Liste der Unterseiten, keine Kommentare, keinen Pfad. Das gehört zur Seite, und die Seite ist ein öffnen ↗ entfernt.
Einen Block referenzieren
Ein Blockverweis zeigt auf einen einzelnen Block statt auf eine ganze Seite.
- Cursor in den Block, dann
⌘//Strg+/für das Blockmenü. Sein erster Eintrag ist Verweis kopieren. (Dasselbe steht in der/-Palette als Blockverweis kopieren — dort war es lange der einzige Weg hinein, und eine Funktion, die man nur findet, wenn man sie in einer neunzehnteiligen Liste sucht, wirkt wie eine Funktion, die es nicht gibt.) - Eine Meldung sagt Block kopiert — mit „Blockverweis einfügen“ einbetten.
- Dort, wo er hin soll:
/→ Blockverweis einfügen.
Kopiert wird der Block, in dem der Cursor steht, hochgelaufen bis zum nächsten Ding, das ein eigener Block ist. Ein einzelner Listenpunkt ist also ein Block; ein Cursor in einer Tabellenzelle kopiert die ganze Tabelle, denn eine Tabelle ist ein Block; und die erste Zeile einer Hervorhebung, eines Zitats oder eines ausklappbaren Abschnitts ist der eigene Text dieses Behälters, also wird der Behälter kopiert.
Ob der eingefügte Verweis beschreibbar ist, hängt vom Ziel ab. Drei Dinge werden schreibgeschützt gezeichnet — ein Bild, eine Trennlinie und ein weiterer Verweis —, weil Bearbeiten dort nichts bedeuten würde. Alles andere wird an Ort und Stelle bearbeitet: ein Absatz, eine Überschrift, ein Listenpunkt, eine Aufgabe, eine Hervorhebung, ein Zitat, ein ausklappbarer Abschnitt, eine Tabelle, ein Code-Block. Und die Änderung ist eine Änderung am Block an seinem Zuhause. Die Beschreibung in der Palette sagt für beide Fälle noch (schreibgeschützt); sie beschreibt den ersten.
Ein Blockverweis folgt seinem Block. Macht jemand aus dem Ziel statt eines Absatzes eine Überschrift, zeichnet der Rahmen eine Überschrift, während Sie hinsehen; löscht jemand den Block, sagt der Rahmen das, statt den Block zu zeigen, der nachgerückt ist.
Auf eine Überschrift verlinken
Eine Überschrift hat einen zweiten, leichteren Weg, angesprochen zu werden:
Fahren Sie mit der Maus darüber — oder setzen Sie den Cursor hinein, oder
drücken Sie von dort Tab —, und hinter dem Text erscheint ein Kettensymbol;
im Blockmenü heißt dasselbe Link zur Überschrift kopieren. Beides kopiert eine
gewöhnliche Adresse der Seite mit der Kennung der Überschrift hinter einem #.
Wird diese Adresse geöffnet, springt die Seite zur Überschrift und lässt sie kurz aufleuchten. Das ist ein Link, kein Verweis: Er bewegt die Lesenden, er bringt den Abschnitt nicht mit, und er taucht nicht in Verlinkt von auf.
Wie tief und wie viele
Eine Einbettung kann eine Einbettung enthalten, also gibt es zwei Grenzen — und beide sind sichtbar, wenn Sie an sie stoßen.
Drei Ebenen tief, danach ein Link. Die Seite, die Sie tatsächlich geöffnet haben, ist der Boden: Eine Einbettung darauf ist eine Ebene tiefer, eine Einbettung darin zwei, eine darin drei. Alle drei werden gezeichnet. Eine vierte nicht: An ihrer Stelle steht Eingebettete Seiten sind zu tief verschachtelt. und ein öffnen ↗ zur Seite selbst.
Zweiunddreißig Einbettungen je Seite. Das Budget teilen sich die Seite und alles, was darin verschachtelt ist — es begrenzt die Einbettungen auf dem Bildschirm, nicht die je Ebene. Darüber hinaus liest sich ein Rahmen als {title} — zu viele Einbettungen auf dieser Seite., mit einem Knopf ausklappen, der genau diese eine doch lädt. Das Budget ist eine laufende Zählung und keine Warteschlange: Verschwindet eine Einbettung, wird ihr Platz für die nächste frei.
Eine Seite kann sich nicht selbst einbetten, weder direkt noch über eine
Schleife. Bettet A die Seite B ein und B wieder A, bekommt das zweite
A einen Rahmen mit Zirkelbezug — diese Seite ist weiter oben bereits
eingebettet. Ein Fall sieht wie eine Schleife aus und ist keine: ein
Blockverweis auf einen Block derselben Seite, auf der er steht. Das ist ein
gewöhnlicher Verweis innerhalb einer Seite und wird gezeichnet — aber nur auf
der obersten Ebene. Tiefer in einer Einbettung ist ein Verweis zurück auf die
Ausgangsseite wirklich eine Schleife und bekommt den Platzhalter.
Wenn das Ziel fehlt, verborgen ist oder im Papierkorb liegt
Jeder dieser Fälle hat seinen eigenen Satz, denn „das dürfen Sie nicht sehen“, „das gibt es nicht mehr“ und „wir konnten es nicht herausfinden“ sind drei verschiedene Aussagen, und man muss sie unterscheiden können.
| Was nicht stimmt | Eine eingebettete Seite sagt | Ein Blockverweis sagt |
|---|---|---|
| Es ist gar kein Ziel gespeichert | Fehlerhafte Einbettung (Zielseite fehlt). | Fehlerhafter Verweis (Zielblock fehlt). |
| Sie dürfen es nicht lesen | Kein Zugriff auf diese Seite. | Kein Zugriff auf den referenzierten Block. |
| Die zugehörige Seite liegt im Papierkorb | Gelöscht — auf der Ursprungsseite wiederherstellen. | Gelöscht — auf der Ursprungsseite wiederherstellen. |
| Der Block wurde von seiner Seite gelöscht | — | Der referenzierte Block existiert nicht mehr. |
| Es ist weiter oben schon eingebettet | Zirkelbezug — diese Seite ist weiter oben bereits eingebettet. | Zirkelbezug — die zugehörige Seite ist weiter oben bereits eingebettet. |
| Es liegt tiefer als drei Ebenen | Eingebettete Seiten sind zu tief verschachtelt. | Referenzierter Block ist zu tief verschachtelt. |
| Das Budget der Seite ist aufgebraucht | {title} — zu viele Einbettungen auf dieser Seite. | Zu viele Einbettungen auf dieser Seite. |
Die Kopfzeile des Rahmens ist immer da, was auch immer darunter steht, mit einem öffnen ↗. Ein Platzhalter ist also meist ein Weg weiter und keine Wand. Zwei Feinheiten. Was neben dem Pfeil steht, ist je nach Rahmen verschieden: Eine eingebettete Seite nennt die Seite — Ohne Titel, wenn Sie sie nicht lesen dürfen, und genau dafür ist die Zeile Kein Zugriff da —, während in der Kopfzeile eines Blockverweises nur Blockverweis steht, denn die Seite, auf der er zu Hause ist, ist gerade das, was der Platzhalter nicht nennen will. Und der Pfeil führt nur dorthin, wo es etwas gibt: Ist gar kein Ziel gespeichert, oder lässt sich zu einem referenzierten Block überhaupt keine Seite auflösen, tut er nichts.
Solange das Ziel im Papierkorb liegt, geht nichts verloren. Stellen Sie die Seite an ihrem Ursprungsort wieder her, und jeder Verweis darauf füllt sich wieder — die Verweise waren nie gelöscht, sie zeigten nur auf etwas, das weggeräumt worden war.
Verlinkt von
Unter dem Textkörper einer Seite steht Verlinkt von: die Seiten, die auf diese hier zeigen.
- Aufgeführt werden Seiten, jede einmal, egal wie oft eine davon hierher verlinkt.
- Drei Arten von Zeiger bringen eine Seite in diese Liste: ein Seiten-Chip, eine
Seiteneinbettung und ein Blockverweis auf irgendeinen Block dieser Seite. Ein
gewöhnlicher
⌘K-Link nicht — das ist eine Auszeichnung auf einem Stück Text, und genau hier liegt der Unterschied zwischen den beiden Arten, eine Seite zu verlinken. - Eine Seite, die Sie nicht öffnen dürfen, steht nicht in der Liste; eine Seite im Papierkorb auch nicht; und der Link dieser Seite auf sich selbst ebenso wenig.
- Der Abschnitt wird gar nicht gezeichnet, wenn es nichts zu berichten gibt. Er ist ein Bericht und kein Bedienelement — leer wäre er eine Überschrift und ein Satz über Abwesenheit, und eine neue Seite hatte drei davon untereinander.
- Ein Fehlschlag wird gezeigt: Die hierher verlinkenden Seiten konnten nicht geladen werden: … — aus demselben Grund. „Es gibt nichts“ und „wir konnten es nicht herausfinden“ sind nicht dieselbe Antwort.
Referenzierte Blöcke
Rückverweise hören eine Ebene zu früh auf für die Frage, die man vor einem viel zitierten Absatz wirklich hat: Wo und wie oft wird dieser Block benutzt? Referenzierte Blöcke beantwortet sie, unterhalb der Rückverweise.
Eine Zeile je Block dieser Seite, auf den jemand verweist. Benannt ist die Zeile
nach den ersten 160 Zeichen des Blocktexts; ein Block ohne eigenen Text — eine
Trennlinie, ein Bild, ein Code-Block — heißt Block ohne Text. Daneben steht
An 3 Stellen referenziert. Klappen Sie die Zeile auf, stehen dort die Seiten,
jede als echter Link (⌘-Klick und Klick mit der mittleren Maustaste öffnen sie
also neben dem, was Sie gerade lesen), mit 2× hinter einer Seite, die den
Block zweimal referenziert.
Es ist immer höchstens eine Zeile offen, und die Fundstellen werden erst beim Aufklappen geholt — eine Seite mit zwanzig referenzierten Blöcken kostet eine Anfrage, nicht einundzwanzig.
Die Zahl ist das, was Sie sehen dürfen. Ein Verweis, der auf einer Seite steht, die Sie nicht öffnen können, wird weder aufgeführt noch mitgezählt — die Zahl geht also immer mit den Links darunter auf. Eine ungefilterte Gesamtzahl neben einer gefilterten Liste würde die Existenz genau der Seiten verraten, die die Rechteverwaltung verbirgt, und zwar mit der einen Zahl, die niemand nachrechnet. Ein Block, der anderswo auf seiner eigenen Seite referenziert wird, zählt mit und steht in der Liste: Das ist eine Fundstelle, und Sie können hingehen.
Was jemand außerhalb des Workspace sieht
Eine ins Web veröffentlichte Seite wird von einem anderen, viel kleineren Renderer gezeichnet, und Verweise überstehen diesen Weg nicht.
- Ein Seiten-Chip, dessen Ziel ebenfalls zur Freigabe gehört, bleibt ein Link. Einer, der woanders hinzeigt, wird zur Markierung nicht freigegeben, und die trägt nichts vom Ziel mit: Der Text eines Chips ist der Titel des Ziels, so wie er beim Verlinken lautete, und ein privater Seitentitel in aller Öffentlichkeit wäre genau das Leck, das damit zugeht.
- Eine Erwähnung wird zur selben Markierung. Dass die Markierung nicht sagt, welches von beidem sie war, ist Absicht: „eine Person“ gegenüber „eine Seite, die Sie nicht sehen dürfen“ ist selbst schon eine Information.
- Eine Seiteneinbettung oder ein Blockverweis wird durch den Satz Ein Verweis auf eine andere Seite gehört nicht zu dieser geteilten Seite. ersetzt — jedes Mal, auch wenn das Ziel innerhalb der Freigabe liegt.
- Ein gewöhnlicher
⌘K-Link auf eine Seite verliert seinen Link und bleibt als der Text stehen, den Sie geschrieben haben — auch dann, wenn das Ziel zur Freigabe gehört. Eine veröffentlichte Seite nimmthttp-,https- undmailto-Adressen mit und sonst keine: Eine app-interne Adresse sagt niemandem etwas, der nicht angemeldet ist, und schriebe zugleich eine Seitenkennung in aller Öffentlichkeit auf.
Der Sinn, das Fehlende zu benennen statt ein Loch zu lassen: Wer liest, kann erkennen, dass die Seite so vollständig ist, wie sie veröffentlicht wurde, und nicht kaputt. Das Veröffentlichen selbst hat eine eigene Seite, Freigeben, Kommentare und Verlauf.
Link-Einbettungen
Eine eingefügte URL ist eine vierte Art von Zeiger — auf etwas ganz außerhalb
von Basalt. Fügen Sie eine ins Leere ein, bekommen Sie sofort einen schlichten
Link, und daneben eine kleine Auswahl mit drei anderen Formen: Titel (der
Titel der Seite als Linktext), Karte (Vorschau mit Titel, Beschreibung und
Bild) und Einbettung (die Seite selbst, in einem Rahmen). Der schlichte Link
ist der vierte Knopf und zugleich der Zustand, in dem Sie schon sind — also der
Weg hinaus: Drücken Sie ihn, drücken Sie das × daneben, drücken Sie Esc,
tippen Sie weiter oder ignorieren Sie das Ganze, und der schlichte Link bleibt.
Die Auswahl sagt in einer Zeile, dass Titel, Karte und Einbettung diesen Server den Link abrufen lassen — ein eingefügter Link allein kostet keine Anfrage nach draußen, erst Ihre Wahl lässt diese Instanz eine fremde Website aufrufen. Eine Website, die sich nicht einbetten lassen will, sagt das, statt einen leeren Kasten zu zeigen.
Auf einer Instanz können Link-Vorschauen auch ganz abgeschaltet sein. Die Auswahl kann das nicht wissen, bevor sie fragt, also bietet sie die drei trotzdem an; wählen Sie eine, steht unter den Knöpfen Für diesen Link gibt es keine Vorschau., und der schlichte Link, den Sie schon haben, bleibt unberührt.
Wie die beiden reichen Formen in einer Datei geschrieben werden, steht in der Markdown-Spezifikation.
Verweise im Markdown
Eine Seite ist Markdown, und Verweise gehören dazu — sie überstehen also einen Download und kommen beim Hochladen zurück:
| Im Dokument | In der Datei |
|---|---|
| Ein Seiten-Chip | [[<Seitenkennung>|Text]] |
| Eine Seiteneinbettung | ![[<Seitenkennung>]] auf einer eigenen Zeile |
| Ein Blockverweis | ![[<Seitenkennung>#<Blockkennung>]] auf einer eigenen Zeile |
| Eine Erwähnung | @[<Benutzerkennung>|Name] |
Sie sprechen Kennungen an, nie Titel. Die eckigen Klammern sind die
Schreibweise, die andere Werkzeuge auch benutzen, aber was hier darin steht, ist
eine vollständige Kennung. Ein Verweis zeigt deshalb nach dem Umbenennen der
Seite immer noch richtig — und deshalb ergibt ein von Hand getipptes
[[Besprechungsnotizen]] genau den Text [[Besprechungsnotizen]] und keinen
Link. Alle vier Formen überstehen den Weg hin und zurück unverändert: Was Sie
herunterladen, kommt genau so wieder herein.
Was Verweise noch nicht können
- Kein Verweis auf einen Bereich von Blöcken. Verweis kopieren nimmt genau einen — einen Absatz, einen Listenpunkt, eine ganze Tabelle. Für drei Absätze machen Sie drei Verweise, oder Sie betten die Seite ein, auf der sie stehen.
- Ein kopierter Verweis verlässt den Tab nicht, in dem Sie ihn kopiert haben. Er liegt in der App und nicht in der Zwischenablage des Systems; ein zweites Fenster und ein zweiter Tab haben also je einen eigenen, und ein Neuladen leert ihn. Wenn Blockverweis einfügen mit Noch kein Block kopiert antwortet, ist genau das passiert. Kopieren Sie ihn im Blockmenü noch einmal.
[[Seitentitel]]von Hand geschrieben ist kein Link. Die Markdown-Form nimmt eine Kennung, und ein von woanders übernommenes Wiki kommt deshalb mit seinen titelbasierten Links als Text an. Was der Import dabei umschreibt, steht unter Import.- Ein
⌘K-Link auf eine Seite ist für Verlinkt von unsichtbar. Beide Arten, eine Seite zu verlinken, sind richtig, und nur eine davon wird gezählt. Soll das Ziel davon wissen, nehmen Sie@oder[[. - Eine Einbettung weiß nicht, dass Sie das Ziel nicht bearbeiten dürfen. Eine Seite, die Sie lesen, aber nicht schreiben dürfen, wird als beschreibbarer Rahmen eingebettet; die Verbindung dorthin ist schreibgeschützt, was Sie darin tippen, wird also nicht auf die Seite geschrieben — und der Rahmen sagt das vorher nicht. Öffnen Sie die Seite selbst, um zu sehen, was Sie dort wirklich dürfen.
- Ein Blockverweis kann nichts ansprechen außer einem Block. Keine Seiteneigenschaft, keine Zelle einer Datenbank, keinen Kommentar und keinen Abschnitt unter einer Überschrift — ein Überschriften-Link springt dorthin, er bringt den Abschnitt nicht mit.
- Eine öffentliche Seite zeichnet keine Einbettung und keinen Blockverweis, auch keinen, dessen Ziel in derselben Freigabe liegt. Das ist eine Entscheidung über einen Renderer, der Menschen ohne Anmeldung ausgeliefert wird, und keine unfertige Arbeit.