[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Windows style improvements
From: |
Gavin Smith |
Subject: |
Re: Windows style improvements |
Date: |
Sun, 29 Jan 2017 14:03:19 +0000 |
On 21 January 2017 at 08:07, Jason Hood <address@hidden> wrote:
> Attached is a patch to improve rendition on the Windows console.
> Windows 10 adds real underlining, so an addition to INFO_COLORS
> (a DOS/Windows environment variable to control text attributes)
> allows that to be used. Blink has changed from intense fore-
> ground to intense background (and fixes its hook). Colours will
> preserve
> the intensity of the normal attribute, with standout/
> bold/blink inverting it (my normal colour is intense, so now
> standout will use dim).
I've applied this with the following ChangeLog entry:
2017-01-29 Jason Hood <address@hidden>
* info/pcterm.c
(norm_attr, inv_attr, xref_attr, current_attr): Define as WORD
instead of SHORT.
(w32_info_prep): Enable underline, if available.
(highvideo):
(blinkvideo): Use intense background instead of intense
foreground.
(underline): New function.
(textcolor, textbackground): Include bit for underlined text
when calling 'textattr'.
(pc_begin_underline, pc_end_underline): Use underline if it is
available, instead of the colour blue.
(convert_color): Extract 'intensity' bit from argument.
(pc_set_fg_color): Include foreground intensity when calling
textcolor.
(pc_set_bg_color): Include background intensity when calling
textcolor.
(pc_initialize_terminal): Initialized the 'normattr' bit on
'xref_attr' from outside_info.normattr. Support underline in
INFO_COLORS. Set 'terminal_end_all_modes_hook' to
'pc_default_color' instead of 'pc_end_standout'.
* info/terminal.c (terminal_begin_blink): Use
'terminal_begin_blink_hook'.
I do not understand the code so I had trouble writing this. If you
have a better suggestion or can be more explicit, please be free to
mention it. The same goes for making the code clear and any comments
in the code explaining what it is doing. Please report if the code
doesn't work on other Windows or DOS systems. Thank you.