From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wanrong Lin Subject: Re: Bug: Invalid face reference Date: Fri, 29 Feb 2008 13:48:14 -0500 Message-ID: <47C8536E.5000206@gmail.com> References: <47C5F369.10206@gmail.com> <87wsop6f4p.fsf@bzg.ath.cx> <47C617B0.90801@gmail.com> <47C6E374.2050401@gmail.com> <47C83EB8.50302@gmail.com> <47C851EC.7000500@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JVAHP-000518-G9 for emacs-orgmode@gnu.org; Fri, 29 Feb 2008 13:48:23 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JVAHO-00050H-L2 for emacs-orgmode@gnu.org; Fri, 29 Feb 2008 13:48:22 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JVAHO-000500-Di for emacs-orgmode@gnu.org; Fri, 29 Feb 2008 13:48:22 -0500 Received: from hs-out-0708.google.com ([64.233.178.244]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1JVAHN-00048w-Kr for emacs-orgmode@gnu.org; Fri, 29 Feb 2008 13:48:21 -0500 Received: by hs-out-0708.google.com with SMTP id j58so3022164hsj.10 for ; Fri, 29 Feb 2008 10:48:21 -0800 (PST) In-Reply-To: <47C851EC.7000500@gmail.com> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org Cc: Carsten Dominik Also, I found the following htmlize workaound in org.el, so seems the workround is already built-in in org-mode. Hopefully with the bug fix this can be removed. ----- ;; Fix a bug in htmlize where there are text properties (face nil) (eval-after-load "htmlize" '(progn (defadvice htmlize-faces-in-buffer (after org-no-nil-faces activate) "Make sure there are no nil faces" (setq ad-return-value (delq nil ad-return-value))))) Wanrong Lin wrote: > Found the bug and fixed it as following (see the comment line marked > with ) > ------------- > (defun org-agenda-align-tags (&optional line) > "Align all tags in agenda items to `org-agenda-tags-column'." > (let ((inhibit-read-only t) l c) > (save-excursion > (goto-char (if line (point-at-bol) (point-min))) > (while (re-search-forward (org-re "\\([ > \t]+\\)\\(:[[:alnum:]_@:]+:\\)[ \t]*$") > (if line (point-at-eol) nil) t) > (add-text-properties > (match-beginning 2) (match-end 2) > ;; : bug fix against 5.22a > (list 'face (delq nil (list 'org-tag (get-text-property > (match-beginning 2) 'face))))) > (setq l (- (match-end 2) (match-beginning 2)) > c (if (< org-agenda-tags-column 0) > (- (abs org-agenda-tags-column) l) > org-agenda-tags-column)) > (delete-region (match-beginning 1) (match-end 1)) > (goto-char (match-beginning 1)) > (insert (org-add-props > (make-string (max 1 (- c (current-column))) ?\ ) > (text-properties-at (point)))))))) > > > Wanrong Lin wrote: >> More update: >> >> In a tag search result buffer, I move the cursor to a tag, and eval >> (get-text-property (point) 'face), and I get: (org-tag nil). So this >> "nil" is causing the problem, but I don't know where it is sneaked in. >> >> Wanrong >> >>> Just some update: >>> >>> I called (org-restart-font-lock) function inside my tag search >>> result buffer, and I can see a new "Invalid face reference: nil [X >>> times]" message is generated in the "*Messages*" buffer, with "X" >>> keeps increasing. I have "jit-lock-mode" (Just in time font locking) >>> enabled in my emacs config, so I guess that ticking "X" number is >>> from the background font locking process. >>> >>> It seems something is wrong with font locking for tags. But this >>> only happens in tag search result buffer. It does not happen in >>> regular agenda buffer. >>> >>> I don't know how to proceed to pin-point this. Can any of you guys >>> also reproduce this? Any suggestions? Thank you. >>> >>> Wanrong >>> >>> >> >> > >