[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Orgmode] [PATCH] Add faces customization to quote and verse blocks
From: |
Julien Barnier |
Subject: |
[Orgmode] [PATCH] Add faces customization to quote and verse blocks |
Date: |
Thu, 12 Nov 2009 16:41:38 +0100 |
User-agent: |
Gnus/5.110009 (No Gnus v0.9) Emacs/23.1.50 (gnu/linux) |
Hi,
Here is a small patch that allows to add custom faces to QUOTE and VERSE
blocks. As I'm quite new to emacs lisp and as it is the first time I
submit a patch to a project, please feel free to correct or reject it if
its form or quality is not sufficient.
Thanks a lot for all your work on org-mode !
Julien
---
lisp/org-faces.el | 28 ++++++++++++++++++++++++++++
lisp/org.el | 15 +++++++++++----
2 files changed, 39 insertions(+), 4 deletions(-)
diff --git a/lisp/org-faces.el b/lisp/org-faces.el
index 4543d38..fbac871 100644
--- a/lisp/org-faces.el
+++ b/lisp/org-faces.el
@@ -468,6 +468,34 @@ changes."
:group 'org-faces
:version "22.1")
+(defface org-quote
+ (org-compatible-face nil
+ '((((class color grayscale) (min-colors 88) (background light))
+ (:foreground "grey50" :slant italic))
+ (((class color grayscale) (min-colors 88) (background dark))
+ (:foreground "grey70" :slant italic))
+ (((class color) (min-colors 8) (background light))
+ (:foreground "green" :slant italic))
+ (((class color) (min-colors 8) (background dark))
+ (:foreground "yellow" :slant italic))))
+ "Face for #+BEGIN_QUOTE ... #+END_QUOTE blocks."
+ :group 'org-faces
+ :version "22.1")
+
+(defface org-verse
+ (org-compatible-face nil
+ '((((class color grayscale) (min-colors 88) (background light))
+ (:foreground "grey50" :slant italic))
+ (((class color grayscale) (min-colors 88) (background dark))
+ (:foreground "grey70" :slant italic))
+ (((class color) (min-colors 8) (background light))
+ (:foreground "green" :slant italic))
+ (((class color) (min-colors 8) (background dark))
+ (:foreground "yellow" :slant italic))))
+ "Face for #+BEGIN_VERSE ... #+END_VERSE blocks."
+ :group 'org-faces
+ :version "22.1")
+
(defface org-clock-overlay ;; copied from secondary-selection
(org-compatible-face nil
'((((class color) (min-colors 88) (background light))
diff --git a/lisp/org.el b/lisp/org.el
index 5562d8d..adabfa8 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -4518,7 +4518,7 @@ will be prompted for."
(beg1 (line-beginning-position 2))
(dc1 (downcase (match-string 2)))
(dc3 (downcase (match-string 3)))
- end end1 quoting)
+ end end1 quoting block-type quote-block verse-block)
(cond
((member dc1 '("html:" "ascii:" "latex:" "docbook:"))
;; a single line of backend-specific content
@@ -4532,8 +4532,10 @@ will be prompted for."
t)
((and (match-end 4) (equal dc3 "begin"))
;; Truely a block
- (setq quoting (member (downcase (match-string 5))
- org-protecting-blocks))
+ (setq block-type (downcase (match-string 5))
+ quoting (member block-type org-protecting-blocks)
+ quote-block (equal block-type "quote")
+ verse-block (equal block-type "verse"))
(when (re-search-forward
(concat "^[ \t]*#\\+end" (match-string 4) "\\>.*")
nil t) ;; on purpose, we look further than LIMIT
@@ -4546,8 +4548,13 @@ will be prompted for."
'(font-lock-fontified t font-lock-multiline t))
(add-text-properties beg beg1 '(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)))
+ (quote-block
+ (add-text-properties beg1 end1 '(face org-quote)))
+ (verse-block
+ (add-text-properties beg1 end1 '(face org-verse))))
t))
((not (member (char-after beg) '(?\ ?\t)))
;; just any other in-buffer setting, but not indented
--
1.6.5.2
- [Orgmode] [PATCH] Add faces customization to quote and verse blocks,
Julien Barnier <=