lisp/org.el: Fix some indentation issues

This commit is contained in:
Bastien 2021-05-16 21:47:59 +02:00
parent e738211f73
commit e4943d0bfa
1 changed files with 180 additions and 168 deletions

View File

@ -5213,7 +5213,7 @@ This includes angle, plain, and bracket links."
((and (pred functionp) echo) echo)
(_ (concat "LINK: " link)))
'htmlize-link (pcase (org-link-get-parameter type
:htmlize-link)
:htmlize-link)
((and (pred functionp) f) (funcall f))
(_ `(:uri ,link)))
'font-lock-multiline t)))
@ -5435,11 +5435,14 @@ by a #."
(defun org-fontify-extend-region (beg end _old-len)
(let ((begin-re "\\(\\\\\\[\\|\\(#\\+begin_\\|\\\\begin{\\)\\S-+\\)")
(end-re "\\(\\\\\\]\\|\\(#\\+end_\\|\\\\end{\\)\\S-+\\)")
(extend (lambda (r1 r2 dir)
(let ((re (replace-regexp-in-string "\\(begin\\|end\\)" r1
(replace-regexp-in-string "[][]" r2
(match-string-no-properties 0)))))
(re-search-forward (regexp-quote re) nil t dir)))))
(extend
(lambda (r1 r2 dir)
(let ((re (replace-regexp-in-string
"\\(begin\\|end\\)" r1
(replace-regexp-in-string
"[][]" r2
(match-string-no-properties 0)))))
(re-search-forward (regexp-quote re) nil t dir)))))
(save-match-data
(save-excursion
(goto-char beg)
@ -5660,113 +5663,113 @@ needs to be inserted at a specific position in the font-lock sequence.")
(defun org-set-font-lock-defaults ()
"Set font lock defaults for the current buffer."
(let ((org-font-lock-extra-keywords
(list
;; Call the hook
'(org-font-lock-hook)
;; Headlines
`(,(if org-fontify-whole-heading-line
"^\\(\\**\\)\\(\\* \\)\\(.*\n?\\)"
"^\\(\\**\\)\\(\\* \\)\\(.*\\)")
(1 (org-get-level-face 1))
(2 (org-get-level-face 2))
(3 (org-get-level-face 3)))
;; Table lines
'("^[ \t]*\\(\\(|\\|\\+-[-+]\\).*\\S-\\)"
(1 'org-table t))
;; Table internals
'("^[ \t]*|\\(?:.*?|\\)? *\\(:?=[^|\n]*\\)" (1 'org-formula t))
'("^[ \t]*| *\\([#*]\\) *|" (1 'org-formula t))
'("^[ \t]*|\\( *\\([$!_^/]\\) *|.*\\)|" (1 'org-formula t))
'("| *\\(<[lrc]?[0-9]*>\\)" (1 'org-formula t))
;; Properties
(list org-property-re
'(1 'org-special-keyword t)
'(3 'org-property-value t))
;; Drawers
'(org-fontify-drawers)
;; Link related fontification.
'(org-activate-links)
(when (memq 'tag org-highlight-links) '(org-activate-tags (1 'org-tag prepend)))
(when (memq 'radio org-highlight-links) '(org-activate-target-links (1 'org-link t)))
(when (memq 'date org-highlight-links) '(org-activate-dates (0 'org-date t)))
(when (memq 'footnote org-highlight-links) '(org-activate-footnote-links))
;; Targets.
(list org-radio-target-regexp '(0 'org-target t))
(list org-target-regexp '(0 'org-target t))
;; Diary sexps.
'("^&?%%(.*\\|<%%([^>\n]*?>" (0 'org-sexp-date t))
;; Macro
'(org-fontify-macros)
;; TODO keyword
(list (format org-heading-keyword-regexp-format
org-todo-regexp)
'(2 (org-get-todo-face 2) prepend))
;; TODO
(when org-fontify-todo-headline
(list (format org-heading-keyword-regexp-format
(concat
"\\(?:"
(mapconcat 'regexp-quote org-not-done-keywords "\\|")
"\\)"))
'(2 'org-headline-todo prepend)))
;; DONE
(when org-fontify-done-headline
(list (format org-heading-keyword-regexp-format
(concat
"\\(?:"
(mapconcat 'regexp-quote org-done-keywords "\\|")
"\\)"))
'(2 'org-headline-done prepend)))
;; Priorities
'(org-font-lock-add-priority-faces)
;; Tags
'(org-font-lock-add-tag-faces)
;; Tags groups
(when (and org-group-tags org-tag-groups-alist)
(list (concat org-outline-regexp-bol ".+\\(:"
(regexp-opt (mapcar 'car org-tag-groups-alist))
":\\).*$")
'(1 'org-tag-group prepend)))
;; Special keywords
(list (concat "\\<" org-deadline-string) '(0 'org-special-keyword t))
(list (concat "\\<" org-scheduled-string) '(0 'org-special-keyword t))
(list (concat "\\<" org-closed-string) '(0 'org-special-keyword t))
(list (concat "\\<" org-clock-string) '(0 'org-special-keyword t))
;; Emphasis
(when org-fontify-emphasized-text '(org-do-emphasis-faces))
;; Checkboxes
'("^[ \t]*\\(?:[-+*]\\|[0-9]+[.)]\\)[ \t]+\\(?:\\[@\\(?:start:\\)?[0-9]+\\][ \t]*\\)?\\(\\[[- X]\\]\\)"
1 'org-checkbox prepend)
(when (cdr (assq 'checkbox org-list-automatic-rules))
'("\\[\\([0-9]*%\\)\\]\\|\\[\\([0-9]*\\)/\\([0-9]*\\)\\]"
(0 (org-get-checkbox-statistics-face) prepend)))
;; Description list items
'("\\(?:^[ \t]*[-+]\\|^[ \t]+[*]\\)[ \t]+\\(.*?[ \t]+::\\)\\([ \t]+\\|$\\)"
1 'org-list-dt prepend)
;; Inline export snippets
'("\\(@@\\)\\([a-z-]+:\\).*?\\(@@\\)"
(1 'font-lock-comment-face t)
(2 'org-tag t)
(3 'font-lock-comment-face t))
;; ARCHIVEd headings
(list (concat
org-outline-regexp-bol
"\\(.*:" org-archive-tag ":.*\\)")
'(1 'org-archived prepend))
;; Specials
'(org-do-latex-and-related)
'(org-fontify-entities)
'(org-raise-scripts)
;; Code
'(org-activate-code (1 'org-code t))
;; COMMENT
(list (format
"^\\*+\\(?: +%s\\)?\\(?: +\\[#[A-Z0-9]\\]\\)? +\\(?9:%s\\)\\(?: \\|$\\)"
org-todo-regexp
org-comment-string)
'(9 'org-special-keyword t))
;; Blocks and meta lines
'(org-fontify-meta-lines-and-blocks))))
(list
;; Call the hook
'(org-font-lock-hook)
;; Headlines
`(,(if org-fontify-whole-heading-line
"^\\(\\**\\)\\(\\* \\)\\(.*\n?\\)"
"^\\(\\**\\)\\(\\* \\)\\(.*\\)")
(1 (org-get-level-face 1))
(2 (org-get-level-face 2))
(3 (org-get-level-face 3)))
;; Table lines
'("^[ \t]*\\(\\(|\\|\\+-[-+]\\).*\\S-\\)"
(1 'org-table t))
;; Table internals
'("^[ \t]*|\\(?:.*?|\\)? *\\(:?=[^|\n]*\\)" (1 'org-formula t))
'("^[ \t]*| *\\([#*]\\) *|" (1 'org-formula t))
'("^[ \t]*|\\( *\\([$!_^/]\\) *|.*\\)|" (1 'org-formula t))
'("| *\\(<[lrc]?[0-9]*>\\)" (1 'org-formula t))
;; Properties
(list org-property-re
'(1 'org-special-keyword t)
'(3 'org-property-value t))
;; Drawers
'(org-fontify-drawers)
;; Link related fontification.
'(org-activate-links)
(when (memq 'tag org-highlight-links) '(org-activate-tags (1 'org-tag prepend)))
(when (memq 'radio org-highlight-links) '(org-activate-target-links (1 'org-link t)))
(when (memq 'date org-highlight-links) '(org-activate-dates (0 'org-date t)))
(when (memq 'footnote org-highlight-links) '(org-activate-footnote-links))
;; Targets.
(list org-radio-target-regexp '(0 'org-target t))
(list org-target-regexp '(0 'org-target t))
;; Diary sexps.
'("^&?%%(.*\\|<%%([^>\n]*?>" (0 'org-sexp-date t))
;; Macro
'(org-fontify-macros)
;; TODO keyword
(list (format org-heading-keyword-regexp-format
org-todo-regexp)
'(2 (org-get-todo-face 2) prepend))
;; TODO
(when org-fontify-todo-headline
(list (format org-heading-keyword-regexp-format
(concat
"\\(?:"
(mapconcat 'regexp-quote org-not-done-keywords "\\|")
"\\)"))
'(2 'org-headline-todo prepend)))
;; DONE
(when org-fontify-done-headline
(list (format org-heading-keyword-regexp-format
(concat
"\\(?:"
(mapconcat 'regexp-quote org-done-keywords "\\|")
"\\)"))
'(2 'org-headline-done prepend)))
;; Priorities
'(org-font-lock-add-priority-faces)
;; Tags
'(org-font-lock-add-tag-faces)
;; Tags groups
(when (and org-group-tags org-tag-groups-alist)
(list (concat org-outline-regexp-bol ".+\\(:"
(regexp-opt (mapcar 'car org-tag-groups-alist))
":\\).*$")
'(1 'org-tag-group prepend)))
;; Special keywords
(list (concat "\\<" org-deadline-string) '(0 'org-special-keyword t))
(list (concat "\\<" org-scheduled-string) '(0 'org-special-keyword t))
(list (concat "\\<" org-closed-string) '(0 'org-special-keyword t))
(list (concat "\\<" org-clock-string) '(0 'org-special-keyword t))
;; Emphasis
(when org-fontify-emphasized-text '(org-do-emphasis-faces))
;; Checkboxes
'("^[ \t]*\\(?:[-+*]\\|[0-9]+[.)]\\)[ \t]+\\(?:\\[@\\(?:start:\\)?[0-9]+\\][ \t]*\\)?\\(\\[[- X]\\]\\)"
1 'org-checkbox prepend)
(when (cdr (assq 'checkbox org-list-automatic-rules))
'("\\[\\([0-9]*%\\)\\]\\|\\[\\([0-9]*\\)/\\([0-9]*\\)\\]"
(0 (org-get-checkbox-statistics-face) prepend)))
;; Description list items
'("\\(?:^[ \t]*[-+]\\|^[ \t]+[*]\\)[ \t]+\\(.*?[ \t]+::\\)\\([ \t]+\\|$\\)"
1 'org-list-dt prepend)
;; Inline export snippets
'("\\(@@\\)\\([a-z-]+:\\).*?\\(@@\\)"
(1 'font-lock-comment-face t)
(2 'org-tag t)
(3 'font-lock-comment-face t))
;; ARCHIVEd headings
(list (concat
org-outline-regexp-bol
"\\(.*:" org-archive-tag ":.*\\)")
'(1 'org-archived prepend))
;; Specials
'(org-do-latex-and-related)
'(org-fontify-entities)
'(org-raise-scripts)
;; Code
'(org-activate-code (1 'org-code t))
;; COMMENT
(list (format
"^\\*+\\(?: +%s\\)?\\(?: +\\[#[A-Z0-9]\\]\\)? +\\(?9:%s\\)\\(?: \\|$\\)"
org-todo-regexp
org-comment-string)
'(9 'org-special-keyword t))
;; Blocks and meta lines
'(org-fontify-meta-lines-and-blocks))))
(setq org-font-lock-extra-keywords (delq nil org-font-lock-extra-keywords))
(run-hooks 'org-font-lock-set-keywords-hook)
;; Now set the full font-lock-keywords
@ -5997,8 +6000,9 @@ and subscripts."
"Remove outline overlays that do not contain non-white stuff."
(dolist (o (overlays-at pos))
(and (eq 'outline (overlay-get o 'invisible))
(not (string-match-p "\\S-" (buffer-substring (overlay-start o)
(overlay-end o))))
(not (string-match-p
"\\S-" (buffer-substring (overlay-start o)
(overlay-end o))))
(delete-overlay o))))
(defun org-show-empty-lines-in-parent ()
@ -10081,7 +10085,8 @@ all statistics cookies in the buffer."
(if all
(progn
(org-update-checkbox-count 'all)
(org-map-entries 'org-update-parent-todo-statistics))
(org-map-region 'org-update-parent-todo-statistics
(point-min) (point-max)))
(if (not (org-at-heading-p))
(org-update-checkbox-count)
(let ((pos (point-marker))
@ -10090,15 +10095,17 @@ all statistics cookies in the buffer."
(if (not (org-at-heading-p))
(org-update-checkbox-count)
(setq l1 (org-outline-level))
(setq end (save-excursion
(outline-next-heading)
(when (org-at-heading-p) (setq l2 (org-outline-level)))
(point)))
(setq end
(save-excursion
(outline-next-heading)
(when (org-at-heading-p) (setq l2 (org-outline-level)))
(point)))
(if (and (save-excursion
(re-search-forward
"^[ \t]*\\([-+*]\\|[0-9]+[.)]\\) \\[[- X]\\]" end t))
(not (save-excursion (re-search-forward
":COOKIE_DATA:.*\\<todo\\>" end t))))
(not (save-excursion
(re-search-forward
":COOKIE_DATA:.*\\<todo\\>" end t))))
(org-update-checkbox-count)
(if (and l2 (> l2 l1))
(progn
@ -10119,8 +10126,9 @@ all statistics cookies in the buffer."
When `org-hierarchical-todo-statistics' is nil, statistics will cover
the entire subtree and this will travel up the hierarchy and update
statistics everywhere."
(let* ((prop (save-excursion (org-up-heading-safe)
(org-entry-get nil "COOKIE_DATA" 'inherit)))
(let* ((prop (save-excursion
(org-up-heading-safe)
(org-entry-get nil "COOKIE_DATA" 'inherit)))
(recursive (or (not org-hierarchical-todo-statistics)
(and prop (string-match "\\<recursive\\>" prop))))
(lim (or (and prop (marker-position org-entry-property-inherited-from))
@ -10365,7 +10373,8 @@ prefer a state in the current sequence over on in another sequence."
"Return the TODO keyword of the current subtree."
(save-excursion
(org-back-to-heading t)
(and (let ((case-fold-search nil)) (looking-at org-todo-line-regexp))
(and (let ((case-fold-search nil))
(looking-at org-todo-line-regexp))
(match-end 2)
(match-string 2))))
@ -10403,18 +10412,19 @@ this function is called before first heading.
When optional argument TIMESTAMP is a string, extract the
repeater from there instead."
(save-match-data
(cond (timestamp
(and (string-match org-repeat-re timestamp)
(match-string-no-properties 1 timestamp)))
((org-before-first-heading-p) nil)
(t
(save-excursion
(org-back-to-heading t)
(let ((end (org-entry-end-position)))
(catch :repeat
(while (re-search-forward org-repeat-re end t)
(when (save-match-data (org-at-timestamp-p 'agenda))
(throw :repeat (match-string-no-properties 1)))))))))))
(cond
(timestamp
(and (string-match org-repeat-re timestamp)
(match-string-no-properties 1 timestamp)))
((org-before-first-heading-p) nil)
(t
(save-excursion
(org-back-to-heading t)
(let ((end (org-entry-end-position)))
(catch :repeat
(while (re-search-forward org-repeat-re end t)
(when (save-match-data (org-at-timestamp-p 'agenda))
(throw :repeat (match-string-no-properties 1)))))))))))
(defvar org-last-changed-timestamp)
(defvar org-last-inserted-timestamp)
@ -10440,10 +10450,11 @@ This function is run automatically after each state change to a DONE state."
(end (copy-marker (org-entry-end-position))))
(when (and repeat (not (= 0 (string-to-number (substring repeat 1)))))
(when (eq org-log-repeat t) (setq org-log-repeat 'state))
(let ((to-state (or (org-entry-get nil "REPEAT_TO_STATE" 'selective)
(and (stringp org-todo-repeat-to-state)
org-todo-repeat-to-state)
(and org-todo-repeat-to-state org-last-state))))
(let ((to-state
(or (org-entry-get nil "REPEAT_TO_STATE" 'selective)
(and (stringp org-todo-repeat-to-state)
org-todo-repeat-to-state)
(and org-todo-repeat-to-state org-last-state))))
(org-todo (cond ((and to-state (member to-state org-todo-keywords-1))
to-state)
((eq interpret 'type) org-last-state)
@ -10899,7 +10910,8 @@ narrowing."
(let ((beg (point)))
(insert ":" drawer ":\n:END:\n")
(org-indent-region beg (point))
(org-flag-region (line-end-position -1) (1- (point)) t 'outline))
(org-flag-region (line-end-position -1)
(1- (point)) t 'outline))
(end-of-line -1)))))
(t
(org-end-of-meta-data org-log-state-notes-insert-after-drawers)
@ -10964,19 +10976,19 @@ EXTRA is additional text that will be inserted into the notes buffer."
(insert (format "# Insert note for %s.
# Finish with C-c C-c, or cancel with C-c C-k.\n\n"
(cl-case org-log-note-purpose
(clock-out "stopped clock")
(done "closed todo item")
(reschedule "rescheduling")
(delschedule "no longer scheduled")
(redeadline "changing deadline")
(deldeadline "removing deadline")
(refile "refiling")
(note "this entry")
(state
(format "state change from \"%s\" to \"%s\""
(or org-log-note-previous-state "")
(or org-log-note-state "")))
(t (error "This should not happen")))))
(clock-out "stopped clock")
(done "closed todo item")
(reschedule "rescheduling")
(delschedule "no longer scheduled")
(redeadline "changing deadline")
(deldeadline "removing deadline")
(refile "refiling")
(note "this entry")
(state
(format "state change from \"%s\" to \"%s\""
(or org-log-note-previous-state "")
(or org-log-note-state "")))
(t (error "This should not happen")))))
(when org-log-note-extra (insert org-log-note-extra))
(setq-local org-finish-function 'org-store-log-note)
(run-hooks 'org-log-buffer-setup-hook)))
@ -11313,9 +11325,9 @@ or a character."
(message msg)
(string-to-number (char-to-string (read-char-exclusive)))))
(progn (message "Priority %c-%c, SPC to remove: "
org-priority-highest org-priority-lowest)
(save-match-data
(setq new (read-char-exclusive)))))))
org-priority-highest org-priority-lowest)
(save-match-data
(setq new (read-char-exclusive)))))))
(when (and (= (upcase org-priority-highest) org-priority-highest)
(= (upcase org-priority-lowest) org-priority-lowest))
(setq new (upcase new)))
@ -12662,12 +12674,12 @@ it will be found. If the drawer does not exist, create it if
FORCE is non-nil, or return nil."
(org-with-wide-buffer
(let ((beg (cond (beg (goto-char beg))
((or (not (featurep 'org-inlinetask))
(org-inlinetask-in-task-p))
(org-back-to-heading-or-point-min t) (point))
(t (org-with-limited-levels
(org-back-to-heading-or-point-min t))
(point)))))
((or (not (featurep 'org-inlinetask))
(org-inlinetask-in-task-p))
(org-back-to-heading-or-point-min t) (point))
(t (org-with-limited-levels
(org-back-to-heading-or-point-min t))
(point)))))
;; Move point to its position according to its positional rules.
(cond ((org-before-first-heading-p)
(while (and (org-at-comment-p) (bolp)) (forward-line)))
@ -14180,8 +14192,8 @@ user."
(when (and (not (string-match "\\(\\`\\|[^+]\\)[012]?[0-9]:[0-9][0-9]\\([ \t\n]\\|$\\)" ans))
(string-match "\\(?:\\(?1:[012]?[0-9]\\)?h\\(?2:[0-5][0-9]\\)\\)\\|\\(?:\\(?1:[012]?[0-9]\\)h\\(?2:[0-5][0-9]\\)?\\)\\>" ans))
(setq hour (if (match-end 1)
(string-to-number (match-string 1 ans))
0)
(string-to-number (match-string 1 ans))
0)
minute (if (match-end 2)
(string-to-number (match-string 2 ans))
0))
@ -17833,7 +17845,7 @@ Use `\\[org-edit-special]' to edit table.el tables")))
"`\\[org-ctrl-c-ctrl-c]' can do nothing useful here"))))))))
(defun org-mode-restart ()
"Restart `org-mode'."
"Restart `org-mode'."
(interactive)
(let ((indent-status (bound-and-true-p org-indent-mode)))
(funcall major-mode)
@ -17949,7 +17961,7 @@ object (e.g., within a comment). In these case, you need to use
`org-open-at-point' directly."
(interactive "i\nP\np")
(let* ((context (if org-return-follows-link (org-element-context)
(org-element-at-point)))
(org-element-at-point)))
(element-type (org-element-type context)))
(cond
;; In a table, call `org-table-next-row'. However, before first