Add faces customization to quote and verse blocks

Patch by Julien Barnier, with modifications by Carsten.
This commit is contained in:
Carsten Dominik 2009-11-18 10:58:00 +01:00
parent 3cdff230dd
commit 8f3c4096a0
3 changed files with 21 additions and 4 deletions

View File

@ -1,5 +1,11 @@
2009-11-18 Carsten Dominik <carsten.dominik@gmail.com> 2009-11-18 Carsten Dominik <carsten.dominik@gmail.com>
* org.el (org-fontify-meta-lines-and-blocks): Apply special faces
for special blocks.
* org-faces.el (org-copy-face): Set lisp indentation.
(org-quote, org-verse): New faces.
* org-agenda.el (org-agenda-remove-date): Remove variable. * org-agenda.el (org-agenda-remove-date): Remove variable.
2009-11-17 Carsten Dominik <carsten.dominik@gmail.com> 2009-11-17 Carsten Dominik <carsten.dominik@gmail.com>

View File

@ -44,6 +44,7 @@
(copy-face old-face new-face) (copy-face old-face new-face)
(if (fboundp 'set-face-doc-string) (if (fboundp 'set-face-doc-string)
(set-face-doc-string new-face docstring))))) (set-face-doc-string new-face docstring)))))
(put 'org-copy-face 'lisp-indent-function 2)
(defgroup org-faces nil (defgroup org-faces nil
"Faces in Org-mode." "Faces in Org-mode."
@ -468,6 +469,11 @@ changes."
:group 'org-faces :group 'org-faces
:version "22.1") :version "22.1")
(org-copy-face 'org-block 'org-quote
"Face for #+BEGIN_QUOTE ... #+END_QUOTE blocks.")
(org-copy-face 'org-block 'org-verse
"Face for #+BEGIN_VERSE ... #+END_VERSE blocks.")
(defface org-clock-overlay ;; copied from secondary-selection (defface org-clock-overlay ;; copied from secondary-selection
(org-compatible-face nil (org-compatible-face nil
'((((class color) (min-colors 88) (background light)) '((((class color) (min-colors 88) (background light))

View File

@ -4540,7 +4540,7 @@ will be prompted for."
(beg1 (line-beginning-position 2)) (beg1 (line-beginning-position 2))
(dc1 (downcase (match-string 2))) (dc1 (downcase (match-string 2)))
(dc3 (downcase (match-string 3))) (dc3 (downcase (match-string 3)))
end end1 quoting) end end1 quoting block-type)
(cond (cond
((member dc1 '("html:" "ascii:" "latex:" "docbook:")) ((member dc1 '("html:" "ascii:" "latex:" "docbook:"))
;; a single line of backend-specific content ;; a single line of backend-specific content
@ -4554,8 +4554,8 @@ will be prompted for."
t) t)
((and (match-end 4) (equal dc3 "begin")) ((and (match-end 4) (equal dc3 "begin"))
;; Truely a block ;; Truely a block
(setq quoting (member (downcase (match-string 5)) (setq block-type (downcase (match-string 5))
org-protecting-blocks)) quoting (member block-type org-protecting-blocks))
(when (re-search-forward (when (re-search-forward
(concat "^[ \t]*#\\+end" (match-string 4) "\\>.*") (concat "^[ \t]*#\\+end" (match-string 4) "\\>.*")
nil t) ;; on purpose, we look further than LIMIT nil t) ;; on purpose, we look further than LIMIT
@ -4568,8 +4568,13 @@ will be prompted for."
'(font-lock-fontified t font-lock-multiline t)) '(font-lock-fontified t font-lock-multiline t))
(add-text-properties beg beg1 '(face org-meta-line)) (add-text-properties beg beg1 '(face org-meta-line))
(add-text-properties end1 end '(face org-meta-line)) (add-text-properties end1 end '(face org-meta-line))
(when quoting (cond
(quoting
(add-text-properties beg1 end1 '(face org-block))) (add-text-properties beg1 end1 '(face org-block)))
((string= block-type "quote")
(add-text-properties beg1 end1 '(face org-quote)))
((string= block-type "verse")
(add-text-properties beg1 end1 '(face org-verse))))
t)) t))
((not (member (char-after beg) '(?\ ?\t))) ((not (member (char-after beg) '(?\ ?\t)))
;; just any other in-buffer setting, but not indented ;; just any other in-buffer setting, but not indented