Jump to content
Sign in to follow this  
kjactive

New tool - a PreProcessor

Recommended Posts

I've got one too where it didn't pull *some* of the constants from an included file in the same dir. I tried to break the script down to give you an example but when I do that, it works fine. I'm at work now and don't have access to that script here. I can upload it to you later if you wish.

eltorro

Share this post


Link to post
Share on other sites

Well I'm finished with a compleate rewire to the application and fixed a lot of troublesome spots that eltorro and Wooltown nicely exposed and in the same time I did some speed upgrade - If any of you devoded autoitters come across some bugs please let me know as I'm in the final stage to move on the application coding and hopefully without debugging to much...

My goal is to make Au3PreProcess into a Large Project Manager & a final scripting PreProcessor...

Project Manager: To be able to move focus/edit directly into a function without looking up lots of scripts - directly from the list of included functions...

PreProcessor: Reduce CPU use and speedup execute time and make scripts unreadable to hide up my bad programming practice - I miss the Jump function 'just kidding'

Please download: http://www.sitecenter.dk/latenight/nss-fol...t%20Manager.zip

kjactive :)

Edited by kjactive

Share this post


Link to post
Share on other sites

2 small errors were found when I used it, the ending citation quote was missing on 2 lines

Global Const $LVITEM="int should be Global Const $LVITEM="int"

Global Const $MEM_MAP="uint should be Global Const $MEM_MAP="uint"

Share this post


Link to post
Share on other sites

I have a fairly good sized project that uses multiple children gui's. When I use this script on it for some reason the child gui stuff does not get included in the _pre version. Another thing that was missed is that (and I did not look through every line of code) almost all of my globals were missing. I have a singe include with most of my globals in it.

This is an interesting concept though. Another

I didn't find the issues that wooltown did.

Share this post


Link to post
Share on other sites

webmedic could you please mail the nessasary scripts to me and I'll have a closer look to solve the problem - Use the Autoit3 forum message handler, you'll find me under kjactive or you can drop me a personal mail with the file attached as a .zip archive at: kjactive@cph-metronet.dk PLEASE clearly state 'Au3PreProcess trouble' in the subject line or I drop the mail out in space as Spam...

Wooltown could you drop me an example script or just the full Global const line that should be included, I have a fair idear about what's happened but have to see a full example line to get a closer look - but it's something with a structure and not a variable I think and that's troublesome as these use ';' as a sepparator and if you strip your script for trailing comments it would get ruined - try with this PreProcess process off. Be aware that some PreProcess options is not wise to all scripts as FileOpenDialog use ';' as a suffix sepparator and if Remove trailing comments is active this would get ruined - structure 'variables' have the same issue etc. that's why I want to include an Makefile to control the preprocessor options related to different scripts but this is not implimentated jet...

Thanks both for your effort...

kjactive :)

Edited by kjactive

Share this post


Link to post
Share on other sites

sent.

A few notes.

It's a work in progress. I used to have some custom scripts for pebuilder that were all batch file stuff. I'm converting it all over to autoit. A good portion of the work is done but I'm still mostly working on the gui front end stuff yet. Not everything is complete though. What is there works perfectly. The back end stuff for actually controling barts pe is not added yet however.

It does work comletely as far as it goes for now and has no currently known bugs.

The gui stuff I have used for another app I made and so I still need to change the lang files and stuff but that will be last for me to do after everything else is done.

Thanks

Also note I'm most likely going to gpl it but I have not decided on a license yet so please don't give it out. Not that you would but thanks anyway.

Edited by webmedic

Share this post


Link to post
Share on other sites

Hallo webmedic and Other autoitters that dropped me scripts

Also note I'm most likely going to gpl it but I have not decided on a license yet so please don't give it out. Not that you would but thanks anyway.

I'm interested in 'wild scripts' to test Au3PreProcess on and all scripts send to me get placed into a testing directory on my personal computer and wiped when done and I really appciate all the effort you peoble do on helping me out - thanks...

kjactive :)

Edited by kjactive

Share this post


Link to post
Share on other sites

thank you.

ALso I didn't look at your code yet but I do use debugging functions to output debugging info to the console window of scite.

Another nice idea for the preprocessor would be if it would strip debugging lines from the finished product. This would save me from having to go through and do it all by hand.

my function calls look like this

_Debug(@ScriptLineNumber, "WhichPlugin  = " & $WhichPlugin)

This helps me to see were my code is messing up at so I sprinkle them all over when I'm trying to figure out what is going on.

Edited by webmedic

Share this post


Link to post
Share on other sites

Hallo Webmedic

To strip _Debug lines - yes I include that in future, any other things like this I should include

By the way - your mailed Project is a very well designed scripting project BUT huge, actually the biggest project I seen for a long time and it will take me quite a while to get down to the troublefull spots in Au3PreProcessor process, don't thing that I forgot it's just that huge a project that I probably have to mail you directly to get some idears where to look...

kjactive :)

Edited by kjactive

Share this post


Link to post
Share on other sites

no problem.

This project isn't much I have quite a few others that are at least this bit and a few that are larger.

No problem email me with any questions.

I can't think of anything else besides debug that would be nice to have. Since I know if all the _debug() lines are removed first then it should automaticly remove the function also.

Thanks.

Share this post


Link to post
Share on other sites

I've updated the Au3Preprocess trailing comment scan for structures and leave these unprocessed if there is more than two values in the structure - This one for Wooltown...

I found a troblefull spot - Remove tab characters now leaves one blank character 0x20 not to ruin the script in some conditions...

WebMedic Where do I find the _Debug function as I do remember something about this but can't find documentation...

kjactive :)

Share this post


Link to post
Share on other sites

Wow, making progress! :)

Here's something it's still messing up on:

It is turning this :

Global Const $tagBITMAPINFO = $tagBITMAPINFOHEADER &";"& $tagQUAD
oÝ÷ Ú)í¢Øb±«­¢+Ù±½°
½¹ÍÐÀÌØíÑ  %Q5A%9

regards,

eltorro

Share this post


Link to post
Share on other sites

Whoops, found another;

in a line like this, I am not using first one, but I am using the second. But the whole line is skipped altogether.

so this:

Global Enum $PS_SOLID= 0 , $PS_DASH, $PS_DOT, $PS_DASHDOT, $PS_DASHDOTDOT
oÝ÷ Ù·¢g¬jëh×6

eltorro :)

Share this post


Link to post
Share on other sites

Thank you very much, it works just fine.

Or as you say in Denmark: Mange takk - From the guy on the other side of Øresundsbron.

/Sven

Share this post


Link to post
Share on other sites

Sorry for the delay I have been off line.

It is a function or more like a udf that I use on my own scripts not something native to autoit.

I simply make my own function _Debug and from there echo the contents to the console. It's handy for debuggingand does not require a bunch of popup windows for debugging.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...