Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: region_highlight cancels styles set in zle_highlight



Peter Stephenson wrote on Sun, Sep 06, 2015 at 18:22:30 +0100:
> On Sat, 5 Sep 2015 10:44:49 +0000
> Daniel Shahaf <d.s@xxxxxxxxxxxxxxxxxx> wrote:
> > How do $zle_highlight and $region_highlight interact?  Which one takes
> > precedence if a certain byte range is covered by both?
> 
> The special forms of highlight (the ones that apply to regions, so not,
> for example, unprintable characters) are treated as the initial set of
> entries in the array of highlights to apply, with any user-specified
> ones in region_highlight following in order, with later values
> overriding earlier ones.

Thanks.  Patch to doc this:

diff --git a/Doc/Zsh/zle.yo b/Doc/Zsh/zle.yo
index 4e93695..22e8111 100644
--- a/Doc/Zsh/zle.yo
+++ b/Doc/Zsh/zle.yo
@@ -955,6 +955,11 @@ any predisplay string should be highlighted in bold.
 
 Note that the effect of tt(region_highlight) is not saved and disappears
 as soon as the line is accepted.
+
+The final highlighting on the command line depends on both tt(region_highlight)
+and tt(zle_highlight); see
+ifzman(the section CHARACTER HIGHLIGHTING below)\
+ifnzman(noderef(Character Highlighting)) for details.
 )
 vindex(UNDO_CHANGE_NO)
 item(tt(UNDO_CHANGE_NO) (integer))(
@@ -2521,6 +2526,12 @@ Following a command to paste text, the characters that were inserted.
 )
 enditem()
 
+When tt(region_highlight) is set, the contexts that describe a region DASH()-
+tt(isearch), tt(region), and tt(paste) DASH()-
+are applied first, then tt(region_highlight) is applied, then the remaining
+tt(zle_highlight) contexts are applied.  If a particular character is
+affected by multiple specifications, the last specification wins.
+
 tt(zle_highlight) may contain additional fields for controlling how
 terminal sequences to change colours are output.  Each of the following is
 followed by a colon and a string in the same form as for key bindings.



Messages sorted by: Reverse Date, Date, Thread, Author