Fix: (org-ql-view--link-follow) Reading link parameters

This is needed due to changes in Emacs 30, but this code was always
mistaken, and it just happened to work.

See <https://github.com/jorgenschaefer/emacs-buttercup/issues/247>.

Fixes #441.

Suggested-by: Ola Nilsson <ola.nilsson@gmail.com>
This commit is contained in:
Adam Porter 2024-09-04 22:00:41 -05:00
parent bcb77b75cc
commit a373e812d0
3 changed files with 55 additions and 49 deletions

View file

@ -555,7 +555,8 @@ Simple links may also be written manually in either sexp or non-sexp form, like:
** 0.8.9-pre ** 0.8.9-pre
Nothing new yet. *Fixes*
+ Reading of view settings from Org links in upcoming Emacs version. ([[https://github.com/alphapapa/org-ql/issues/461][#461]]. Thanks to [[https://github.com/snogge][Ola Nilsson]] for help debugging, and for maintaining [[https://github.com/jorgenschaefer/emacs-buttercup][Buttercup]].)
** 0.8.8 ** 0.8.8

View file

@ -622,7 +622,7 @@ purposes of compatibility with changes in Org 9.4."
(query (url-unhex-string query)) (query (url-unhex-string query))
(params (when params (url-parse-query-string params))) (params (when params (url-parse-query-string params)))
;; `url-parse-query-string' returns "improper" alists, which makes this awkward. ;; `url-parse-query-string' returns "improper" alists, which makes this awkward.
(sort (when-let* ((stored-string (alist-get "sort" params nil nil #'string=)) (sort (when-let* ((stored-string (car (alist-get "sort" params nil nil #'string=)))
(read-value (read stored-string))) (read-value (read stored-string)))
;; Ensure the value is either a symbol or list of symbols (which excludes lambdas). ;; Ensure the value is either a symbol or list of symbols (which excludes lambdas).
(unless (or (symbolp read-value) (cl-every #'symbolp read-value)) (unless (or (symbolp read-value) (cl-every #'symbolp read-value))
@ -630,11 +630,11 @@ purposes of compatibility with changes in Org 9.4."
read-value)) read-value))
read-value)) read-value))
(org-super-agenda-allow-unsafe-groups nil) ; Disallow unsafe group selectors. (org-super-agenda-allow-unsafe-groups nil) ; Disallow unsafe group selectors.
(groups (--when-let (alist-get "super-groups" params nil nil #'string=) (groups (--when-let (car (alist-get "super-groups" params nil nil #'string=))
(read it))) (read it)))
(title (--when-let (alist-get "title" params nil nil #'string=) (title (--when-let (car (alist-get "title" params nil nil #'string=))
(read it))) (read it)))
(buffers-files (--if-let (alist-get "buffers-files" params nil nil #'string=) (buffers-files (--if-let (car (alist-get "buffers-files" params nil nil #'string=))
(org-ql-view--expand-buffers-files (read it)) (org-ql-view--expand-buffers-files (read it))
(current-buffer)))) (current-buffer))))
(unless (or (bufferp buffers-files) (unless (or (bufferp buffers-files)

View file

@ -1084,7 +1084,12 @@ File: README.info, Node: 089-pre, Next: 088, Up: Changelog
5.1 0.8.9-pre 5.1 0.8.9-pre
============= =============
Nothing new yet. *Fixes*
• Reading of view settings from Org links in upcoming Emacs version.
(#461 (https://github.com/alphapapa/org-ql/issues/461). Thanks to
Ola Nilsson (https://github.com/snogge) for help debugging, and for
maintaining Buttercup
(https://github.com/jorgenschaefer/emacs-buttercup).)
 
File: README.info, Node: 088, Next: 087, Prev: 089-pre, Up: Changelog File: README.info, Node: 088, Next: 087, Prev: 089-pre, Up: Changelog
@ -2064,49 +2069,49 @@ Node: Links38939
Node: Tips39626 Node: Tips39626
Node: Changelog39950 Node: Changelog39950
Node: 089-pre40900 Node: 089-pre40900
Node: 08841012 Node: 08841308
Node: 08742092 Node: 08742388
Node: 08643320 Node: 08643616
Node: 08543554 Node: 08543850
Node: 08444210 Node: 08444506
Node: 08344662 Node: 08344958
Node: 08245003 Node: 08245299
Node: 08145396 Node: 08145692
Node: 0845817 Node: 0846113
Node: 07448543 Node: 07448839
Node: 07348768 Node: 07349064
Node: 07249502 Node: 07249798
Node: 07150423 Node: 07150719
Node: 0751234 Node: 0751530
Node: 06354100 Node: 06354396
Node: 06254633 Node: 06254929
Node: 06154940 Node: 06155236
Node: 0655510 Node: 0655806
Node: 05258566 Node: 05258862
Node: 05158868 Node: 05159164
Node: 0559293 Node: 0559589
Node: 04960824 Node: 04961120
Node: 04861106 Node: 04861402
Node: 04761455 Node: 04761751
Node: 04661864 Node: 04662160
Node: 04562272 Node: 04562568
Node: 04462633 Node: 04462929
Node: 04362992 Node: 04363288
Node: 04263195 Node: 04263491
Node: 04163356 Node: 04163652
Node: 0463603 Node: 0463899
Node: 03267704 Node: 03268000
Node: 03168107 Node: 03168403
Node: 0368304 Node: 0368600
Node: 02371604 Node: 02371900
Node: 02271838 Node: 02272134
Node: 02172118 Node: 02172414
Node: 0272323 Node: 0272619
Node: 0176401 Node: 0176697
Node: Notes76502 Node: Notes76798
Node: Comparison with Org Agenda searches76664 Node: Comparison with Org Agenda searches76960
Node: org-sidebar77553 Node: org-sidebar77849
Node: License77832 Node: License78128
 
End Tag Table End Tag Table