76 lines
1.5 KiB
Plaintext
76 lines
1.5 KiB
Plaintext
|
#
|
||
|
# CLIB help script
|
||
|
#
|
||
|
# clib help is organized into sections a->e, f->i, k->r, s->z
|
||
|
# leading underbars are ignored
|
||
|
|
||
|
# section = keyword = selected text
|
||
|
|
||
|
assign %s = %1
|
||
|
assign %k = %1
|
||
|
|
||
|
assign %b = 0
|
||
|
assign %c = 0
|
||
|
|
||
|
# remove _ or _f from keyword
|
||
|
assign %a = strchr %s _
|
||
|
|
||
|
if ( %a == 1 )
|
||
|
assign %t = strlen %s
|
||
|
assign %b = strchr %s f
|
||
|
assign %c = strchr %s n
|
||
|
if ( %b == 2 )
|
||
|
# begins with _f
|
||
|
assign %s = substr %s 3 %t
|
||
|
assign %k = %s
|
||
|
elseif ( %c == 2 )
|
||
|
# begins with _n
|
||
|
assign %s = substr %s 3 %t
|
||
|
assign %k = %s
|
||
|
else
|
||
|
#just begins with _
|
||
|
assign %s = substr %s 2 %t
|
||
|
endif
|
||
|
endif
|
||
|
|
||
|
assign %h = "clib.hlp"
|
||
|
|
||
|
# now look at the first char
|
||
|
assign %f = substr %s 1 1
|
||
|
|
||
|
#find the appropriate helpfile
|
||
|
assign %p = ""
|
||
|
if ( %f < f )
|
||
|
assign %p = substr %s 1 4
|
||
|
else
|
||
|
assign %p = substr %s 1 5
|
||
|
endif
|
||
|
|
||
|
# now deal with special cases
|
||
|
if ( "%p" == "exec" )
|
||
|
assign %k = "exec"
|
||
|
endif
|
||
|
|
||
|
if ( "%p" == "spawn" )
|
||
|
assign %k = "spawn"
|
||
|
endif
|
||
|
|
||
|
# the only cases this leaves out are _fpreset, _fullpath, _freect
|
||
|
# _asctime, and _gmtime
|
||
|
|
||
|
#deal with all exceptions to rules here
|
||
|
if ( %1 == "_asctime" )
|
||
|
assign %k = "asctime"
|
||
|
elseif ( %1 == "_gmtime" )
|
||
|
assign %k = "gmtime"
|
||
|
endif
|
||
|
|
||
|
# now all thats left that we cant get are some _b versions of some functions
|
||
|
# but there are so many _b exceptions that Id rather not include them
|
||
|
|
||
|
|
||
|
#launch winhelp using the whole word, or special case, or _f or _n stripped
|
||
|
# version as a partial key
|
||
|
|
||
|
winhelp HELP_PARTIALKEY %h %k
|