Function: set-input-meta-mode
set-input-meta-mode is a function defined in keyboard.c.
Signature
(set-input-meta-mode META &optional TERMINAL)
Documentation
Enable or disable 8-bit input on TERMINAL.
If META is t, Emacs will accept 8-bit input, and interpret the 8th bit as the Meta modifier before it decodes the characters.
If META is encoded, Emacs will interpret the 8th bit of single-byte
characters after decoding the characters.
If META is nil, Emacs will ignore the top bit, on the assumption it is parity.
Otherwise, Emacs will accept and pass through 8-bit input without specially interpreting the top bit.
This setting only has an effect on tty terminal devices.
Optional parameter TERMINAL specifies the tty terminal device to use. It may be a terminal object, a frame, or nil for the terminal used by the currently selected frame.
See also current-input-mode.
Source Code
// Defined in /usr/src/emacs/src/keyboard.c
{
struct terminal *t = decode_tty_terminal (terminal);
struct tty_display_info *tty;
int new_meta;
if (!t)
return Qnil;
tty = t->display_info.tty;
if (NILP (meta))
new_meta = 0;
else if (EQ (meta, Qt))
new_meta = 1;
else if (EQ (meta, Qencoded))
new_meta = 3;
else
new_meta = 2;
if (tty->meta_key != new_meta)
{
#ifndef DOS_NT
/* this causes startup screen to be restored and messes with the mouse */
reset_sys_modes (tty);
#endif
tty->meta_key = new_meta;
#ifndef DOS_NT
init_sys_modes (tty);
#endif
}
return Qnil;
}