annotate readline/rltty.h @ 3783:4ab12d923395

[project @ 2001-02-07 08:23:27 by jwe]
author jwe
date Wed, 07 Feb 2001 08:23:27 +0000
parents f7e4a95916f2
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2996
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
1 /* rltty.h - tty driver-related definitions used by some library files. */
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
2
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
3 /* Copyright (C) 1995 Free Software Foundation, Inc.
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
4
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
5 This file contains the Readline Library (the Library), a set of
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
6 routines for providing Emacs style line input to programs that ask
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
7 for it.
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
8
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
9 The Library is free software; you can redistribute it and/or modify
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
10 it under the terms of the GNU General Public License as published by
3783
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
11 the Free Software Foundation; either version 2, or (at your option)
2996
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
12 any later version.
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
13
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
14 The Library is distributed in the hope that it will be useful, but
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
15 WITHOUT ANY WARRANTY; without even the implied warranty of
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
17 General Public License for more details.
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
18
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
19 The GNU General Public License is often shipped with GNU software, and
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
20 is generally kept in a file called COPYING or LICENSE. If you do not
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
21 have a copy of the license, write to the Free Software Foundation,
3284
f7e4a95916f2 [project @ 1999-10-13 21:37:04 by jwe]
jwe
parents: 2996
diff changeset
22 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
2996
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
23
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
24 #if !defined (_RLTTY_H_)
3783
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
25 #define _RLTTY_H_
2996
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
26
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
27 /* Posix systems use termios and the Posix signal functions. */
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
28 #if defined (TERMIOS_TTY_DRIVER)
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
29 # include <termios.h>
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
30 #endif /* TERMIOS_TTY_DRIVER */
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
31
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
32 /* System V machines use termio. */
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
33 #if defined (TERMIO_TTY_DRIVER)
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
34 # include <termio.h>
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
35 # if !defined (TCOON)
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
36 # define TCOON 1
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
37 # endif
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
38 #endif /* TERMIO_TTY_DRIVER */
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
39
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
40 /* Other (BSD) machines use sgtty. */
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
41 #if defined (NEW_TTY_DRIVER)
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
42 # include <sgtty.h>
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
43 #endif
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
44
3783
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
45 #include "rlwinsize.h"
2996
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
46
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
47 /* Define _POSIX_VDISABLE if we are not using the `new' tty driver and
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
48 it is not already defined. It is used both to determine if a
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
49 special character is disabled and to disable certain special
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
50 characters. Posix systems should set to 0, USG systems to -1. */
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
51 #if !defined (NEW_TTY_DRIVER) && !defined (_POSIX_VDISABLE)
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
52 # if defined (_SVR4_VDISABLE)
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
53 # define _POSIX_VDISABLE _SVR4_VDISABLE
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
54 # else
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
55 # if defined (_POSIX_VERSION)
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
56 # define _POSIX_VDISABLE 0
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
57 # else /* !_POSIX_VERSION */
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
58 # define _POSIX_VDISABLE -1
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
59 # endif /* !_POSIX_VERSION */
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
60 # endif /* !_SVR4_DISABLE */
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
61 #endif /* !NEW_TTY_DRIVER && !_POSIX_VDISABLE */
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
62
3783
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
63 typedef struct _rl_tty_chars {
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
64 char t_eof;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
65 char t_eol;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
66 char t_eol2;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
67 char t_erase;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
68 char t_werase;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
69 char t_kill;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
70 char t_reprint;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
71 char t_intr;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
72 char t_quit;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
73 char t_susp;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
74 char t_dsusp;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
75 char t_start;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
76 char t_stop;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
77 char t_lnext;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
78 char t_flush;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
79 char t_status;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
80 } _RL_TTY_CHARS;
4ab12d923395 [project @ 2001-02-07 08:23:27 by jwe]
jwe
parents: 3284
diff changeset
81
2996
9d4e3a9de17e [project @ 1997-05-22 20:58:07 by jwe]
jwe
parents:
diff changeset
82 #endif /* _RLTTY_H_ */