zsh-workers
 help / color / mirror / code / Atom feed
From: Marlon Richert <marlon.richert@gmail.com>
To: Roman Perepelitsa <roman.perepelitsa@gmail.com>
Cc: Bart Schaefer <schaefer@brasslantern.com>,
	Daniel Shahaf <d.s@daniel.shahaf.name>,
	 Zsh hackers list <zsh-workers@zsh.org>
Subject: Re: region_highlight converts `fg=default` to `none`, which is not the same
Date: Fri, 23 Oct 2020 12:24:57 +0300	[thread overview]
Message-ID: <CAHLkEDuhnFzF5Xad7t66DGrwY=Ri9-7VN_P-yOUr03GGTUiKSA@mail.gmail.com> (raw)
In-Reply-To: <CAN=4vMr+dXkY3LsfRoJO06dHV=Y8MB3S1RFwqZ1m6YGJhLK3dQ@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2114 bytes --]

On Fri, 23 Oct 2020 at 02:28, Daniel Shahaf <d.s@daniel.shahaf.name> wrote:

> You haven't explained why you think it's zle that does the conversion.
> For starters, what's the output of `tput smso | xxd` and `tput rev |
> xxd`?  Here they print the same value, even though \e[3m; does
> italicize.  (Plain xterm on Debian.)
>

Ah, my bad. I assumed `region_highlight` handled visual formatting
similarly to how `complist` and prompt expansion handle them, and assumed
that the exact same names used in the `colors` function meant the same
thing. I'm sure many other Zsh end users will assume the same. It would be
great if all four of those could be made consistent with each other.

On Fri, 23 Oct 2020 at 11:08, Roman Perepelitsa <roman.perepelitsa@gmail.com>
wrote:

> Previous discussion about standout, italized and negative image:
> https://www.zsh.org/mla/workers/2019/msg01189.html.


Thanks for the link. Did that discussion ever result in a patch? It looks
like you never got an answer to [your question](
https://www.zsh.org/mla/workers/2019/msg01191.html):

> Shall I send a patch? I'd love to have this feature.

I'd love to have `region_highlight` just accept and pass through unmodified
all ECMA-48 SGR parameter values. (See
http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-048.pdf,
page 61.) It is a standard, after all.

I feel like routing this through `ncurses` is not only unnecessary (since
we have a standard for this); it's also problematic. For many terminals,
there is a significant lag between their last release and the last time
their `terminfo` entry in `ncurses` got updated. (The entry for macOS's
Terminal.app, for example, is already 3 years old and you get better
results from `ncurses` by letting Terminal.app declare itself as being
`xterm-256color`, rather than relying on the `nsterm` entry.) Rather than
using `ncurses` for this, I'd rather see the principle of ["graceful
degradation"](https://en.wikipedia.org/wiki/Fault_tolerance) be applied
here and let the terminal itself handle (that is, ignore) those SGR
parameter values that it does not support.

[-- Attachment #2: Type: text/html, Size: 3262 bytes --]

  reply	other threads:[~2020-10-23  9:25 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-12  9:22 Marlon Richert
2020-10-13 11:05 ` Roman Perepelitsa
2020-10-14  5:12   ` Marlon Richert
2020-10-14 20:46   ` Daniel Shahaf
2020-10-15  7:37     ` Roman Perepelitsa
2020-10-15 16:58       ` Marlon Richert
2020-10-15 17:09         ` Roman Perepelitsa
2020-10-16 13:36           ` Daniel Shahaf
2020-10-24  1:34           ` Oliver Kiddle
2020-10-24  6:42             ` Roman Perepelitsa
2020-10-16 13:28       ` Daniel Shahaf
2020-10-16 15:50         ` Bart Schaefer
2020-10-22 19:58           ` Marlon Richert
2020-10-22 23:28             ` Daniel Shahaf
2020-10-23  8:08             ` Roman Perepelitsa
2020-10-23  9:24               ` Marlon Richert [this message]
2020-10-23  9:35                 ` Roman Perepelitsa
2020-10-23 10:40                   ` Marlon Richert
2020-10-23 11:38                     ` Roman Perepelitsa
2020-10-24  0:50                       ` Functions/Misc/colors vs. region_highlight Bart Schaefer
2020-11-03 18:54                         ` Marlon Richert
2020-11-03 23:45                           ` Bart Schaefer
2020-11-04 15:47                             ` Marlon Richert
2021-04-18 21:40                         ` Bart Schaefer
2020-10-23 23:57                   ` Threading across year boundaries (was: Re: region_highlight converts `fg=default` to `none`, which is not the same) Daniel Shahaf
2021-03-31  8:26       ` region_highlight converts `fg=default` to `none`, which is not the same Marlon Richert
2021-04-10 20:33         ` Lawrence Velázquez
2021-04-13 15:20           ` Daniel Shahaf
2021-04-13 20:33             ` Roman Perepelitsa
2021-04-14 11:04               ` Daniel Shahaf
2021-05-09 20:49                 ` Lawrence Velázquez
2021-05-31  1:16                   ` Lawrence Velázquez
2021-03-31  8:24   ` Marlon Richert

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='CAHLkEDuhnFzF5Xad7t66DGrwY=Ri9-7VN_P-yOUr03GGTUiKSA@mail.gmail.com' \
    --to=marlon.richert@gmail.com \
    --cc=d.s@daniel.shahaf.name \
    --cc=roman.perepelitsa@gmail.com \
    --cc=schaefer@brasslantern.com \
    --cc=zsh-workers@zsh.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.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

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).