[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master 58de11f: Document the last change
From: |
Eli Zaretskii |
Subject: |
master 58de11f: Document the last change |
Date: |
Sat, 5 Jun 2021 10:18:16 -0400 (EDT) |
branch: master
commit 58de11fe1339a1248f9b0bccb3a3601a9d8f56c6
Author: Eli Zaretskii <eliz@gnu.org>
Commit: Eli Zaretskii <eliz@gnu.org>
Document the last change
* doc/lispref/os.texi (Input Modes): Document the changes in the
values of the META flag.
* etc/NEWS: Call out the change in input-meta-mode.
---
doc/lispref/os.texi | 22 +++++++++++++++-------
etc/NEWS | 11 +++++++++++
2 files changed, 26 insertions(+), 7 deletions(-)
diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi
index 37fde0a..242c5ed 100644
--- a/doc/lispref/os.texi
+++ b/doc/lispref/os.texi
@@ -2369,11 +2369,17 @@ has no effect except in @sc{cbreak} mode.
The argument @var{meta} controls support for input character codes
above 127. If @var{meta} is @code{t}, Emacs converts characters with
-the 8th bit set into Meta characters. If @var{meta} is @code{nil},
+the 8th bit set into Meta characters, before it decodes them as needed
+(@pxref{Terminal I/O Encoding}). If @var{meta} is @code{nil},
Emacs disregards the 8th bit; this is necessary when the terminal uses
-it as a parity bit. If @var{meta} is neither @code{t} nor @code{nil},
-Emacs uses all 8 bits of input unchanged. This is good for terminals
-that use 8-bit character sets.
+it as a parity bit. If @var{meta} is the symbol @code{encoded}, Emacs
+first decodes the characters using all the 8 bits of each byte, and
+then converts the decoded single-byte characters into Meta characters
+if they have their eighth bit set. Finally, if @var{meta} is neither
+@code{t} nor @code{nil} nor @code{encoded}, Emacs uses all 8 bits of
+input unchanged, both before and after decoding them. This is good
+for terminals that use 8-bit character sets and don't encode the Meta
+modifier as the eighth bit.
If @var{quit-char} is non-@code{nil}, it specifies the character to
use for quitting. Normally this character is @kbd{C-g}.
@@ -2398,9 +2404,11 @@ flow control for output to the terminal. This value is
meaningful only
when @var{interrupt} is @code{nil}.
@item meta
is @code{t} if Emacs treats the eighth bit of input characters as
-the meta bit; @code{nil} means Emacs clears the eighth bit of every
-input character; any other value means Emacs uses all eight bits as the
-basic character code.
+the Meta bit before decoding input; @code{encoded} if Emacs treats the
+eighth bit of the decoded single-byte characters as the Meta bit;
+@code{nil} if Emacs clears the eighth bit of every input character;
+any other value means Emacs uses all eight bits as the basic character
+code.
@item quit
is the character Emacs currently uses for quitting, usually @kbd{C-g}.
@end table
diff --git a/etc/NEWS b/etc/NEWS
index e782603..7d53eaf 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -295,6 +295,17 @@ default, 9.5 MiB). Press '?' or 'C-h' in that prompt to
read more
about the different options to visit a file, how you can disable the
prompt, and how you can tweak the file size threshold.
++++
+** Improved support for terminal emulators that encode the Meta flag.
+Some terminal emulators set the 8th bit of Meta characters, and then
+encode the resulting character code as if it were non-ASCII character
+above codepoint 127. Previously, the only way of using these in Emacs
+was to set up the terminal emulator to use the ESC characters to send
+Meta characters to Emacs, e.g., send "ESC x" when the user types
+'M-x'. You can now avoid the need for this setup of such terminal
+emulators by using the new input-meta-mode with the special value
+'encoded' with these terminal emulators.
+
* Editing Changes in Emacs 28.1
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master 58de11f: Document the last change,
Eli Zaretskii <=