Commit Graph

5090 Commits

Author SHA1 Message Date
Phil Hudson 83c93e6fed org-capture.el: Give a default value when prompting for a property
* lisp/org-capture.el (org-capture-templates)
(org-capture-fill-template): Enable declaring a default value
when prompting for a property during capture.

* lisp/org.el (org-read-property-value): Add parameter DEFAULT
for an initial/default/suggested property value.

* doc/org-manual.org: Document declaring a default value for a
prompted property during capture.
2020-09-23 14:12:08 +02:00
Roshan Shariff 2f9e1569f0 org.el: Allow transparent background in latex images
* lisp/org.el (org-create-formula-image): When `:background' is set to
"Transparent" in `org-format-latex-options', do not output a
`\pagecolor{...}' command in the generated LaTeX file.  This will
cause dvisvgm, convert, or dvipng (with the `-bg Transparent' option)
to produce png or svg images with a transparent background.

* lisp/org.el (org-preview-latex-process-alist): Add the `-bg
Transparent' command-line option to dvipng, which causes it to produce
a PNG with an alpha channel when the dvi file has no `\background'
special.

TINYCHANGE
2020-09-23 10:59:19 +02:00
Kyle Meyer b64ba64feb Merge branch 'maint' into master 2020-09-20 01:00:10 -04:00
Kyle Meyer 3eccc537cd org.el: Fix regression in handling of empty #+TAGS
* lisp/org.el (org-set-regexps-and-options): Allow an empty #+TAGS
value to override org-tag-alist, as it did before v9.4.
* testing/lisp/test-org.el (test-org/set-regexps-and-options): Add
test.

As of b4e91b7e9 (New function: org-collect-keywords, 2020-04-26), a
"#+TAGS" header can no longer be used to override a value of
org-tag-alist.  This breaks the workflow where a set of tags for most
files is defined via org-file-tags and then, in a particular file, an
empty #+TAGS header is used to ignore org-file-tags and trigger
collecting tags from the buffer instead.  Rework the handling to
restore this behavior.

Reported-by: Allen Li <darkfeline@felesatra.moe>
Ref: https://orgmode.org/list/80y2laly9v.fsf@felesatra.moe
2020-09-20 00:59:09 -04:00
Kyle Meyer 114229da6e org.el: Fix docstring typo
* lisp/org.el (org-show-context-detail): Fix a docstring typo.
2020-09-20 00:58:17 -04:00
Nicolas Goaziou 814d47de14 Merge branch 'maint' into master 2020-09-16 21:39:27 +02:00
Sébastien Miquel 38fbd161e4 Fix meta lines regexp
* lisp/org.el (org-fontify-meta-lines-and-blocks-1): Fix meta lines
regexp to work correctly for lines with only a #.

Replace blank in regexp by (any " \t").

TINYCHANGE
2020-09-16 21:39:06 +02:00
Nicolas Goaziou 10f4902030 Merge branch 'maint' into master 2020-09-15 09:56:15 +02:00
Nicolas Goaziou 7dbd749bf8 Tiny refactoring
* lisp/org.el (org-cycle): Use `org-match-line' instead of
`save-excursion' + `beginning-of-line' + `looking-at'.
2020-09-15 09:55:27 +02:00
Bastien 353a326e4f lisp/org.el: Update version to 9.5-dev
* lisp/org.el: Update version to 9.5-dev.
2020-09-14 15:45:44 +02:00
Bastien 56b8f8c35b lisp/org.el: Bump version to 9.4
* lisp/org.el: Bump version to 9.4.
2020-09-14 15:44:30 +02:00
Marlin Strub b14fb06def org.el: Adapt org-cycle to work with headlines with hidden stars
* lisp/org.el (org-cycle): Use `beginning-of-line' instead of
`move-beginning-of-line' to move point to the beginning of
line (including any invisible characters) such that org-outline-regexp
matches headlines with hidden stars (such as those produced by
[[https://github.com/TonCherAmi/org-starless][org-starless-mode]]).

TINYCHANGE
2020-09-14 15:37:19 +02:00
Bastien Guerry 755367f362 org.el (org-end-of-meta-data): Allow to skip only standard drawers
* lisp/org.el (org-end-of-meta-data): Allow to skip only standard
drawers, i.e. properties and logbook drawers.

* lisp/org-crypt.el (org-at-encrypted-entry-p)
(org-encrypt-entry): Use `org-end-of-meta-data' so that standard
drawers are all skipped, including logbook drawers.

Reported-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
See https://orgmode.org/list/87d02qgj6u.fsf@nicolasgoaziou.fr
and https://debbugs.gnu.org/cgi/bugreport.cgi?bug=43094 for the reason
of the previous fix c93983613d.
2020-09-13 18:36:15 +02:00
Bastien Guerry 8a083514a7 org-faces.el (org-block): Enhance docstring
* lisp/org-faces.el (org-block): Enhance docstring.
* lisp/org.el (org-fontify-meta-lines-and-blocks-1): Clean up some
comments.

See 7769518f3, which was wrong.
2020-09-10 11:19:55 +02:00
Bastien Guerry dcb6eb613a Revert "Use the `org-block' face for every true blocks"
This reverts commit 7769518f3a.
2020-09-10 11:06:12 +02:00
Bastien Guerry 771c66f791 Revert "org.el: Fix `org-add-planning-info'"
This reverts commit 4f49ebb6d6.
2020-09-09 12:06:55 +02:00
Bastien Guerry 7a12e14990 org.el (org-display-outline-path): Fix faces of the message
* lisp/org.el (org-display-outline-path): Set :height as the
default face height, and don't change other face attributes.

See a3576543f for a previous fix, and this discussion:
<https://orgmode.org/list/21ef0e94-e766-455c-a45c-fe30e316c121@Spark>
2020-09-09 09:57:45 +02:00
Bastien Guerry 570bd6ce93 org.el: Fix `org-display-outline-path'
* lisp/org.el (org-display-outline-path): Always remove faces when
setting the outline path to display.

See <https://orgmode.org/list/21ef0e94-e766-455c-a45c-fe30e316c121@Spark>
2020-09-09 09:42:37 +02:00
Bastien Guerry f17d301e17 lisp/org.el (org-forward-heading-same-level): Add a comment
* lisp/org.el (org-forward-heading-same-level): Add a comment adding
a FIXME, in case this change appears to impact Org itself.
2020-09-08 11:25:03 +02:00
D a700fadd72 org.el: Let `org-forward-heading-same-level' check for fully invisible lines
* lisp/org.el (org--line-fully-invisible-p): New function.
(org-forward-heading-same-level): Use it to check whether the line
is fully invisible.

TINYCHANGE

See <https://orgmode.org/list/51b41109-997c-db37-c0ed-44e8d0154cee@posteo.net/>
2020-09-08 11:17:51 +02:00
No Wayman 4f49ebb6d6 org.el: Fix `org-add-planning-info'
* lisp/org.el (org-add-planning-info): * lisp/org.el
(org-add-planning-info): Use `org-time-was-given' and
`org-end-time-was-given' if the variables are bound from an
outside call.

This allows e.g. programmatically passing a time of day to
`org-schedule'.

TINYCHANGE
2020-09-08 10:27:13 +02:00
Bastien 11ef7454ab org.el (org-fixup-indentation): Fix logbook drawers indentation
* lisp/org.el (org-fixup-indentation): Fix logbook drawers
indentation.

Reported-by: Matt Lundin <mdl@imapmail.org>
https://orgmode.org/list/87r1t8sdhd.fsf@fastmail.fm/
2020-09-07 09:17:21 +02:00
Bastien 69a91ba8bc Merge branch 'maint' 2020-09-07 07:32:28 +02:00
Bastien 7769518f3a Use the `org-block' face for every true blocks
* lisp/org-faces.el (org-block): Tiny docstring enhancement.

* lisp/org.el (org-fontify-meta-lines-and-blocks-1): Use the
`org-block' face for every true blocks.

Reported-by: Sébastien Miquel <sebastien.miquel@posteo.eu>
https://orgmode.org/list/42749c98-ddfe-bad4-43a5-1119e24972bd@posteo.eu
2020-09-07 07:31:11 +02:00
Bastien 9f0af69dd2 Skip archived headings when tangling and exporting
* lisp/org.el (org-in-archived-heading-p): New function.

* lisp/ob-exp.el (org-babel-exp-process-buffer):
* lisp/ob-tangle.el (org-babel-tangle-collect-blocks): Use
`org-in-archived-heading-p' to skip archived headings when tangling
and exporting.

* testing/lisp/test-org.el (test-org/in-archived-heading-p): Add
test for `org-in-archived-heading-p'.

Reported-by: flare <gabrielxaviersmith@gmail.com>
See https://orgmode.org/list/877dt9ey2c.fsf@gmail.com/
2020-09-07 06:51:06 +02:00
Bastien 73a78c2518 Revert "org.el (org-add-planning-info): Use caller's `org-time-was-given' value"
This reverts commit c7abcd514a.
2020-09-06 12:01:54 +02:00
Bastien 55d1d32f5e org.el: Tiny docstring fixes
* lisp/org.el (org-keyword-regexp, org-ctrl-k-protect-subtree)
(org-priority-default, org-fast-tag-selection-single-key)
(org--check-org-structure-template-alist)
(org-after-todo-statistics-hook, org-log-note-effective-time)
(org-occur, org-days-to-iso-week, org-ctrl-c-ctrl-c-hook)
(org-ctrl-c-ctrl-c-final-hook, org-ctrl-c-ret, org-mode-restart)
(org-install-agenda-files-menu): Tiny docstring fixes.
2020-09-06 08:14:15 +02:00
Kyle Meyer 799e5dac92 org.el: Silence byte-compiler
* lisp/org.el (org-optimize-window-after-visibility-change): Drop
unused let-binding added in a8e812e60.
2020-09-05 23:39:56 -04:00
Nicholas Vollmer c7abcd514a org.el (org-add-planning-info): Use caller's `org-time-was-given' value
* lisp/org.el (org-add-planning-info): Fix bug by not ignoring the
caller's `org-time-was-given' value.

See <https://orgmode.org/list/87zh6rfvmi.fsf@gmail.com>

TINYCHANGE
2020-09-05 17:54:46 +02:00
Bastien c09518b5f6 org.el (org-read-date-display-live): Enhance docstring
* lisp/org.el (org-read-date-display-live): Document that live
display is only available when `org-read-date-popup-calendar' is
non-nil.

See <https://orgmod.org/list/20200630180259.zj3krk57x5iqmbsj@orion>

Reported-by: Edmund Christian Herenz <eherenz@eso.org>
2020-09-05 17:33:04 +02:00
Bastien 8538654591 Merge branch 'maint' 2020-09-05 11:09:52 +02:00
E.L.K f2d41de3ed Fix bug when building sparse tree: ignore non-buffer tags
* lisp/org.el (org-make-tags-matcher): Add a parameter to make it
optional to include non-buffer tags.
(org-match-sparse-tree): Use the new parameter.

TINYCHANGE
2020-09-05 11:08:32 +02:00
Bastien 42bd67fdf0 Merge branch 'maint' 2020-09-05 08:03:12 +02:00
Bastien ee3c3b5547 org.el: Allow empty subtrees to be folded back
* lisp/org.el (org-cycle-internal-local): Allow empty subtrees to
fold back.

See <https://orgmode.org/list/CA+Yh0SRPgeMUYAD0ds3TZnwpPKq8_mpact-OeKK-rXoQNb-eEg@mail.gmail.com>

Reported-by: Dmitrii Korobeinikov <dim1212k@gmail.com>
2020-09-05 08:01:58 +02:00
Bastien 8a3777e35b org.el: Use `string-match-p' in two functions
* lisp/org.el (org-remove-empty-overlays-at)
(org-cycle-internal-global): Use `string-match-p' as match data
are not used.
2020-09-05 08:00:29 +02:00
Bastien 5beeb094a2 Merge branch 'maint' 2020-09-05 07:30:47 +02:00
Dmitrii Korobeinikov a8e812e601 org.el: Restore the scroll position after cycling
* lisp/org.el (org-scroll-position-to-restore): New variable.
(org-optimize-window-after-visibility-change): Use it to restore
the scroll position when needed.

TINYCHANGE

See <https://orgmode.org/list/CA+Yh0STTE+Zx-zct3qy7eyqTovogr_fqwwOCLx9z3da7_hFRnw@mail.gmail.com>
2020-09-05 07:28:20 +02:00
Bastien 3c524c5fd5 org.el: Fix the "version" keyword in the header
* lisp/org.el: Fix the "version" keyword in the header.
2020-09-05 07:28:20 +02:00
Bastien Guerry a3576543f5 org.el: Fix `org-display-outline-path'
* lisp/org.el (org-display-outline-path): Always remove faces when
setting the outline path to display.

See <https://orgmode.org/list/21ef0e94-e766-455c-a45c-fe30e316c121@Spark>
2020-09-04 10:03:48 +02:00
Kyle Meyer cdfc404bed Merge branch 'maint' into master 2020-08-23 22:39:44 -04:00
Allen Li 76da93aa86 org.el: Don't exclude local tags that are also inherited
This fixes a bug in set-tags-command excluding a tag that is both set
locally and inherited from the initial minibuffer input by modifying
org-get-tags to prefer keeping the locally set tag over the inherited
tag, as this behavior is more intuitive for org-get-tags anyway.

* lisp/org.el (org-get-tags): Keep local tags over inherited.
* testing/lisp/test-org.el (test-org/set-tags-command): Add test.
2020-08-23 22:38:20 -04:00
Kyle Meyer 5417e384eb Merge branch 'maint' 2020-08-10 20:38:18 -04:00
Nicholas Vollmer ab9b14a80f org.el: (org-get-cursor-date): Fix regular expression
* lisp/org.el (org-get-cursor-date): Fix regular expression.

Previous regular expression assumed the time grid string will have two
digits in the hour portion of the time string.  However, the time grid
string does not always have two digits.  For example:

" 8:00......"
2020-08-10 20:35:36 -04:00
Kévin Le Gouguec 81e2948472 Fix org-fontify-whole-*-line by setting face extension (bug#42184)
* lisp/org-faces.el (org-block): Set background extension beyond
end-of-line.
* lisp/org-compat.el (org--set-faces-extend): New function to
temporarily (re)set :extend for Emacs≥27.
* lisp/org.el (org-mode): Call it to set the extend attribute of
relevant faces to the correct value.
2020-08-10 20:22:25 -04:00
Nicolas Goaziou 270aa438e2 Fix `org-show-children' error when called before first heading
* lisp/org.el (org-show-children): Fix `org-show-children' error when
called before first heading.
2020-07-27 19:22:46 +02:00
Kyle Meyer 82b496c0e9 Merge branch 'maint' 2020-07-22 23:33:07 -04:00
Leo Vivier c9abb4c29a org: Remove useless example in docstring
* lisp/org.el (org-find-olp): Remove useless example in docstring.

TINYCHANGE
2020-07-22 23:30:58 -04:00
Marco Wahl 7069dc3f32 org: New function to hide the body up to the first child
* lisp/org.el (org-hide-entry): New function. Counterpart to org-show-entry.
2020-07-21 12:14:10 +02:00
Nicolas Goaziou 91b2398293 Do not fill paragraph before region
* lisp/org.el (org-fill-paragraph): Do not fill paragraph before
region.
* testing/lisp/test-org.el (test-org/fill-paragraph): Add test.

Reported-by: Matt Lundin <mdl@imapmail.org>
<http://lists.gnu.org/r/emacs-orgmode/2020-07/msg00164.html>
2020-07-14 11:46:38 +02:00
Nick Dokos bc4fa8a008 org: add property names from #+PROPERTY keywords to completion list
* lisp/org.el (org-buffer-property-keys): Enhance the completion list
with property names from #+PROPERTY keywords, not just property
drawers. Also, for each xxx_ALL property, make sure that the bare xxx
property is added too.

* testing/lisp/test-org.el (test-org/buffer-property-keys): Add test
cases for #+PROPERTY keywords and also for xxx_ALL --> xxx properties.

See https://emacs.stackexchange.com/questions/59448/ for details.

Modified-by: Kyle Meyer <kyle@kyleam.com>
  Cosmetic tweaks to _ALL stripping.
2020-07-07 23:37:54 -04:00