Subject: bug#45824: 27.1; term/screen.el not loaded when TERM=screen.xterm-256color

From: Alex Hutcheson <[email-masked]>
Date: Tue, 12 Jan 2021 14:04:06 -0500

In some common configurations, GNU Screen sets
TERM=screen.xterm-256color.

In this case, the desired behavior from the user's perspective would be
for Emacs to load the term/screen.el library to perform terminal
initialization specific to screen.

However, Emacs doesn't do this, because the logic that parses TERM to
determine which library to load only considers hyphens and underscores
to be valid separators - not periods. Emacs instead looks for a file
named "screen.xterm.el", and doesn't find one.

The TERM parsing logic is documented at
https://www.gnu.org/software/emacs/manual/html_node/elisp/Terminal_002dSpecific.html
and the code is in `tty-find-type` within lisp/faces.el

The simple fix would be to also consider periods to be a valid separator
within this logic.

Alternatively, Emacs could add a special case for when TERM starts with
the literal "screen.".