home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 5 Edit
/
05-Edit.zip
/
ps_ext.zip
/
REXX.EXT
< prev
next >
Wrap
Text File
|
1997-05-16
|
10KB
|
439 lines
@Rexx Constructs
%If Then Else
$IF value = 0 THEN
DO
END
ELSE
DO
END
%DO
$DO index = 1 to 100 by 1
END
%Do while
$DO WHILE value > 0
END
%Do until
$DO UNTIL value > 0
END
%Select when
$SELECT
WHEN value > 0
THEN
WHEN value = 0
THEN
WHEN value < 0
THEN
OTHERWISE
END
%Count
$do numeric_value
%Greater than
$>
%Less than
$<
%Equal
$= or ==
%Not equal
$<> or \=
%CrLf
$crlf=d2c(13)||d2c(10)
%And
$&
%Or
$|
%Not
$^ or \
%Procedure
$PROCEDURE EXPOSE Valuename /* Procedure must follow imidiately after the label ! */
%Signal
$SIGNAL labelname
%Signal off
$SIGNAL OFF ERROR
SIGNAL OFF FAILURE
SIGNAL OFF HALT
SIGNAL OFF NOVALUE
SIGNAL OFF SYNTAX
SIGNAL OFF NOTREADY
%Signal on
$SIGNAL ON ERROR NAME labelname
SIGNAL ON FAILURE NAME labelname
SIGNAL ON HALT NAME labelname
SIGNAL ON NOVALUE NAME labelname
SIGNAL ON SYNTAX NAME labelname
SIGNAL ON NOTREADY NAME labelname
@Rexxutil
%Load RexxUtil
$/* Load RexxUtil.DLL */
CALL RxFuncAdd 'SysLoadFuncs','Rexxutil','SysLoadFuncs'
CALL SysLoadFuncs
%Query RexxUtil
$rc = RxFuncQuery('SysloadFuncs') /* rc is 0 if SysLoadFuncs is not loaded */
%Drop RexxUtil
$CALL SysDropFuncs
%RxMessageBox
$value = RxMessageBox(text,title,bottom,symbol)
@Sys - object functions
%SysCopyObject
$rc = SysCopyObject(source,destination)
%SysCreateObject
$rc = SysCreateObject('WPProgram', 'title', '<WP_DESKTOP>','EXENAME=filename;STARTUPDIR=dir;PROGTYPE=PM;', 'U')
%SysCreateShadow
$SysCreateShadow(Object, target)
%SysDeregisterObjectClass
$rc = SysDeregisterObjectClass(classname)
%SysDestroyObject
$rc = SysDestroyObject(objectname)
%SysMoveObject
$rc = SysMoveObject(source,destination)
%SysOpenObject
$rc = SysOpenObject(objectname, display, mark)
%SysQueryClassList
$CALL SysQueryClassList 'stem.'
%SysRegisterObjectClass
$rc = SysRegisterObjectClass(name,module)
%SysSaveObject
$SysSaveObject(name, dAsync)
%SysSetObjectData
$SysSetObjectData(name, config)
@Sys - file functions
%SysDriveInfo
$Info = SysDriveInfo(drive)
%SysDriveMap
$List = SysDriveMap(drive,options)
%SysFileDelete
$SysFileDelete(file)
%SysFileTree
$CALL SysFileTree filename,'List',option,attribute
%SysFileSearch
$CALL SysFileSearch search value,file,'List',options
%SysGetMessage
$Message = SysGetMessage(number,file)
%SysIni - query value
$value = SysIni(file,app,key)
%SysIni - query all apps
$rc = SysIni(file,'ALL:','List')
%SysMkDir
$CALL SysMkDir directory
%SysGetEA
$CALL SysGetEA file, EAname, var
%SysPutEA
$CALL SysPutEA file, EAname, value
%SysRmDir
$CALL SysRmDir directory
%SysSearchPath
$SysSearchPath(path, file)
%SysSetIcon
$rc = SysSetIcon(file,iconfile)
%SysTempFileName
$file = SysTempFileName(template,filter)
@Sys - other functions
%SysCls
$CALL SysCls
%SysCurPos
$pos = SysCurPos(row,col)
%SysCurState
$CALL SysCurState 'ON' or 'OFF'
%SysGetKey
$key = SysGetKey('ECHO')
key = SysGetKey('NOECHO')
%SysOS2Ver
$Version = SysOS2Ver()
%SysSleep
$CALL SysSleep seconds
%SysTextScreenRead
$line = SysTextScreenRead(row,col,length)
%SysTextScreenSize
$rc =SysTextScreenSize()
%SysWaitNamedPipe
$SysWaitNamedPipe(name, [time_limit])
@I/O functions
%Address
$ADDRESS environment
%Charin
$Value = CHARIN(name,start,length)
%Charin file to variable
$numchars = CHARS(filename)
value = CHARIN(filename,1,numchars)
rc=stream(filename,'c','close') /* Is this needed? */
%Charout
$CALL CHAROUT name,string
%Chars
$Value = CHARS(name)
%Directory
$Value = DIRECTORY() /* returns current directory */
CALL DIRECTORY directory /* switch to directory */
%Filespec
$Value = FILESPEC('D',filename) /* returns drive */
Value = FILESPEC('P',filename) /* returns the path */
Value = FILESPEC('N',filename /* returns the filename */
%Linein
$value = LINEIN(name,line)
%Lineout
$CALL LINEOUT name,string,line
%Lines
$lines = LINES(name)
@Parse
%Parse Arg
$PARSE ARG string
%Parse Linein
$parse [Upper] linein [template]
%Parse Pull
$PARSE PULL string
%Parse Source
$PARSE SOURCE string
%Parse Value
$PARSE VALUE function WITH template /* Parse Value TIME() with Std ':' Min ':' Sec */
%Parse Var
$PARSE VAR string first rest
%Parse Version
$PARSE VERSION REXXVERSION
@Stream
%Stream - Open
$CALL STREAM file,'C','OPEN'
%Stream - Open Read
$CAll STREAM file,'C','OPEN READ'
%Stream - Open Write
$CALL STREAM file,'C','OPEN WRITE'
%Stream - Seek
$CALL STREAM file,'C','SEEK number'
%Stream - Close
$CALL STREAM file,'C','CLOSE'
%Stream - filename
$filename = STREAM(file,'C','QUERY EXIST')
%Stream - size
$size = STREAM(file,'C','QUERY SIZE')
%Stream - time/Date
$timeinfo = STREAM(file,'C','QUERY DATETIME')
%Stream - description
$Value = STREAM(file,'D')
%Stream - status
$Value = STREAM(file,'S')
@Queue
%RxQueue - GET
$Queue = RxQueue('GET')
%RxQueue - Create
$Name = RxQueue('CREATE',name)
%RxQueue - Set
$rc = RxQueue('SET',name)
%RxQueue - Delete
$rc = RxQueue('DELETE',name)
%Queued
$Zeilen = QUEUED() /* returns the number of lines in queue */
%Queue
$QUEUE value /* append value to the end of the queue */
%Pull
$PULL value /* get 1. line of queue */
%Push
$PUSH value /* insert value at the beginning of the queue */
@Strings
%B2X
$value = B2X(char)
%Center
$value = CENTER(string,length,fillchar)
%Chars
$value = CHARS(name)
%Compare
$value = COMPARE(string1,string2)
%Copies
$value = COPIES(string,number)
%C2D
$value = C2D(char)
%C2X
$value = C2X(char)
%Delstr
$value = DELSTR(string,start,length)
%Delword
$value = DELWORD(string,start,length)
%D2C
$value = D2C(number)
%D2X
$value = D2X(number)
%Insert
$value = INSERT(new,target,start)
%Lastpos
$value = LASTPOS(needle,haystack,start)
%Left
$value = LEFT(string,length,fillchar)
%Length
$value = LENGTH(string)
%Pos
$value = POS(needle,haystack,start)
%Overlay
$value = OVERLAY(new,target,start,length,fillchar)
%Reverse
$value = REVERSE(string)
%Right
$value = RIGHT(string,length,fillchar)
%Space
$value = SPACE(string,number,fillchar)
%Strip
$value = STRIP(string,option,fillchar)
%Substr
$value = SUBSTR(string,start,length)
%Subword
$value = SUBWORD(string,start,length)
%Translate
$value = TRANSLATE(string) /* convert string to uppercase */
/* replace a character within the string with an other character */
value = TRANSLATE(string,tableout,tablein,pad)
%Verify
$value = VERIFY(string1,string2)
%Word
$value = WORD(string,pos)
%Wordindex
$index = WORDINDEX(string,word)
%Wordlength
$value = WORDLENGTH(string,pos)
%Wordpos
$value = WORDPOS(needle,haystack,start)
%Words
$value = WORDS(string)
%X2B
$value = X2B(hex char)
%X2C
$value = X2C(hex char)
%X2D
$value = X2D(hex char)
%Xrange
$value = XRANGE(start,end)
@Math functions
%ABS
$value = ABS(number)
%Digits
$value = DIGITS()
%Format
$value = FORMAT(number,before,after)
%Form
$value = FORM()
%Fuzz
$value = FUZZ()
%Numeric Digits
$NUMERIC DIGITS value
%Numeric Form
$NUMERIC FORM 'SCIENTIFIC' or 'ENGINEERING'
%Numeric Fuzz
$NUMERIC FUZZ value
%Max
$value = MAX(number1,number2,...,number20)
%Min
$value = MIN(number1,number2,....,number20)
%Random
$value = RANDOM(min,max)
%Sign
$value = SIGN(number)
%Trunc
$Value = TRUNC(number,n)
@Other functions
%Abbrev
$value = ABBREV(information,info,length)
%Beep
$CALL BEEP frequency,duration
%BitAnd
$bitand(string1, string2, fill)
%BitOr
$bitor(string1, string2, fill)
%BitXOr
$bitxor(string1, string2, fill)
%Condition
$rc = CONDITION('C') /* Condition Name */
rc = CONDITION('I') /* Condition Instruction */
rc = CONDITION('D') /* Condition Description */
rc = CONDITION('S') /* Condition Status */
%Datatype
$Type = DATATYPE(string)
%Date
$value = DATE() /* dd mm yyyy */
value = DATE('B') /* days since January 1, 0001 */
value = DATE('D') /* days since January 1, of the current year */
value = DATE('E') /* dd/mm/yy European format */
value = DATE('L') /* language-dependent format*/
value = DATE('M') /* name of the month */
value = DATE('N') /* dd mon yyyy */
value = DATE('O') /* yy/mm/ddt */
value = DATE('S') /* yyyymmdd */
value = DATE('U') /* mm/dd/yy */
value = DATE('W') /* day of week */
%Drop
$DROP value
%Errortext
$errortext(n)
%Endlocal
$endlocal()
%Setlocal
$setlocal()
%Sourceline
$line = SOURCELINE(line)
%Symbol
$status = SYMBOL(value)
%Time
$value = TIME() /* hh:mm:ss */
value = TIME('C') /* hh:mmxx */
value = TIME('E') /* Elapsed */
value = TIME('H') /* hh */
value = TIME('M') /* mmmm since midnight */
value = TIME('L') /* hh:mm:ss:uu0000 */
value = TIME('N') /* hh:mm:ss */
value = TIME('R') /* Reset elapsed */
%Trace
$trace(definition)
%value
$value = VALUE(name,newvalue,environment)
/* example */
path = VALUE('Path',,'OS2ENVIRONMENT')
@Screen colors (ANSI-Sequences)
%Standard
$CALL CHAROUT 'CON:',''
%Bright - foreground
$CALL CHAROUT 'CON:','
'
%Invers
$CALL CHAROUT 'CON:',''
%Invisible
$CALL CHAROUT 'CON:','
'
%Foreground black
$CALL CHAROUT 'CON:','
'
%Foreground red
$CALL CHAROUT 'CON:','
'
%Foreground white
$CALL CHAROUT 'CON:','
'
%Background black
$CALL CHAROUT 'CON:','
'
%Background red
$CALL CHAROUT 'CON:','
'
%Background white
$CALL CHAROUT 'CON:','
'
%Clear screen
$CALL CHAROUT 'CON:',''
%Delete line
$CALL CHAROUT 'CON:',''
%Coursor position
$CALL CHAROUT 'CON:','x;yH'
%Coursor up
$CALL CHAROUT 'CON:','yA'
%Coursor down
$CALL CHAROUT 'CON:','yB'
%Coursor to right
$CALL CHAROUT 'CON:','xC'
%Coursor to left
$CALL CHAROUT 'CON:','xD'
%Cursor position restore
$CALL CHAROUT 'CON:','u'
%ANSI on
$ADDRESS CMD 'ANSI ON'
%ANSI off
$ADDRESS CMD 'ANSI OFF'