summaryrefslogtreecommitdiff
path: root/src/cm.c
diff options
context:
space:
mode:
authorKaroly Lorentey <lorentey@elte.hu>2004-02-28 01:23:39 +0000
committerKaroly Lorentey <lorentey@elte.hu>2004-02-28 01:23:39 +0000
commit0b0d3e0bcefdde298893aaad2e816e1503cef222 (patch)
tree439342044857514ad784de0470f5546eb9c3ef9a /src/cm.c
parent2fc0cf2aefa777e5fe48596e2d43774b28051931 (diff)
downloademacs-0b0d3e0bcefdde298893aaad2e816e1503cef222.tar.gz
Implemented suspending of emacsclient frames.
lib-src/emacsclient.c (quote_file_name): Renamed to quote_argument. (unquote_argument, handle_sigcont, handle_sigtstp): New functions. (out, in): New global variables for communicating with the Emacs process. (init_signals): Set up handlers for SIGCONT, SIGTSTP and SIGTTOU. (main): Changed out and in to global variables. Prepend `-eval' or '-file' to each argument. Use fsync to force sending the strings to Emacs. Removed obsolete -bad-version code. Support the -suspend command. Cleaned up newline handling. lisp/frame.el (suspend-frame): New function. Substitute key definition of suspend-emacs with suspend-frame. lisp/server.el (server-log): Cosmetic change in log format. (server-handle-delete-tty, server-handle-delete-frame): Added logging. (server-handle-suspend-tty, server-quote-arg): New functions. (server-start): Install server-handle-suspend-tty. (server-process-filter): Reorganized source code for clarity. Implemented -resume, -suspend and -ignore commands. lisp/term/x-win.el (x-initialize-window-system): Don't change the binding of C-z. src/cm.c: Replaced TTY_INPUT, TTY_OUTPUT, TTY_TERMSCRIPT calls with their macro expansion. src/dispnew.c: Ditto. src/frame.c: Ditto. src/keyboard.c: Ditto. src/sysdep.c: Ditto. src/keyboard.c (tty_read_avail_input): Don't read if the terminal is suspended. src/sysdep.c (discard_tty_input, init_sys_modes, reset_sys_modes): Ditto. src/term.c (tty_set_terminal_modes, tty_reset_terminal_modes): Ditto. src/term.c (Vsuspend_tty_functions, Vresume_tty_functions): New hooks. (syms_of_term): Defvar them. (term_init): Don't allow opening a new frame on a suspended tty device. (Fsuspend_tty, Fresume_tty): New functions. (syms_of_term): Defsubr them. src/termchar.c (struct tty_display_info): Update documentation of input and output. (TTY_INPUT, TTY_OUTPUT, TTY_TERMSCRIPT): Removed. git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-105
Diffstat (limited to 'src/cm.c')
-rw-r--r--src/cm.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/cm.c b/src/cm.c
index 5ce03483b06..9f9cc0e0a34 100644
--- a/src/cm.c
+++ b/src/cm.c
@@ -64,9 +64,9 @@ int
cmputc (c)
char c;
{
- if (TTY_TERMSCRIPT (current_tty))
- putc (c & 0177, TTY_TERMSCRIPT (current_tty));
- putc (c & 0177, TTY_OUTPUT (current_tty));
+ if (current_tty->termscript)
+ putc (c & 0177, current_tty->termscript);
+ putc (c & 0177, current_tty->output);
return c;
}
@@ -136,12 +136,12 @@ cmcheckmagic (struct tty_display_info *tty)
{
if (!MagicWrap (tty) || curY (tty) >= FrameRows (tty) - 1)
abort ();
- if (TTY_TERMSCRIPT (tty))
- putc ('\r', TTY_TERMSCRIPT (tty));
- putc ('\r', TTY_OUTPUT (tty));
- if (TTY_TERMSCRIPT (tty))
- putc ('\n', TTY_TERMSCRIPT (tty));
- putc ('\n', TTY_OUTPUT (tty));
+ if (tty->termscript)
+ putc ('\r', tty->termscript);
+ putc ('\r', tty->output);
+ if (tty->termscript)
+ putc ('\n', tty->termscript);
+ putc ('\n', tty->output);
curX (tty) = 0;
curY (tty)++;
}