st

fork of suckless's simple terminal
Index Commits Files Refs README LICENSE
commit b4dfa18124451f9ee29a0719ef36ffd58fae4477
parent e8f3513bf4d953176ae932c5d7eb5c374b05a2a0
Author: Michael Forney <mforney@mforney.org>
Date:   Sat, 26 Jul 2014 00:48:15 -0700

Fix disabling of bold and fastblink

According to ECMA-48¹ 8.3.117, an attribute value of 21 is "doubly
underlined", while 22 is "normal colour or normal intensity (neither
bold nor faint)".

Additionally, 25 is "steady (not blinking)", which likely means neither
slow blink nor fast blink.

¹: http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-048.pdf

Signed-off-by: Roberto E. Vargas Caballero <k0ga@shike2.com>

Diffstat:
Mst.c | 10++--------
1 file changed, 2 insertions(+), 8 deletions(-)
diff --git a/st.c b/st.c
@@ -1718,11 +1718,8 @@ tsetattr(int *attr, int l) {
         case 9:
             term.c.attr.mode |= ATTR_STRUCK;
             break;
-        case 21:
-            term.c.attr.mode &= ~ATTR_BOLD;
-            break;
         case 22:
-            term.c.attr.mode &= ~ATTR_FAINT;
+            term.c.attr.mode &= ~(ATTR_BOLD | ATTR_FAINT);
             break;
         case 23:
             term.c.attr.mode &= ~ATTR_ITALIC;
@@ -1731,10 +1728,7 @@ tsetattr(int *attr, int l) {
             term.c.attr.mode &= ~ATTR_UNDERLINE;
             break;
         case 25:
-            term.c.attr.mode &= ~ATTR_BLINK;
-            break;
-        case 26:
-            term.c.attr.mode &= ~ATTR_FASTBLINK;
+            term.c.attr.mode &= ~(ATTR_BLINK | ATTR_FASTBLINK);
             break;
         case 27:
             term.c.attr.mode &= ~ATTR_REVERSE;