more italic support

There might be some follow-ups to this.
This commit is contained in:
nhmall
2024-01-29 08:40:05 -05:00
parent 74a1caf536
commit 0dfe92ac61
9 changed files with 169 additions and 117 deletions

View File

@@ -220,21 +220,24 @@ condattr(long bm, unsigned long *bmarray)
for (i = HL_ATTCLR_DIM; i < BL_ATTCLR_MAX; ++i) {
if (bmarray[i] && (bm & bmarray[i])) {
switch(i) {
case HL_ATTCLR_BOLD:
attr |= HL_BOLD;
break;
case HL_ATTCLR_DIM:
attr |= HL_DIM;
break;
case HL_ATTCLR_BLINK:
attr |= HL_BLINK;
case HL_ATTCLR_ITALIC:
attr |= HL_ITALIC;
break;
case HL_ATTCLR_ULINE:
attr |= HL_ULINE;
break;
case HL_ATTCLR_BLINK:
attr |= HL_BLINK;
break;
case HL_ATTCLR_INVERSE:
attr |= HL_INVERSE;
break;
case HL_ATTCLR_BOLD:
attr |= HL_BOLD;
break;
}
}
}

View File

@@ -1273,24 +1273,25 @@ condattr(long bm, unsigned long *bmarray)
if (bm && bmarray) {
for (i = HL_ATTCLR_DIM; i < BL_ATTCLR_MAX; ++i) {
if ((bmarray[i] & bm) != 0) {
switch (i) {
switch(i) {
case HL_ATTCLR_BOLD:
attr |= HL_BOLD;
break;
case HL_ATTCLR_DIM:
attr |= HL_DIM;
break;
case HL_ATTCLR_BLINK:
attr |= HL_BLINK;
case HL_ATTCLR_ITALIC:
attr |= HL_ITALIC;
break;
case HL_ATTCLR_ULINE:
attr |= HL_ULINE;
break;
case HL_ATTCLR_BLINK:
attr |= HL_BLINK;
break;
case HL_ATTCLR_INVERSE:
attr |= HL_INVERSE;
break;
case HL_ATTCLR_BOLD:
attr |= HL_BOLD;
break;
default:
break;
}
}
}
@@ -1306,14 +1307,16 @@ nhattr2curses(int attrmask)
if (attrmask & HL_BOLD)
result |= A_BOLD;
if (attrmask & HL_INVERSE)
result |= A_REVERSE;
if (attrmask & HL_DIM)
result |= A_DIM;
if (attrmask & HL_ITALIC)
result |= A_ITALIC;
if (attrmask & HL_ULINE)
result |= A_UNDERLINE;
if (attrmask & HL_BLINK)
result |= A_BLINK;
if (attrmask & HL_DIM)
result |= A_DIM;
if (attrmask & HL_INVERSE)
result |= A_REVERSE;
return result;
}

View File

@@ -4824,21 +4824,24 @@ condattr(long bm, unsigned long *bmarray)
for (i = HL_ATTCLR_DIM; i < BL_ATTCLR_MAX; ++i) {
if ((bm & bmarray[i]) != 0) {
switch (i) {
case HL_ATTCLR_BOLD:
attr |= HL_BOLD;
break;
case HL_ATTCLR_DIM:
attr |= HL_DIM;
break;
case HL_ATTCLR_BLINK:
attr |= HL_BLINK;
case HL_ATTCLR_ITALIC:
attr |= HL_ITALIC;
break;
case HL_ATTCLR_ULINE:
attr |= HL_ULINE;
break;
case HL_ATTCLR_BLINK:
attr |= HL_BLINK;
break;
case HL_ATTCLR_INVERSE:
attr |= HL_INVERSE;
break;
case HL_ATTCLR_BOLD:
attr |= HL_BOLD;
break;
}
}
}
@@ -4851,28 +4854,32 @@ condattr(long bm, unsigned long *bmarray)
if (m) { \
if ((m) & HL_BOLD) \
term_start_attr(ATR_BOLD); \
if ((m) & HL_INVERSE) \
term_start_attr(ATR_INVERSE); \
if ((m) & HL_DIM) \
term_start_attr(ATR_DIM); \
if ((m) & HL_ITALIC) \
term_start_attr(ATR_ITALIC); \
if ((m) & HL_ULINE) \
term_start_attr(ATR_ULINE); \
if ((m) & HL_BLINK) \
term_start_attr(ATR_BLINK); \
if ((m) & HL_DIM) \
term_start_attr(ATR_DIM); \
if ((m) & HL_INVERSE) \
term_start_attr(ATR_INVERSE); \
} \
} while (0)
#define End_Attr(m) \
do { \
if (m) { \
if ((m) & HL_DIM) \
term_end_attr(ATR_DIM); \
if ((m) & HL_INVERSE) \
term_end_attr(ATR_INVERSE); \
if ((m) & HL_BLINK) \
term_end_attr(ATR_BLINK); \
if ((m) & HL_ULINE) \
term_end_attr(ATR_ULINE); \
if ((m) & HL_INVERSE) \
term_end_attr(ATR_INVERSE); \
if ((m) & HL_ITALIC) \
term_end_attr(ATR_ITALIC); \
if ((m) & HL_DIM) \
term_end_attr(ATR_DIM); \
if ((m) & HL_BOLD) \
term_end_attr(ATR_BOLD); \
} \

View File

@@ -3068,11 +3068,12 @@ static int
mswin_condattr(long bm, unsigned long *bmarray)
{
if (bm && bmarray) {
if (bm & bmarray[HL_ATTCLR_DIM]) return HL_DIM;
if (bm & bmarray[HL_ATTCLR_BLINK]) return HL_BLINK;
if (bm & bmarray[HL_ATTCLR_ULINE]) return HL_ULINE;
if (bm & bmarray[HL_ATTCLR_BOLD]) return HL_BOLD;
if (bm & bmarray[HL_ATTCLR_DIM]) return HL_DIM;
if (bm & bmarray[HL_ATTCLR_ITALIC]) return HL_ITALIC;
if (bm & bmarray[HL_ATTCLR_ULINE]) return HL_ULINE;
if (bm & bmarray[HL_ATTCLR_BLINK]) return HL_BLINK;
if (bm & bmarray[HL_ATTCLR_INVERSE]) return HL_INVERSE;
if (bm & bmarray[HL_ATTCLR_BOLD]) return HL_BOLD;
}
return HL_NONE;