rtns.h

来自「开放源码的编译器open watcom 1.6.0版的源代码」· C头文件 代码 · 共 850 行 · 第 1/2 页

H
850
字号
/****************************************************************************
*
*                            Open Watcom Project
*
*    Portions Copyright (c) 1983-2002 Sybase, Inc. All Rights Reserved.
*
*  ========================================================================
*
*    This file contains Original Code and/or Modifications of Original
*    Code as defined in and that are subject to the Sybase Open Watcom
*    Public License version 1.0 (the 'License'). You may not use this file
*    except in compliance with the License. BY USING THIS FILE YOU AGREE TO
*    ALL TERMS AND CONDITIONS OF THE LICENSE. A copy of the License is
*    provided with the Original Code and Modifications, and is also
*    available at www.sybase.com/developer/opensource.
*
*    The Original Code and all software distributed under the License are
*    distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
*    EXPRESS OR IMPLIED, AND SYBASE AND ALL CONTRIBUTORS HEREBY DISCLAIM
*    ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF
*    MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR
*    NON-INFRINGEMENT. Please see the License for the specific language
*    governing rights and limitations under the License.
*
*  ========================================================================
*
* Description:  Prototypes of internal editor functions.
*
****************************************************************************/


/* abandon.c */
void AbandonHopeAllYeWhoEnterHere( int );

/* addstr.c */
void AddString( char **, char * );
void AddString2( char **, char * );
void DeleteString( char ** );

/* alias.c */
int SetAlias( char * );
int CheckAlias( char *, char * );
bool CheckAbbrev( char *, int * );
int Abbrev( char * );
int UnAbbrev( char * );
int UnAlias( char * );

/* autosave.c */
void DoAutoSave( void );
void AutoSaveInit( void );
void AutoSaveFini( void );
void SetNextAutoSaveTime( void );
bool LostFileCheck( void );
void RemoveFromAutoSaveList( void );
void GetCurrentFilePath( char *path );

/* bnddata.c */
void CheckForBoundData( void );
bool SpecialOpen( char *, GENERIC_FILE * );
void SpecialFclose( GENERIC_FILE * );
int SpecialFgets( char *, int, GENERIC_FILE * );

/* change.c */
int DoSubstitute( event **, event ** );
int DoLineSubstitute( event **, event ** );
int DoChangeLineEnd( event **, event ** );

/* cledit.c */
int EditFile( char *, int );
int EditFileFromList( void );
int OpenWindowOnFile( char *data );

/* clglob.c */
int Global( linenum, linenum, char *, int );
void ProcessingMessage( linenum );

/* clread.c */
int ReadAFile( linenum, char * );

/* clset.c */
int Set( char * );
char *GetASetVal( char *token );
int SettingSelected( char *item, char *value, int *winflag );

/* clsubs.c */
int TwoPartSubstitute( char *, char *, int, int );
int Substitute( linenum, linenum, char * );
linenum SplitUpLine( linenum );

/* cmdline.c */
void InitCommandLine( void );
int ProcessCommandLine( void );
int FancyProcessCommandLine( void );
int TryCompileableToken( int token, char *data, bool iscmdline, bool dmt );
int RunCommandLine( char * );
int ProcessWindow( int, char * );
int ReadCmdData( void );
void FreeCmdData( void );
void FiniCommandLine( void );

/* cstatus.c */
void GetModeString( char * );
int UpdateCurrentStatus( status_type st );

/* cut.c */
int Cut( linenum, int, linenum, int, int );

/* dat.c */
int ReadDataFile( char *, int *, char **, int **, bool );

/* delete.c */
int DoDeleteRegion( event **, event ** );
int DoDeleteLineEnd( event **, event ** );
int DoDeleteCharAtCursor( event **, event ** );
int DoDeleteCharBeforeCursor( event **, event ** );
int DeleteSelectedRegion( void );
int YankSelectedRegion( void );

/* op.c */
int LineLength( linenum );
int GetLineRange( range *, long, linenum );
int Delete( range * );
int DeleteLines( void );
int Yank( range * );
int YankLines( void );
int Change( range * );
int StartShove( range * );
int StartSuck( range * );
int ChangeCase( range * );
int Filter( range * );

/* dir.c */
void DirFini( void );
void GetCWD1( char ** );
void GetCWD2( char *, int );
int ChangeDirectory( char * );
int ConditionalChangeDirectory( char * );
void FormatDirToFile( file *cfile, bool add_drives );

/* dirdisp.c */
int StartFileComplete( char *, int, int, int );
int ContinueFileComplete( char *data, int start, int max, int what );
void PauseFileComplete( void );
void FinishFileComplete( void );

/* dosdir.c */
struct dirent;

int MyGetFileSize( char *, long * );
void FormatFileEntry( direct_ent *file, char *res );
int IsDirectory( char *name );
void GetFileInfo( direct_ent *tmp, struct dirent *nd, char *path );

/* dotmode.c */
int DoDotMode( void );
int DoAltDotMode( void );
void SaveDotCmd( void );

/* editdc.c */
int DeleteBlockFromCurrentLine( int, int, int );
int DeleteRangeOnCurrentLine( int, int, int );

/* editins.c */
int InsertTextAtCursor( void );
int InsertTextAfterCursor( void );
int InsertTextAtLineEnd( void );
int InsertTextAtLineStart( void );
int InsertTextOnNextLine( void );
int DeleteAndInsertText( int, int );
int DeleteAndInsertTextString( int, int, char *);
int InsertTextOnPreviousLine( void );
int DoReplaceText( void );
int InsertLikeLast( void );
int IMChar( void );
int IMEsc( void );
int IMEnter( void );
int IMBackSpace( void );
int IMBackSpaceML( void );
int IMMouseEvent( void );
int IMCursorKey( void );
int IMMenuKey( void );
int IMSpace( void );
int IMTabs( void );
int IMEscapeNextChar( void );
int IMInsert( void );
int IMDelete( void );
int IMDeleteML( void );
int IMCloseBracket( void );
int IMCloseBrace( void );
void PushMode( void );
int PopMode( void );
void UpdateEditStatus( void );
void DoneCurrentInsert( bool );

/* editmain.c */
int DoMove( event *event );
int DoLastEvent( void );
void DoneLastEvent( int rc, bool is_dotmode );
void EditMain( void );
int AbsoluteNullResponse( void );
int NullResponse( void );
long GetRepeatCount( void );
void SetRepeatCount( long );
int DoDigit( void );
void DoneRepeat( void );
void KillRepeatWindow( void );
int InvalidKey( void );
void SetModifiedVar( bool val );
void Modified( bool );
void ResetDisplayLine( void );

/* editmv.c */
int MovePage( int, long, bool );
int MovePageUp( void );
int MovePageDown( void );
int MoveScreenML( linenum );
int MoveScreenDown( void );
int MoveScreenDownPageML( void );
int MoveScreenUp( void );
int MoveScreenUpPageML( void );
int MovePosition( void );
int MoveHalfPageUp( void );
int MoveHalfPageDown( void );
int MoveScreenLeftPageML( void );
int MoveScreenRightPageML( void );
int MoveScreenLeftRightML( int );

/* -------- new operators ------------- */
int MoveForwardWord( range *, long );
int MoveForwardBigWord( range *, long );
int MoveForwardWordEnd( range *, long );
int MoveForwardBigWordEnd( range *, long );
int MoveBackwardsWord( range *, long );
int MoveBackwardsBigWord( range *, long );
int MoveToLastCharFind( range *, long );
int MoveToLastCharFindRev( range *, long );
int MoveUpToBeforeChar( range *, long );
int MoveUpToChar( range *, long );
int MoveBackToAfterChar( range *, long );
int MoveBackToChar( range *, long );
int DoGo( range *, long );
int MoveStartOfFile( range *, long );
int MoveEndOfFile( range *, long );
int MoveStartNextLine( range *, long );
int MoveStartPrevLine( range *, long );
int MoveTab( range *, long );
int MoveShiftTab( range *, long );
int MoveLeft( range *, long );
int MoveRight( range *, long );
int MoveLineEnd( range *, long );
int MoveLineBegin( range *, long );
int MoveStartOfLine( range *, long );
int MoveToColumn( range *, long );
int MoveUp( range *, long );
int MoveDown( range *, long );
int MovePageTop( range *, long );
int MovePageMiddle( range *, long );
int MovePageBottom( range *, long );
int MoveTopOfPage( range *, long );
int MoveBottomOfPage( range *, long );

/* error.c */
void FatalError( int );
void Die( const char *, ... );
char *GetErrorMsg( int );
void Error( char *, ... );
void FreeErrorMsgData( void );
void ErrorFini( void );

/* expandfn.c */
int ExpandFileNames( char *, char *** );

/* fcb.c */
int ReadFcbData( file * );
void CreateFcbData( file *, int );
int FcbSize( fcb * );

/* fcb2.c */
int FindFcbWithLine( linenum, file *, fcb ** );

/* fcb3.c */
int CMergeFcbs( fcb *, fcb * );
int CMergeAllFcbs( void );
int JoinFcbs( fcb *, fcb * );

/* fcbdmp.c */
int WalkUndo( void );
int HeapCheck( void );
int FcbDump( void );
int FcbThreadDump( void );
int LineInfo( void );
int SanityCheck( void );

/* fcbdup.c */
void CreateDuplicateFcbList( fcb *, fcb **, fcb ** );

/* fcbmem.c */
fcb *FcbAlloc( file * );
void FcbFree( fcb * );
void FreeEntireFcb( fcb * );
void FreeFcbList( fcb * );

/* fcbsplit.c */
int SplitFcbAtLine( linenum, file *, fcb * );
int CheckCurrentFcbCapacity( void );

/* fcbswap.c */
void FetchFcb( fcb * );
void SwapBlockFini( void );

/* fgrep.c */
int DoFGREP( char *, char *, bool );
int DoEGREP( char *, char * );

/* file.c */
void SaveInfo( info * );
void SaveCurrentInfo( void );
bool RestoreInfo( info * );
int DisplayFileStatus( void );
void CTurnOffFileDisplayBits( void );
bool CFileReadOnly( void );
void FileIOMessage( char *, linenum, long );
bool IsTextFile( char * );
int GimmeFileCount( void );

/* filemove.c */
int NextFile( void );
int NextFileDammit( void );
int RotateFileForward( void );
int RotateFileBackwards( void );
int GotoFile( window_id );
void BringUpFile( info *, bool );

/* filelast.c */
void UpdateLastFileList( char *fname );
char *GetFileInLastFileList( int num );

/* filenew.c */
int NewFile( char *, bool );
file *FileAlloc( char * );
void FileFree( file * );
void FreeEntireFile( file * );

/* filesave.c */
#ifdef __WIN__
int SaveFileAs( void );
#endif
int SaveFile( char *, linenum, linenum, int );
int StartSaveExit( void );
int SaveAndExit( char *fname );
bool FileExitOptionSaveChanges( file * );
bool FilePromptForSaveChanges( file *f );
int FancyFileSave( void );

/* filesel.c */
int SelectFileOpen( char *, char **, char *, bool );
int SelectFileSave( char * );
int SelectLineInFile( selflinedata *sfd );

/* filestk.c */
void InitFileStack( void );
int PushFileStack( void );
int PushFileStackAndMsg( void );
int PopFileStack( void );
void FiniFileStack( void );

/* filter.c */
int DoGenericFilter( linenum, linenum, char * );

/* findcmd.c */
void HilightSearchString( linenum, int, int );
void ResetLastFind( void );
int FindForwardWithString( char * );
int GetFind( char *, linenum *, int *, int *, int );
int FindBackwardsWithString( char * );
void SaveFindRowColumn( void );
int ColorFind( char *, int );
void FindCmdFini( void );

int DoFindBackwards( range *, long );
int DoNextFindBackwards( range *, long );
int DoFindForward( range *, long );
int FancyDoFind( range *, long );
int FancyDoFindMisc( void );
int FancyDoReplace( void );
int DoNextFindForward( range *, long );
int DoNextFindForwardMisc( void );
int DoNextFindBackwardsMisc( void );
int ToggleToolbar( void );
int ToggleStatusbar( void );
int ToggleColorbar( void );
int ToggleFontbar( void );
int ToggleSSbar( void );

/* fini.c */
#ifdef __WATCOMC__
#pragma aux Quit aborts;
#endif
void Quit( const char **, const char *, ... );
void ExitEditor( int );
void QuitEditor( int );
void Usage( char * );

/* fmatch.c */
int FileMatch( char *name );
int FileMatchInit( char *wild );
void FileMatchFini( void );

/* gencfg.c */
int GenerateConfiguration( char *fname, bool is_cmdline );

/* getautoi.c */
int GetAutoIndentAmount( char *, int, bool );

/* getdir.c */
int GetSortDir( char *, bool );

/* getspcmd.c */
void GetSpawnCommandLine( char *path, char *cmdl, cmd_struct *cmds );

/* help.c */
int DoHelp( char *data );
int DoHelpOnContext( void );

/* hide.c */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?