|
|
@ -24,27 +24,25 @@ index ede7ae6..6e3fabe 100644 |
|
|
|
term.c.attr.mode &= ~( |
|
|
|
ATTR_BOLD | |
|
|
|
ATTR_FAINT | |
|
|
|
@@ -1365,6 +1366,9 @@ tsetattr(int *attr, int l)
|
|
|
|
@@ -1365,6 +1366,8 @@ tsetattr(int *attr, int l)
|
|
|
|
break; |
|
|
|
case 1: |
|
|
|
term.c.attr.mode |= ATTR_BOLD; |
|
|
|
+ if (!term.c.attr.colored) {
|
|
|
|
+ if (!term.c.attr.colored)
|
|
|
|
+ term.c.attr.fg = defaultbd;
|
|
|
|
+ }
|
|
|
|
break; |
|
|
|
case 2: |
|
|
|
term.c.attr.mode |= ATTR_FAINT; |
|
|
|
@@ -1391,6 +1395,9 @@ tsetattr(int *attr, int l)
|
|
|
|
@@ -1391,6 +1395,8 @@ tsetattr(int *attr, int l)
|
|
|
|
break; |
|
|
|
case 22: |
|
|
|
term.c.attr.mode &= ~(ATTR_BOLD | ATTR_FAINT); |
|
|
|
+ if (!term.c.attr.colored) {
|
|
|
|
+ if (!term.c.attr.colored)
|
|
|
|
+ term.c.attr.fg = defaultfg;
|
|
|
|
+ }
|
|
|
|
break; |
|
|
|
case 23: |
|
|
|
term.c.attr.mode &= ~ATTR_ITALIC; |
|
|
|
@@ -1411,11 +1418,18 @@ tsetattr(int *attr, int l)
|
|
|
|
@@ -1411,11 +1416,17 @@ tsetattr(int *attr, int l)
|
|
|
|
term.c.attr.mode &= ~ATTR_STRUCK; |
|
|
|
break; |
|
|
|
case 38: |
|
|
@ -57,15 +55,14 @@ index ede7ae6..6e3fabe 100644 |
|
|
|
case 39: |
|
|
|
- term.c.attr.fg = defaultfg;
|
|
|
|
+ term.c.attr.colored = 0;
|
|
|
|
+ if (term.c.attr.mode & ATTR_BOLD) {
|
|
|
|
+ if (term.c.attr.mode & ATTR_BOLD)
|
|
|
|
+ term.c.attr.fg = defaultbd;
|
|
|
|
+ } else {
|
|
|
|
+ else
|
|
|
|
+ term.c.attr.fg = defaultfg;
|
|
|
|
+ }
|
|
|
|
break; |
|
|
|
case 48: |
|
|
|
if ((idx = tdefcolor(attr, &i, l)) >= 0) |
|
|
|
@@ -1426,10 +1440,12 @@ tsetattr(int *attr, int l)
|
|
|
|
@@ -1426,10 +1437,12 @@ tsetattr(int *attr, int l)
|
|
|
|
break; |
|
|
|
default: |
|
|
|
if (BETWEEN(attr[i], 30, 37)) { |
|
|
|