[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#4033: 23.1; list-colors-display is misleading
From: |
Juri Linkov |
Subject: |
bug#4033: 23.1; list-colors-display is misleading |
Date: |
Thu, 06 Aug 2009 00:35:43 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (x86_64-pc-linux-gnu) |
> What about something like this:
>
> (defun rgb-color-format-for-display ()
> (let ((ncolors (display-color-cells (selected-frame)))
> (exp 0))
> (while (> (lsh ncolors (- exp)) 1) (setq exp (1+ exp)))
> (setq exp (/ exp 12))
> (format "#%%0%dx%%0%dx%%0%dx" exp exp exp)))
>
> For 16777216 colors, that gives #%02x%02x%02x, which seems right.
>
> In `list-colors-print', we would then do this:
>
> (insert (apply 'format (rgb-color-format-for-display)
> (mapcar (lambda (c) (lsh c -8))
> (color-values (car color)))))
>
> IOW, replace the hard-coded "#%02x%02x%02x" with
> (rgb-color-format-for-display).
>
> But I guess Jason and Eli are saying that that wouldn't work or wouldn't be
> appropriate. It's still not clear to me.
I don't understand what is the reason to unnecessarily complicate this.
In your original report you said that one user had some confusion with
hex formats. Is this user using a system supporting more than 8 bits
per component?
--
Juri Linkov
http://www.jurta.org/emacs/
- bug#4033: 23.1; list-colors-display is misleading, (continued)
bug#4033: 23.1; list-colors-display is misleading, Andreas Schwab, 2009/08/04
bug#4033: 23.1; list-colors-display is misleading, Juri Linkov, 2009/08/04