all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Clément Pit-Claudel" <cpitclaudel@gmail.com>
To: Philippe Vaucher <philippe.vaucher@gmail.com>
Cc: Emacs developers <emacs-devel@gnu.org>
Subject: Re: tabulated-list sort icon is reversed
Date: Tue, 12 Feb 2019 14:13:59 -0500	[thread overview]
Message-ID: <b4e747e9-d451-dd17-0d2a-56ddb62decc4@gmail.com> (raw)
In-Reply-To: <CAGK7Mr5_aGCOu-c7BcHrXS5ofaJLpP8LTkXfvdXeaAczo0Y40w@mail.gmail.com>

On 10/08/2018 10.11, Philippe Vaucher wrote:>     I think that won't work — one of the key parts of that proposal was separating individual lines.
> I think we need an image, not a character.
> 
> 
> Fair enough. To be honest I'm losing a bit of steam here, I now
> suspect this patch will never land because the ACSII part is
> unsolvable, and because I guess that using an image requires quite a
> lot of refactoring (displaying an inline image instead of a character
> is likely to be complicated).

Displaying inline images instead of characters us rather straightforward, actually; here's what a patch might look like (with your defcustom patch, it would be even simpler: only the defcustom would change).

diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el
index 6fdca2c..7249351 100644
--- a/lisp/emacs-lisp/tabulated-list.el
+++ b/lisp/emacs-lisp/tabulated-list.el
@@ -199,6 +199,19 @@ tabulated-list-line-number-width
             (line-number-display-width 'columns))
         4))))
 
+(defvar tabulated-list-sort-asc-icon ; " ▼"
+  (propertize " "  'display (create-image "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
+<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">
+<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" version=\"1.1\"  width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">
+   <path fill=\"#000000\" d=\"M7,10L12,15L17,10H7Z\" />
+</svg>" 'svg t)))
+(defvar tabulated-list-sort-desc-icon ; " ▲"
+  (propertize " "  'display (create-image "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
+<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">
+<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" version=\"1.1\"  width=\"24\" height=\"24\" viewBox=\"0 0 24 24\">
+   <path fill=\"#000000\" d=\"M7,10L12,15L17,10H7Z\" />
+</svg>" 'svg t)))
+
 (defun tabulated-list-init-header ()
   "Set up header line for the Tabulated List buffer."
   ;; FIXME: Should share code with tabulated-list-print-col!
@@ -229,8 +242,8 @@ tabulated-list-init-header
 		  (concat label
 			  (cond
 			   ((> (+ 2 (length label)) width) "")
-			   ((cdr tabulated-list-sort-key) " ▲")
-			   (t " ▼")))
+			   ((cdr tabulated-list-sort-key) tabulated-list-sort-desc-icon)
+			   (t tabulated-list-sort-asc-icon)))
 		  'face 'bold
 		  'tabulated-list-column-name label
 		  button-props))
-- 
2.7.4

On the other hand, it might be tricky to resize this image properly, especially given bug #34024.

Clément.



  parent reply	other threads:[~2019-02-12 19:13 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-28 18:14 tabulated-list sort icon is reversed Philippe Vaucher
2018-07-28 19:03 ` Eli Zaretskii
2018-07-28 22:00   ` Philippe Vaucher
2018-07-29 17:34     ` Eli Zaretskii
2018-07-30  7:14       ` Robert Pluim
2018-07-30 10:47       ` Joost Kremers
2018-07-30 14:48         ` Drew Adams
2018-07-30 15:17           ` Robert Pluim
2018-07-30 15:24             ` Eli Zaretskii
2018-07-30 17:33       ` Stefan Monnier
2018-07-30 17:57         ` Clément Pit-Claudel
2018-07-31 18:28           ` Philippe Vaucher
2018-07-31 18:34         ` Philippe Vaucher
2018-07-31 18:35           ` Philippe Vaucher
2018-07-31 19:24           ` Stefan Monnier
2018-07-31 19:37             ` Drew Adams
2018-07-31 20:19               ` Stefan Monnier
2018-07-31 21:46                 ` Drew Adams
2018-08-01 20:48                   ` Joost Kremers
2018-08-02  2:09                     ` Richard Stallman
2018-08-02  5:02                       ` Stefan Monnier
2018-08-02  8:56                         ` Philippe Vaucher
2018-08-02 13:09                         ` Clément Pit-Claudel
2018-08-03 11:13                         ` Joost Kremers
2018-08-03 11:23                           ` Robert Pluim
2018-08-05  4:01                       ` Van L
2018-08-10  9:56                         ` Philippe Vaucher
2018-08-10 12:18                           ` Eli Zaretskii
2018-08-10 12:37                             ` Philippe Vaucher
2018-08-10 12:49                               ` Eli Zaretskii
2018-08-10 14:07                                 ` Philippe Vaucher
2018-08-10 13:20                           ` Clément Pit-Claudel
2018-08-10 14:11                             ` Philippe Vaucher
2018-08-10 14:52                               ` Yuri Khan
2018-08-10 20:10                                 ` Philippe Vaucher
2019-02-12 19:13                               ` Clément Pit-Claudel [this message]
2019-02-12 19:43                                 ` Eli Zaretskii
2019-02-12 20:54                                   ` Clément Pit-Claudel
2019-02-15 13:38                                   ` Philippe Vaucher
2019-02-15 14:05                                     ` Clément Pit-Claudel
2019-02-15 14:15                                     ` Eli Zaretskii
2019-02-15 14:42                                       ` Philippe Vaucher
2019-02-27 20:08                                         ` Philippe Vaucher
2019-02-27 20:21                                           ` Clément Pit-Claudel
2019-02-27 21:23                                           ` Stefan Monnier
2019-02-28  7:55                                             ` Philippe Vaucher
2019-03-01  9:48                                               ` Philippe Vaucher
2019-03-01 13:56                                                 ` Stefan Monnier
2019-03-01 16:34                                                   ` Philippe Vaucher
2019-03-01 17:34                                                     ` Stefan Monnier
2019-03-01 18:14                                                       ` Philippe Vaucher
2019-03-02 11:53                                               ` Eli Zaretskii
2019-03-02 17:48                                                 ` Philippe Vaucher
2019-03-02 17:51                                                   ` Philippe Vaucher
2019-03-02 18:15                                                     ` Eli Zaretskii
2019-03-02 19:06                                                       ` Philippe Vaucher
2019-03-08  9:43                                                         ` Eli Zaretskii
2019-03-08 13:38                                                           ` Stefan Monnier
2019-03-08 14:35                                                             ` Eli Zaretskii
2019-03-09 10:18                                                           ` Philippe Vaucher
2019-03-09 10:20                                                             ` Philippe Vaucher
2019-03-09 15:06                                                             ` Eli Zaretskii
2019-03-09 17:08                                                               ` Philippe Vaucher
2019-03-09 17:19                                                                 ` Eli Zaretskii
2019-03-09 19:57                                                                 ` Stefan Monnier
2019-03-11  9:08                                                                   ` Philippe Vaucher
2019-03-11 10:54                                                                     ` Philippe Vaucher
2019-03-15  9:11                                                                       ` Eli Zaretskii
2019-03-17 11:55                                                                         ` Philippe Vaucher
2019-03-02 18:15                                                   ` Eli Zaretskii
2018-08-02  8:56                     ` Philippe Vaucher

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=b4e747e9-d451-dd17-0d2a-56ddb62decc4@gmail.com \
    --to=cpitclaudel@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=philippe.vaucher@gmail.com \
    /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.
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.