emacs-gpu/doc/emacs
ewantown 2bca4ac0ed Support 24-bit TrueColor on MS-Windows console
* src/w32console.c (DEFAULTP, SSPRINTF, w32con_write_vt_seq)
(w32con_get_cursor_coords): New functions and macros.
(w32con_write_glyphs): Hide cursor before writing to the console.
Add code for writing in virtual-terminal mode when
'w32_use_virtual_terminal' is non-zero.
(w32con_write_glyphs_with_face): Add code for writing in
virtual-terminal mode when 'w32_use_virtual_terminal' is non-zero.
(w32con_setup_virtual_terminal): New function.
(w32con_set_terminal_modes): Call it.
(turn_on_face, turn_off_face): New functions.
(initialize_w32_display): Save background and foreground, and the
current TTY.
(Fset_screen_color): Accept an additional optional argument VTP;
if non-nil, arrange for 24-bit display to use the specified
colors.
(Fget_screen_color): Accept an additional optional argument VTP;
if non-nil, return colors used by 24-bit display.
(Fw32_use_virtual_terminal, Fw32_use_virtual_terminal_p): New
functions.
* src/term.c (tty_setup_colors) [WINDOWSNT]: Set up
virtual-terminal sequences for colors.
(init_tty) [WINDOWSNT]: Set up terminfo capabilities for Windows
virtual-terminal.
* src/xdisp.c (redisplay_internal): Don't call set_tty_color_mode
for WINDOWSNT.

* lisp/term/w32console.el (w32-tty-set-base-colors)
(w32-tty-define-base-colors, w32-tty-define-8bit-colors)
(w32-tty-define-24bit-colors, w32-tty-get-pixel): New functions.
(terminal-init-w32console): Remove color setup.
(w32-tty-setup-colors): New function.
* lisp/term/tty-colors.el (tty-color-mode-alist): Add --color
modes for 256 and 24-bit color modes.
* lisp/startup.el (tty-handle-args): Fix --color handling.
* lisp/faces.el (tty-set-up-initial-frame-faces): Set up colors
for MS-Windows consoles.

* etc/NEWS:
* doc/emacs/msdos.texi (Windows Misc):
* doc/emacs/cmdargs.texi (Colors X): Document 24-bit color support
on MS-Windows.
(Bug#79298)
2026-04-08 15:12:14 +03:00
..
abbrevs.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
ack.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
android.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
anti.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
arevert-xtra.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
back.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
basic.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
book-spine.texi
buffers.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
building.texi Document 'C-u M-x compile' (bug#80156) 2026-01-24 13:46:39 +02:00
cal-xtra.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
calendar.texi Support displaying more months in the calendar 2026-02-22 16:21:13 +02:00
ChangeLog.1 ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
cmdargs.texi Support 24-bit TrueColor on MS-Windows console 2026-04-08 15:12:14 +03:00
commands.texi ; Move documentation for multiple-terminals-merge-keyboards. 2026-03-03 11:14:10 +00:00
custom.texi New macro setopt-local and function set-local (bug#80709) 2026-04-02 13:47:36 -04:00
dired-xtra.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
dired.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
display.texi Support cons cell for 'line-spacing' 2026-01-24 13:32:44 +02:00
doclicense.texi
docstyle.texi
emacs-xtra.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
emacs.texi ; Revise short descriptions of EDE. 2026-02-25 13:21:58 +00:00
emacsver.texi.in
emerge-xtra.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
entering.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
files.texi ; * doc/emacs/files.texi (Time Stamps): Small wording fix. 2026-03-03 11:02:22 -08:00
fixit.texi ; Improve docs for last change. 2026-01-14 18:48:56 +00:00
fortran-xtra.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
frames.texi ; * doc/emacs/frames.texi (Multiple Displays): Improve markup. 2026-03-03 15:08:42 +02:00
glossary.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
gnu.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
gpl.texi
haiku.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
help.texi ; Fix order of @item and indices in help.texi 2026-01-10 12:43:17 +01:00
indent.texi ; Move unfill-paragraph to fill.el. Document it in (elisp)Filling. 2026-03-05 15:48:03 +00:00
input.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
killing.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
kmacro.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
m-x.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
macos.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
maintaining.texi Change "XREF" to "Xref" in mode lighter 2026-04-01 04:04:54 +03:00
Makefile.in ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
mark.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
mini.texi ; Update documentation due to a recent change 2026-01-15 08:36:46 +02:00
misc.texi ; Move documentation for multiple-terminals-merge-keyboards. 2026-03-03 11:14:10 +00:00
modes.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
msdos-xtra.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
msdos.texi Support 24-bit TrueColor on MS-Windows console 2026-04-08 15:12:14 +03:00
mule.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
package.texi Allow more fine configuration of package retention 2026-02-28 10:50:55 +01:00
picture-xtra.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
programs.texi hideshow: Fix 'hs-hide-block-behavior' set to 'after-cursor'. 2026-03-19 17:27:57 +02:00
regs.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
rmail.texi Make Rmail summary address display customizable 2026-02-21 19:30:25 +02:00
screen.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
search.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
sending.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
text.texi ; Move unfill-paragraph to fill.el. Document it in (elisp)Filling. 2026-03-05 15:48:03 +00:00
trouble.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
vc-xtra.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
vc1-xtra.texi ; * doc/emacs/vc1-xtra.texi (General VC Options): Fix a typo. 2026-03-05 19:43:16 +02:00
windows.texi ; Fix last change 2026-01-29 22:13:02 +02:00
xresources.texi ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00