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