summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--Src/Zle/zle_refresh.c2
-rw-r--r--Src/prompt.c3
3 files changed, 5 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 9aac1d59b..c3bc7b6e6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2023-01-10 Oliver Kiddle <opk@zsh.org>
+ * 51289: Src/Zle/zle_refresh.c, Src/prompt.c: don't disable
+ non-colour attributes in prompts for SINGLE_LINE_ZLE and remove
+ superfluous extra escapes to disable attributes
+
* 51281: Src/Zle/zle_main.c, Src/Zle/zle_refresh.c, Src/zsh.h:
keep track of attributes left on at the end of left and right
prompts and reapply them explicitly as appropriate
diff --git a/Src/Zle/zle_refresh.c b/Src/Zle/zle_refresh.c
index ab84a1376..8949a851c 100644
--- a/Src/Zle/zle_refresh.c
+++ b/Src/Zle/zle_refresh.c
@@ -1107,8 +1107,6 @@ zrefresh(void)
#endif
/* we probably should only have explicitly set attributes */
tsetcap(TCALLATTRSOFF, 0);
- tsetcap(TCSTANDOUTEND, 0);
- tsetcap(TCUNDERLINEEND, 0);
txtcurrentattrs = txtpendingattrs = txtunknownattrs = 0;
if (trashedzle && !clearflag)
diff --git a/Src/prompt.c b/Src/prompt.c
index 488a90d09..4f29a6728 100644
--- a/Src/prompt.c
+++ b/Src/prompt.c
@@ -1004,8 +1004,7 @@ stradd(char *d)
mod_export void
tsetcap(int cap, int flags)
{
- if (tccan(cap) && !isset(SINGLELINEZLE) &&
- !(termflags & (TERM_NOUP|TERM_BAD|TERM_UNKNOWN))) {
+ if (tccan(cap) && !(termflags & (TERM_NOUP|TERM_BAD|TERM_UNKNOWN))) {
switch (flags) {
case TSC_RAW:
tputs(tcstr[cap], 1, putraw);