[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/hyperdrive 696908c87f 35/82: Change: (--org-normalize-link
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/hyperdrive 696908c87f 35/82: Change: (--org-normalize-link) Remove hyperdrive-entry-equal-p check |
Date: |
Mon, 25 Sep 2023 19:00:52 -0400 (EDT) |
branch: elpa/hyperdrive
commit 696908c87f3a92ae91e9ee517587fa09196ff8d7
Author: Joseph Turner <joseph@ushin.org>
Commit: Joseph Turner <joseph@ushin.org>
Change: (--org-normalize-link) Remove hyperdrive-entry-equal-p check
The code is more correct than before, since it now handles
same-drive-different-path-before-heading/absolute-nil.
---
hyperdrive-org.el | 54 +++++++++++++++++++++---------------------------------
1 file changed, 21 insertions(+), 33 deletions(-)
diff --git a/hyperdrive-org.el b/hyperdrive-org.el
index 5f3916452c..5f0f177310 100644
--- a/hyperdrive-org.el
+++ b/hyperdrive-org.el
@@ -186,7 +186,7 @@ Respects `hyperdrive-org-link-full-url' and
`org-link-file-path-type'."
(target-entry (hyperdrive-url-entry url))
(search-option (alist-get 'target (hyperdrive-entry-etc
target-entry)))
(host-format '(public-key)) (with-path t) (with-protocol t)
- fragment-prefix destination)
+ fragment-prefix)
(when (or hyperdrive-org-link-full-url
(not (hyperdrive-entry-hyperdrive-equal-p
@@ -205,38 +205,26 @@ Respects `hyperdrive-org-link-full-url' and
`org-link-file-path-type'."
;; Search option alone
(cl-return-from hyperdrive--org-normalize-link search-option))
- (if (hyperdrive-entry-equal-p hyperdrive-current-entry target-entry)
- ;; Link points to same file on same hyperdrive: make link
- ;; relative.
- (setf destination
- (pcase org-link-file-path-type
- ;; TODO: Handle `org-link-file-path-type' as a function.
- ((or 'absolute 'noabbrev)
- ;; These two options are the same for our purposes,
- ;; because hyperdrives have no home directory.
- (setf destination (hyperdrive-entry-path target-entry)))
- ('adaptive
- (setf destination
- (if (string-prefix-p (file-name-parent-directory
- (hyperdrive-entry-path
hyperdrive-current-entry))
- (hyperdrive-entry-path
target-entry))
- ;; Link points to file in same directory tree: use
relative link.
- (file-relative-name
- (hyperdrive-entry-path target-entry)
- (file-name-directory (hyperdrive-entry-path
target-entry)))
- (hyperdrive-entry-path target-entry))))
- ('relative
- (setf destination
- (file-relative-name
- (hyperdrive-entry-path target-entry)
- (file-name-directory (hyperdrive-entry-path
target-entry)))))))
-
- ;; Link points to same hyperdrive as the file the link is in:
- ;; make link relative.
- (setf destination (file-relative-name
- (hyperdrive-entry-path target-entry)
- (file-name-directory (hyperdrive-entry-path
target-entry)))))
- (hyperdrive--ensure-dot-slash-prefix-path destination)))
+ (hyperdrive--ensure-dot-slash-prefix-path
+ (pcase org-link-file-path-type
+ ;; TODO: Handle `org-link-file-path-type' as a function.
+ ((or 'absolute 'noabbrev)
+ ;; These two options are the same for our purposes,
+ ;; because hyperdrives have no home directory.
+ (hyperdrive-entry-path target-entry))
+ ('adaptive
+ (if (string-prefix-p (file-name-parent-directory
+ (hyperdrive-entry-path hyperdrive-current-entry))
+ (hyperdrive-entry-path target-entry))
+ ;; Link points to file in same directory tree: use relative link.
+ (file-relative-name
+ (hyperdrive-entry-path target-entry)
+ (file-name-directory (hyperdrive-entry-path target-entry)))
+ (hyperdrive-entry-path target-entry)))
+ ('relative
+ (file-relative-name
+ (hyperdrive-entry-path target-entry)
+ (file-name-directory (hyperdrive-entry-path target-entry))))))))
;;;###autoload
(with-eval-after-load 'org
- [nongnu] elpa/hyperdrive eb84b2d2f5 16/82: Change: (hyperdrive-entry-create) Remove ENCODE argument, (continued)
- [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
- [nongnu] elpa/hyperdrive 696908c87f 35/82: Change: (--org-normalize-link) Remove hyperdrive-entry-equal-p check,
ELPA Syncer <=
- [nongnu] elpa/hyperdrive 82f8b9d502 37/82: Fix: (--org-normalize-link) Use current entry, not target entry, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 2a611e471f 42/82: Change: (--org-normalize-link) Add search-option to path link, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 9fd2272ec1 47/82: Change: (--org-shorthand-link) Don't handle full "hyper://" URLs, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive a7bfbf8dee 38/82: Test: -org-link/same-drive-different-path-before-heading, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 04de0cb01a 44/82: Change: (hyperdrive--org-normalize-link) Check search-option first, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 16cdce78bf 40/82: Comment: Add TODO, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 6aa9346618 41/82: Comment: Add TODO, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 18d7821a82 48/82: Test: Add different-drive-different-path-* tests, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 360c7d860f 49/82: Add: (hyperdrive--org-link-description) Utility function, ELPA Syncer, 2023/09/25
- [nongnu] elpa/hyperdrive 3ea6fa6bc1 51/82: Comment: Correct explanation, ELPA Syncer, 2023/09/25