Extraneous content (e.g. blank lines) in the PROPERTIES drawer
cause =org-entry-get= to return nil without indication of any problem.
Desired behavior: =org-entry-get= should be forgiving.
It should ignore blank PROPERTIES lines, or any line with invalid syntax.
A message to the *Warnings* buffer might be appropriate.
Example:
In an org-mode buffer, create an heading with a PROPERTIES drawer.
Include a =:CREATED:= entry in PROPERTIES, but also include a blank line,
either above or below the PROPERTIES line. Then execute this function:
(org-entry-get (point) "CREATED")
The function will return nil instead of the expected value.
Emacs : GNU Emacs 29.1 (build 1, aarch64-apple-darwin22.5.0, Carbon Version 169 AppKit 2299.6)
of 2023-08-08
Package: Org mode version 9.7-pre (9.7-pre-n/a-g093879
@ /Users/jmay/.emacs.d/elpaca/builds/org/)
current state:
==============
(setq
org-link-elisp-confirm-function 'yes-or-no-p
org-directory "/Users/jmay/Library/CloudStorage/Dropbox/Documents/Notes"
org-after-todo-state-change-hook '(org-checklist)
org-bibtex-headline-format-function 'org-bibtex-headline-format-default
org-download-file-format-function 'org-download-file-format-default
org-log-into-drawer t
org-startup-folded 'content
org-agenda-files '("/Users/jmay/Library/CloudStorage/Dropbox/Documents/Notes/journal/2023.org"
"/Users/jmay/Dropbox/Documents/Notes/00-todo.org"
"/Users/jmay/Dropbox/Documents/Notes/rpg/ccs-combat-mechanics.org"
"/Users/jmay/Dropbox/Documents/Notes/rpg/ashkarth/00-TO-BE-FILED.org"
"/Users/jmay/Dropbox/Documents/Notes/emacs-todo.org"
"/Users/jmay/Dropbox/Documents/Notes/projects/schoolistry_journal.org"
"/Users/jmay/Dropbox/Documents/Notes/journal/2022.org")
org-journal-dir "/Users/jmay/Library/CloudStorage/Dropbox/Documents/Notes/journal/"
org-journal-date-format "%Y-%m-%d %a"
org-capture-templates '(("t" "TODO" entry
(file+headline "~/Dropbox/Documents/Notes/00-todo.org" "Tasks")
"* TODO %?\n %i\n %a")
("e" "Emacs TODO" entry
(file+headline "~/Dropbox/Documents/Notes/emacs-todo.org" "Emacs TODO")
"* TODO %?\n %i\n")
("j" "Journal" entry (file+olp+datetree ("~/Notes/journal.org") "* %?\n%i\n")
("s" "Schoolistry Journal" entry
(file+olp+datetree
"~/Dropbox/Documents/Notes/projects/schoolistry-journal.org")
"* %? :schoolistry:\n%i\n")
)
)
org-roam-node-display-template "${hierarchy:20} ${title:60} ${tags:20} ${backlinkscount:6}"
org-persist-after-read-hook '(org-element--cache-persist-after-read)
org-refile-targets '((nil :maxlevel . 3) (org-agenda-files :maxlevel . 2))
org-export-before-parsing-hook '(org-attach-expand-links)
org-cycle-tab-first-hook '(org-babel-hide-result-toggle-maybe org-babel-header-arg-expand)
org-download-method 'attach
org-roam-find-file-hook '(org-roam-buffer--setup-redisplay-h org-roam--register-completion-functions-h
org-roam--replace-roam-links-on-save-h
org-roam-db-autosync--setup-update-on-save-h)
org-refile-use-outline-path 'file
org-archive-hook '(org-attach-archive-delete-maybe)
org-odt-format-inlinetask-function 'org-odt-format-inlinetask-default-function
org-font-lock-hook '(org-inlinetask-fontify)
org-ascii-format-drawer-function #[771 "\207" [] 4 "\n\n(fn NAME CONTENTS WIDTH)"]
org-cycle-hook '(org-inlinetask-hide-tasks org-cycle-hide-archived-subtrees org-cycle-show-empty-lines
org-cycle-optimize-window-after-visibility-change org-cycle-display-inline-images)
org-persist-before-read-hook '(org-element--cache-persist-before-read)
org-image-actual-width '(300)
org-mode-hook '(#[0 "\205\301 \205\302\303\301 !\304P!\305!\205\306!\262\207"
[org-ctags-enabled-p buffer-file-name expand-file-name file-name-directory "/TAGS"
file-exists-p visit-tags-table]
3]
#[0
"\305\306 >\203\307\n\310\311#\210\307\312\313#\210\307\314\315#\210\306 >\203,\307\n\316\317#\210\307\n\320\321#\210\322 >\203>\307\323\324#\210\307\325\324#\210\326 >\203P\307\n\327\317#\210\307\n\330\321#\210\331 >\203_\332\311\f\333BC\334#\210\335 >\203k\332\311\336\334#\210\337 >\203w\332\311\340\334#\210\341\342\343\344#\207"
[org-mouse-context-menu-function
org-mouse-features
org-mouse-map
org-mode-map
org-outline-regexp
org-mouse-context-menu
context-menu
org-defkey
[mouse-3]
nil
[mouse-3]
org-mouse-show-context-menu
[down-mouse-1]
org-mouse-down-mouse
[C-drag-mouse-1]
org-mouse-move-tree
[C-down-mouse-1]
org-mouse-move-tree-start
yank-link
[S-mouse-2]
org-mouse-yank-link
[drag-mouse-3]
move-tree
[drag-mouse-3]
[down-mouse-3]
activate-stars
font-lock-add-keywords
(0
`(face org-link mouse-face highlight keymap ,org-mouse-map)
'prepend)
t
activate-bullets
(("^[ ]*\\([-+*]\\|[0-9]+[.)]\\) +"
(1
`(face org-link keymap ,org-mouse-map mouse-face highlight)
'prepend)
)
)
activate-checkboxes
(("^[ ]*\\(?:[-+*]\\|[0-9]+[.)]\\)[ ]+\\(?:\\[@\\(?:start:\\)?[0-9]+\\][ ]*\\)?\\(\\[[- X]\\]\\)"
(1
`(face nil keymap ,org-mouse-map mouse-face highlight)
prepend)
)
)
advice-add org-open-at-point :around org--mouse-open-at-point]
4]
er/add-org-mode-expansions org-superstar-mode (closure (t) nil (org-autolist-mode))
org-tempo-setup reveal-mode org-indent-mode
#[0 "\300\301\302\303\304$\207"
[add-hook change-major-mode-hook org-fold-show-all append local] 5]
#[0 "\300\301\302\303\304$\207"
[add-hook change-major-mode-hook org-babel-show-result-all append local] 5]
org-babel-result-hide-spec org-babel-hide-all-hashes
#[0 "\301\211\207" [imenu-create-index-function org-imenu-get-tree] 2])
org-babel-load-languages '((emacs-lisp . t) (sql . t) (shell . t) (restclient . t))
org-mairix-gnus-select-display-group-function 'org-mairix-gnus-select-display-group-function-gg
org-roam-ref-annotation-function 'org-roam-ref-read--annotation
org-roam-directory "/Users/jmay/Library/CloudStorage/Dropbox/Documents/Notes"
org-journal-after-entry-create-hook '(my/org-insert-entry-id-and-timestamp)
org-latex-format-drawer-function #[514 "\207" [] 3 "\n\n(fn _ CONTENTS)"]
org-roam-db-node-include-function #[0 "\300\207" [t] 1]
org-download-abbreviate-filename-function 'file-relative-name
org-latex-format-headline-function 'org-latex-format-headline-default-function
org-confirm-shell-link-function 'yes-or-no-p
org-reveal-start-hook '(org-decrypt-entry)
org-download-annotate-function 'org-download-annotate-default
org-html-format-drawer-function #[514 "\207" [] 3 "\n\n(fn NAME CONTENTS)"]
outline-isearch-open-invisible-function 'outline-isearch-open-invisible
org-checklist-export-function 'org-export-as-ascii
org-agenda-sorting-strategy '((agenda habit-down time-up priority-down category-keep)
(todo priority-down category-down) (tags priority-down category-keep)
(search category-keep))
org-startup-indented t
org-fold-catch-invisible-edits 'show-and-error
org-odt-format-headline-function 'org-odt-format-headline-default-function
org-use-speed-commands t
org-agenda-mode-hook '(#[0
"\302\303 \304\305#\210\303 \306\307#\210\303 \310\311#\210\303 \312\313#\210\303 \314\315#\207"
[org-mouse-context-menu-function
org-agenda-mode-map
org-mouse-agenda-context-menu
org-defkey
[mouse-3]
org-mouse-show-context-menu
[down-mouse-3]
org-mouse-move-tree-start
[C-mouse-4]
org-agenda-earlier
[C-mouse-5]
org-agenda-later
[drag-mouse-3]
#[257
"\300!\211\301\267\202\302\303!\207\304\303!\207\305\207"
[org-mouse-get-gesture
#s(hash-table
size
2
test
eq
rehash-size
1.5
rehash-threshold
0.8125
purecopy
t
data
(:left 9 :right 13)
)
org-agenda-earlier 1 org-agenda-later nil]
4 "\n\n(fn EVENT)" "e"]
]
4]
)
org-roam-capture-preface-hook '(org-roam-dailies--override-capture-time-h
org-roam-capture--try-capture-to-ref-h)
org-agenda-before-write-hook '(org-agenda-add-entry-text)
org-capture-prepare-finalize-hook '(org-roam-capture--install-finalize-h)
org-src-preserve-indentation t
org-archive-file-header-format nil
org-roam-preview-function 'org-roam-preview-default-function
org-src-mode-hook '(org-src-babel-configure-edit-buffer org-src-mode-configure-edit-buffer)
org-roam-db-autosync-mode t
org-confirm-elisp-link-function 'yes-or-no-p
org-cycle-separator-lines 0
org-superstar-headline-bullets-list '("✱" "✖" "✶" "✷" "✚" "◆" "▶" "○")
org-log-buffer-setup-hook '(org-roam-log--setup)
org-safe-remote-resources '("\\`https://fniessen\\.github\\.io/org-html-themes/org/theme-readtheorg\\.setup\\'")
org-hide-leading-stars t
org-id-link-to-org-use-id t
org-roam-capture-new-node-hook '(org-roam-capture--insert-captured-ref-h org-roam--insert-timestamp)
org-support-shift-select t
org-structure-template-alist '(("el" . "src emacs-lisp") ("a" . "export ascii") ("c" . "center")
("C" . "comment") ("e" . "example") ("E" . "export")
("h" . "export html") ("l" . "export latex") ("q" . "quote")
("s" . "src") ("v" . "verse"))
org-speed-command-hook '(org-speed-command-activate org-babel-speed-command-activate)
org-html-format-inlinetask-function 'org-html-format-inlinetask-default-function
org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default
org-journal-mode-hook '(turn-on-visual-line-mode org-journal-default-enable-encryption)
org-priority-default 67
org-journal-time-format ""
org-odt-format-drawer-function #[514 "\207" [] 3 "\n\n(fn NAME CONTENTS)"]
org-confirm-babel-evaluate nil
org-fold-core-isearch-open-function 'org-fold-core--isearch-reveal
org-export-with-smart-quotes t
org-journal-created-property-timestamp-format "%Y-%m-%d"
org-latex-format-inlinetask-function 'org-latex-format-inlinetask-default-function
org-persist-before-write-hook '(org-element--cache-persist-before-write)
org-tab-first-hook '(org-babel-hide-result-toggle-maybe org-babel-header-arg-expand)
org-texinfo-format-headline-function 'org-texinfo-format-headline-default-function
org-link-shell-confirm-function 'yes-or-no-p
org-babel-pre-tangle-hook '(save-buffer)
org-journal-file-type 'monthly
org-roam-completion-everywhere t
org-agenda-loop-over-headlines-in-active-region nil
org-attach-id-dir "/Users/jmay/Library/CloudStorage/Dropbox/Documents/Notes/attachments"
org-mairix-display-hook 'org-mairix-gnus-display-results
org-fold-reveal-start-hook '(org-decrypt-entry)
org-occur-hook '(org-first-headline-recenter)
org-roam-log-setup-hook '(org-roam--register-completion-functions-h)
org-metadown-hook '(org-babel-pop-to-session-maybe)
org-roam-node-annotation-function 'org-roam-node-read--annotation
org-link-parameters '(("mairix" :follow org-mairix-open :store org-mairix-store-gnus-link)
("cite" :follow org-bibtex-goto-citation)
("eww" :follow org-eww-open :store org-eww-store-link)
("rmail" :follow org-rmail-open :store org-rmail-store-link)
("mhe" :follow org-mhe-open :store org-mhe-store-link)
("irc" :follow org-irc-visit :store org-irc-store-link :export org-irc-export)
("info" :follow org-info-open :export org-info-export :store org-info-store-link
:insert-description org-info-description-as-command)
("gnus" :follow org-gnus-open :store org-gnus-store-link)
("docview" :follow org-docview-open :export org-docview-export :store
org-docview-store-link)
("bibtex" :follow org-bibtex-open :store org-bibtex-store-link)
("bbdb" :follow org-bbdb-open :export org-bbdb-export :complete
org-bbdb-complete-link :store org-bbdb-store-link)
("w3m" :store org-w3m-store-link)
("doi" :follow org-link-doi-open :export org-link-doi-export)
("message" :follow org-mac-link-mail-open)
("x-devonthink-item" :follow org-mac-link-devonthink-item-open)
("mac-evernote" :follow org-mac-link-evernote-note-open)
("mac-outlook" :follow org-mac-link-outlook-message-open)
("acrobat" :follow org-mac-link-acrobat-open)
("skim" :follow org-mac-link-skim-open)
("addressbook" :follow org-mac-link-addressbook-item-open)
("x-together-item" :follow org-mac-link-together-item-open)
("roam" :follow org-roam-link-follow-link)
("attachment" :follow org-attach-follow :complete org-attach-complete-link)
("id" :follow org-roam-id-open :complete org-id-complete-link) ("file+sys")
("file+emacs") ("shell" :follow org-link--open-shell)
("news" :follow
#[514 "\301\300\302Q\"\207" ["news" browse-url ":"] 6 "\n\n(fn URL ARG)"])
("mailto" :follow
#[514 "\301\300\302Q\"\207" ["mailto" browse-url ":"] 6 "\n\n(fn URL ARG)"])
("https" :follow
#[514 "\301\300\302Q\"\207" ["https" browse-url ":"] 6 "\n\n(fn URL ARG)"])
("http" :follow
#[514 "\301\300\302Q\"\207" ["http" browse-url ":"] 6 "\n\n(fn URL ARG)"])
("ftp" :follow
#[514 "\301\300\302Q\"\207" ["ftp" browse-url ":"] 6 "\n\n(fn URL ARG)"])
("help" :follow org-link--open-help :store org-link--store-help)
("file" :complete org-link-complete-file) ("elisp" :follow org-link--open-elisp))
org-journal-prefix-key "C-c y"
org-roam-ui-browser-function 'browse-url
org-html-format-headline-function 'org-html-format-headline-default-function
org-roam-capture-templates '(("d" "default Notes" plain "%?" :target
(file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n")
:unnarrowed t)
("g" "gaming /rpg" plain "%?" :target
(file+head "rpg/%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n")
:unnarrowed t)
("a" "ashkarth /rpg/ashkarth" plain "%?" :target
(file+head "rpg/ashkarth/%<%Y%m%d%H%M%S>-${slug}.org"
"#+title: ${title}\n#+filetags: :ashkarth:\n")
:unnarrowed t)
("t" "thylea /rpg/odyssey" plain "%?" :target
(file+head "rpg/odyssey/%<%Y%m%d%H%M%S>-${slug}.org"
"#+title: ${title}\n#+filetags: :thylea:\n")
:unnarrowed t)
("m" "milliard /rpg/milliard" plain "%?" :target
(file+head "rpg/milliard/%<%Y%m%d%H%M%S>-${slug}.org"
"#+title: ${title}\n#+filetags: :milliard:\n")
:unnarrowed t)
("p" "projects /projects" plain "%?" :target
(file+head "projects/${slug}.org"
"#+title: ${title}\n#+filetags: :project:\n")
:unnarrowed t)
)
org-metaup-hook '(org-babel-load-in-session-maybe)
org-refile-allow-creating-parent-nodes 'confirm
org-blank-before-new-entry '((heading) (plain-list-item))
org-imenu-depth 5
org-download-link-format-function 'org-download-link-format-function-default
org-outline-path-complete-in-steps nil
org-special-ctrl-a/e t
org-tab-before-tab-emulation-hook '(org-tempo-complete-tag)
org-reverse-note-order t
org-texinfo-format-inlinetask-function 'org-texinfo-format-inlinetask-default-function
org-roam-indirect-buffer-hook '(org-roam--register-completion-functions-h)
org-id-locations-file-relative t
org-expiry-handler-function 'org-toggle-archive-tag
org-journal-file-format "%Y-%m.org"
org-texinfo-format-drawer-function #[514 "\207" [] 3 "\n\n(fn NAME CONTENTS)"]
)