Post by (X) on Aug 16, 2023 18:35:37 GMT 1
I WANT TO BUILD A FASTER GLL DEVELOPMENT CYCLE USING A GLL!
In a nutshell:
I want a faster way to develop GLLs! It feels like it takes almost a minute to compile and enable a GLL manually. I would like to bring that down to 1 second using GLL automation.
The typical "manual" GLL Development Cycle using shortcuts:
Compile ({Ctrl+S, Ctrl+E, Enter} saves and compiles the New GLL)
Enable ({Ctrl+M, End, Alt+R, Alt+A, Select file} Open Ext mgr, Select Old, Remove Old, Select New GLL)
Run (Enter Shortcut Key Combo or Select the Extra Menu Item)
This sequence takes me about 40 seconds and that's using shortcuts to open menu sections etc.
I would like to automate much of this and bring the Dev Cycle Time down to ~1 sec.
Enable ({Ctrl+M, End, Alt+R, Alt+A, Select file} Open Ext mgr, Select Old, Remove Old, Select New GLL)
Run (Enter Shortcut Key Combo or Select the Extra Menu Item)
This sequence takes me about 40 seconds and that's using shortcuts to open menu sections etc.
I would like to automate much of this and bring the Dev Cycle Time down to ~1 sec.
Here is what I have come up with so far:
'#################################################################################
'
' DISCLAIMER: THIS CODE IS OFFERED AS IS FOR EDUCATIONAL PURPOSES.
' YOU ARE FREE TO USE, COPY AND DISTRIBUTE.
' THE USE OF THIS CODE IS AT YOUR OWN RISK.
' I ACCEPT NO LIABILITY NOR MAKE ANY CLAIM OF
' CORRECTNESS OR SUITABILITY IN PART OR IN WHOLE.
'
'#################################################################################
'
' FILENAME GFA_APP_G__GLL_Auto_Dev.G32
'
' DESCRIPTION Can we reduce the development cycle time of "GLL"s by using a GLL
' to automate as many operations as possible?
'
' AUTHOR (X)
' EMAIL xman.gb32@gmail.com
' WEBSITE https://gfabasic32.blogspot.com/
' FORUM https://gb32.proboards.com/
' STARTED 2023-08-16
' UPDATED <ISO date>
'
'
Sub Gfa_APP_G() // Auto compile and Add a GLL!
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' Why this routine? When you want to CREATE, COMPILE and ADD a GLL to the IDE,
' this requires the coder to manually perform many key strokes before being able
' to test. Can't we automate this using a GLL? Well, that's what this code is
' going to try to find out!
'
' What are the steps to implementing a new version of a GLL?
'
' DESIGN A "GLL INFORMATION INPUT FORM" TO PROMPT THE CODER FOR GLL INFO...
' SPECIFY:
' DISCLAIMER_TYPE // FREE FOR ALL, LIMITED OR COPYRIGHT
' SHORTCUT_KEY_COMBINATION
' EXTRA_MENU_ITEM_NAME // OPTIONAL
' FILENAME
' DESCRIPTION
' AUTHOR
' DATE
'
' BEG: PRIMARY AUTO SEQUENCE
' INSERT_HEADER
' INSERT_SHORTCUT_SUBROUTINE
' INSERT_EXTRA_MENU_ITEM // Optionial
' SAVE_FILE // Preferably: GFA_<Shortcut Key Combo>__<Description>.G32
' // A bunch of GLL funcs, procs and subs can all be stuffed
' // inside one GLL but that makes it difficult to "opt out"
' // of one utility or another. I am choosing to develop
' // GLLs separately for convenience, not necessity.
' // Once a GLL has reached maturity, perhaps it can be
' // merged into a more comprehensive GLL file.
' END: PRIMARY AUTO SEQUENCE
'
' BEG: CODING PHASE
' CREATE_CODE // Preferably: By increment, to catch errors early
' END: CODING PHASE
'
' BEG: SECONDARY AUTO SEQUENCE
' COMPILE // Compilation creates the .GLL file
' COPYFILE // Copy compiled GLL over to: "GFABASIC32\bin\"
' ADD/UPDATE // As a GLL: GFA IDE Extension!
' // Is there a way to do this with "Gfa_<combo>" commands?
' // Is there a way to do this using the Window Registry commands?
' EXECUTE // Press the shortcut or select the Extra menu item.
' END: SECONDARY AUTO SEQUENCE
'
' EVALUATE // If not "up to snuff", back to the drawing board!)
' NOTES // Keep a log! Record problem, possible fix and solution.
'
EndSub