[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/hyperdrive de2e028534 12/82: Docs: Clarify link types
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/hyperdrive de2e028534 12/82: Docs: Clarify link types |
Date: |
Mon, 25 Sep 2023 19:00:50 -0400 (EDT) |
branch: elpa/hyperdrive
commit de2e02853459f333502e4b2c9f52ddbefec92700
Author: Joseph Turner <joseph@ushin.org>
Commit: Adam Porter <adam@alphapapa.net>
Docs: Clarify link types
- Add spaces to paths to demonstrate that encoding paths
- Show that * heading text prefix may be followed by whitespace
- Add brackets around links which must have them
---
DEV.org | 59 ++++++++++++++++++++++++++++-------------------------------
1 file changed, 28 insertions(+), 31 deletions(-)
diff --git a/DEV.org b/DEV.org
index af025eb4cd..a402536259 100644
--- a/DEV.org
+++ b/DEV.org
@@ -288,54 +288,51 @@ How to tell which extension caused a peer-open or
peer-remove event?
*** Terminology
-+ Link types :: Links that are valid within Org documents.
++ Hyperdrive Org links :: Links to hyperdrive files/directories that are valid
within Org documents.
- - Bracket-less URLs :: Full, ~hyper://~-prefixed URLs
+ - With protocol prefix
- This type of link may have a search option/fragment, which must be
URL-encoded:
+ This link type or may not be surrounded by brackets. It may or may
+ not contain a search option. Path and search option must be
+ URL-encoded and separated by a decoded ~#~.
- * ~CUSTOM_ID~ :: e.g. ~hyper://deadbeef/foo/bar.org#%3A%3A%23CUSTOM_ID~,
which decodes to ~hyper://deadbeef/foo/bar.org#::#CUSTOM_ID~
+ * No search option :: e.g. ~hyper://deadbeef/foo/bar%20quux.org~, which
decodes to ~hyper://deadbeef/foo/bar quux.org~
- * Heading text search option :: With or without ~*~ prefix, e.g.
+ * ~CUSTOM_ID~ :: e.g.
+ ~hyper://deadbeef/foo/bar%20quux.org#%3A%3A%23baz%20zot~, which decodes
to ~hyper://deadbeef/foo/bar quux.org#::#baz zot~
- - ~hyper://deadbeef/foo/bar.org#%3A%3A%2AHeading%20A~, which decodes to
~hyper://deadbeef/foo/bar.org#::*Heading A~
- - ~hyper://deadbeef/foo/bar.org#%3A%3AHeading%20A~, which decodes to
~hyper://deadbeef/foo/bar.org#::Heading A~
+ * Heading text search option :: With or without ~*~ (actually [[elisp:(rx
"*" (0+ space))]]) prefix, e.g.
- - Bracketed Org links :: Without ~hyper://~ prefix (being careful to note
that Org links can in fact point to URLs, but may also be this alternative,
non-URL format)
+ - ~hyper://deadbeef/foo/bar%20quux.org#%3A%3A%2AHeading%20A~, which
decodes to ~hyper://deadbeef/foo/bar quux.org#::*Heading A~
+ - ~hyper://deadbeef/foo/bar%20quux.org#%3A%3A%2A%20%20Heading%20A~,
which decodes to ~hyper://deadbeef/foo/bar quux.org#::* Heading A~
+ - ~hyper://deadbeef/foo/bar%20quux.org#%3A%3AHeading%20A~, which decodes
to ~hyper://deadbeef/foo/bar quux.org#::Heading A~
- Org links may be further subdivided into two types:
+ - Without protocol prefix
- + With protocol :: e.g. ~hyper://...~
+ This link type must be surrounded by brackets. It has no
+ URL-encoding in any part. It may or may not contain a path:
- + Without protocol :: e.g. ~./foo/bar.org...~
+ + With path :: A link pointing to a file at a path, starting with ~/~ or
~.~, with or without search option:
- *NOTE:* This link type has no URL-encoding in any part.
+ - No search option :: ~[[/foo/bar quux.org]]~
- These Org links are further divided into:
+ - ~CUSTOM_ID~ :: e.g. ~[[/foo/bar quux.org::#CUSTOM_ID]]~
- - Without path :: A link pointing to a heading in the same file.
+ - Heading text search option :: With or without ~*~ (actually
[[elisp:(rx "*" (0+ space))]]) prefix, e.g.
- This type of link must have a search option/fragment:
+ + ~[[/foo/bar quux.org::*Heading A]]~
+ + ~[[/foo/bar quux.org::* Heading A]]~
+ + ~[[/foo/bar quux.org::Heading A]]~
- * ~CUSTOM_ID~ :: e.g. ~#CUSTOM_ID~
+ + Without path :: A link pointing to a heading in the same file with
search option alone:
- * Heading text search option :: With or without ~*~ prefix, e.g.
-
- + ~*Heading A~
- + ~Heading A~
-
- - With path :: A link pointing to a file at a path, starting with ~/~ or
~.~
-
- This type of link may optionally have a search option/fragment:
-
- * ~CUSTOM_ID~ :: e.g. ~./foo/bar.org::#CUSTOM_ID~
-
- * Heading text search option :: With or without ~*~ prefix, e.g.
-
- + ~./foo/bar.org::*Heading A~
- + ~./foo/bar.org::Heading A~
+ - ~CUSTOM_ID~ :: e.g. ~#CUSTOM_ID~
+ - Heading text search option :: With or without ~*~ (actually
[[elisp:(rx "*" (0+ space))]]) prefix, e.g.
+ + ~*Heading A~
+ + ~* Heading A~
+ + ~Heading A~
*** Limitations
- [nongnu] elpa/hyperdrive updated (d2413785b0 -> 903847d50e), ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 4120c3a4d5 01/82: Tidy: Variable name, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive a1901daab3 05/82: WIP, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive c04e0080df 07/82: Tidy: Rename function to hyperdrive-entry-equal-p, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive c536bc9a2c 11/82: WIP, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive e0f7cee105 13/82: WIP: Add test-hyperdrive-org-link.el, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive de2e028534 12/82: Docs: Clarify link types,
ELPA Syncer <=
- [nongnu] elpa/hyperdrive eb84b2d2f5 16/82: Change: (hyperdrive-entry-create) Remove ENCODE argument, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive b2fe51ba3b 02/82: Comment: Add TODO, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive c740135a62 19/82: Change: (hyperdrive-org-link-full-url) Docstring, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 81e01fcdc8 20/82: Fix: (hyperdrive--format-entry-url) Encode ?/ in URL fragment, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 3cac9738b6 22/82: Change: (-deftest) Don't rebind hyperdrive--url-hexify-string, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive eef4f80848 23/82: Change: (hyperdrive-test-org-link tests) Change "file" to "path", ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 5709167d98 24/82: Test: different-drive-same-path-*, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 9f102bdf44 29/82: Change: (hyperdrive--org-normalize-link) Assert current entry, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 06ca835d69 32/82: Tidy: (hyperdrive--org-normalize-link) Add blank spaces, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 341f145411 33/82: Add: (hyperdrive--ensure-dot-slash-prefix-path), ELPA Syncer, 2023/09/25