emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Orgmode] Fontification of blocks


From: Sébastien Vauban
Subject: [Orgmode] Fontification of blocks
Date: Fri, 10 Dec 2010 10:02:07 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (windows-nt)

Hi,

In order to make the blocks stand out more clearly in the mix of prose, code
and table results of many Babel Org files, I've added 2 new faces:

- org-block-begin-line
- org-block-end-line

These apply to the line just before and after the block's body:

#+srcname: top-10-dossiers-with-many-prestations
#+begin_src sql                                     <<< org-block-begin-line
SELECT TOP 10 prsPfiID_fk, COUNT(*) AS '# Prestations'
FROM prestations
GROUP BY prsPfiID_fk
ORDER BY COUNT(*) DESC
#+end_src                                             <<< org-block-end-line

Not only for =src=, but also for =verse=, =quote=, etc.

This patch takes care of the correct fontification, both in native style, and
in the "no native fontification" style:

diff --git a/lisp/org.el b/lisp/org.el
index e03e9ca..f57c09b 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -5137,8 +5137,8 @@ will be prompted for."
              (add-text-properties
               beg end
               '(font-lock-fontified t font-lock-multiline t))
-             (add-text-properties beg beg1 '(face org-meta-line))
-             (add-text-properties end1 (+ end 1) '(face org-meta-line))
+             (add-text-properties beg beg1 '(face org-block-begin-line))
+             (add-text-properties end1 (+ end 1) '(face org-block-end-line))
                                        ; for end_src
              (cond
               ((and lang org-src-fontify-natively)
@@ -5149,9 +5149,9 @@ will be prompted for."
                                        ; end of source block
               ((not org-fontify-quote-and-verse-blocks))
               ((string= block-type "quote")
-               (add-text-properties beg1 end1 '(face org-quote)))
+               (add-text-properties beg1 (1+ end1) '(face org-quote)))
               ((string= block-type "verse")
-               (add-text-properties beg1 end1 '(face org-verse))))
+               (add-text-properties beg1 (1+ end1) '(face org-verse))))
              t))
           ((member dc1 '("title:" "author:" "email:" "date:"))
            (add-text-properties
@@ -5167,7 +5167,7 @@ will be prompted for."
           ((not (member (char-after beg) '(?\  ?\t)))
            ;; just any other in-buffer setting, but not indented
            (add-text-properties
-            beg (match-end 0)
+            beg (1+ (match-end 0))
             '(font-lock-fontified t face org-meta-line))
            t)
           ((or (member dc1 '("begin:" "end:" "caption:" "label:"
Best regards,
  Seb

-- 
Sébastien Vauban


reply via email to

[Prev in Thread] Current Thread [Next in Thread]