From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/82821 Path: news.gmane.org!not-for-mail From: Richard Riley Newsgroups: gmane.emacs.gnus.general Subject: Re: face issue in latest emacs snapshot Date: Wed, 09 Jan 2013 08:20:09 +0000 Organization: aich tea tea pea dicky riley dot net Message-ID: References: <7vfw2b9r1w.fsf@news.eternal-september.org> <85ehhv5g2v.fsf@iznogoud.viz> Reply-To: ding@gnus.org NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1357719693 24131 80.91.229.3 (9 Jan 2013 08:21:33 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 9 Jan 2013 08:21:33 +0000 (UTC) To: ding@gnus.org Original-X-From: ding-owner+M31087@lists.math.uh.edu Wed Jan 09 09:21:51 2013 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from util0.math.uh.edu ([129.7.128.18]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Tsqv0-0007K0-2t for ding-account@gmane.org; Wed, 09 Jan 2013 09:21:50 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by util0.math.uh.edu with smtp (Exim 4.63) (envelope-from ) id 1Tsqtk-0004bu-0b; Wed, 09 Jan 2013 02:20:32 -0600 Original-Received: from mx1.math.uh.edu ([129.7.128.32]) by util0.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1Tsqti-0004bf-5V for ding@lists.math.uh.edu; Wed, 09 Jan 2013 02:20:30 -0600 Original-Received: from quimby.gnus.org ([80.91.231.51]) by mx1.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.76) (envelope-from ) id 1Tsqtf-0003Hz-5C for ding@lists.math.uh.edu; Wed, 09 Jan 2013 02:20:29 -0600 Original-Received: from plane.gmane.org ([80.91.229.3]) by quimby.gnus.org with esmtp (Exim 4.72) (envelope-from ) id 1Tsqtc-0001nh-NG for ding@gnus.org; Wed, 09 Jan 2013 09:20:24 +0100 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1Tsqtq-0005sM-07 for ding@gnus.org; Wed, 09 Jan 2013 09:20:38 +0100 Original-Received: from host-89-241-104-23.as13285.net ([89.241.104.23]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 09 Jan 2013 09:20:37 +0100 Original-Received: from rileyrg by host-89-241-104-23.as13285.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 09 Jan 2013 09:20:37 +0100 X-Injected-Via-Gmane: http://gmane.org/ Mail-Followup-To: ding@gnus.org Original-Lines: 167 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: host-89-241-104-23.as13285.net Mail-Copies-To: never User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) Cancel-Lock: sha1:fPQuWouMs6Uvc1UbzC/1N3penbI= X-Spam-Score: -1.0 (-) List-ID: Precedence: bulk Xref: news.gmane.org gmane.emacs.gnus.general:82821 Archived-At: Wolfgang Jenkner writes: > On Wed, Jan 09 2013, Richard Riley wrote: > >> | Debugger entered--Lisp error: (wrong-type-argument listp my-inbox-icon-face-unread) >> | gnus-put-text-property-excluding-characters-with-faces(1 79 face gnus-group-mail-1) >> | gnus-group-highlight-line("root-email" 1 79) >> | gnus-group-insert-group-line("root-email" 1 ((seen (1 . 270))) 1 nil) >> | gnus-topic-prepare-topic((("Email" visible nil ((visible . t))) (("Mailing Lists" visible nil nil)) (("Trips" visible nil nil))) 1 1 nil nil 1 nil) >> | gnus-topic-prepare-topic((("Gnus" visible nil nil) (("misc" visible nil >> | nil)) (("News" visible nil nil)) (("Email" visible nil ((visible . t))) >> | (("Mailing Lists" visible nil nil)) (("Trips" visible nil nil))) (("Gnu" >> | visible nil nil) (("General" visible nil nil)) (("Emacs" visible nil nil))) >> | (("Programming" visible nil nil) (("Linux" visible nil nil)) (("PHP" visible >> | nil nil) (("Javascript" invisible nil nil))))) 0 1 nil nil 1 nil) >> | gnus-group-prepare-topics(1 nil nil) >> `---- >> >> The docstring doesnt really make much sense to me I'm afraid:- >> >> ,---- >> | gnus-put-text-property-excluding-characters-with-faces is a compiled Lisp >> | function. >> | >> | (gnus-put-text-property-excluding-characters-with-faces BEG END PROP VAL) >> | >> | The same as `put-text-property', except where `gnus-face' is set. >> | If so, and PROP is `face', set the second element of its value to VAL. >> | Otherwise, do nothing. >> `---- >> >> What does "where gnus-face is set" mean? > > That means characters which have a `gnus-face' text-property with > a non-nil value. Such a `gnus-face' property is put on those parts of > a summary line which are highlighted with a gnus-face-N (for some > non-negative integer N) and which are indicated by the %N{ ... %} format > specifiers in gnus-summary-line-format. > > The new thing is that the value of the `face' text-property on such > characters ought to be a list... > > Could you please show the value of your gnus-summary-line-format? Hopefully this might help without posting the entire .el : ,---- | "%U%R%z%I%(%[%4L: %-23,23f%]%) %s\n" `---- possibly more pertinently:- ,---- | gnus-group-line-format's value is "%M%S%p%P%-12uy%(%-60ug%) `---- the ug part is the important bit. function to format: (my elisp is patchy to say the least : the important bit is the propertize call which sets to an unread face if no messages and also sticks an enevlope icon in for inboxs.) ,---- | (defun gnus-user-format-function-g (headers) ;; gnus-group-line-format use %ug to call this func! e.g "%M%S%p%P%(%-40,40ug%)%-5uy %ud\n" | ;; split full group protocol-server:group into three parts. | ;;(message "format function g for group %s" gnus-tmp-group) | (string-match "\\(^.*\\)\\+\\(.*\\):\\(.*\\)" gnus-tmp-group) | ;; map the first two letters of the server name to a more friendly and cuddly display name | (let* ((match-ok (match-string 2 gnus-tmp-group)) | (server-key (if (null match-ok) nil (upcase(substring match-ok 0 2))))) | (if (zerop (length server-key)) | gnus-tmp-group | ;; construct new group format line with a small envelope taking the place of any INBOX | (concat | (propertize | (format "%-8s" (cdr (assoc server-key rgr/server-name-maps))) | 'face (rgr/unread-face "my-group-server-face") 'face (rgr/unread-face (concat "my-group-server-face-" server-key)) 'gnus-face t) | " - " | (if (or (string-match "mail.misc" (match-string 3 gnus-tmp-group) )(string-match "INBOX" (match-string 3 gnus-tmp-group) )) | (propertize "\x2709" 'face (rgr/unread-face "my-inbox-icon-face") 'gnus-face t) | (propertize (match-string 3 gnus-tmp-group) 'face (rgr/unread-face "my-group-face") 'gnus-face t) ) | )))) `---- Im assuming something here | (propertize "\x2709" 'face (rgr/unread-face | "my-inbox-icon-face") 'gnus-face t) is the issue commenting out the intern line below I can still run Gnus. (This all worked for ages before latest emacs snapshot) ,---- | (defun rgr/unread-face (f) | (intern (if (> (string-to-number gnus-tmp-number-of-unread) 0) (concat f "-unread") f)) | ) `---- and the faces ,---- | Face: my-inbox-icon-face-unread (sample) (customize this face) | | Documentation: | Not documented as a face. | | Family: unspecified | Foundry: unspecified | Width: unspecified | Height: unspecified | Weight: unspecified | Slant: unspecified | Foreground: darkgrey | Background: unspecified | Underline: unspecified | Overline: unspecified | Strike-through: unspecified | Box: unspecified | Inverse: unspecified | Stipple: unspecified | Font: unspecified | Fontset: unspecified | Inherit: my-inbox-icon-face | `---- ,---- | Face: my-inbox-icon-face (sample) (customize this face) | | Documentation: | Not documented as a face. | | Family: unspecified | Foundry: unspecified | Width: unspecified | Height: unspecified | Weight: unspecified | Slant: unspecified | Foreground: green | Background: unspecified | Underline: unspecified | Overline: unspecified | Strike-through: unspecified | Box: unspecified | Inverse: unspecified | Stipple: unspecified | Font: unspecified | Fontset: unspecified | Inherit: unspecified `---- > >> Is this a known issue in Gnus or something more likely to be borked in >> the emacs-snapshot compilation? > > Please see > > http://debbugs.gnu.org/cgi/bugreport.cgi?bug=12451 > > Wolfgang >