484
|
1 /* Interface from Emacs to terminfo.
|
64770
|
2 Copyright (C) 1985, 1986, 2002, 2003, 2004,
|
68651
|
3 2005, 2006 Free Software Foundation, Inc.
|
484
|
4
|
|
5 This file is part of GNU Emacs.
|
|
6
|
|
7 GNU Emacs is free software; you can redistribute it and/or modify
|
|
8 it under the terms of the GNU General Public License as published by
|
3427
|
9 the Free Software Foundation; either version 2, or (at your option)
|
484
|
10 any later version.
|
|
11
|
|
12 GNU Emacs is distributed in the hope that it will be useful,
|
|
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
15 GNU General Public License for more details.
|
|
16
|
|
17 You should have received a copy of the GNU General Public License
|
|
18 along with GNU Emacs; see the file COPYING. If not, write to
|
64084
|
19 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
20 Boston, MA 02110-1301, USA. */
|
484
|
21
|
16118
|
22 #include <config.h>
|
25324
|
23 #include "lisp.h"
|
16118
|
24
|
484
|
25 /* Define these variables that serve as global parameters to termcap,
|
|
26 so that we do not need to conditionalize the places in Emacs
|
|
27 that set them. */
|
|
28
|
|
29 char *UP, *BC, PC;
|
16118
|
30
|
484
|
31 /* Interface to curses/terminfo library.
|
|
32 Turns out that all of the terminfo-level routines look
|
|
33 like their termcap counterparts except for tparm, which replaces
|
|
34 tgoto. Not only is the calling sequence different, but the string
|
|
35 format is different too.
|
|
36 */
|
|
37
|
|
38 char *
|
|
39 tparam (string, outstring, len, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9)
|
|
40 char *string;
|
|
41 char *outstring;
|
48325
|
42 int len, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9;
|
484
|
43 {
|
|
44 char *temp;
|
|
45 extern char *tparm();
|
|
46
|
|
47 temp = tparm (string, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);
|
|
48 if (outstring == 0)
|
25324
|
49 outstring = ((char *) (xmalloc ((strlen (temp)) + 1)));
|
484
|
50 strcpy (outstring, temp);
|
|
51 return outstring;
|
|
52 }
|
52401
|
53
|
|
54 /* arch-tag: a6f96a69-e68f-4e9d-a223-f0b0da26ead5
|
|
55 (do not change this comment) */
|