zsh-workers
 help / color / mirror / code / Atom feed
From: Sebastian Gniazdowski <sgniazdowski@gmail.com>
To: Oliver Kiddle <okiddle@yahoo.co.uk>
Cc: Zsh hackers list <zsh-workers@zsh.org>
Subject: Re: [BUG] General 256 colors bug – zle_highlight / fg_start_code, etc. is not respected (was: highlight test cases)
Date: Fri, 7 Dec 2018 21:26:54 +0100	[thread overview]
Message-ID: <CAKc7PVBDdWOaef6pku=81EoSGR-Qy45QQqLQ6q1txuUrTJrUYg@mail.gmail.com> (raw)
In-Reply-To: <CAKc7PVBR2sVxPfA731V-HD0S2Qe6H5=dQpVc+-yhUM-yS6m2hQ@mail.gmail.com>

On Fri, 7 Dec 2018 at 02:55, Sebastian Gniazdowski
<sgniazdowski@gmail.com> wrote:
> So again no CDE|3...|, but raw ^[38;5;196m. So this is a general Zsh
> bug, not near-color bug, as zsh/near-color module isn't loaded in this
> test, it's only the 256 code "fg=196" that is being used.

Following Daniel's request of a minimal test case that makes the
problem visible:

widget() { zle_highlight=( fg_start_code:"CDE|3" fg_end_code:"|"
bg_start_code:"BCDE|4" bg_end_code:"|" ); BUFFER="true word2 word3";
region_highlight=( "0 4 fg=196" ); }
zle -N widget
bindkey '^T' widget

And after pasting and accepting in zsh -f, press Ctrl-T. You will see
red word "true" followed by "CDE|39|" and the other words, i.e.

% trueCDE|39| word2 word3

(the true is in red, but cannot visualize this in email). So:
zsh_highlight was ignored for 256 color code, only code ^[[39m has
been processed by zle_highlight, while the fg=196 code was output
unprocessed, i.e. as ^[[38;5;196m.

Could the problem be fixed, .. ASAP? It collides with my work of
providing X04 tests and is a blocker for making a new Zsh
release. I think Oliver touched the responsible code lately, as for
true-color (not 256 color, with or withoutzsh/nearcolor), the
zle_highlight processing works, i.e. I'm getting, e.g.:

0m27m24mCDE|38;2;0;204;0|tCDE|38;2;204;0;0|rCDE|39|CDE|38;2;0;204;0|ueCDE|39|

in an X04 test case. So all 24-bit escape codes are nicely covered
with CDE| etc. things from zle_highlight. So maybe it seems that the
"get text representation from already processed entries in
region_highlight" that Olivier did is used also here.

So basically 256-color doesn't obey zle_highlight, while first 8/16
colors and TrueColor are obeying it.

--
Sebastian Gniazdowski
News: https://twitter.com/ZdharmaI
IRC: https://kiwiirc.com/client/chat.freenode.net:+6697/#zplugin
Blog: http://zdharma.org

  reply	other threads:[~2018-12-07 20:27 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-07 13:19 [BUG?] If true-color is used, overlapping colors do not work Sebastian Gniazdowski
2018-11-07 14:40 ` Sebastian Gniazdowski
2018-11-07 19:19   ` Sebastian Gniazdowski
2018-11-08  3:48     ` Oliver Kiddle
2018-11-08  9:25       ` Sebastian Gniazdowski
2018-11-08  3:03 ` Oliver Kiddle
2018-11-08  9:19   ` Sebastian Gniazdowski
2018-11-09  1:28     ` Oliver Kiddle
2018-11-09 15:39       ` Sebastian Gniazdowski
2018-11-11  0:43       ` Sebastian Gniazdowski
2018-11-11  5:11         ` Sebastian Gniazdowski
2018-11-24 17:32         ` highlight test cases (was Re: [BUG?] If true-color is used, overlapping colors do not work) Oliver Kiddle
2018-11-30  0:34           ` Sebastian Gniazdowski
2018-12-07  1:55             ` [BUG] General 256 colors bug – zle_highlight / fg_start_code, etc. is not respected (was: highlight test cases) Sebastian Gniazdowski
2018-12-07 20:26               ` Sebastian Gniazdowski [this message]
2018-12-09 19:13                 ` Daniel Shahaf
2018-12-11  8:06                   ` Sebastian Gniazdowski
2018-12-10  2:54             ` highlight test cases (was Re: [BUG?] If true-color is used, overlapping colors do not work) Oliver Kiddle
2018-12-10 23:51               ` Sebastian Gniazdowski
2018-12-10 23:54                 ` Sebastian Gniazdowski
2018-11-11  5:38       ` X04 zle highlight tests, near-color bug Sebastian Gniazdowski
2018-11-18 15:34         ` Sebastian Gniazdowski

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='CAKc7PVBDdWOaef6pku=81EoSGR-Qy45QQqLQ6q1txuUrTJrUYg@mail.gmail.com' \
    --to=sgniazdowski@gmail.com \
    --cc=okiddle@yahoo.co.uk \
    --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).