update packages

This commit is contained in:
2022-01-04 21:35:17 +01:00
parent 1d5275c946
commit 8de00e5202
700 changed files with 42441 additions and 85378 deletions

View File

@@ -5,8 +5,8 @@
;; Author: Erik Sjöstrand <sjostrand.erik@gmail.com>
;; URL: http://github.com/Kungsgeten/org-brain
;; Package-Version: 20201214.822
;; Package-Commit: 2f36f303e96e384e17d156e0d6489211808d4a36
;; Package-Version: 20210706.1519
;; Package-Commit: 46ca9f766322cff31279ecdf02251ff24a0e9431
;; Keywords: outlines hypermedia
;; Package-Requires: ((emacs "25.1") (org "9.2"))
;; Version: 0.94
@@ -2266,14 +2266,18 @@ If interactive, also prompt for ENTRY."
;;;###autoload
(defun org-brain-ensure-ids-in-buffer ()
"Run `org-brain-get-id' on all headlines in current buffer.
"Run `org-brain-get-id' on all headlines in current buffer
taking into account the ignore tags such as :childess:
Only works if in an `org-mode' buffer inside `org-brain-path'.
Suitable for use with `before-save-hook'."
(interactive)
(and (eq major-mode 'org-mode)
(string-prefix-p (file-truename org-brain-path)
(file-truename (buffer-file-name)))
(org-map-entries #'org-brain-get-id t 'file)))
(let ((match (format "-%s-%s|-%s+TAGS={%s}" ; "-nobrain-childless|-nobrain+TAGS={childless}"
org-brain-exclude-tree-tag org-brain-exclude-children-tag
org-brain-exclude-tree-tag org-brain-exclude-children-tag)))
(org-map-entries #'org-brain-get-id match 'file))))
;;;###autoload
(defun org-brain-agenda ()
@@ -2382,6 +2386,7 @@ Unless WANDER is t, `org-brain-stop-wandering' will be run."
(setq-local indent-tabs-mode nil)
(read-only-mode 1)
(setq-local default-directory (file-name-directory (org-brain-entry-path entry)))
(setq list-buffers-directory (org-brain-vis-title entry))
(org-brain-maybe-switch-brain)
(unless (eq org-brain--vis-entry entry)
(setq org-brain--vis-entry entry)
@@ -2434,6 +2439,19 @@ Unless WANDER is t, `org-brain-stop-wandering' will be run."
(pop-to-buffer "*org-brain*")
(pop-to-buffer-same-window "*org-brain*")))))
;;;###autoload
(defun org-brain-visualize-dwim ()
"Switch to the *org-brain* buffer.
If there's no such buffer, or if already there, run `org-brain-visualize'."
(interactive)
(if (and (not (org-brain-maybe-switch-brain))
(not (eq major-mode 'org-brain-visualize-mode))
(get-buffer "*org-brain*"))
(if org-brain-open-same-window
(pop-to-buffer "*org-brain*")
(pop-to-buffer-same-window "*org-brain*"))
(call-interactively #'org-brain-visualize)))
;;;###autoload
(defun org-brain-visualize-entry-at-pt ()
"Use `org-brain-visualize' on the `org-brain-entry-at-pt'.
@@ -2779,11 +2797,26 @@ point before the buffer was reverted."
(revert-buffer)
(when button-entry (org-brain-jump-to-visualize-button button-entry)))))
(defun org-brain--bookmark-handler (bookmark)
"Visualize the entry stored in BOOKMARK."
(org-brain-visualize (cdr (assoc 'brain-entry bookmark)) nil)
(switch-to-buffer "*org-brain*"))
(defun org-brain-make-bookmark-record ()
"Make a bookmark out of `org-brain--vis-entry'.
Used as `bookmark-make-record-function' in `org-brain-visualize-mode'."
(if-let ((entry org-brain--vis-entry))
(cons (org-brain-title org-brain--vis-entry)
`((handler . org-brain--bookmark-handler)
(brain-entry . ,org-brain--vis-entry)))
(user-error "For some reason `org-brain--vis-entry' is nil")))
(define-derived-mode org-brain-visualize-mode
special-mode "Org-brain Visualize"
"Major mode for `org-brain-visualize'.
\\{org-brain-visualize-mode-map}"
(setq-local revert-buffer-function #'org-brain-visualize-revert))
(setq-local revert-buffer-function #'org-brain-visualize-revert)
(setq-local bookmark-make-record-function #'org-brain-make-bookmark-record))
;;;;; Keybindings
@@ -2859,11 +2892,60 @@ point before the buffer was reverted."
;;;;; Drawing helpers
(defun org-brain--visually-sort (lst)
"Sort LST destructively according to org-brain-visualize-sort-function."
(sort lst org-brain-visualize-sort-function))
(defun org-brain--visually-sorted (lst)
"Sorted LST according to org-brain-visualize-sort-function."
(org-brain--visually-sort (copy-sequence lst)))
(defun org-brain--maybe-visually-sort (entry lst)
"Sorted LST unless ENTRY has a :nosort: tag."
(if (member org-brain-no-sort-children-tag (org-brain-get-tags entry))
lst
(org-brain--visually-sort lst)))
(defun org-brain--visually-sorted-parents (entry)
"List of parents, sorted unless ENTRY has a :nosort: tag."
(org-brain--maybe-visually-sort entry (org-brain-parents entry)))
(defun org-brain--visually-sorted-children (entry)
"List of children, sorted unless ENTRY has a :nosort: tag."
(org-brain--maybe-visually-sort entry (org-brain-children entry)))
(defun org-brain--visually-sorted-friends (entry)
"List of friends, sorted unless ENTRY has a :nosort: tag."
(org-brain--maybe-visually-sort entry (org-brain-friends entry)))
(defun org-brain--visually-sorted-siblings (entry)
"List of siblings, sorted unless ENTRY has a :nosort: tag."
(let ((siblings (org-brain-siblings entry)))
(if (member org-brain-no-sort-children-tag (org-brain-get-tags entry))
siblings
(sort siblings (lambda (x y)
(funcall org-brain-visualize-sort-function
(car x) (car y)))))))
(defun org-brain--visually-sorted-siblings-from (pair)
"List of siblings for a parent, sorted unless the parent in PAIR has a :nosort: tag, or empty list if the parent has a :nosiblings: tag."
(let ((parent (car pair)))
(unless (member org-brain-exclude-siblings-tag (org-brain-get-tags parent))
(org-brain--maybe-visually-sort parent (cdr pair)))))
(defun org-brain--visually-sorted-pins ()
"List of pins visually sorted."
(org-brain--visually-sorted org-brain-pins))
(defun org-brain--visually-sorted-selected ()
"Visually sorted selection list."
(org-brain--visually-sorted org-brain-selected))
(defun org-brain--vis-pinned ()
"Insert pinned entries.
Helper function for `org-brain-visualize'."
(insert "PINNED:")
(dolist (pin (sort (copy-sequence org-brain-pins) org-brain-visualize-sort-function))
(dolist (pin (org-brain--visually-sorted-pins))
(insert " ")
(org-brain-insert-visualize-button pin 'org-brain-pinned 'pinned))
(insert "\n"))
@@ -2873,7 +2955,7 @@ Helper function for `org-brain-visualize'."
Helper function for `org-brain-visualize'."
(unless (null org-brain-selected)
(insert "SELECTED:")
(dolist (selection (sort (copy-sequence org-brain-selected) org-brain-visualize-sort-function))
(dolist (selection (org-brain--visually-sorted-selected))
(insert " ")
(org-brain-insert-visualize-button selection 'org-brain-selected-list))
(insert "\n")))
@@ -2910,15 +2992,11 @@ Helper function for `org-brain-visualize'."
(defun org-brain--vis-parents-siblings (entry)
"Insert parents and siblings of ENTRY.
Helper function for `org-brain-visualize'."
(when-let ((siblings (org-brain-siblings entry)))
(when-let ((siblings (org-brain--visually-sorted-siblings entry)))
(let ((parent-positions nil)
(max-width 0))
(dolist (parent (sort siblings (lambda (x y)
(funcall org-brain-visualize-sort-function
(car x) (car y)))))
(let* ((parent-tags (org-brain-get-tags (car parent)))
(children-links (unless (member org-brain-exclude-siblings-tag parent-tags)
(cdr parent)))
(dolist (parent siblings)
(let* ((children-links (org-brain--visually-sorted-siblings-from parent))
(sibling-middle (ceiling (/ (length children-links) 2.0)))
(base-line (if org-brain-show-history 5 4))
(col-start (+ 3 max-width))
@@ -2936,9 +3014,7 @@ Helper function for `org-brain-visualize'."
'org-brain-sibling) 'sibling)
(setq max-width (max max-width (current-column)))
(newline (forward-line 1)))
(if (member org-brain-no-sort-children-tag parent-tags)
children-links
(sort children-links org-brain-visualize-sort-function)))
children-links)
(org-goto-line base-line)
(forward-line (1- sibling-middle))
(picture-forward-column col-start)
@@ -2996,15 +3072,13 @@ Helper function for `org-brain-visualize'."
"Insert children of ENTRY.
Helper function for `org-brain-visualize'."
(let ((tags (org-brain-get-tags entry t)))
(when-let ((children (org-brain-children entry))
(when-let ((children (org-brain--visually-sorted-children entry))
(fill-col (if (member org-brain-each-child-on-own-line-tag
(org-brain-get-tags entry))
0
(eval org-brain-child-linebreak-sexp))))
(insert "\n\n")
(dolist (child (if (member org-brain-no-sort-children-tag tags)
children
(sort children org-brain-visualize-sort-function)))
(dolist (child children)
(let ((child-title (org-brain-title child))
(face (if (member entry (org-brain-local-parent child))
'org-brain-local-child
@@ -3017,9 +3091,9 @@ Helper function for `org-brain-visualize'."
(defun org-brain--vis-friends (entry)
"Insert friends of ENTRY.
Helper function for `org-brain-visualize'."
(when-let ((friends (org-brain-friends entry)))
(when-let ((friends (org-brain--visually-sorted-friends entry)))
(org-brain--insert-wire " <-> ")
(dolist (friend (sort friends org-brain-visualize-sort-function))
(dolist (friend friends)
(let ((column (current-column)))
(org-brain-insert-visualize-button friend 'org-brain-friend 'friend)
(picture-move-down 1)
@@ -3075,7 +3149,8 @@ Each button is indented, starting at level determined by INDENT."
(insert (org-brain-map-create-indentation indent))
(org-brain-insert-visualize-button entry 'org-brain-child (if (> max-level 0) 'grandchild 'child))
(insert "\n")
(dolist (child (and (> max-level 0) (sort (org-brain-children entry) org-brain-visualize-sort-function)))
(dolist (child (and (> max-level 0)
(org-brain--visually-sorted-children entry)))
(org-brain-insert-recursive-child-buttons child (1- max-level) (1+ indent))))
(defun org-brain-tree-depth (tree)
@@ -3109,7 +3184,7 @@ raw entry data."
Also insert buttons for grand-parents, up to MAX-LEVEL.
Each button is indented, starting at level determined by INDENT."
(dolist (parent (and (> max-level 0)
(sort (org-brain-parents entry) org-brain-visualize-sort-function)))
(org-brain--visually-sorted-parents entry)))
(org-brain-insert-recursive-parent-buttons parent (1- max-level) (1- indent)))
(insert (org-brain-map-create-indentation indent))
(org-brain-insert-visualize-button entry 'org-brain-parent (if (> max-level 0) 'grandparent 'parent))
@@ -3122,30 +3197,25 @@ Will also insert grand-parents up to PARENT-MAX-LEVEL, and
children up to CHILDREN-MAX-LEVEL.
Return the position of ENTRY in the buffer."
(insert "FRIENDS:")
(dolist (friend (sort (org-brain-friends entry) org-brain-visualize-sort-function))
(dolist (friend (org-brain--visually-sorted-friends entry))
(insert " ")
(org-brain-insert-visualize-button friend 'org-brain-friend 'friend))
(setq-local org-brain--visualize-header-end-pos (point))
(insert "\n\n")
(let ((indent (1- (org-brain-tree-depth (org-brain-recursive-parents entry parent-max-level))))
(entry-pos))
(dolist (parent (sort (org-brain-siblings entry) (lambda (x y)
(funcall org-brain-visualize-sort-function
(car x) (car y)))))
(dolist (parent (org-brain--visually-sorted-siblings entry))
(org-brain-insert-recursive-parent-buttons (car parent) (1- parent-max-level) (1- indent))
(let* ((parent-tags (org-brain-get-tags (car parent)))
(children-links (unless (member org-brain-exclude-siblings-tag parent-tags)
(cdr parent))))
(dolist (sibling (sort children-links org-brain-visualize-sort-function))
(insert (org-brain-map-create-indentation indent))
(org-brain-insert-visualize-button sibling 'org-brain-sibling 'sibling)
(insert "\n"))))
(dolist (sibling (org-brain--visually-sorted-siblings-from parent))
(insert (org-brain-map-create-indentation indent))
(org-brain-insert-visualize-button sibling 'org-brain-sibling 'sibling)
(insert "\n")))
(insert (org-brain-map-create-indentation indent))
(setq entry-pos (point))
(insert (propertize (org-brain-title entry)
'face 'org-brain-title
'aa2u-text t) "\n")
(dolist (child (sort (org-brain-children entry) org-brain-visualize-sort-function))
(dolist (child (org-brain--visually-sorted-children entry))
(org-brain-insert-recursive-child-buttons child (1- children-max-level) (1+ indent)))
entry-pos))