No announcement yet.

Reserved words...

  • Filter
  • Time
  • Show
Clear All
new posts

  • Reserved words...


    I was wondering if any body out there has a "complete" list of all the reserved/key words in PBDLL. I am planning to write my own editor and would like to incorperate key word hilighting. After completion of my editor I will post it in the source code forum for all to enjoy...


  • #2
    there was a fairly lengthy discussion and much keyword-list sharing for the ultraedit editor a few months ago in the third-party forum. the keyword lists are organized into ue format, but still are useable for just getting a list of keywords. check here: .

    troy king
    [email protected]
    Troy King
    katravax at yahoo dot com


    • #3

      This is somewhat of BIG endeavor if I get the gest of what your saying. I am also working on a MDI editor although not for PB. At the present, the compiled code not including the dialog interface for compiler parms, highliting, and not quiet complete search section is about 56K.

      Let me know if you would like to co-work this. It's only as time permits for me but I would be glad to share what I've done so far.




      • #4
        i posted a sample of a pb syntax color editor to the source code
        forums a while ago. i also added a list of most (all?) reserved
        words for pb. you can find it at:



        • #5
          Mark and Cecil,

          Are your editors based on using the RTF edit class or some kind of other edit control or straight SDK API?

          Regards, Jules
          mailto:[email protected][email protected]</A>

          Best regards


          • #6
            Mark --
            #Compile #Debug #Dim #Else #ElseIf #EndIf #If #Include #Option #Register
            #Resource #Segment #Stack $Compile $Debug $Dim $Else $ElseIf $EndIf $If
            $Include $Option $Register $Resource $Segment $Stack %Def %Pb_Exe $Nul $Bel
            $Bs $Tab $Lf $Vt $Ff $Cr $CrLf $Eof $Esc $Dq
            Abs Access Accept Add Addr Alias All And Any Append
            Array As Asc Ascend Asciiz Asm At Atn Attach Bar
            Base Baud Bdecl Beep Bin$ Binary Bit Bits% Bits& Bits?
            Bits?? Bits??? Break Button ByCmd ByCopy ByRef Byte ByVal Call
            CallBack Case CbCtl CbCtlMsg CbHndl CbLparam CbMsg CbWparam CByt CCur
            CCux CD CDbl Cdecl CDwd Ceil Cext ChDir ChDrive Check
            Check3State CheckBox Chr$ CInt Client CLng Close Cls CodePtr Collate
            Color ComboBox Comm Command$ Control Cos CQud Create CSng CtsFlow
            Cur CurDir$ Cux CvByt CvCur CvCux Cvd CvDwd Cve Cvi
            Cvl Cvq Cvs CvWrd CWrd Data DataCount Date$ Declare Decr
            Default DefByt DefCur DefCux DefDbl DefDwd DefExt DefInt DefLng DefQud
            DefSng DefStr DefWrd Delete Descend Dialog Dim Dir$ Disable DiskFree
            DiskSize Dll Do DoEvents Double Down Draw DsrFlow DsrSens DtrFlow
            DtrLine Dword Else ElseIf Enable End Environ$ Eof Eqv Erase
            Err ErrApi ErrClear Error Exe Exit Exp Exp10 Exp2 Explicit
            Export Ext Extract$ FileAttr FileCopy FileName Fix Flow Flush Focus
            For Format$ FormFeed Frac Frame FreeFile From Function Get Get$
            GetAttr Global GoSub GoTo Handle Hex$ HiByt HiWrd Host Idn
            If Image ImageX ImgButton ImgButtonX Imp In Incr Input Input#
            InputBox$ Insert Instr Int Integer Inv IsFalse IsTrue Iterate Kill
            Label LBound LCase$ Left Left$ Len Let Lib Line ListBox
            LoByt Loc Local Lock Lof Log Log10 Log2 Long Loop
            LoWrd Lprint Lset Ltrim$ MakDwd MakLng MakPtr Mat Max Max$
            Max% Max& Menu Mid$ Min Min$ Min% Min& MkByt$ MkCur$
            MkCux$ Mkd$ MkDir MkDwd$ Mke$ Mki$ Mkl$ Mkq$ Mks$ MkWrd$
            Mod Modal Modeless MousePtr MsgBox Name New Next None Not
            Notify Null Oct$ Off On Open Option Or Output Page
            Parity ParityChar ParityRepl ParityType Parse$ ParseCount Pbd PbMain Peek Peek$
            Pixels Poke Poke$ Popup Port Preserve Print Print# Ptr Put
            Put$ Quad Random Randomize Read Read$ Recv ReDim RegExpr Register
            RegRepl Rem Remain$ Remove$ Repeat$ Replace Reset Resume Ret16 Ret32
            Ret87 Retp16 Retp32 RetPrm Return Rgb Right Right$ Ring Rlsd
            RmDir Rnd Rotate Round Rset Rtrim$ RtsFlow RxBuffer RxQue Scan
            ScrollBar Sdecl Seek Select Send Server Set SetAttr SetEof Sgn
            Shared Shell Shift Show Sin Single Size SizeOf Sleep Sort
            Space$ Spc Sqr State Static Status StdCall Step Stop Str$
            StrDelete String String$ StrInsert StrPtr StrReverse Sub Suspend Swap Tab
            TagArray Tally Tan Tcp Text TextBox Then Thread Time$ Timer
            TimeOut To Toggle Trim$ Trn TxBuffer TxQue Type UBound Ucase
            UCase$ Udp Union Units UnLock Until Up Using Val VarPtr
            Verify Version3 Version4 Version5 Wend While Width# WinMain With Word
            Write Write# Xor XInpFlow XOutFlow Zer



            • #7

              Mine is based on straight SDK, MDI, using the standard edit class for NT4. Haven't given much thought to RTF yet, but maybe I should. Being a Mechanical Engineer, I decided to learn Windows by getting a better understanding of the API first using a text editor shell to start with. I do enough number crunching as it is!!!!!! The text end has surely been a learning experience.

              The problem with learning about Windows is having to learn some C along the way to get some understanding of the example coding on MSDN. As it turns out, learning some C has really been a good thing since this has given me a better appreciation of PB.

              Any pointers that you may have would be very much appreciated.




              • #8
                Hello All,

                At this point and time I am just reviewing what would be the best direction for my editor. I have yet to play with the RichEdit controls but it does seem to be the way to go. I would like to keep the editor as simple as possible so that the source doesn't become to overwhelming...



                • #9
                  Guys, the reason I ask is that making an editor using a normal edit or an RTF control imposes a 64k limit. There are tricks to increase them a little, or by using multiple edit controls to make it a virtual bottomless pit. I think the better way is to
                  make your own using straight memory and window Blitz painting.

                  The edit controls also have flickering problems to deal with when
                  you need to update it on a continuous basis. I am talking mostly
                  about making an editor with syntax highlighting and parsing the text on the fly. I think this is a large project and as Lance would say, "not for the faint-hearted"!

                  Hutch has an editor that seems to handle very large files with no penalties, but no syntax highlighting capability. Borje RTF post demonstrates the Flickering problem when parsing text on the fly.

                  On an NT machine the 64k limit and flickering may not be an issue?

                  Regards, Jules
                  [email protected]

                  Best regards


                  • #10

                    I am using Windows2000 right now so there are no limits to the size of an edit box. Be that as is may, I to have been thinking about a custom editbox that could handle large files to combat the 64k limit in 98. I have played around with a custom status console that supported colored text but the text would just scroll off the top and be lost. After I get back from my meeting I'll put a simple chunk of code for a status console. I'm sure lots of you would find it usefull...



                    • #11
                      Meeting was here is a very simple console for all of you...

                      #compile exe
                      #register none
                      #include ""
                      rem console id number
                      %IDCONSOLE = 1000
                      rem console hight in lines
                      %CONSOLEHIGHT = 10
                      rem constant text hight, this could be
                      rem calculated from current font selected
                      %TEXTHIGHT = 8
                      rem this function prints a line of text to the console
                      function cprint(byval hdlg as long, message as string) as long
                        dim console(%CONSOLEHIGHT) as static string
                        dim buffer as local string
                        dim index as local long
                        console(%CONSOLEHIGHT) = message & $CRLF
                        for index = 0 to (%CONSOLEHIGHT - 1)
                          console(index) = console(index + 1)
                          buffer = buffer & console(index)
                        next index
                        control set text hdlg, %IDCONSOLE, buffer
                      end function
                      rem callback function for main dialog
                      callback function dlgproc as long
                        dim index as local long
                        select case cbmsg
                          case %WM_INITDIALOG
                            rem print simple text out to console (1-10)
                            for index = 1 to %CONSOLEHIGHT
                              call cprint(cbhndl, format$(index))
                            next index
                        end select
                      end function
                      rem main program function
                      function pbmain as long
                        dim hdlg as local long
                        dialog new %NULL, "console", 1, 1, 256, %CONSOLEHIGHT * %TEXTHIGHT + 16, %WS_CAPTION or %WS_SYSMENU to hdlg
                        control add label, hdlg, %IDCONSOLE, "", 8, 8, 240, %CONSOLEHIGHT * %TEXTHIGHT + 1, %SS_SUNKEN
                        dialog show modal hdlg call dlgproc
                      end function


                      • #12

                        In Semen's list: where is ATTRIB?
                        This keyword, by the way, is not capitalized when using PBDLL60's IDE. Any idea PB-guys?



                        Egbert Zijlema, journalist and programmer (zijlema at basicguru dot eu)
                        *** Opinions expressed here are not necessarily untrue ***


                        • #13
                          Egbert --
                          If you will look Pb' help, you will see Attrib in contents without reference (exactly, to GetAttr). The same about Attr.

                          [This message has been edited by Semen Matusovski (edited June 23, 2000).]