Now a stack of depth 1 is used to save/restore private mode values. And
saving/restoring individual modes is supported. This latter is used by
midnight commander.
This ensures that there is no leftover line when the shell redraws the prompt,
by making the prompt a simple single character prompt before rewrapping.
Right now visual bell makes background flash sharply with bright white
(when configured with darkish color theme). This causes eye strain,
especially prominent in unlit environments.
This change makes background bounce smoothly between regular bg color
and highlight (selection) bg color for the configured visual bell
duration. Intensity is animated with cubic easing functions. It
currently peaks at 20% of the duration, this is hardcoded.
Mark functions computing intensity and easing as inline
Do smarter blending of visual bell flash
Blend highlight color with pegtop's softlight mode over both background
and half as much over foreground. This should help with flash visibility
in light themed and inverted colors contexts.
Blend flash in BACKGROUND pass also
Revert "Do smarter blending of visual bell flash"
This reverts commit 9a269d55c7d04334b1c4891c42914423517dfad6.
Revert "Blend flash in BACKGROUND pass also"
This reverts commit 756332cb9d7576b08db78406e37349aa6d1df156.
Revert "Make visual bell flash much more gentle"
This reverts commit cbfe5d59ada2da690e14c7532a7468b0c307c462.
Render flash overlay in a separate drawcall
Trigger frequent repaints to make for smooth animation
Attenuate flash a bit more
A better solution from an ecosystem perspective is to just work with the
original protocol. I have modified kitty's escape parser to special case
OSC 52 handling without changing its max escape code size.
Basically, it works by splitting up OSC 52 escape codes longer than the
max size into a series of partial OSC 52 escape codes. These get
dispatched to the UI layer where it accumulates them upto the 8MB limit
and then sends to clipboard when the partial sequence ends.
See https://github.com/ranger/ranger/issues/1861
Because, why the hell not, it's not like I have an actual life.
More seriously, terminal-wg (aka Bikeshedder's Anonymous) is
pushing for it so it's likely at least one poor application writer
will fall for their propaganda.
Saves a couple of KB of RAM and is more flexible in terms
of max number of allowed chars, although for large numbers one really
needs a hash for fast lookups.