mirror of
https://github.com/rkd77/elinks.git
synced 2024-09-26 02:46:13 -04:00
[terminfo] Terminfo also for mono terminals
This commit is contained in:
parent
bda0a3d1b7
commit
c45209729f
@ -588,11 +588,7 @@ set_screen_driver_opt(struct screen_driver *driver, struct option *term_spec)
|
||||
}
|
||||
} /* !utf8_io */
|
||||
#ifdef CONFIG_TERMINFO
|
||||
if (driver->opt.color_mode == COLOR_MODE_MONO) {
|
||||
driver->opt.terminfo = 0;
|
||||
} else {
|
||||
driver->opt.terminfo = get_cmd_opt_bool("terminfo");
|
||||
}
|
||||
driver->opt.terminfo = get_cmd_opt_bool("terminfo");
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -965,8 +961,13 @@ add_char16(struct string *screen, struct screen_driver *driver,
|
||||
#ifdef CONFIG_TERMINFO
|
||||
if (driver->opt.terminfo) {
|
||||
add_to_string(screen, terminfo_set_bold(bold));
|
||||
add_to_string(screen, terminfo_set_foreground(TERM_COLOR_FOREGROUND_16(ch->c.color)));
|
||||
add_to_string(screen, terminfo_set_background(TERM_COLOR_BACKGROUND_16(ch->c.color)));
|
||||
|
||||
if (driver->opt.color_mode != COLOR_MODE_MONO) {
|
||||
add_to_string(screen, terminfo_set_foreground(TERM_COLOR_FOREGROUND_16(ch->c.color)));
|
||||
add_to_string(screen, terminfo_set_background(TERM_COLOR_BACKGROUND_16(ch->c.color)));
|
||||
} else if (ch->attr & SCREEN_ATTR_STANDOUT) {
|
||||
add_to_string(screen, terminfo_set_standout(ch->attr & SCREEN_ATTR_STANDOUT));
|
||||
}
|
||||
|
||||
if (italic)
|
||||
add_to_string(screen, terminfo_set_italics(italic));
|
||||
|
@ -31,8 +31,7 @@ terminfo_clear_screen(void)
|
||||
{
|
||||
char *res = tiparm(clear_screen);
|
||||
|
||||
if (res) return res;
|
||||
return "";
|
||||
return res ?: "";
|
||||
}
|
||||
|
||||
const char *
|
||||
@ -40,8 +39,7 @@ terminfo_set_bold(int arg)
|
||||
{
|
||||
char *res = tiparm(arg ? enter_bold_mode : exit_attribute_mode);
|
||||
|
||||
if (res) return res;
|
||||
return "";
|
||||
return res ?: "";
|
||||
}
|
||||
|
||||
const char *
|
||||
@ -49,8 +47,7 @@ terminfo_set_italics(int arg)
|
||||
{
|
||||
char *res = tiparm(arg ? enter_italics_mode : exit_italics_mode);
|
||||
|
||||
if (res) return res;
|
||||
return "";
|
||||
return res ?: "";
|
||||
}
|
||||
|
||||
const char *
|
||||
@ -58,8 +55,7 @@ terminfo_set_underline(int arg)
|
||||
{
|
||||
char *res = tiparm(arg ? enter_underline_mode : exit_underline_mode);
|
||||
|
||||
if (res) return res;
|
||||
return "";
|
||||
return res ?: "";
|
||||
}
|
||||
|
||||
const char *
|
||||
@ -67,8 +63,7 @@ terminfo_set_background(int arg)
|
||||
{
|
||||
char *res = tiparm(set_a_background, arg);
|
||||
|
||||
if (res) return res;
|
||||
return "";
|
||||
return res ?: "";
|
||||
}
|
||||
|
||||
const char *
|
||||
@ -76,8 +71,15 @@ terminfo_set_foreground(int arg)
|
||||
{
|
||||
char *res = tiparm(set_a_foreground, arg);
|
||||
|
||||
if (res) return res;
|
||||
return "";
|
||||
return res ?: "";
|
||||
}
|
||||
|
||||
const char *
|
||||
terminfo_set_standout(int arg)
|
||||
{
|
||||
char *res = tiparm(arg ? enter_standout_mode : exit_standout_mode);
|
||||
|
||||
return res ?: "";
|
||||
}
|
||||
|
||||
int
|
||||
@ -91,6 +93,5 @@ terminfo_cursor_address(int y, int x)
|
||||
{
|
||||
char *res = tiparm(cursor_address, y, x);
|
||||
|
||||
if (res) return res;
|
||||
return "";
|
||||
return res ?: "";
|
||||
}
|
||||
|
@ -12,6 +12,8 @@ const char *terminfo_set_italics(int arg);
|
||||
const char *terminfo_set_underline(int arg);
|
||||
const char *terminfo_set_foreground(int arg);
|
||||
const char *terminfo_set_background(int arg);
|
||||
const char *terminfo_set_standout(int arg);
|
||||
|
||||
int terminfo_max_colors(void);
|
||||
const char *terminfo_cursor_address(int y, int x);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user