TempleOSCD_140715.ISO

This commit is contained in:
Terry A. Davis authored and minexew committed 2018-09-08 21:46:09 +02:00
1 parent 7ef616a20e
commit 64f679eeb9
1095 files changed
+24814 -221011

No files matched your search

+46 -53
View File
@@ -1,5 +1,5 @@
U8 *Tabs2Spaces(U8 *src)
{
{//MAlloc str with tabs to spaces.
I64 ch,i,j,l=StrLen(src)<<1+2,col=0;
U8 *dst=MAlloc(l),*temp;
while (ch=*src++) {
@@ -33,7 +33,7 @@ U8 *Tabs2Spaces(U8 *src)
}
U8 *ScaleIndent(U8 *src,F64 indent_scale_factor)
{
{//MAlloced str. 8*0.25-->2 or 8*2.0-->16
I64 ch,i,col=0;
U8 *dst,*dst2;
while (ch=*src++) {
@@ -56,8 +56,7 @@ U8 *ScaleIndent(U8 *src,F64 indent_scale_factor)
}
U8 *MStrUtil(U8 *src,I64 flags,F64 indent_scale_factor=0)
//Return a $LK,"MAlloc",A="MN:MAlloc"$()ed result from StrUtil
{
{//MAlloc $LK,"StrUtil",A="MN:StrUtil"$().
U8 *dst=StrNew(src),*dst2,*temp;
StrUtil(dst,flags);
if (flags & SUF_T2S) {
@@ -68,16 +67,16 @@ U8 *MStrUtil(U8 *src,I64 flags,F64 indent_scale_factor=0)
if (flags & SUF_SCALE_INDENT)
dst2=ScaleIndent(dst,indent_scale_factor);
else
dst2=StrNew(dst); //Shorten
dst2=StrNew(dst); //Shorten to just right size.
Free(dst);
return dst2;
}
U0 GetOutOfDollar()
{
{//If a $$ has been printed, print another $$ to exit mode.
CDoc *doc;
if (IsRaw) {
if (sys_raw_flags&RWF_IN_DOLLAR)
if (text.raw_flags&RWF_IN_DOLLAR)
'$$';
} else {
if (fp_doc_put && (doc=(*fp_doc_put)(Fs)) && doc->flags&DOCF_IN_DOLLAR)
@@ -85,20 +84,8 @@ U0 GetOutOfDollar()
}
}
U0 NewLine(I64 cnt=1)
{
while (cnt-->0)
'\n';
}
U0 Spaces(I64 cnt=1)
{
while (cnt-->0)
'' CH_SPACE;
}
Bool YorN()
{
{//Wait for user to answer Y or N.
I64 ch;
"(y or n)? ";
while (TRUE) {
@@ -114,73 +101,79 @@ Bool YorN()
}
I64 PressAKey()
{
{//Print "Press a key" and wait for non-zero $LK,"ASCII",A="MN:CH_CTRLA"$ key.
"$$BK,1$$PRESS A KEY$$BK,0$$\n";
return GetChar(,FALSE);
}
Bool AreYouSure()
{
{//Print "Are you sure" and waits for Y or N.
"ARE YOU SURE ";
return YorN;
}
U0 Help()
{
{//Dbg help or master help index file.
if (IsDbg)
DbgHelp;
else
PopUp("Type(\"::/Doc/HelpIndex.TXT\");DocHome;View;");
PopUp("Type(\"::/Doc/HelpIndex.TXT\");DocTop;View;");
}
U0 ScanFlags(U8 *_dst_flags,U8 *lst,U8 *src)
{/*More than 64 flags. Flags passed by ref.
U0 ScanFlags(U8 *f,U8 *lst,U8 *st)
{
Examples:
$LK,"ScanFlags",A="FF:::/Adam/Utils/Diff.CPP,ScanFlags:2"$(&fuf_flags,Define("ST_FILE_UTIL_FLAGS"),fu_flags);
I64 flags=0;
ScanFlags(&flags,"R\0L\0Dump\0Scan\0","+Dump-R"); //Sets Bit#2, Clears Bit#0.
*/
I64 i;
U8 *st2,*ptr;
if (st) {
st2=MAlloc(StrLen(st)+1);
while (*st) {
while (*st && *st!='+' && *st!='-')
st++;
if (*st=='+') {
st++;
if (*st) {
ptr=st2;
while (*st && *st!='+' && *st!='-' && *st!=CH_SPACE && *st!=CH_SHIFT_SPACE)
*ptr++=*st++;
U8 *buf,*ptr;
if (src) {
buf=MAlloc(StrLen(src)+1);
while (*src) {
while (*src && *src!='+' && *src!='-')
src++;
if (*src=='+') {
src++;
if (*src) {
ptr=buf;
while (*src && *src!='+' && *src!='-' && *src!=CH_SPACE && *src!=CH_SHIFT_SPACE)
*ptr++=*src++;
*ptr=0;
i=LstMatch(st2,lst);
i=LstMatch(buf,lst);
if (i>=0)
LBts(f,i);
LBts(_dst_flags,i);
else {
Free(st2);
Free(buf);
throw('ScanFlag');
}
}
} else if (*st=='-') {
st++;
if (*st) {
ptr=st2;
while (*st && *st!='+' && *st!='-' && *st!=CH_SPACE && *st!=CH_SHIFT_SPACE)
*ptr++=*st++;
} else if (*src=='-') {
src++;
if (*src) {
ptr=buf;
while (*src && *src!='+' && *src!='-' && *src!=CH_SPACE && *src!=CH_SHIFT_SPACE)
*ptr++=*src++;
*ptr=0;
i=LstMatch(st2,lst);
i=LstMatch(buf,lst);
if (i>=0)
LBtr(f,i);
LBtr(_dst_flags,i);
else {
Free(st2);
Free(buf);
throw('ScanFlag');
}
}
}
}
Free(st2);
Free(buf);
}
}
U8 *SPrintFlags(U8 *dst,U8 *lst,I64 flags)
{
U8 *StrPrintFlags(U8 *dst,U8 *lst,I64 flags)
{//Only 64 flags. Flags passed by value.
I64 i;
*dst=0;
while (flags) {