Have a good idea !
Code: Select all
Procedure RefTextFile(C$)
File = ReadFile(#PB_Any, #PB_Compiler_Home + "SDK/CompilerInterface.txt")
If C$: Choice = Val(C$): EndIf
While Not Eof(File)
Text$ = ReplaceString(ReplaceString(ReadString(File), "<T>", "^"), Chr(9), " ")
If Text$
If LTrim(Text$) = Text$
If Left(Text$, 7) = "Example": Break: EndIf
Display | Bool(Left(Text$, 3) = "END")
If Display
CmdNo + 1
If Choice: Help = Bool(Choice = CmdNo): EndIf
If C$ = "": PrintN(Str(CmdNo) + ": " + Text$): EndIf
EndIf
EndIf
If Help: PrintN(Text$): EndIf
EndIf
Wend
CloseFile(File)
EndProcedure
Procedure.S TB(E.S) ; TaBulation
ProcedureReturn ReplaceString(E, "^", Chr(9) )
EndProcedure
FullName$ = #PB_Compiler_Home + "compilers/pbcompiler"
Param$ = "/standby"
Flag = #PB_Program_Hide | #PB_Program_Read | #PB_Program_Open | #PB_Program_Write
Prog = RunProgram(FullName$, Param$, "", Flag)
OpenConsole()
Repeat
Delay(100)
If AvailableProgramOutput(Prog)
T$ = ""
Repeat
S$ = ReadProgramString(Prog)
T$ + C$ + Chr(13)
PrintN(S$)
Until S$ = "READY" Or S$ = TB("OUTPUT^COMPLETE") Or S$ = "UNKNOWN"
SetClipboardText(T$)
EndIf
A$ = Trim(Input() )
C$ = UCase(TB(A$) )
RefTextFile(C$)
If ProgramRunning(Prog)
WriteProgramStringN(Prog, C$)
Delay(100)
Else
End
EndIf
Until ProgramRunning(Prog) = 0
CloseConsole()
CloseProgram(Prog)