ed.decls.h revision 167465
1/* $Header: /p/tcsh/cvsroot/tcsh/ed.decls.h,v 3.44 2006/08/23 15:03:13 christos Exp $ */
2/*
3 * ed.decls.h: Editor external definitions
4 */
5/*-
6 * Copyright (c) 1980, 1991 The Regents of the University of California.
7 * All rights reserved.
8 *
9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions
11 * are met:
12 * 1. Redistributions of source code must retain the above copyright
13 *    notice, this list of conditions and the following disclaimer.
14 * 2. Redistributions in binary form must reproduce the above copyright
15 *    notice, this list of conditions and the following disclaimer in the
16 *    documentation and/or other materials provided with the distribution.
17 * 3. Neither the name of the University nor the names of its contributors
18 *    may be used to endorse or promote products derived from this software
19 *    without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 */
33#ifndef _h_ed_decls
34#define _h_ed_decls
35
36/*
37 * ed.chared.c
38 */
39extern	int	InsertStr		(Char *);
40extern	void	DeleteBack		(int);
41extern	void	SetKillRing		(int);
42extern	CCRETVAL GetHistLine		(void);
43
44/*
45 * ed.init.c
46 */
47#ifdef SIG_WINDOW
48extern	void	check_window_size	(int);
49extern	void	window_change		(int);
50#endif /* SIG_WINDOW */
51extern	int	ed_Setup		(int);
52extern	void	ed_Init			(void);
53extern	int	Cookedmode		(void);
54extern	int	Rawmode			(void);
55extern	void	ed_set_tty_eight_bit	(void);
56
57extern	void	QuoteModeOn		(void);
58extern	void	QuoteModeOff		(void);
59extern	void	ResetInLine		(int);
60extern	int	Load_input_line		(void);
61
62/*
63 * ed.term.c:
64 */
65extern	void	dosetty			(Char **, struct command *);
66extern	int	tty_getty 		(int, ttydata_t *);
67extern	int	tty_setty 		(int, ttydata_t *);
68extern	void	tty_getchar 		(ttydata_t *, unsigned char *);
69extern	void	tty_setchar 		(ttydata_t *, unsigned char *);
70extern	speed_t	tty_getspeed 		(ttydata_t *);
71extern	int	tty_gettabs 		(ttydata_t *);
72extern	int	tty_geteightbit		(ttydata_t *);
73extern	int	tty_cooked_mode		(ttydata_t *);
74#ifdef _IBMR2
75extern	void	tty_setdisc		(int, int);
76#endif /* _IBMR2 */
77
78/*
79 * ed.screen.c
80 */
81extern	void	terminit		(void);
82extern	void	SetAttributes		(Char);
83extern	void	so_write		(Char *, int);
84extern	void	ClearScreen		(void);
85extern	void	MoveToLine		(int);
86extern	void	MoveToChar		(int);
87extern	void	ClearEOL		(int);
88extern	void	Insert_write		(Char *, int);
89extern	void	DeleteChars		(int);
90extern	void	TellTC			(void);
91extern	void	SetTC			(char *, char *);
92extern	void	EchoTC			(Char **);
93extern	int 	SetArrowKeys		(const CStr *, XmapVal *, int);
94extern	int 	IsArrowKey		(Char *);
95extern	void	ResetArrowKeys		(void);
96extern	void	DefaultArrowKeys	(void);
97extern	int 	ClearArrowKeys		(const CStr *);
98extern	void 	PrintArrowKeys		(const CStr *);
99extern	void	BindArrowKeys		(void);
100extern	void	SoundBeep		(void);
101extern	int	CanWeTab		(void);
102extern	void	ChangeSize		(int, int);
103#ifdef SIG_WINDOW
104extern	int	GetSize			(int *, int *);
105#endif /* SIG_WINDOW */
106extern	void	ClearToBottom		(void);
107extern	void	GetTermCaps		(void);
108extern	void	StartHighlight		(void);
109extern	void	StopHighlight		(void);
110
111/*
112 * ed.defns.c
113 */
114extern	void	editinit		(void);
115extern	void	ed_InitNLSMaps		(void);
116#ifdef DEBUG_EDIT
117extern	void	CheckMaps		(void);
118#endif
119extern	void	ed_InitMaps		(void);
120extern	void	ed_InitEmacsMaps	(void);
121extern	void	ed_InitVIMaps		(void);
122
123extern  CCRETVAL	e_unassigned		(Char);
124extern	CCRETVAL	e_insert		(Char);
125extern	CCRETVAL	e_newline		(Char);
126extern	CCRETVAL	e_delprev		(Char);
127extern	CCRETVAL	e_delnext		(Char);
128/* added by mtk@ari.ncl.omron.co.jp (920818) */
129extern	CCRETVAL	e_delnext_eof		(Char);
130extern	CCRETVAL	e_delnext_list		(Char);
131extern	CCRETVAL	e_delnext_list_eof	(Char);	/* for ^D */
132extern	CCRETVAL	e_toend			(Char);
133extern	CCRETVAL	e_tobeg			(Char);
134extern	CCRETVAL	e_charback		(Char);
135extern	CCRETVAL	e_charfwd		(Char);
136extern	CCRETVAL	e_quote			(Char);
137extern	CCRETVAL	e_startover		(Char);
138extern	CCRETVAL	e_redisp		(Char);
139extern	CCRETVAL	e_wordback		(Char);
140extern	CCRETVAL	e_wordfwd		(Char);
141extern	CCRETVAL	v_wordbegnext		(Char);
142extern	CCRETVAL	e_uppercase		(Char);
143extern	CCRETVAL	e_lowercase		(Char);
144extern	CCRETVAL	e_capitolcase		(Char);
145extern	CCRETVAL	e_cleardisp		(Char);
146extern	CCRETVAL	e_complete		(Char);
147extern	CCRETVAL	e_correct		(Char);
148extern	CCRETVAL	e_correctl		(Char);
149extern	CCRETVAL	e_up_hist		(Char);
150extern	CCRETVAL	e_down_hist		(Char);
151extern	CCRETVAL	e_up_search_hist	(Char);
152extern	CCRETVAL	e_down_search_hist	(Char);
153extern	CCRETVAL	e_helpme		(Char);
154extern	CCRETVAL	e_list_choices		(Char);
155extern	CCRETVAL	e_delwordprev		(Char);
156extern	CCRETVAL	e_delwordnext		(Char);
157extern	CCRETVAL	e_digit			(Char);
158extern	CCRETVAL	e_argdigit		(Char);
159extern	CCRETVAL	v_zero			(Char);
160extern	CCRETVAL	e_killend		(Char);
161extern	CCRETVAL	e_killbeg		(Char);
162extern	CCRETVAL	e_metanext		(Char);
163#ifdef notdef
164extern	CCRETVAL	e_extendnext		(Char);
165#endif
166extern	CCRETVAL	e_send_eof		(Char);
167extern	CCRETVAL	e_charswitch		(Char);
168extern	CCRETVAL	e_gcharswitch		(Char);
169extern	CCRETVAL	e_which			(Char);
170extern	CCRETVAL	e_yank_kill		(Char);
171extern	CCRETVAL	e_tty_dsusp		(Char);
172extern	CCRETVAL	e_tty_flusho		(Char);
173extern	CCRETVAL	e_tty_quit		(Char);
174extern	CCRETVAL	e_tty_tsusp		(Char);
175extern	CCRETVAL	e_tty_stopo		(Char);
176extern	CCRETVAL	e_tty_starto		(Char);
177extern	CCRETVAL	e_argfour		(Char);
178extern	CCRETVAL	e_set_mark		(Char);
179extern	CCRETVAL	e_exchange_mark		(Char);
180extern	CCRETVAL	e_last_item		(Char);
181extern	CCRETVAL	v_cmd_mode		(Char);
182extern	CCRETVAL	v_insert		(Char);
183extern	CCRETVAL	v_replmode		(Char);
184extern	CCRETVAL	v_replone		(Char);
185extern	CCRETVAL	v_substline		(Char);
186extern	CCRETVAL	v_substchar		(Char);
187extern	CCRETVAL	v_add			(Char);
188extern	CCRETVAL	v_addend		(Char);
189extern	CCRETVAL	v_insbeg		(Char);
190extern	CCRETVAL	v_chgtoend		(Char);
191extern	CCRETVAL	e_killregion		(Char);
192extern	CCRETVAL	e_killall		(Char);
193extern	CCRETVAL	e_copyregion		(Char);
194extern	CCRETVAL	e_tty_int		(Char);
195extern	CCRETVAL	e_run_fg_editor		(Char);
196extern	CCRETVAL	e_list_eof		(Char);
197extern	CCRETVAL	e_expand_history	(Char);
198extern	CCRETVAL	e_magic_space		(Char);
199extern	CCRETVAL	e_list_glob		(Char);
200extern	CCRETVAL	e_expand_glob		(Char);
201extern	CCRETVAL	e_insovr		(Char);
202extern	CCRETVAL	v_cm_complete		(Char);
203extern	CCRETVAL	e_copyprev		(Char);
204extern	CCRETVAL	v_change_case		(Char);
205extern	CCRETVAL	e_expand		(Char);
206extern	CCRETVAL	e_expand_vars		(Char);
207extern	CCRETVAL	e_toggle_hist		(Char);
208extern  CCRETVAL        e_load_average		(Char);
209extern  CCRETVAL        v_delprev		(Char);
210extern  CCRETVAL        v_delmeta		(Char);
211extern  CCRETVAL        v_wordfwd		(Char);
212extern  CCRETVAL        v_wordback		(Char);
213extern  CCRETVAL        v_endword		(Char);
214extern  CCRETVAL        v_eword			(Char);
215extern  CCRETVAL        v_undo			(Char);
216extern  CCRETVAL        v_ush_meta		(Char);
217extern  CCRETVAL        v_dsh_meta		(Char);
218extern  CCRETVAL        v_rsrch_fwd		(Char);
219extern  CCRETVAL        v_rsrch_back		(Char);
220extern  CCRETVAL        v_char_fwd		(Char);
221extern  CCRETVAL        v_char_back		(Char);
222extern  CCRETVAL        v_chgmeta		(Char);
223extern	CCRETVAL	e_inc_fwd		(Char);
224extern	CCRETVAL	e_inc_back		(Char);
225extern	CCRETVAL	v_rchar_fwd		(Char);
226extern	CCRETVAL	v_rchar_back		(Char);
227extern  CCRETVAL        v_charto_fwd		(Char);
228extern  CCRETVAL        v_charto_back		(Char);
229extern  CCRETVAL        e_normalize_path	(Char);
230extern  CCRETVAL        e_normalize_command	(Char);
231extern  CCRETVAL        e_stuff_char		(Char);
232extern  CCRETVAL        e_list_all		(Char);
233extern  CCRETVAL        e_complete_all		(Char);
234extern  CCRETVAL        e_complete_fwd		(Char);
235extern  CCRETVAL        e_complete_back		(Char);
236extern  CCRETVAL        e_dabbrev_expand	(Char);
237extern  CCRETVAL	e_copy_to_clipboard	(Char);
238extern  CCRETVAL	e_paste_from_clipboard	(Char);
239extern  CCRETVAL	e_dosify_next		(Char);
240extern  CCRETVAL	e_dosify_prev		(Char);
241extern  CCRETVAL	e_page_up		(Char);
242extern  CCRETVAL	e_page_down		(Char);
243extern  CCRETVAL	e_yank_pop		(Char);
244extern  CCRETVAL	e_newline_hold		(Char);
245extern  CCRETVAL	e_newline_down_hist	(Char);
246
247/*
248 * ed.inputl.c
249 */
250extern	int	Inputl			(void);
251extern	int	GetNextChar		(Char *);
252extern	void    UngetNextChar		(Char);
253extern	void	PushMacro		(Char *);
254
255/*
256 * ed.refresh.c
257 */
258extern	void	ClearLines		(void);
259extern	void	ClearDisp		(void);
260extern	void	Refresh			(void);
261extern	void	RefCursor		(void);
262extern	void	RefPlusOne		(int);
263extern	void	PastBottom		(void);
264
265/*
266 * ed.xmap.c
267 */
268extern  XmapVal *XmapStr		(CStr *);
269extern  XmapVal *XmapCmd		(int);
270extern	void	 AddXkey		(const CStr *, XmapVal *, int);
271extern	void	 ClearXkey		(KEYCMD *, const CStr *);
272extern	int	 GetXkey		(CStr *, XmapVal *);
273extern	void	 ResetXmap		(void);
274extern	int	 DeleteXkey		(const CStr *);
275extern	void	 PrintXkey		(const CStr *);
276extern	void	 printOne		(const Char *, const XmapVal *, int);
277extern	eChar		  parseescape	(const Char **);
278extern	unsigned char    *unparsestring	(const CStr *, const Char *);
279
280#endif /* _h_ed_decls */
281