|
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- From 9c4b3f40e07dd1d6dd94fa733b7853aff7f4b8fc Mon Sep 17 00:00:00 2001
- From: Raheman Vaiya <r.vaiya@gmail.com>
- Date: Sat, 16 Jan 2021 18:18:07 -0500
- Subject: [PATCH] Add proper OSC 10/11 support.
-
- ---
- config.def.h | 9 ++++++---
- st.c | 30 ++++++++++++++++++++++++++++++
- st.h | 1 +
- 3 files changed, 37 insertions(+), 3 deletions(-)
-
- diff --git a/config.def.h b/config.def.h
- index 6f05dce..9bb22a5 100644
- --- a/config.def.h
- +++ b/config.def.h
- @@ -120,6 +120,8 @@ static const char *colorname[] = {
- /* more colors can be added after 255 to use with DefaultXX */
- "#cccccc",
- "#555555",
- + "black",
- + "gray90",
- };
-
-
- @@ -127,9 +129,10 @@ static const char *colorname[] = {
- * Default colors (colorname index)
- * foreground, background, cursor, reverse cursor
- */
- -unsigned int defaultfg = 7;
- -unsigned int defaultbg = 0;
- -static unsigned int defaultcs = 256;
- +
- +unsigned int defaultbg = 258;
- +unsigned int defaultfg = 259;
- +unsigned int defaultcs = 256;
- static unsigned int defaultrcs = 257;
-
- /*
- diff --git a/st.c b/st.c
- index abbbe4b..6a57d89 100644
- --- a/st.c
- +++ b/st.c
- @@ -1877,6 +1877,36 @@ strhandle(void)
- }
- }
- return;
- + case 10: /* set foreground color */
- + if (narg < 2)
- + break;
- +
- + p = strescseq.args[1];
- + if (xsetcolorname(defaultfg, p))
- + fprintf(stderr, "erresc: invalid foreground color %d\n", p);
- + else
- + redraw();
- + break;
- + case 11: /* set background color */
- + if (narg < 2)
- + break;
- +
- + p = strescseq.args[1];
- + if (xsetcolorname(defaultbg, p))
- + fprintf(stderr, "erresc: invalid background color %d\n", p);
- + else
- + redraw();
- + break;
- + case 12: /* set cursor color */
- + if (narg < 2)
- + break;
- +
- + p = strescseq.args[1];
- + if (xsetcolorname(defaultcs, p))
- + fprintf(stderr, "erresc: invalid cursor color %d\n", p);
- + else
- + redraw();
- + break;
- case 4: /* color set */
- if (narg < 3)
- break;
- diff --git a/st.h b/st.h
- index 3d351b6..054366d 100644
- --- a/st.h
- +++ b/st.h
- @@ -123,3 +123,4 @@ extern char *termname;
- extern unsigned int tabspaces;
- extern unsigned int defaultfg;
- extern unsigned int defaultbg;
- +extern unsigned int defaultcs;
- --
- 2.20.1
-
|