159243Sobrien/* 259243Sobrien * ed.decls.h: Editor external definitions 359243Sobrien */ 459243Sobrien/*- 559243Sobrien * Copyright (c) 1980, 1991 The Regents of the University of California. 659243Sobrien * All rights reserved. 759243Sobrien * 859243Sobrien * Redistribution and use in source and binary forms, with or without 959243Sobrien * modification, are permitted provided that the following conditions 1059243Sobrien * are met: 1159243Sobrien * 1. Redistributions of source code must retain the above copyright 1259243Sobrien * notice, this list of conditions and the following disclaimer. 1359243Sobrien * 2. Redistributions in binary form must reproduce the above copyright 1459243Sobrien * notice, this list of conditions and the following disclaimer in the 1559243Sobrien * documentation and/or other materials provided with the distribution. 16100616Smp * 3. Neither the name of the University nor the names of its contributors 1759243Sobrien * may be used to endorse or promote products derived from this software 1859243Sobrien * without specific prior written permission. 1959243Sobrien * 2059243Sobrien * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 2159243Sobrien * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2259243Sobrien * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 2359243Sobrien * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 2459243Sobrien * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 2559243Sobrien * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2659243Sobrien * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2759243Sobrien * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2859243Sobrien * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2959243Sobrien * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 3059243Sobrien * SUCH DAMAGE. 3159243Sobrien */ 3259243Sobrien#ifndef _h_ed_decls 3359243Sobrien#define _h_ed_decls 3459243Sobrien 3559243Sobrien/* 3659243Sobrien * ed.chared.c 3759243Sobrien */ 38167465Smpextern int InsertStr (Char *); 39195609Smpextern int ExpandHistory (void); 40167465Smpextern void DeleteBack (int); 41167465Smpextern void SetKillRing (int); 42167465Smpextern CCRETVAL GetHistLine (void); 4359243Sobrien 4459243Sobrien/* 4559243Sobrien * ed.init.c 4659243Sobrien */ 4759243Sobrien#ifdef SIG_WINDOW 48167465Smpextern void check_window_size (int); 49167465Smpextern void window_change (int); 5059243Sobrien#endif /* SIG_WINDOW */ 51167465Smpextern int ed_Setup (int); 52167465Smpextern void ed_Init (void); 53167465Smpextern int Cookedmode (void); 54167465Smpextern int Rawmode (void); 55167465Smpextern void ed_set_tty_eight_bit (void); 5659243Sobrien 57167465Smpextern void QuoteModeOn (void); 58167465Smpextern void QuoteModeOff (void); 59167465Smpextern void ResetInLine (int); 60167465Smpextern int Load_input_line (void); 6159243Sobrien 6259243Sobrien/* 6359243Sobrien * ed.term.c: 6459243Sobrien */ 65167465Smpextern void dosetty (Char **, struct command *); 66167465Smpextern int tty_getty (int, ttydata_t *); 67167465Smpextern int tty_setty (int, ttydata_t *); 68167465Smpextern void tty_getchar (ttydata_t *, unsigned char *); 69167465Smpextern void tty_setchar (ttydata_t *, unsigned char *); 70167465Smpextern speed_t tty_getspeed (ttydata_t *); 71167465Smpextern int tty_gettabs (ttydata_t *); 72167465Smpextern int tty_geteightbit (ttydata_t *); 73167465Smpextern int tty_cooked_mode (ttydata_t *); 7459243Sobrien#ifdef _IBMR2 75167465Smpextern void tty_setdisc (int, int); 7659243Sobrien#endif /* _IBMR2 */ 7759243Sobrien 7859243Sobrien/* 7959243Sobrien * ed.screen.c 8059243Sobrien */ 81167465Smpextern void terminit (void); 82167465Smpextern void SetAttributes (Char); 83167465Smpextern void so_write (Char *, int); 84167465Smpextern void ClearScreen (void); 85167465Smpextern void MoveToLine (int); 86167465Smpextern void MoveToChar (int); 87167465Smpextern void ClearEOL (int); 88167465Smpextern void Insert_write (Char *, int); 89167465Smpextern void DeleteChars (int); 90167465Smpextern void TellTC (void); 91167465Smpextern void SetTC (char *, char *); 92167465Smpextern void EchoTC (Char **); 93167465Smpextern int SetArrowKeys (const CStr *, XmapVal *, int); 94167465Smpextern int IsArrowKey (Char *); 95167465Smpextern void ResetArrowKeys (void); 96167465Smpextern void DefaultArrowKeys (void); 97167465Smpextern int ClearArrowKeys (const CStr *); 98167465Smpextern void PrintArrowKeys (const CStr *); 99167465Smpextern void BindArrowKeys (void); 100167465Smpextern void SoundBeep (void); 101167465Smpextern int CanWeTab (void); 102167465Smpextern void ChangeSize (int, int); 10359243Sobrien#ifdef SIG_WINDOW 104167465Smpextern int GetSize (int *, int *); 10559243Sobrien#endif /* SIG_WINDOW */ 106167465Smpextern void ClearToBottom (void); 107167465Smpextern void GetTermCaps (void); 108167465Smpextern void StartHighlight (void); 109167465Smpextern void StopHighlight (void); 11059243Sobrien 11159243Sobrien/* 11259243Sobrien * ed.defns.c 11359243Sobrien */ 114167465Smpextern void editinit (void); 115167465Smpextern void ed_InitNLSMaps (void); 11659243Sobrien#ifdef DEBUG_EDIT 117167465Smpextern void CheckMaps (void); 11859243Sobrien#endif 119167465Smpextern void ed_InitMaps (void); 120167465Smpextern void ed_InitEmacsMaps (void); 121167465Smpextern void ed_InitVIMaps (void); 12259243Sobrien 123167465Smpextern CCRETVAL e_unassigned (Char); 124167465Smpextern CCRETVAL e_insert (Char); 125167465Smpextern CCRETVAL e_newline (Char); 126167465Smpextern CCRETVAL e_delprev (Char); 127167465Smpextern CCRETVAL e_delnext (Char); 12859243Sobrien/* added by mtk@ari.ncl.omron.co.jp (920818) */ 129167465Smpextern CCRETVAL e_delnext_eof (Char); 130167465Smpextern CCRETVAL e_delnext_list (Char); 131167465Smpextern CCRETVAL e_delnext_list_eof (Char); /* for ^D */ 132167465Smpextern CCRETVAL e_toend (Char); 133167465Smpextern CCRETVAL e_tobeg (Char); 134167465Smpextern CCRETVAL e_charback (Char); 135167465Smpextern CCRETVAL e_charfwd (Char); 136167465Smpextern CCRETVAL e_quote (Char); 137167465Smpextern CCRETVAL e_startover (Char); 138167465Smpextern CCRETVAL e_redisp (Char); 139167465Smpextern CCRETVAL e_wordback (Char); 140167465Smpextern CCRETVAL e_wordfwd (Char); 141167465Smpextern CCRETVAL v_wordbegnext (Char); 142167465Smpextern CCRETVAL e_uppercase (Char); 143167465Smpextern CCRETVAL e_lowercase (Char); 144316957Sdchaginextern CCRETVAL e_capitalcase (Char); 145167465Smpextern CCRETVAL e_cleardisp (Char); 146167465Smpextern CCRETVAL e_complete (Char); 147167465Smpextern CCRETVAL e_correct (Char); 148167465Smpextern CCRETVAL e_correctl (Char); 149167465Smpextern CCRETVAL e_up_hist (Char); 150167465Smpextern CCRETVAL e_down_hist (Char); 151167465Smpextern CCRETVAL e_up_search_hist (Char); 152167465Smpextern CCRETVAL e_down_search_hist (Char); 153167465Smpextern CCRETVAL e_helpme (Char); 154167465Smpextern CCRETVAL e_list_choices (Char); 155167465Smpextern CCRETVAL e_delwordprev (Char); 156167465Smpextern CCRETVAL e_delwordnext (Char); 157167465Smpextern CCRETVAL e_digit (Char); 158167465Smpextern CCRETVAL e_argdigit (Char); 159167465Smpextern CCRETVAL v_zero (Char); 160167465Smpextern CCRETVAL e_killend (Char); 161167465Smpextern CCRETVAL e_killbeg (Char); 162167465Smpextern CCRETVAL e_metanext (Char); 16359243Sobrien#ifdef notdef 164167465Smpextern CCRETVAL e_extendnext (Char); 16559243Sobrien#endif 166167465Smpextern CCRETVAL e_send_eof (Char); 167167465Smpextern CCRETVAL e_charswitch (Char); 168167465Smpextern CCRETVAL e_gcharswitch (Char); 169167465Smpextern CCRETVAL e_which (Char); 170167465Smpextern CCRETVAL e_yank_kill (Char); 171167465Smpextern CCRETVAL e_tty_dsusp (Char); 172167465Smpextern CCRETVAL e_tty_flusho (Char); 173167465Smpextern CCRETVAL e_tty_quit (Char); 174167465Smpextern CCRETVAL e_tty_tsusp (Char); 175167465Smpextern CCRETVAL e_tty_stopo (Char); 176167465Smpextern CCRETVAL e_tty_starto (Char); 177167465Smpextern CCRETVAL e_argfour (Char); 178167465Smpextern CCRETVAL e_set_mark (Char); 179167465Smpextern CCRETVAL e_exchange_mark (Char); 180167465Smpextern CCRETVAL e_last_item (Char); 181167465Smpextern CCRETVAL v_cmd_mode (Char); 182167465Smpextern CCRETVAL v_insert (Char); 183167465Smpextern CCRETVAL v_replmode (Char); 184167465Smpextern CCRETVAL v_replone (Char); 185167465Smpextern CCRETVAL v_substline (Char); 186167465Smpextern CCRETVAL v_substchar (Char); 187167465Smpextern CCRETVAL v_add (Char); 188167465Smpextern CCRETVAL v_addend (Char); 189167465Smpextern CCRETVAL v_insbeg (Char); 190167465Smpextern CCRETVAL v_chgtoend (Char); 191167465Smpextern CCRETVAL e_killregion (Char); 192167465Smpextern CCRETVAL e_killall (Char); 193167465Smpextern CCRETVAL e_copyregion (Char); 194167465Smpextern CCRETVAL e_tty_int (Char); 195167465Smpextern CCRETVAL e_run_fg_editor (Char); 196167465Smpextern CCRETVAL e_list_eof (Char); 197195609Smpextern int e_expand_history_rne (Char); 198167465Smpextern CCRETVAL e_expand_history (Char); 199167465Smpextern CCRETVAL e_magic_space (Char); 200167465Smpextern CCRETVAL e_list_glob (Char); 201167465Smpextern CCRETVAL e_expand_glob (Char); 202167465Smpextern CCRETVAL e_insovr (Char); 203167465Smpextern CCRETVAL v_cm_complete (Char); 204167465Smpextern CCRETVAL e_copyprev (Char); 205167465Smpextern CCRETVAL v_change_case (Char); 206167465Smpextern CCRETVAL e_expand (Char); 207167465Smpextern CCRETVAL e_expand_vars (Char); 208167465Smpextern CCRETVAL e_toggle_hist (Char); 209167465Smpextern CCRETVAL e_load_average (Char); 210167465Smpextern CCRETVAL v_delprev (Char); 211167465Smpextern CCRETVAL v_delmeta (Char); 212167465Smpextern CCRETVAL v_wordfwd (Char); 213167465Smpextern CCRETVAL v_wordback (Char); 214167465Smpextern CCRETVAL v_endword (Char); 215167465Smpextern CCRETVAL v_eword (Char); 216167465Smpextern CCRETVAL v_undo (Char); 217167465Smpextern CCRETVAL v_ush_meta (Char); 218167465Smpextern CCRETVAL v_dsh_meta (Char); 219167465Smpextern CCRETVAL v_rsrch_fwd (Char); 220167465Smpextern CCRETVAL v_rsrch_back (Char); 221167465Smpextern CCRETVAL v_char_fwd (Char); 222167465Smpextern CCRETVAL v_char_back (Char); 223167465Smpextern CCRETVAL v_chgmeta (Char); 224167465Smpextern CCRETVAL e_inc_fwd (Char); 225167465Smpextern CCRETVAL e_inc_back (Char); 226167465Smpextern CCRETVAL v_rchar_fwd (Char); 227167465Smpextern CCRETVAL v_rchar_back (Char); 228167465Smpextern CCRETVAL v_charto_fwd (Char); 229167465Smpextern CCRETVAL v_charto_back (Char); 230167465Smpextern CCRETVAL e_normalize_path (Char); 231167465Smpextern CCRETVAL e_normalize_command (Char); 232167465Smpextern CCRETVAL e_stuff_char (Char); 233167465Smpextern CCRETVAL e_list_all (Char); 234167465Smpextern CCRETVAL e_complete_all (Char); 235167465Smpextern CCRETVAL e_complete_fwd (Char); 236167465Smpextern CCRETVAL e_complete_back (Char); 237167465Smpextern CCRETVAL e_dabbrev_expand (Char); 238167465Smpextern CCRETVAL e_copy_to_clipboard (Char); 239167465Smpextern CCRETVAL e_paste_from_clipboard (Char); 240167465Smpextern CCRETVAL e_dosify_next (Char); 241167465Smpextern CCRETVAL e_dosify_prev (Char); 242167465Smpextern CCRETVAL e_page_up (Char); 243167465Smpextern CCRETVAL e_page_down (Char); 244167465Smpextern CCRETVAL e_yank_pop (Char); 245167465Smpextern CCRETVAL e_newline_hold (Char); 246167465Smpextern CCRETVAL e_newline_down_hist (Char); 24759243Sobrien 24859243Sobrien/* 24959243Sobrien * ed.inputl.c 25059243Sobrien */ 251167465Smpextern int Inputl (void); 252354195Sbrooksextern int GetCmdChar (Char); 253167465Smpextern int GetNextChar (Char *); 254167465Smpextern void UngetNextChar (Char); 255167465Smpextern void PushMacro (Char *); 25659243Sobrien 25759243Sobrien/* 25859243Sobrien * ed.refresh.c 25959243Sobrien */ 260167465Smpextern void ClearLines (void); 261167465Smpextern void ClearDisp (void); 262167465Smpextern void Refresh (void); 263167465Smpextern void RefCursor (void); 264167465Smpextern void RefPlusOne (int); 265167465Smpextern void PastBottom (void); 26659243Sobrien 26759243Sobrien/* 26859243Sobrien * ed.xmap.c 26959243Sobrien */ 270167465Smpextern XmapVal *XmapStr (CStr *); 271167465Smpextern XmapVal *XmapCmd (int); 272167465Smpextern void AddXkey (const CStr *, XmapVal *, int); 273167465Smpextern void ClearXkey (KEYCMD *, const CStr *); 274167465Smpextern int GetXkey (CStr *, XmapVal *); 275167465Smpextern void ResetXmap (void); 276167465Smpextern int DeleteXkey (const CStr *); 277167465Smpextern void PrintXkey (const CStr *); 278167465Smpextern void printOne (const Char *, const XmapVal *, int); 279167465Smpextern eChar parseescape (const Char **); 280167465Smpextern unsigned char *unparsestring (const CStr *, const Char *); 28159243Sobrien 28259243Sobrien#endif /* _h_ed_decls */ 283