view mac/inc/termio.h @ 83427:2afc49c9f0c0

Store local environment in frame (not terminal) parameters. * src/callproc.c (child_setup, getenv_internal, Fgetenv_internal): Store the local environment in a frame (not terminal) parameter. Update doc strings. (syms_of_callproc): Update doc strings. (Qenvironment): Moved to frame.c. * lisp/env.el (read-envvar-name, setenv, getenv, environment): Use frame parameters to store the local environment, not terminal parameters. * server.el (server-process-filter): Store the local environment in a frame (not terminal) parameter. Do not try to decode environment strings. * lisp/frame.el (make-frame): Set up the 'environment frame parameter, when needed. * src/frame.c (Qenvironment): Move here from callproc.c. (Fdelete_frame): Don't allow other frames to refer to a deleted frame in their 'environment parameter. (Fframe_with_environment): New function. (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment. * frame.h (Qenvironment): Declare. * lisp.h (Fframe_with_environment): EXFUN it. git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-467
author Karoly Lorentey <lorentey@elte.hu>
date Thu, 29 Dec 2005 04:31:04 +0000
parents 3723093a21fd
children 067115a6e738 2d92f5c9d6ae
line wrap: on
line source

/* Replacement termio.h file for building GNU Emacs on the Macintosh.
   Copyright (C) 1999, 2000, 2002, 2003, 2004,
      2005 Free Software Foundation, Inc.

This file is part of GNU Emacs.

GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.

GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with GNU Emacs; see the file COPYING.  If not, write to
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.  */

/* Contributed by Andrew Choi (akochoi@mac.com).  */

#ifndef _SYS_TERMIO_H
#define _SYS_TERMIO_H

typedef unsigned char cc_t;
typedef unsigned short tcflag_t;

#define NCCS 32

struct termio {
  tcflag_t c_iflag;		/* input modes */
  tcflag_t c_oflag;		/* output modes */
  tcflag_t c_cflag;		/* control modes */
  tcflag_t c_lflag;		/* local modes */
  cc_t c_cc[NCCS];		/* control chars */
};

/* c_cc subscript names */
#define VINTR 1
#define VQUIT 2
#define VERASE 3
#define VTIME 4
#define VMIN 5

/* c_iflag fields */
#define IGNBRK 0x1		/* ignore break condition */
#define ICRNL 0x2		/* map CR to NL on input */
#define IXON 0x4		/* enable start/stop output control */

/* c_oflag fields */
#define ONLCR 0x1		/* map CR to NL on output */
#define TABDLY 0x2		/* horizontal tab delays */
#define TAB3 0x4		/* expand tab to spaces */

/* c_cflag fields */
#define CBAUD 0x1
#define B9600 0x2

/* c_lflag fields */
#define ISIG 0x1		/* enable signals */
#define ICANON 0x2		/* canonical input (erase and kill processing) */
#define ECHO 0x3		/* enable echo */

#define TCSETAW 4
#define TCSETAF 5

#endif /* _SYS_TERMIO_H */

/* arch-tag: 0e7a100d-2ac0-412e-9dc4-52e39ef43e14
   (do not change this comment) */