xref: /freebsd/contrib/tcsh/ed.decls.h (revision 9122aeeaa60ee2a1381ea935d749194b32940e7a)
1c80476e4SDavid E. O'Brien /*
2c80476e4SDavid E. O'Brien  * ed.decls.h: Editor external definitions
3c80476e4SDavid E. O'Brien  */
4c80476e4SDavid E. O'Brien /*-
5c80476e4SDavid E. O'Brien  * Copyright (c) 1980, 1991 The Regents of the University of California.
6c80476e4SDavid E. O'Brien  * All rights reserved.
7c80476e4SDavid E. O'Brien  *
8c80476e4SDavid E. O'Brien  * Redistribution and use in source and binary forms, with or without
9c80476e4SDavid E. O'Brien  * modification, are permitted provided that the following conditions
10c80476e4SDavid E. O'Brien  * are met:
11c80476e4SDavid E. O'Brien  * 1. Redistributions of source code must retain the above copyright
12c80476e4SDavid E. O'Brien  *    notice, this list of conditions and the following disclaimer.
13c80476e4SDavid E. O'Brien  * 2. Redistributions in binary form must reproduce the above copyright
14c80476e4SDavid E. O'Brien  *    notice, this list of conditions and the following disclaimer in the
15c80476e4SDavid E. O'Brien  *    documentation and/or other materials provided with the distribution.
1629301572SMark Peek  * 3. Neither the name of the University nor the names of its contributors
17c80476e4SDavid E. O'Brien  *    may be used to endorse or promote products derived from this software
18c80476e4SDavid E. O'Brien  *    without specific prior written permission.
19c80476e4SDavid E. O'Brien  *
20c80476e4SDavid E. O'Brien  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21c80476e4SDavid E. O'Brien  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22c80476e4SDavid E. O'Brien  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23c80476e4SDavid E. O'Brien  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24c80476e4SDavid E. O'Brien  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25c80476e4SDavid E. O'Brien  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26c80476e4SDavid E. O'Brien  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27c80476e4SDavid E. O'Brien  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28c80476e4SDavid E. O'Brien  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29c80476e4SDavid E. O'Brien  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30c80476e4SDavid E. O'Brien  * SUCH DAMAGE.
31c80476e4SDavid E. O'Brien  */
32c80476e4SDavid E. O'Brien #ifndef _h_ed_decls
33c80476e4SDavid E. O'Brien #define _h_ed_decls
34c80476e4SDavid E. O'Brien 
35c80476e4SDavid E. O'Brien /*
36c80476e4SDavid E. O'Brien  * ed.chared.c
37c80476e4SDavid E. O'Brien  */
3845e5710bSMark Peek extern	int	InsertStr		(Char *);
39a15e6f9aSMark Peek extern	int	ExpandHistory		(void);
4045e5710bSMark Peek extern	void	DeleteBack		(int);
4145e5710bSMark Peek extern	void	SetKillRing		(int);
4245e5710bSMark Peek extern	CCRETVAL GetHistLine		(void);
43c80476e4SDavid E. O'Brien 
44c80476e4SDavid E. O'Brien /*
45c80476e4SDavid E. O'Brien  * ed.init.c
46c80476e4SDavid E. O'Brien  */
47c80476e4SDavid E. O'Brien #ifdef SIG_WINDOW
4845e5710bSMark Peek extern	void	check_window_size	(int);
4945e5710bSMark Peek extern	void	window_change		(int);
50c80476e4SDavid E. O'Brien #endif /* SIG_WINDOW */
5145e5710bSMark Peek extern	int	ed_Setup		(int);
5245e5710bSMark Peek extern	void	ed_Init			(void);
5345e5710bSMark Peek extern	int	Cookedmode		(void);
5445e5710bSMark Peek extern	int	Rawmode			(void);
5545e5710bSMark Peek extern	void	ed_set_tty_eight_bit	(void);
56c80476e4SDavid E. O'Brien 
5745e5710bSMark Peek extern	void	QuoteModeOn		(void);
5845e5710bSMark Peek extern	void	QuoteModeOff		(void);
5945e5710bSMark Peek extern	void	ResetInLine		(int);
6045e5710bSMark Peek extern	int	Load_input_line		(void);
61c80476e4SDavid E. O'Brien 
62c80476e4SDavid E. O'Brien /*
63c80476e4SDavid E. O'Brien  * ed.term.c:
64c80476e4SDavid E. O'Brien  */
6545e5710bSMark Peek extern	void	dosetty			(Char **, struct command *);
6645e5710bSMark Peek extern	int	tty_getty 		(int, ttydata_t *);
6745e5710bSMark Peek extern	int	tty_setty 		(int, ttydata_t *);
6845e5710bSMark Peek extern	void	tty_getchar 		(ttydata_t *, unsigned char *);
6945e5710bSMark Peek extern	void	tty_setchar 		(ttydata_t *, unsigned char *);
7045e5710bSMark Peek extern	speed_t	tty_getspeed 		(ttydata_t *);
7145e5710bSMark Peek extern	int	tty_gettabs 		(ttydata_t *);
7245e5710bSMark Peek extern	int	tty_geteightbit		(ttydata_t *);
7345e5710bSMark Peek extern	int	tty_cooked_mode		(ttydata_t *);
74c80476e4SDavid E. O'Brien #ifdef _IBMR2
7545e5710bSMark Peek extern	void	tty_setdisc		(int, int);
76c80476e4SDavid E. O'Brien #endif /* _IBMR2 */
77c80476e4SDavid E. O'Brien 
78c80476e4SDavid E. O'Brien /*
79c80476e4SDavid E. O'Brien  * ed.screen.c
80c80476e4SDavid E. O'Brien  */
8145e5710bSMark Peek extern	void	terminit		(void);
8245e5710bSMark Peek extern	void	SetAttributes		(Char);
8345e5710bSMark Peek extern	void	so_write		(Char *, int);
8445e5710bSMark Peek extern	void	ClearScreen		(void);
8545e5710bSMark Peek extern	void	MoveToLine		(int);
8645e5710bSMark Peek extern	void	MoveToChar		(int);
8745e5710bSMark Peek extern	void	ClearEOL		(int);
8845e5710bSMark Peek extern	void	Insert_write		(Char *, int);
8945e5710bSMark Peek extern	void	DeleteChars		(int);
9045e5710bSMark Peek extern	void	TellTC			(void);
9145e5710bSMark Peek extern	void	SetTC			(char *, char *);
9245e5710bSMark Peek extern	void	EchoTC			(Char **);
9345e5710bSMark Peek extern	int 	SetArrowKeys		(const CStr *, XmapVal *, int);
9445e5710bSMark Peek extern	int 	IsArrowKey		(Char *);
9545e5710bSMark Peek extern	void	ResetArrowKeys		(void);
9645e5710bSMark Peek extern	void	DefaultArrowKeys	(void);
9745e5710bSMark Peek extern	int 	ClearArrowKeys		(const CStr *);
9845e5710bSMark Peek extern	void 	PrintArrowKeys		(const CStr *);
9945e5710bSMark Peek extern	void	BindArrowKeys		(void);
10045e5710bSMark Peek extern	void	SoundBeep		(void);
10145e5710bSMark Peek extern	int	CanWeTab		(void);
10245e5710bSMark Peek extern	void	ChangeSize		(int, int);
103c80476e4SDavid E. O'Brien #ifdef SIG_WINDOW
10445e5710bSMark Peek extern	int	GetSize			(int *, int *);
105c80476e4SDavid E. O'Brien #endif /* SIG_WINDOW */
10645e5710bSMark Peek extern	void	ClearToBottom		(void);
10745e5710bSMark Peek extern	void	GetTermCaps		(void);
10845e5710bSMark Peek extern	void	StartHighlight		(void);
10945e5710bSMark Peek extern	void	StopHighlight		(void);
110c80476e4SDavid E. O'Brien 
111c80476e4SDavid E. O'Brien /*
112c80476e4SDavid E. O'Brien  * ed.defns.c
113c80476e4SDavid E. O'Brien  */
11445e5710bSMark Peek extern	void	editinit		(void);
11545e5710bSMark Peek extern	void	ed_InitNLSMaps		(void);
116c80476e4SDavid E. O'Brien #ifdef DEBUG_EDIT
11745e5710bSMark Peek extern	void	CheckMaps		(void);
118c80476e4SDavid E. O'Brien #endif
11945e5710bSMark Peek extern	void	ed_InitMaps		(void);
12045e5710bSMark Peek extern	void	ed_InitEmacsMaps	(void);
12145e5710bSMark Peek extern	void	ed_InitVIMaps		(void);
122c80476e4SDavid E. O'Brien 
12345e5710bSMark Peek extern  CCRETVAL	e_unassigned		(Char);
12445e5710bSMark Peek extern	CCRETVAL	e_insert		(Char);
12545e5710bSMark Peek extern	CCRETVAL	e_newline		(Char);
12645e5710bSMark Peek extern	CCRETVAL	e_delprev		(Char);
12745e5710bSMark Peek extern	CCRETVAL	e_delnext		(Char);
128c80476e4SDavid E. O'Brien /* added by mtk@ari.ncl.omron.co.jp (920818) */
12945e5710bSMark Peek extern	CCRETVAL	e_delnext_eof		(Char);
13045e5710bSMark Peek extern	CCRETVAL	e_delnext_list		(Char);
13145e5710bSMark Peek extern	CCRETVAL	e_delnext_list_eof	(Char);	/* for ^D */
13245e5710bSMark Peek extern	CCRETVAL	e_toend			(Char);
13345e5710bSMark Peek extern	CCRETVAL	e_tobeg			(Char);
13445e5710bSMark Peek extern	CCRETVAL	e_charback		(Char);
13545e5710bSMark Peek extern	CCRETVAL	e_charfwd		(Char);
13645e5710bSMark Peek extern	CCRETVAL	e_quote			(Char);
13745e5710bSMark Peek extern	CCRETVAL	e_startover		(Char);
13845e5710bSMark Peek extern	CCRETVAL	e_redisp		(Char);
13945e5710bSMark Peek extern	CCRETVAL	e_wordback		(Char);
14045e5710bSMark Peek extern	CCRETVAL	e_wordfwd		(Char);
14145e5710bSMark Peek extern	CCRETVAL	v_wordbegnext		(Char);
14245e5710bSMark Peek extern	CCRETVAL	e_uppercase		(Char);
14345e5710bSMark Peek extern	CCRETVAL	e_lowercase		(Char);
14419d2e3deSDmitry Chagin extern	CCRETVAL	e_capitalcase		(Char);
14545e5710bSMark Peek extern	CCRETVAL	e_cleardisp		(Char);
14645e5710bSMark Peek extern	CCRETVAL	e_complete		(Char);
14745e5710bSMark Peek extern	CCRETVAL	e_correct		(Char);
14845e5710bSMark Peek extern	CCRETVAL	e_correctl		(Char);
14945e5710bSMark Peek extern	CCRETVAL	e_up_hist		(Char);
15045e5710bSMark Peek extern	CCRETVAL	e_down_hist		(Char);
15145e5710bSMark Peek extern	CCRETVAL	e_up_search_hist	(Char);
15245e5710bSMark Peek extern	CCRETVAL	e_down_search_hist	(Char);
15345e5710bSMark Peek extern	CCRETVAL	e_helpme		(Char);
15445e5710bSMark Peek extern	CCRETVAL	e_list_choices		(Char);
15545e5710bSMark Peek extern	CCRETVAL	e_delwordprev		(Char);
15645e5710bSMark Peek extern	CCRETVAL	e_delwordnext		(Char);
15745e5710bSMark Peek extern	CCRETVAL	e_digit			(Char);
15845e5710bSMark Peek extern	CCRETVAL	e_argdigit		(Char);
15945e5710bSMark Peek extern	CCRETVAL	v_zero			(Char);
16045e5710bSMark Peek extern	CCRETVAL	e_killend		(Char);
16145e5710bSMark Peek extern	CCRETVAL	e_killbeg		(Char);
16245e5710bSMark Peek extern	CCRETVAL	e_metanext		(Char);
163c80476e4SDavid E. O'Brien #ifdef notdef
16445e5710bSMark Peek extern	CCRETVAL	e_extendnext		(Char);
165c80476e4SDavid E. O'Brien #endif
16645e5710bSMark Peek extern	CCRETVAL	e_send_eof		(Char);
16745e5710bSMark Peek extern	CCRETVAL	e_charswitch		(Char);
16845e5710bSMark Peek extern	CCRETVAL	e_gcharswitch		(Char);
16945e5710bSMark Peek extern	CCRETVAL	e_which			(Char);
17045e5710bSMark Peek extern	CCRETVAL	e_yank_kill		(Char);
17145e5710bSMark Peek extern	CCRETVAL	e_tty_dsusp		(Char);
17245e5710bSMark Peek extern	CCRETVAL	e_tty_flusho		(Char);
17345e5710bSMark Peek extern	CCRETVAL	e_tty_quit		(Char);
17445e5710bSMark Peek extern	CCRETVAL	e_tty_tsusp		(Char);
17545e5710bSMark Peek extern	CCRETVAL	e_tty_stopo		(Char);
17645e5710bSMark Peek extern	CCRETVAL	e_tty_starto		(Char);
17745e5710bSMark Peek extern	CCRETVAL	e_argfour		(Char);
17845e5710bSMark Peek extern	CCRETVAL	e_set_mark		(Char);
17945e5710bSMark Peek extern	CCRETVAL	e_exchange_mark		(Char);
18045e5710bSMark Peek extern	CCRETVAL	e_last_item		(Char);
18145e5710bSMark Peek extern	CCRETVAL	v_cmd_mode		(Char);
18245e5710bSMark Peek extern	CCRETVAL	v_insert		(Char);
18345e5710bSMark Peek extern	CCRETVAL	v_replmode		(Char);
18445e5710bSMark Peek extern	CCRETVAL	v_replone		(Char);
18545e5710bSMark Peek extern	CCRETVAL	v_substline		(Char);
18645e5710bSMark Peek extern	CCRETVAL	v_substchar		(Char);
18745e5710bSMark Peek extern	CCRETVAL	v_add			(Char);
18845e5710bSMark Peek extern	CCRETVAL	v_addend		(Char);
18945e5710bSMark Peek extern	CCRETVAL	v_insbeg		(Char);
19045e5710bSMark Peek extern	CCRETVAL	v_chgtoend		(Char);
19145e5710bSMark Peek extern	CCRETVAL	e_killregion		(Char);
19245e5710bSMark Peek extern	CCRETVAL	e_killall		(Char);
19345e5710bSMark Peek extern	CCRETVAL	e_copyregion		(Char);
19445e5710bSMark Peek extern	CCRETVAL	e_tty_int		(Char);
19545e5710bSMark Peek extern	CCRETVAL	e_run_fg_editor		(Char);
19645e5710bSMark Peek extern	CCRETVAL	e_list_eof		(Char);
197a15e6f9aSMark Peek extern	int     	e_expand_history_rne	(Char);
19845e5710bSMark Peek extern	CCRETVAL	e_expand_history	(Char);
19945e5710bSMark Peek extern	CCRETVAL	e_magic_space		(Char);
20045e5710bSMark Peek extern	CCRETVAL	e_list_glob		(Char);
20145e5710bSMark Peek extern	CCRETVAL	e_expand_glob		(Char);
20245e5710bSMark Peek extern	CCRETVAL	e_insovr		(Char);
20345e5710bSMark Peek extern	CCRETVAL	v_cm_complete		(Char);
20445e5710bSMark Peek extern	CCRETVAL	e_copyprev		(Char);
20545e5710bSMark Peek extern	CCRETVAL	v_change_case		(Char);
20645e5710bSMark Peek extern	CCRETVAL	e_expand		(Char);
20745e5710bSMark Peek extern	CCRETVAL	e_expand_vars		(Char);
20845e5710bSMark Peek extern	CCRETVAL	e_toggle_hist		(Char);
20945e5710bSMark Peek extern  CCRETVAL        e_load_average		(Char);
21045e5710bSMark Peek extern  CCRETVAL        v_delprev		(Char);
21145e5710bSMark Peek extern  CCRETVAL        v_delmeta		(Char);
21245e5710bSMark Peek extern  CCRETVAL        v_wordfwd		(Char);
21345e5710bSMark Peek extern  CCRETVAL        v_wordback		(Char);
21445e5710bSMark Peek extern  CCRETVAL        v_endword		(Char);
21545e5710bSMark Peek extern  CCRETVAL        v_eword			(Char);
21645e5710bSMark Peek extern  CCRETVAL        v_undo			(Char);
21745e5710bSMark Peek extern  CCRETVAL        v_ush_meta		(Char);
21845e5710bSMark Peek extern  CCRETVAL        v_dsh_meta		(Char);
21945e5710bSMark Peek extern  CCRETVAL        v_rsrch_fwd		(Char);
22045e5710bSMark Peek extern  CCRETVAL        v_rsrch_back		(Char);
22145e5710bSMark Peek extern  CCRETVAL        v_char_fwd		(Char);
22245e5710bSMark Peek extern  CCRETVAL        v_char_back		(Char);
22345e5710bSMark Peek extern  CCRETVAL        v_chgmeta		(Char);
22445e5710bSMark Peek extern	CCRETVAL	e_inc_fwd		(Char);
22545e5710bSMark Peek extern	CCRETVAL	e_inc_back		(Char);
22645e5710bSMark Peek extern	CCRETVAL	v_rchar_fwd		(Char);
22745e5710bSMark Peek extern	CCRETVAL	v_rchar_back		(Char);
22845e5710bSMark Peek extern  CCRETVAL        v_charto_fwd		(Char);
22945e5710bSMark Peek extern  CCRETVAL        v_charto_back		(Char);
23045e5710bSMark Peek extern  CCRETVAL        e_normalize_path	(Char);
23145e5710bSMark Peek extern  CCRETVAL        e_normalize_command	(Char);
23245e5710bSMark Peek extern  CCRETVAL        e_stuff_char		(Char);
23345e5710bSMark Peek extern  CCRETVAL        e_list_all		(Char);
23445e5710bSMark Peek extern  CCRETVAL        e_complete_all		(Char);
23545e5710bSMark Peek extern  CCRETVAL        e_complete_fwd		(Char);
23645e5710bSMark Peek extern  CCRETVAL        e_complete_back		(Char);
23745e5710bSMark Peek extern  CCRETVAL        e_dabbrev_expand	(Char);
23845e5710bSMark Peek extern  CCRETVAL	e_copy_to_clipboard	(Char);
23945e5710bSMark Peek extern  CCRETVAL	e_paste_from_clipboard	(Char);
24045e5710bSMark Peek extern  CCRETVAL	e_dosify_next		(Char);
24145e5710bSMark Peek extern  CCRETVAL	e_dosify_prev		(Char);
24245e5710bSMark Peek extern  CCRETVAL	e_page_up		(Char);
24345e5710bSMark Peek extern  CCRETVAL	e_page_down		(Char);
24445e5710bSMark Peek extern  CCRETVAL	e_yank_pop		(Char);
24545e5710bSMark Peek extern  CCRETVAL	e_newline_hold		(Char);
24645e5710bSMark Peek extern  CCRETVAL	e_newline_down_hist	(Char);
247c80476e4SDavid E. O'Brien 
248c80476e4SDavid E. O'Brien /*
249c80476e4SDavid E. O'Brien  * ed.inputl.c
250c80476e4SDavid E. O'Brien  */
25145e5710bSMark Peek extern	int	Inputl			(void);
252*cc698b49SBrooks Davis extern	int	GetCmdChar		(Char);
25345e5710bSMark Peek extern	int	GetNextChar		(Char *);
25445e5710bSMark Peek extern	void    UngetNextChar		(Char);
25545e5710bSMark Peek extern	void	PushMacro		(Char *);
256c80476e4SDavid E. O'Brien 
257c80476e4SDavid E. O'Brien /*
258c80476e4SDavid E. O'Brien  * ed.refresh.c
259c80476e4SDavid E. O'Brien  */
26045e5710bSMark Peek extern	void	ClearLines		(void);
26145e5710bSMark Peek extern	void	ClearDisp		(void);
26245e5710bSMark Peek extern	void	Refresh			(void);
26345e5710bSMark Peek extern	void	RefCursor		(void);
26445e5710bSMark Peek extern	void	RefPlusOne		(int);
26545e5710bSMark Peek extern	void	PastBottom		(void);
266c80476e4SDavid E. O'Brien 
267c80476e4SDavid E. O'Brien /*
268c80476e4SDavid E. O'Brien  * ed.xmap.c
269c80476e4SDavid E. O'Brien  */
27045e5710bSMark Peek extern  XmapVal *XmapStr		(CStr *);
27145e5710bSMark Peek extern  XmapVal *XmapCmd		(int);
27245e5710bSMark Peek extern	void	 AddXkey		(const CStr *, XmapVal *, int);
27345e5710bSMark Peek extern	void	 ClearXkey		(KEYCMD *, const CStr *);
27445e5710bSMark Peek extern	int	 GetXkey		(CStr *, XmapVal *);
27545e5710bSMark Peek extern	void	 ResetXmap		(void);
27645e5710bSMark Peek extern	int	 DeleteXkey		(const CStr *);
27745e5710bSMark Peek extern	void	 PrintXkey		(const CStr *);
27845e5710bSMark Peek extern	void	 printOne		(const Char *, const XmapVal *, int);
27945e5710bSMark Peek extern	eChar		  parseescape	(const Char **);
28045e5710bSMark Peek extern	unsigned char    *unparsestring	(const CStr *, const Char *);
281c80476e4SDavid E. O'Brien 
282c80476e4SDavid E. O'Brien #endif /* _h_ed_decls */
283