Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

[ARCHIVED THREAD] SciTE4AutoHotkey v2 Stable - Released.


  • This topic is locked This topic is locked
154 replies to this topic
fincs
  • Moderators
  • 1662 posts
  • Last active:
  • Joined: 05 May 2007
This thread is outdated - GO TO THE v3 BETA THREAD INSTEAD
This thread is outdated - GO TO THE v3 BETA THREAD INSTEAD
This thread is outdated - GO TO THE v3 BETA THREAD INSTEAD


A long time ago, Chris wrote the following in the "AutoHotkey Needs You" post:

Recommended Editor: Implement strong syntax highlighting and utility integration (such as Intellisense) in a free editor such as SciTE or PSPad. That editor could then become the recommended editor to be mentioned prominently on the site (and possibly distributed with AutoHotkey). It's likely that 80% of users either do not know that syntax highlighting exists for AutoHotkey, or believe it's more complicated than it's worth to install it.

This is my response:

Posted Image

SciTE4AutoHotkey - SciTE distribution specially designed for AutoHotkey.
Version 2.0
Check it out:
Web page

Posted Image

Number of downloads that the Installer has had:
Posted Image
Number of downloads that the zip has had:
Posted Image
Number of downloads that the lite version has had:
Posted Image

May this topic be sticky?

TheGood
  • Members
  • 589 posts
  • Last active: Mar 22 2014 03:22 PM
  • Joined: 30 Jul 2007
Very nice!
One thing is that the keys in toolbar.properties are inverted. "rows" should be "cols" and "cols" should be "rows".
Also, even when I set the number of rows ("cols" key) to 1, the toolbar still sticks out a little of the status bar height. Any way to keep it in the status bar only?

Edit: Also, the horizontal scrollbar doesn't properly represent the space needed to scroll. For example, it shows a lot of slack even though I don't have any lines going off screen.

Montu
  • Members
  • 142 posts
  • Last active: Jan 01 2010 03:10 AM
  • Joined: 11 Feb 2009
Thanks a lot

I've been using the notepad++ until now but this thing is FANTASTIC
it can autocomplete the parameters while you're and all that
thanks I needed this.

suggestions
1. ability to insert the image, sounds within exe (yes I did try that ladiko's compilor but it gives me error)
2. ability to create colorful buttons in GUI

danalec
  • Members
  • 225 posts
  • Last active: Oct 03 2014 05:31 PM
  • Joined: 20 Jul 2006
nice,

some ideas (not listed in priority):
-a regex sandbox
-multi language interface (for the current tools, scite etc)
-ahk compiler in portable mode (yes, it is possible)
-replace auspy with ahk window info 1.7
-replace the macro recorder with some better solution (maybe titan's one. a keylogger like, recorder with timings seems to lack)*
-a debug mode calling debugBIF() (in the fly without adding into the source, calling the debugger only over the test execution)
-a "stdlib" downloader like a pseudo package system (would require a good index)
-a wizard for some commands like imagesearch and running cli apps (that would be simple and would help a lot of new people)
-winapi+dllcall+struct related tools (skan's, heresy's, lexikos' etc. msdn is a must)
-possibility to add other programming languages in scite in a wizard or something (hey, I miss my default scintilla supported languages! also note scite is using lua and doesn't comes with a lua editing highlighter? wtf.)
-autohotkey.net connect through ftps and svn (portable tortoise!? <- lol its a joke)*
-source compare (diff, merger etc)*
-hex editor (okay, this is not very important)
-global settings saver (for saving current data in the tools fields)
-bundle monospaced font (come on, we all love monospaced fonts)
-hints and tips for some commands (not like an annoying assistant like the cliipper, but something useful for non experienced people)
-special chars sandbox (a fast visual tool to test asc, visualizing extended ansi etc)*
-a visual keyboard mapper (like osk, but only to visualize keys and or a interface to set remaps/add hotkeys. it could be a good VK/SC mapper too, you know, the ahk built-in one is sorta hidden from newbies eyes)*
-the possibility to add third party tools at the scite4autohotkey flying toolbar without much efforts (a config panel to manage the order and add more tools. Eg: winspector, spy++, winid etc.. we use them often! :)
-autohotkey.com announces window (gets the news from the site, obviously optional and should check how old is the news, could be handled by rss)
-autohotkey forum PM's lister (gets the new pm's received loggin in the forums and alerts user)
-autohotkey irc client (a very quick chat window for ask for help, discussion etc. well, the ansi mode could be easily handled with the tcp/ip functions)*
-a better integration with chm, possibility of fast queries over the "intellisense" like highlighter (autocomplete is not enough)*
-support for layout profiles (by example, winapi tools are shown by default in the advanced mode, the tips and hits a newbie mode etc)
-cursor list (a sandbox to setcursor, pre-visualize cur, ico. this is not very useful but it would help a lot some gui people)
-versioning system with backup (this is secondary but it would be very interesting, well it would be useless with svn support, but there are still many people offline)
-autohotkey.net pastebin manager (I wonder why its not there yet)
-words/commands/functions etc counter (woah, I thought scite had it)
-skan's custom gui editor for pseudo skins (as previously requested the image attacher, why not it too?)
... more coming soon

problems noticed in v2 final stable:
-it uses the launcher as reference to load other apps, so relative paths are ../ like. (very bad for a portable code, make it recognize autohotkey.exe path!)
-SmartGUI creator doesn't bundles with the manual.htm file
-the size of the toolbar background is big and white: covers horizontal scroll also is bad for other color layouts (oh thanks hezzu, didn't know it was possible, but hey, why default looks so ugly?)

*: important and lacks (good) solutions.

                                  [ profile ]


Hezzu not logged
  • Guests
  • Last active:
  • Joined: --

the size of the toolbar background is big and white: covers horizontal scroll also is bad for other color layouts


The size can be adjusted

Right click the toolbar -- Edit properties :O

fincs
  • Moderators
  • 1662 posts
  • Last active:
  • Joined: 05 May 2007
Hi k3ph :),

-multi language interface (for the current tools, scite etc)

Already planned :)

-ahk compiler in portable mode (yes, it is possible)

Already using portable version.

-replace auspy with ahk window info 1.7
-replace the macro recorder with some better solution (maybe titan's one. a keylogger like, recorder with timings seems to lack)*

Likely going to happen.

-a debug mode calling debugBIF() (in the fly without adding into the source, calling the debugger only over the test execution)

I prefer AutoHotkey_L debug mode integration, but I have no clue on how DBGp works and how to
implement a debugging system in this program. Maybe someone can guide me... :hint: :hint:

-a "stdlib" downloader like a pseudo package system (would require a good index)

That's not related to the editor :rolleyes:

-a wizard for some commands like imagesearch and running cli apps (that would be simple and would help a lot of new people)

Nice suggestion, maybe a wizard application could be made for those commands...

-winapi+dllcall+struct related tools (skan's, heresy's, lexikos' etc. msdn is a must)

Maybe those persons can adapt their apps to be compatible with my editor...

-possibility to add other programming languages in scite in a wizard or something (hey, I miss my default scintilla supported languages! also note scite is using lua and doesn't comes with a lua editing highlighter? wtf.)

The custom Scintilla version has every lexer deleted but the AutoHotkey lexer and the errorlist lexer.
If you want more languages, get ready for a size increse :rolleyes:

-autohotkey.net connect through ftps and svn (portable tortoise!? <- lol its a joke)*

Em... :roll:

-source compare (diff, merger etc)*

:roll:

-global settings saver (for saving current data in the tools fields)

:roll:

-bundle monospaced font (come on, we all love monospaced fonts)

So you want the installer to install some extra fonts?

-hints and tips for some commands (not like an annoying assistant like the clipper, but something useful for non experienced people)

I get the idea but tips on how it would work?

-special chars sandbox (a fast visual tool to test asc, visualizing extended ansi etc)

It's gonna be added because I also need it :roll:

-the possibility to add third party tools at the scite4autohotkey flying toolbar without much efforts (a config panel to manage the order and add more tools. Eg: winspector, spy++, winid etc.. we use them often! :)

Is adding a small line to the toolbar.properties (=Name|Path|Hotkey|Icon) difficult?
Anyway I'm gonna make a "SciTE4AutoHotkey Tool SDK", or sort of ;)

-autohotkey.com announces window (gets the news from the site, obviously optional and should check how old is the news, could be handled by rss)
-autohotkey forum PM's lister (gets the new pm's received loggin in the forums and alerts user)
-autohotkey irc client (a very quick chat window for ask for help, discussion etc. well, the ansi mode could be easily handled with the tcp/ip functions)

Ask me to add a web browser to the editor, please :lol:

-a better integration with chm, possibility of fast queries over the "intellisense" like highlighter (autocomplete is not enough)

Well... Can you explain better?

-support for layout profiles (by example, winapi tools are shown by default in the advanced mode, the tips and hits a newbie mode etc)

Maybe an user system could be added in a future release.

-cursor list (a sandbox to setcursor, pre-visualize cur, ico. this is not very useful but it would help a lot some gui people)

Maybe.

-versioning system with backup (this is secondary but it would be very interesting, well it would be useless with svn support, but there are still many people offline)

:roll:

-autohotkey.net pastebin manager (I wonder why its not there yet)

You're talking of a small autohotkey.net pastebin paster, right?

-words/commands/functions etc counter (woah, I thought scite had it)

There will be a function/label list in a future release that will likely include this feature.

-skan's custom gui editor for pseudo skins (as previously requested the image attacher, why not it too?)

No :)

-it uses the launcher as reference to load other apps, so relative paths are ../ like. (very bad for a portable code, make it recognize autohotkey.exe path!)
-SmartGUI creator doesn't bundles with the manual.htm file

Will be fixed.

-

Well, the first of all I don't wanna bloat this app too much, so please only ask for
the most important features, ok?

genmce
  • Members
  • 144 posts
  • Last active: May 21 2015 03:09 PM
  • Joined: 10 Jan 2009
Very nice!
I like it very much.
Thank you!
FR - perhaps it is there already.
Is there a way to have two files up and open to compare.
Notepad ++ has a dialog on right click that lets you send to different pane.
And lock them so I can scroll down to see diffs.

Thanks alot

KeyMce/GenMce - mackie emulator for pc keyboard/Convert your controller to mackie.
Midi I/O - Want to play with midi/ahk? links dead.. pm me


Lexikos
  • Administrators
  • 9844 posts
  • AutoHotkey Foundation
  • Last active:
  • Joined: 17 Oct 2006

I prefer AutoHotkey_L debug mode integration, but I have no clue on how DBGp works and how to
implement a debugging system in this program. Maybe someone can guide me... :hint: :hint:

When I saw k3ph's post yesterday, I thought of posting "<wishlist>DBGp integration</wishlist>"; but I figured it'd end up to be more work for me. :lol:

I've been meaning to write a library of functions for interacting with the debugger. The idea is to provide everything necessary for someone else to develop a user interface with minimal effort. You may also know that Scintilla has the capability to show "line markers" for things like breakpoints and the current line. If you're interested, we can discuss this in real-time after I've written the functions.

DebugBIF() is still useful, until I implement "exception" breakpoints - i.e. break when a run-time error occurs. This would include errors that can be detected by DebugBIF(), and others such as passing too few (or incorrect) parameters to a dynamic function call. Combined with "variable inspection" or variable lists integrated into the editor, it would make run-time errors much easier to debug.

The custom Scintilla version has every lexer deleted but the AutoHotkey lexer and the errorlist lexer.

It seems to be a simple matter of replacing SciLexer.dll with the "full version," so I think it should be left up to the user.

-versioning system with backup (this is secondary but it would be very interesting, well it would be useless with svn support, but there are still many people offline)

I believe TortoiseSVN allows one to create offline repositories. Simple TortoiseSVN integration (via the command-line tools) might suffice.


Btw, I think the current toolbar detracts from the overall quality of Scite4AutoHotkey. It should be possible to hook into the actual SciTE toolbar; perhaps I'll work up an example (after figuring out the details).

Lexikos
  • Administrators
  • 9844 posts
  • AutoHotkey Foundation
  • Last active:
  • Joined: 17 Oct 2006
OK, I couldn't figure out any way of "permanently" inserting space between the existing toolbar and tabbar, but I've had success with SetParent. Here is an extract from my copy of toolbar.ahk:
; Create the toolbar
Gui, -Caption +LastFound ;+AlwaysOnTop +ToolWindow 

loop, %ntools%
	Gui, Add, Picture, % "x" ((Mod(A_Index-1, rows) * iconsize2)+spaces) " y" Floor((((A_Index-1) // rows)*iconsize2+spaces)) " w" iconsize " h" iconsize "  gToolButton vBut" A_Index " Icon" Tool[%A_Index%]_IconNumber, % Tool[%A_Index%]_Picture

; Get the HWND of our GUI. This line moved here from below. ~L
hwndgui := WinExist()

;  Get HWND of real SciTE toolbar. ~L
ControlGet, toolbarhwnd, Hwnd,, ToolbarWindow321, ahk_id %scitehwnd%

; Get width of real SciTE toolbar to determine placement for our toolbar. ~L
RemoteBuf_Open(scite_buf, scitehwnd, 8)
SendMessage, 0x453, 0, RemoteBuf_Get(scite_buf),, ahk_id %toolbarhwnd% ; TB_GETMAXSIZE=0x453
VarSetCapacity(our_buf, 8)
RemoteBuf_Read(scite_buf, our_buf, 8)
x := NumGet(our_buf) + 8
y := 0

; Show the toolbar
Gui, +0x40000000 -0x80000000 ; Must be done *after* the GUI is created. Fixes focus issues. ~L
ControlGetPos,,, guiw, guih,, ahk_id %toolbarhwnd% ; Get size of real SciTE toolbar. ~L
DllCall("SetParent", "uint", hwndgui, "uint", toolbarhwnd) ; Insert our toolbar onto real SciTE toolbar. ~L
Gui, Show, x%x% y%y% w%guiw% h%guih% NoActivate, AHKToolbar4SciTE
It requires RemoteBuf. You must also disable everything in updatetoolbarpos after:
IfWinNotExist, ahk_id %scitehwnd%
	Gosub exitroutine
It places the AutoHotkey toolbar on the real SciTE toolbar, to the right of all buttons. It should work as expected even if the toolbar is not initially visible, or is enabled/disabled. The tooltips do not appear to work; I think OnMessage is "disabled" as a side-effect of SetParent. Sub-classing may get around this. On the other hand, using a real Toolbar might be a better solution, and would also make the buttons more consistent with SciTE.

fincs
  • Moderators
  • 1662 posts
  • Last active:
  • Joined: 05 May 2007
Ok, thanks Lexikos for showing up in my thread :), here are my responses:

I've been meaning to write a library of functions for interacting with the debugger. The idea is to provide everything necessary for someone else to develop a user interface with minimal effort. You may also know that Scintilla has the capability to show "line markers" for things like breakpoints and the current line. If you're interested, we can discuss this in real-time after I've written the functions.

Of course. I'm pretty active on IRC. Also, I know about that feature of
Scintilla, it's as easy as having to do a bunch of SendMessages :) (this is not sarcastic, it is actually easy.)
On the other hand, to receive information from the Scintilla control
(OnMarginClick), you must bypass SciTE's WndProc() function to intercept
Scintilla's messages and then call the actual SciTE WndProc().
This is actually explained on the AutoHotkey help (scroll down).

OK, I couldn't figure out any way of "permanently" inserting space between the existing toolbar and tabbar, but I've had success with SetParent. Here is an extract from my copy of toolbar.ahk:
(code)

Great, I can't wait to apply those changes to the toolbar :D

EDIT: Now I understand subclassing, I've already said how it's done in this post :lol:

tank
  • Administrators
  • 4345 posts
  • AutoHotkey Foundation
  • Last active: Feb 04 2019 09:54 PM
  • Joined: 21 Dec 2007
So i have to ask since i think you released this befor you and animaeamie worked on gendocs is the very latest version of that included with this?
Never lose.
WIN or LEARN.

fincs
  • Moderators
  • 1662 posts
  • Last active:
  • Joined: 05 May 2007

So i have to ask since i think you released this befor you and animaeamie worked on gendocs is the very latest version of that included with this?


The latest GenDocs (2.0) is bundled with SciTE4AutoHotkey v2.0 Stable (released after GenDocs 2.0).

Lexikos
  • Administrators
  • 9844 posts
  • AutoHotkey Foundation
  • Last active:
  • Joined: 17 Oct 2006

On the other hand, to receive information from the Scintilla control (OnMarginClick), you must bypass SciTE's WndProc() function to intercept Scintilla's messages and then call the actual SciTE WndProc().
This is actually explained on the AutoHotkey help (scroll down).

It is not possible to sub-class a window of another process on Windows 2000 or later. Scintilla also sends some notifications to its parent via WM_NOTIFY, but again, WM_NOTIFY cannot be sent between processes on Windows 2000 or later.

fincs
  • Moderators
  • 1662 posts
  • Last active:
  • Joined: 05 May 2007

On the other hand, to receive information from the Scintilla control (OnMarginClick), you must bypass SciTE's WndProc() function to intercept Scintilla's messages and then call the actual SciTE WndProc().
This is actually explained on the AutoHotkey help (scroll down).

It is not possible to sub-class a window of another process on Windows 2000 or later. Scintilla also sends some notifications to its parent via WM_NOTIFY, but again, WM_NOTIFY cannot be sent between processes on Windows 2000 or later.


Ah, pity :(
So, maybe an interface implemented in LUA? Or a custom SciTE version?

wtg
  • Members
  • 251 posts
  • Last active: Dec 19 2012 03:54 PM
  • Joined: 04 Oct 2006
FYI, when I try to perform a web install I get an error message:

Can't download the file!
Make sure your Internet connection is active then
try to install the program again.

I took it's advice and tried again, rebooted, redownloaded install app, but still no go. :) Not sure what's up as there's nothing special about my PC's setup. It's Windows XP with one network connection and nothing else seems to have trouble. The web install worked fine on my Vista laptop.

I downloaded the data file independently and then ran an offline install and that worked so I'm good to go, but I thought I'd let you know.

Thanks for your efforts. Nicely done!