SciTE Customization GUI -- [02/26/2015] A


175 posts in this topic

Posted (edited)

SciTE Customization GUI is intended to be your one-stop solution for your SciTE customization needs.

With SciTE Customization GUI you can create new themes from scratch without having to touch a single configuration file.  Simply select 'Default Theme' from the file menu.  This will start you out with a default theme.  Then make your changes to the theme.  Finally, select 'Save As' from the file menu and give it a name.

You can see live changes to SciTE as you change things around (some settings are not live). You can change various SciTE4AutoIt3 settings such as Tidy, Tools, debug trace messages, etc.

I wanted to see how large of a program I could script in AutoIt before it become a mass of unmaintable spaghetti. I feel that I am successful in that regard. It is reasonably easy to debug, extend and understand. I feel that this was achieved by employing the Model View Controller pattern. I also used AutoItObject which allows me to achieve a level of information hiding which would not have been possible otherwise.

I stand on the shoulders of giants so credit where credit is due. Thanks to Jos for the original SciTEConfig. Thanks to Jon for AutoIt. Melba23 for the SciTE Abbreviation Manager and the SciTE UserCalltip Manager. 

Note: this is not an official script.  Jon, Jos or the rest of the AutoIt team do not provide support.  That's all up to me.

Don't forget to read the changelog for details.

SciTE Customization GUI.zip -- Make sure to read the section titled "Usage Notes" below.
downloads: 3759

SciTE Customization GUI -- Source.zip -- Includes all of the required dependencies.

Usage Notes:

Please be sure to follow these steps before you run the program. 

1) This step only applies if you use SciTE Customization GUI already otherwise disregard.  Delete the 'SciTE Customization GUI' exe and the folder of the same name.  Be sure to save any customized themes that you may want to keep.

I have tested this only under Windows 7 x64 on my computer only when the moon is in the fifth phase of the house of aquarius.  Please report bugs.



Change Log:

[02/26/2015]

A  1) Integrated Melba23's changes to my version of his UCTMan.

    2) Tidy should now update properly.

[01/06/2015]

 A -- UI Improvements: Fold flags have more space between them.

 B -- Changed highlight.current.word.stopatspace to stoponspace.

Features: Copy all versions to clipboard for easy pasting to the forum.  Some others that I forgot.

[12/02/2014] -- Bug Fix release: Nothing exciting just fixed a bug which I introduced when optimizing the code.

[11/11/2014] -- Bug fix release: script would crash when toggling some options.  No new features.

[08/29/2014] -- Added option Stop at Space to stop automatic word highlighting at spaces. 

Recent improvements to With/EndWith have allowed thousands of direct references to objects to be eliminated resulting in a marked increase in speed.

Added another option but I'm not really because I may have forgot.  Also other bugfixes and improvements that I have since forgotten.  I really should start keeping track of these things.  Edit: I remember one thing.  This should now place nicely with the default SciTE4AutoIt3 themes.

[06/02/2014] --

UI Improvements: Dropdown box instead of updown box for 'Title Full Path' in the 'View' group under the 'SciTE1' tab.  Tidy tab 'Proper Case' group now subsumed into the 'Formatting' group.  Labels should be correctly sized for WinXP users.  Other minor adjustments.

Bugs and General Code Quality: Fixed some logic bugs under the 'Theme' tab.  Other general bug fixes and code clean up.  SciTE4AutoIt3 tab icons directory doesn't default, so this should now work for WinXP users.  Incorporated Melba23's changes to his UCTMan and AbbrevMan.  Reduced code duplication.  Changing Tidy settings should actually work now ::heh::

Other fixes which I have forgotten temporarily.

Enjoy!

[04/20/2014] -- Smoothed out behavioral inconsistencies in the SciTE3 and Theme tabs.  Reduced lots of code duplication.  Should be more responsive too.

[01/30/2014] -- Several bug fixes, UI improvements and speedups.  Bugs introduced into the abbreviation and calltip managers have been fixed.  Check it out!

[01/03/2014] -- Tooltips work again.

[01/01/2014] -- Several speedups, bugfixes, and minor UI improvements.

[10/13/2013] -- Added "Save Session Advanced" option under "Save, Close, and Load" group.  Thanks iczer.

[10/09/2013] -- Latest update fixes numerous and varied bugs.  I actually kinda forgot a lot of stuff.  OK, one thing was the method of choosing the User Include directory is back to the way it used to be with the addition of a tooltip to tell you the list of directories.  The option "Blank Theme" is gone with "Default Theme" in its place.  The GUI should flicker less, it has for me at least.  The Tools tab should be more reliable and play even more nicely with AutoIt3Portable.  I'll add more if I remember them.  Enjoy!  Oh yeah, double clicking a shortcut under the Tools tab will bring up a window to let you change the shortcut.

[09/23/2013] -- The managers will not position themselves to not be off screen.  Fixed issue where the tools menu would not bring up the shortcut editor after opening and closing a manager.

Added a feature to SciTE Abbreviation Manager to call up the rename window when double clicking on an abbrev name. ( A )

[09/22/2013] -- OK, the last update had a lot of GUI bugs that I introduced when I tweaked the GUI.  Those should be fixed.  Also, the Tools menu should now work for AutoIt3Portable.  I completely overlooked that all this time.  Also, under the tools menu, if you double click a tool entry then an InputBox will popup where you can enter a new shortcut for that tool!  Amongst many other fixes that I don't feel like getting in to.

[09/17/2013] -- A few more minor bugfixes. The Abbrev and Calltip managers should now play nicely with portable versions of AutoIt.  Please test this for me.  The controls on the GUI are less bunched in together.  Looks nicer.  Tell me what you think about the layout.

[09/17/2013] -- A few more minor bugfixes.  More importantly, Melba23's AbbrevManager and CalltipManager have been added!  They may be accessed through the file and context menus.

[09/16/2013] -- More bugfixes.  I'm surprised this script even runs at all.

[09/12/2013] -- Fixed a few behind the scenes issues dealing with loading themes.  If a user clicked New and then loaded an official theme the appearance would be incorrect.  Users no longer need to delete the official SciTEConfig boilerplate.  Don't worry, backups are made.  Amongst other fixes.

[09/11/2013] -- Several Exciting Features!  A context menu for quick access to the 'Theme' file menu.  Copy and Paste context menu on the color selection buttons.  This makes it easier to make your custom themes.  When you click on an item in the 'Versions' file menu then the name and version of that item is copied to the clipboard.  Tons of code duplication is eliminated.  Several other smaller fixes.  Many new themes included which are listed in the 'Themes' spoiler below.  Have fun!

[08/22/2013] -- More embarrasing bugfixes ( B)

Bugfixes and SciTE added to Versions menu. (A)

[08/19/2013] -- Bugfixes and several new options!

The new options are located under the following groups:

    1) View: Ensure Final Line End

    2) Save, Close and Load: Save Bookmarks, Save Folds and Open Dialog in File Directory

[08/13/2013] -- Bugfixes and several new options!

The new options are located under the following groups:

    1) Console: Output Scroll

    2) Drawing: Font Quality

    3) Tidy: Proper Case Constants

    4) Versions file menu option

[07/29/2013] -- Bugfixes and several new options!

The new options are located under the following groups:

    1) Indentation: Highlight Indentation Guides

    2) Save, Close and Load: Strip Trailing Spaces

    3) AutoComplete: Automatic, Fillups

    4) Misc: End At Last Line

Sorry mlipok, I am unable to implement your requested feature at this time.  I need more time to research and learn.

[07/18/2013] -- Many more bigfixes.  Updated syntax to use ternary to make even more variables const and to reduce hundreds of lines.  Also, should work for those who use AutoIt3Portable!  Added a control to display the versions of AutoIt that are installed.

[06/04/2013] -- Many bug fixes.  The logic behind the SciTE4AutoIt3 and Tidy tabs was pretty convoluted which made stamping out bugs non-trivial.  Also, bug fix per UEZ and Guinness.

[05/28/2013]Bug fix per >UEZ.  Also, another bugfix per UEZ.

[05/28/2013]Fixed bugs that I introduced in the last release.  Sorry about that!  Also added a feature to change the default AutoIt3 icon!  It is found under the 'SciTE4AutoIt3' tab.  Also, now uses individual exes to change things that require elevation.  This means there is only one box to click on instead of two.

[05/24/2013]Quite a few bug fixes.  Update button localized to the places in the GUI where it is needed to make it more obvious when it needs to be used.  In other words no update button at the bottom of the GUI.

[05/09/2013 - A]This is the best update yet. I now read and write the SciTEUSer.config files with the INI functions. This is why the official themes will not work. There are many bug fixes. There is far less code. There are a few more features too.

Just now fixed an issue with saving new themes.

[05/09/2013 - B] Fixed per UEZ.



Themes:

Barf


Bespin
Black -- AZJIO
MSDEV -- Jon
MSDEV2 -- Valik
Obsidian
Pharoah -- Jaberwocky6669
SciTE4AutoIt3 -- Jos
Shades -- Mat
Solarized Dark -- wraithdu

Solarized Light -- wraithdu
Son of Obsidian
Twilight
UnCognitive -- JamesBrooks

New themes: From: StudioStyles

Delphi Classic

Embers

Eye Safe

Legal Pad

Light Blue

Monokai

Mustang

Russian Noth

Son of Obsidian Fixed

Sublime 2

Tommorrow Night

 

Screen Shots [06/02/2014]:

UdoZSOW.jpg

1vuIQzI.jpg

nCbP47v.jpg

FeFo6Se.jpg

COn4wHJ.jpg

m6SDU8s.jpg

N58SSZb.jpg

Edited by jaberwacky
UEZ, Radiance and Skitty like this

Share this post


Link to post
Share on other sites



Posted

I believe there's something missing from this post. :oops:

Share this post


Link to post
Share on other sites

Posted

Yup, lol! Fixed. Thanks!

Share this post


Link to post
Share on other sites

Posted

Doesn't work with a non-installed (portable) version of SciTe because it's reading from the registry instead of looking for the environment variable SCITE_Home first. I'll have to try it on my home computer to see how it works, I have it installed there, but can't test on my company computer because AutoIt isn't installed on it, using it from a thumb drive.

Share this post


Link to post
Share on other sites

Posted (edited)

I am fine with people creating more extensive SciTEConfig setups, but just as a pre-warning: I have been making quite some changes to SciTEConfig to avoid the need of updating au3.properties and all changes will now be saved into SciTEUSer.properties (where it belongs).

This all will ensure that whenever you upgrade the SciTE4AutoIt3 package, the updates made will stay and you don't require Admin level anymore to make the changes, except for the File Open setting change in the registry.

By the way: It is looking nice.

Jos :oops:

Edited by Jos

Share this post


Link to post
Share on other sites

Posted

I have been making quite some changes to SciTEConfig to avoid the need of updating au3.properties and all changes will now be saved into SciTEUSer.properties.

By the way: It is looking nice.

One step ahead of you.

Thanks!

@BrewmanNH, I'll see what I can do to address those issues.

Share this post


Link to post
Share on other sites

Posted (edited)

Awesome! only one problem :S

When I ran the compiled binary under SciTE4AutoIt3 (v2.28) and changed the tidy parameters default to white spaces instead of tab delimiters under SciTE , leaving all the defaults your script had and not touching anything else, I pressed update and got this.

Posted Image

Is this expected behavior?


Edit: Oh, never mind, I see what's going on now, I hadn't noticed its defaults are set to disable all the 3rd party tools, you just have to check them and click update, my bad! Edited by THAT1ANONYMOUSEDUDE

Share this post


Link to post
Share on other sites

Posted (edited)

I don't understand. If it's a bug I want to work on it for sure. It shouldn't disable any tools by default.

Edited by LaCastiglione

Share this post


Link to post
Share on other sites

Posted

I don't understand. If it's a bug I want to work on it for sure. It shouldn't disable any tools by default.

Doesn't seem like it, I had just assumed the tool would detect active tool entries and set them to checked under the tools tab, and when I updated the config, I wasn't expecting it to disable all the tools, but as I noticed, it doesn't seem to detect a users current tool configuration and you have to set it manually when first run as it seems. After first run It does detect what tools a user has after it sets them itself, I guess it has something to do with "SciteTools.ini", which came with the download which has all the tools disabled by default.

Works great btw.

Share this post


Link to post
Share on other sites

Posted

Ok, problem detected!

when I updated the configuration for what tools will appear in the "Tools" menu area, I disabled "Make UDF header", when I re-enable the tool selection, I get an error in the scite console.

C:Program FilesAutoIt3SciTELuaTools.lua:73: Tool "AutoItTools.InsertUDFHeader" not found.
>Lua: error occurred while processing command

Share this post


Link to post
Share on other sites

Posted

But it worked before?

Share this post


Link to post
Share on other sites

Posted (edited)

yep yep, even reinstalled scite a few times to see if it would do it again, and it did, I couldn't figure out what was happening though :/

Edit: Forgot to mention I'm using windows 7 x86 if it's of any relevance.

Edited by THAT1ANONYMOUSEDUDE

Share this post


Link to post
Share on other sites

Posted

This is what I see when I try it from a new installation: Function or struct definition not found, unable to insert header.

Share this post


Link to post
Share on other sites

Posted

It seems to work flawlessly on my system now, I see that you even have it detect what tools are active now as well? I'd say this is a very suitable contender for the current scite config tool distributed with the autoit installation, I wouldn't mind seeing this as a tool option under tools.

Feature Request: add an option to replace the current scite config tool, this thing is too robust in features not to consider doing so, wouldn't you say?

Sadly, I believe it hasn't gotten the attention it deserves, I would say jos should consider replacing the current scite config with this, I mean why not? It has everything it scite config has and more.

I'd also like to mention that you should consider making the gui resizable and wider instead of taller, it's not fitting into the screen on my laptop, which I use a lot and I can only see a portion of the contents in the gui unless I attach it to a monitor.

Share this post


Link to post
Share on other sites

Posted

It seems to work flawlessly on my system now, I see that you even have it detect what tools are active now as well? I'd say this is a very suitable contender for the current scite config tool distributed with the autoit installation, I wouldn't mind seeing this as a tool option under tools.

Feature Request: add an option to replace the current scite config tool, this thing is too robust in features not to consider doing so, wouldn't you say?

Sadly, I believe it hasn't gotten the attention it deserves, I would say jos should consider replacing the current scite config with this, I mean why not? It has everything it scite config has and more.

I'd also like to mention that you should consider making the gui resizable and wider instead of taller, it's not fitting into the screen on my laptop, which I use a lot and I can only see a portion of the contents in the gui unless I attach it to a monitor.

Thanks for the positive words!

I haven't done anything with the Tools stuff. Nice to know I don't have to now. LOL!

I wouldn't want to have to officially maintain this monster. Have you seen the source?

It used to be resizeable, so I guess I'll go back to that. It's should just be a matter of uncommenting a few lines.

Share this post


Link to post
Share on other sites

Posted

Thanks for the positive words!

I haven't done anything with the Tools stuff. Nice to know I don't have to now. LOL!

I wouldn't want to have to officially maintain this monster. Have you seen the source?

It used to be resizeable, so I guess I'll go back to that. It's should just be a matter of uncommenting a few lines.

Hmm, interesting...

I remember the last time I tried it, any modifications to the tools options would render the "Make UDF header" option inoperable, but it's not doing it anymore..

I've re-installed different versions of autoit since that time, so who knows what might be at play there.. And yeah, I saw the source, turned 360 degrees and walked away, I hate the objects syntax, it's confusing as hell!

Share this post


Link to post
Share on other sites

Posted (edited)

Played real quick, seem to have found some problems.

1) First two tabs, changing options does not enable the Update button.

2) First two tabs, reload does not refresh / reset the options.

3) Theme tab, not recognizing the current font.

Edit2:

#3 seems to be that you're not picking up both the base font and monospace font, and which is actually active.

It would also be nice to import user themes from the standard location, <scitedir>SciteConfig.

I'm running Win7 x64, SciTE v3.0.4.

Edit:

You should also check for user defined Tools in the user properties file (that's where I keep mine).

Edited by wraithdu

Share this post


Link to post
Share on other sites

Posted

1) First two tabs, changing options does not enable the Update button.

2) First two tabs, reload does not refresh / reset the options.

3) Theme tab, not recognizing the current font.

Edit2:

#3 seems to be that you're not picking up both the base font and monospace font, and which is actually active.

It would also be nice to import user themes from the standard location, <scitedir>SciteConfig.

Edit:

You should also check for user defined Tools in the user properties file (that's where I keep mine).

I think I have everything so far except for importing user themes from standard location. Please run again to see if that corrects the issues so far. Thank you.

Share this post


Link to post
Share on other sites

Posted

I'm getting a lot of errors when using this on Windows 7 x64.

=============================================

! AutoItCOM Test: We intercepted a COM error!

windescription: Member not found.

(-1) :

=============================================

This happens when starting and when trying to update the properties file.

BTW, using this on a portable version of SciTE/AutoIt.

Share this post


Link to post
Share on other sites

Posted (edited)

You put the script into your scite directory too?

I just replicated the problem. Thanks for the report!

Edited by LaCastiglione

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