summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyle Meyer <kyle@kyleam.com>2020-08-10 20:38:18 -0400
committerKyle Meyer <kyle@kyleam.com>2020-08-10 20:38:18 -0400
commit5417e384ebab58e560fe6a80eee7bc58b1ef8645 (patch)
treeaa27e74c99f5122daaf9270ad7cfb52b2d23dca2
parentea946353aaf0a2e5022ebe6c7b012c70833ec0ba (diff)
parentab9b14a80fd9ab68a7722235a141dc5aee0489a5 (diff)
downloadorg-mode-5417e384ebab58e560fe6a80eee7bc58b1ef8645.tar.gz
Merge branch 'maint'
-rw-r--r--lisp/org-compat.el8
-rw-r--r--lisp/org-faces.el3
-rw-r--r--lisp/org.el8
3 files changed, 16 insertions, 3 deletions
diff --git a/lisp/org-compat.el b/lisp/org-compat.el
index 5953f89..4cd7b81 100644
--- a/lisp/org-compat.el
+++ b/lisp/org-compat.el
@@ -109,6 +109,14 @@ is nil)."
(newline-and-indent))
(defalias 'org-newline-and-indent #'newline-and-indent))
+(defun org--set-faces-extend (faces extend-p)
+ "Set the :extend attribute of FACES to EXTEND-P.
+
+This is a no-op for Emacs versions lower than 27, since face
+extension beyond end of line was not controllable."
+ (when (fboundp 'set-face-extend)
+ (mapc (lambda (f) (set-face-extend f extend-p)) faces)))
+
;;; Emacs < 26.1 compatibility
diff --git a/lisp/org-faces.el b/lisp/org-faces.el
index d78b606..4e4dc68 100644
--- a/lisp/org-faces.el
+++ b/lisp/org-faces.el
@@ -408,7 +408,8 @@ follows a #+DATE:, #+AUTHOR: or #+EMAIL: keyword."
"Face for #+TITLE:, #+AUTHOR:, #+EMAIL: and #+DATE: keywords."
:group 'org-faces)
-(defface org-block '((t :inherit shadow))
+(defface org-block `((t :inherit shadow
+ ,@(and (>= emacs-major-version 27) '(:extend t))))
"Face text in #+begin ... #+end blocks.
For source-blocks `org-src-block-faces' takes precedence."
:group 'org-faces
diff --git a/lisp/org.el b/lisp/org.el
index ee8be25..fb95590 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -4904,7 +4904,11 @@ The following commands are available:
;; Try to set `org-hide' face correctly.
(let ((foreground (org-find-invisible-foreground)))
(when foreground
- (set-face-foreground 'org-hide foreground))))
+ (set-face-foreground 'org-hide foreground)))
+ ;; Set face extension as requested.
+ (org--set-faces-extend '(org-block-begin-line org-block-end-line)
+ org-fontify-whole-block-delimiter-line)
+ (org--set-faces-extend org-level-faces org-fontify-whole-heading-line))
;; Update `customize-package-emacs-version-alist'
(add-to-list 'customize-package-emacs-version-alist
@@ -18731,7 +18735,7 @@ earliest time on the cursor date that Org treats as that date
(let (date day defd tp hod mod)
(when with-time
(setq tp (get-text-property (point) 'time))
- (when (and tp (string-match "\\([0-9][0-9]\\):\\([0-9][0-9]\\)" tp))
+ (when (and tp (string-match "\\([0-2]?[0-9]\\):\\([0-5][0-9]\\)" tp))
(setq hod (string-to-number (match-string 1 tp))
mod (string-to-number (match-string 2 tp))))
(or tp (let ((now (decode-time)))