Gnus development mailing list
 help / color / mirror / Atom feed
From: pmlists@free.fr (Peter Münster)
To: ding@gnus.org
Subject: Re: setting face in gnus-user-format-function-x
Date: Thu, 23 Jun 2011 10:47:36 +0200	[thread overview]
Message-ID: <87hb7hdjdj.fsf@micropit.couberia.bzh> (raw)
In-Reply-To: <x639jl38zg.fsf@dynalabs.de>

On Tue, Jun 07 2011, Michael Piotrowski wrote:

> I just tried it.  Using `gnus-summary-update-hook' works.  For my
> application--a different face for the date, depending on the age of the
> message--I used the following two-step approach:
>
> 1. I have a user format function that adds a non-face property, roughly
>    something like this:
>
>     (cond
>      ((= message-day today)
>       (put-text-property 0 10 'mxp-date 'today message-date))
>      ((= message-day (1- today))
>       (put-text-property 0 10 'mxp-date 'yesterday message-date))
>      (t
>       (put-text-property 0 10 'mxp-date 'older message-date)))
>
> 2. I have a function that looks for this property (using
>    `gnus-find-text-property-region') and sets the desired face.  This
>    function is called by `gnus-summary-update-hook'.
>
> Up to now, this approach seems to work nicely.  Maybe you can adapt it
> to your needs.

Unfortunately no success... :(

This is, what I have now:

--8<---------------cut here---------------start------------->8---
(defun gnus-user-format-function-x (header)
  (let ((my-string (format "%c" gnus-tmp-unread)))
    (put-text-property 0 0 'my-test 'my-test my-string)
    my-string))

(defun my-summary-update ()
  (dolist (region (gnus-find-text-property-region (point-min)
                                                  (point-max)
                                                  'my-test))
    (destructuring-bind (start end function) region
      (put-text-property start end 'face gnus-face-2)
      (put-text-property start end 'gnus-face t))))

(add-hook 'gnus-summary-update-hook 'my-summary-update)
--8<---------------cut here---------------end--------------->8---

But the face is not set.

I've also tried Lars' suggestion to use
gnus-summary-update-article-line, but I don't know how to supply the
2 required arguments "article" and "header".

So, any help would be appreciated!
(sorry for my lack of elisp-experience)

Greetings,
-- 
           Peter




  reply	other threads:[~2011-06-23  8:47 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-23 18:04 Peter Münster
2011-05-24  6:18 ` Reiner Steib
2011-05-25 13:38   ` Peter Münster
2011-05-26  6:37     ` Reiner Steib
2011-05-27  8:26       ` Peter Münster
2011-05-27  9:44         ` Michael Piotrowski
2011-05-30 18:10 ` Lars Magne Ingebrigtsen
2011-05-31  7:06   ` Peter Münster
2011-06-07 16:24     ` Michael Piotrowski
2011-06-23  8:47       ` Peter Münster [this message]
2011-06-26 10:06         ` Lars Magne Ingebrigtsen
2011-06-27 12:46           ` Peter Münster
2011-06-30  2:23             ` Lars Magne Ingebrigtsen
2011-06-30  5:14               ` Peter Münster
2011-06-30 22:03                 ` Lars Magne Ingebrigtsen
2011-07-13  9:15                   ` setting face in gnus-user-format-function-x (solved) Peter Münster
2011-07-13 11:35                     ` Peter Münster
2011-07-14  8:12                     ` Peter Münster
2011-07-14 19:09                       ` Reiner Steib
2011-07-11 16:57         ` setting face in gnus-user-format-function-x Michael Piotrowski
2011-07-13  7:36           ` Peter Münster
2011-07-18 21:09   ` special face for marks (was: setting face in gnus-user-format-function-x) Peter Münster
2011-07-19 10:09     ` special face for marks lee
2011-07-19 10:58       ` Peter Münster
2011-07-19 17:51         ` lee
2011-09-29  9:41           ` Ted Zlatanov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87hb7hdjdj.fsf@micropit.couberia.bzh \
    --to=pmlists@free.fr \
    --cc=ding@gnus.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).