diff src/termhooks.h @ 83127:5182815e0ee1

Make terminal_coding and keyboard_coding display-local. src/coding.c: Include frame.h and termhooks.h. (terminal_coding, keyboard_coding): Remove. (Fset_terminal_coding_system_internal, Fterminal_coding_system): Use the selected frame's terminal coding system. (Fset_safe_terminal_coding_system_internal): Fix typo. (Fset_keyboard_coding_system_internal, Fkeyboard_coding_system): Use the selected frame's keyboard coding system. (init_coding_once): Don't initialize keyboard_coding and terminal_coding. src/coding.h (terminal_coding, keyboard_coding): Remove. src/termhooks.h (terminal_coding, keyboard_coding): New members of struct display. (FRAME_TERMINAL_CODING, FRAME_KEYBOARD_CODING): New macros. src/termchar.h (kboard): Cosmetic change. src/term.c (encode_terminal_code): Add coding parameter. (tty_write_glyphs): Use the display-local terminal coding system. (create_display): Allocate and initialize coding systems. (delete_display): Free coding systems. src/xdisp.c (decode_mode_spec): Use display-local coding systems. src/Makefile.in: Fix dependencies for termchar.h and termhooks.h. git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-167
author Karoly Lorentey <lorentey@elte.hu>
date Sun, 23 May 2004 01:53:23 +0000
parents 4970ad4995f5
children 69ebc75cb461
line wrap: on
line diff
--- a/src/termhooks.h	Sat May 22 22:52:43 2004 +0000
+++ b/src/termhooks.h	Sun May 23 01:53:23 2004 +0000
@@ -296,6 +296,17 @@
   } display_info;
 
 
+  /* Coding-system to be used for encoding terminal output.  This
+     structure contains information of a coding-system specified by
+     the function `set-terminal-coding-system'.  Also see
+     `safe_terminal_coding' in coding.h.  */
+  struct coding_system *terminal_coding;
+
+  /* Coding-system of what is sent from terminal keyboard.  This
+     structure contains information of a coding-system specified by
+     the function `set-keyboard-coding-system'.  */
+  struct coding_system *keyboard_coding;
+
   /* Terminal characteristics. */
   /* XXX Are these really used on non-termcap displays? */
   
@@ -529,6 +540,9 @@
 #define FRAME_SCROLL_REGION_COST(f) ((f)->display->scroll_region_cost)
 #define FRAME_MEMORY_BELOW_FRAME(f) ((f)->display->memory_below_frame)
 
+#define FRAME_TERMINAL_CODING(f) ((f)->display->terminal_coding)
+#define FRAME_KEYBOARD_CODING(f) ((f)->display->keyboard_coding)
+
 #define FRAME_RIF(f) ((f)->display->rif)
 
 #define FRAME_DISPLAY(f) ((f)->display)