Debugger Prototyping (Syntax Highlight)

Started by kevin, November 20, 2009, 01:20:56 PM

Previous topic - Next topic

kevin

 Debugger Prototyping (Syntax Highlight)

   This thread is just to log some possible debugger changes in regards to syntax highlighting.  As such, everything in this thread should be seen as nothing more than prototypes.  It may or may NOT make a into a PB release.

   Here's the first couple of shots..Both are written in PlayBasic 1.64k beta16.    For more info about these shots see here and here  

kevin

#1
  Added Keyword matching

   Continued work on the 1.64k beta testing by expanding the debugger parser prototype.   This version adds command matching.   Which as expected slowed the loader down, but it's easily still within the bound of acceptable use.   With this test version being able to parse over 20,000 lines in 1700-1800 milliseconds.   Ideally, i'd still like to prune this down some more, which should possible with better keyword searching,  But this is a brute force operation after all.    
 

kevin

#2
 Debugger (Syntax Highlight) Demo

    This is a demo of the current technique.   The basic approach is split into two halves, the pre-processing and the rendering side.   All the work is done during the pre-processing leg.   This code analyzes the source file and builds a representation of this.  The render just draws the representation.  

    So the processing side is really a brute force operation in this edition.  As such, the longer the source file being imported the longer the load time.  The test is set up to load a 20,000 line (plus) source file.  On my system, it routine loads this file in around 1700-1800 milliseconds.   Which is well within the bounds of acceptable use, given the size of the test file and that is prototype is build in PlayBasic V1.64k Beta17.  


 Demo Controls:

               Arrows = UP/Down Control page view up/down

                   F1 = Open File Dialog  (select your own PBA file)

                  ESC = EXIT DEMO
   
               Mouse  = Supports hover (mouseover) and wheel for window scrolling


 Demo Controls:

    Download Debugger Demo V0.03 (login required)  (1meg)