all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Highlighting current header and its contents
@ 2010-03-21 15:51 Tom
  2010-03-21 17:59 ` Dan Davison
  0 siblings, 1 reply; 3+ messages in thread
From: Tom @ 2010-03-21 15:51 UTC (permalink / raw)
  To: emacs-orgmode

One of my main gripes with orgmode is often I cannot make out
clearly when the text content of an opened header ends and the
next header begins, because there is no apparent visual
indication.

Of course, I can add empty lines manually to the end of the
content, but this solution is not really satisfying (I don't need
empty lines there, I add them only to see better where the
content ends).

I'm still thinking of a proper solution for this problem, but I'm
posting one of my attempts for the time being which some may find
useful. It highlights the header the cursor is in and its contents with a
different background color:


(make-variable-buffer-local 'my-org-highlight-overlay)

(add-hook 'post-command-hook 'my-org-highlight)


(defun my-org-highlight ()
  (when (and (eq major-mode 'org-mode)
             (sit-for 0.1))
    (unless my-org-highlight-overlay
      (setq my-org-highlight-overlay (make-overlay 0 0))
      (overlay-put my-org-highlight-overlay 'face '(:background "azure")))

    (let ((header (save-excursion
                    (beginning-of-line)
                    (looking-at outline-regexp))))

      (move-overlay my-org-highlight-overlay
                    (save-excursion
                      (if header
                          (beginning-of-line)
                        (outline-previous-visible-heading 1))
                      (point))
                    (save-excursion
                      (outline-next-visible-heading 1)
                      (point))))))

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-03-21 18:22 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-21 15:51 Highlighting current header and its contents Tom
2010-03-21 17:59 ` Dan Davison
2010-03-21 18:22   ` Tom

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.