Mercurial > emacs
comparison 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 |
comparison
equal
deleted
inserted
replaced
83126:14e5707213a6 | 83127:5182815e0ee1 |
---|---|
294 struct tty_display_info *tty; /* termchar.h */ | 294 struct tty_display_info *tty; /* termchar.h */ |
295 struct x_display_info *x; /* xterm.h */ | 295 struct x_display_info *x; /* xterm.h */ |
296 } display_info; | 296 } display_info; |
297 | 297 |
298 | 298 |
299 /* Coding-system to be used for encoding terminal output. This | |
300 structure contains information of a coding-system specified by | |
301 the function `set-terminal-coding-system'. Also see | |
302 `safe_terminal_coding' in coding.h. */ | |
303 struct coding_system *terminal_coding; | |
304 | |
305 /* Coding-system of what is sent from terminal keyboard. This | |
306 structure contains information of a coding-system specified by | |
307 the function `set-keyboard-coding-system'. */ | |
308 struct coding_system *keyboard_coding; | |
309 | |
299 /* Terminal characteristics. */ | 310 /* Terminal characteristics. */ |
300 /* XXX Are these really used on non-termcap displays? */ | 311 /* XXX Are these really used on non-termcap displays? */ |
301 | 312 |
302 int must_write_spaces; /* Nonzero means spaces in the text must | 313 int must_write_spaces; /* Nonzero means spaces in the text must |
303 actually be output; can't just skip over | 314 actually be output; can't just skip over |
527 #define FRAME_CHAR_INS_DEL_OK(f) ((f)->display->char_ins_del_ok) | 538 #define FRAME_CHAR_INS_DEL_OK(f) ((f)->display->char_ins_del_ok) |
528 #define FRAME_SCROLL_REGION_OK(f) ((f)->display->scroll_region_ok) | 539 #define FRAME_SCROLL_REGION_OK(f) ((f)->display->scroll_region_ok) |
529 #define FRAME_SCROLL_REGION_COST(f) ((f)->display->scroll_region_cost) | 540 #define FRAME_SCROLL_REGION_COST(f) ((f)->display->scroll_region_cost) |
530 #define FRAME_MEMORY_BELOW_FRAME(f) ((f)->display->memory_below_frame) | 541 #define FRAME_MEMORY_BELOW_FRAME(f) ((f)->display->memory_below_frame) |
531 | 542 |
543 #define FRAME_TERMINAL_CODING(f) ((f)->display->terminal_coding) | |
544 #define FRAME_KEYBOARD_CODING(f) ((f)->display->keyboard_coding) | |
545 | |
532 #define FRAME_RIF(f) ((f)->display->rif) | 546 #define FRAME_RIF(f) ((f)->display->rif) |
533 | 547 |
534 #define FRAME_DISPLAY(f) ((f)->display) | 548 #define FRAME_DISPLAY(f) ((f)->display) |
535 | 549 |
536 /* FRAME_WINDOW_P tests whether the frame is a window, and is | 550 /* FRAME_WINDOW_P tests whether the frame is a window, and is |