 |
AutoHotkey Community Let's help each other out
|
| View previous topic :: View next topic |
| Author |
Message |
majkinetor
Joined: 24 May 2006 Posts: 3615 Location: Belgrade
|
Posted: Sat Nov 04, 2006 2:17 am Post subject: |
|
|
Well, original plan was to support other languages. I still stick to that, as I created it so I am able to use it with some rare language I use.
Don't know how when I will find thime for this.
But, if you really want to have it with your language of choice and want to pay that work I can find time to that. In current situation I don't know when will I be able to work on it, and how will I handle other languages.
I am alo planing to add user functions and variables any way, and fix some issues with weird editors.
Thank you for your comments. _________________
 |
|
| Back to top |
|
 |
Guest
|
Posted: Thu Nov 30, 2006 12:25 am Post subject: |
|
|
Bumping...
There are so many superb scripts around here! The search funtion just doesn't find it, and a decent overview is missing.
Thank you |
|
| Back to top |
|
 |
TheIrishThug
Joined: 19 Mar 2006 Posts: 363
|
Posted: Thu Nov 30, 2006 4:37 am Post subject: |
|
|
| Whoever you were, thank you so much for the bump. Never would have known it existed. |
|
| Back to top |
|
 |
majkinetor
Joined: 24 May 2006 Posts: 3615 Location: Belgrade
|
Posted: Thu Nov 30, 2006 7:22 pm Post subject: |
|
|
Thx.
FYI, I plan to update this script greatly. Some bugs noticed so far will be fixed, I plan to document editors that are confirmed to work without problems and vice-versa, and most important, user functions and variables will be added in ISense list so you never have to type long variable names or functions you just created.
Don't know when though...
About overview, we currently have some inititive for organisation of scripts so they are not lost in space and time... _________________
 |
|
| Back to top |
|
 |
majkinetor
Joined: 24 May 2006 Posts: 3615 Location: Belgrade
|
Posted: Tue Jan 23, 2007 7:00 pm Post subject: |
|
|
ISense 1.1 released:
- Added plugins (method) to support different editors.
| readme.txt wrote: | You can also press CTRL SPACE on any part of the line at any time. ISense will grab that line and try to locate
the AHK command and current parameter. This procedure is editor specific so if it doesn't work with your
editor choose different method or write your own. |
HOW TO WRITE METHOD
Methods are located in includes\editor folder, with "Method N.ahk" names. Method is single AHK function,
ISense_GetLine witch returns text from the current cursor position to the beginning of the line, for
supported editors. One method may fit multiple editors, like it is usualy the case, so this file also contains INI section
[EDITOR] where you specify supported editors for that method.
To write new method, start by duplicating some of the method files. Save it under any name that doesn't
exist and replace the internals of the ISense_GetLine function. Whatever you do, cursor must be returned
to the same position as before you stared. When you grab the line, return it to the ISense, and thats all.
Afterwards, go to Setup and activate the new method witch will be visible in the list as soon as you save it.\
All supported editors specified by the INI part of the method will also be added to the editor list.
When you discover that your editor works with some of the already present methods and editor itself is not
in the editor list, please inform me on the forum so I can update the editor list. Do the same if you wrote
the new method for your editor.
Current method is includes\Method.ahk
Currently, there are 3 methods for witch are following editors tested:
EditPlus, EmEditor, PSPad, Scite, UltraEdit, SynPlus, Notepad, Metapad, Syn
In setup section you can choose editor if in the list, otherwise, you can try
one of the methods as your editor will probably fall into one of the available categories.
NOTES
Tracing tooltip can be enabled for debuging. To enable it, uncomment line
1:
1: Isense_trace := true
If you find any bug make sure nobody reported it (check out the BUGS section) before posting it.
Suggestions & feedback are appreciated.
TO-DO
- User variables and functions (per project) [soon]
- Language definition file so it is able to work with other languages. [very distant] _________________

Last edited by majkinetor on Thu Feb 01, 2007 1:52 pm; edited 6 times in total |
|
| Back to top |
|
 |
majkinetor
Joined: 24 May 2006 Posts: 3615 Location: Belgrade
|
Posted: Wed Jan 24, 2007 12:00 pm Post subject: |
|
|
version 1.1 beta 2
- I tried to fix the "deactivation bug" that appear sometimes on script start by replacing the IE control with another one, but it seems that the problem is in some strange behvior of IE control itself combined with AHK usage, or something.... So I created workaround that will try to fix things once bug is recognised, so it should appear much less frequent.
- some small fixes _________________
 |
|
| Back to top |
|
 |
majkinetor
Joined: 24 May 2006 Posts: 3615 Location: Belgrade
|
Posted: Wed Jan 24, 2007 2:34 pm Post subject: |
|
|
Check out the new fancy gif on first page  _________________
 |
|
| Back to top |
|
 |
dash
Joined: 29 Nov 2006 Posts: 53
|
Posted: Wed Jan 24, 2007 8:38 pm Post subject: |
|
|
Almost missed it!
Amazing work, majkinetor! |
|
| Back to top |
|
 |
AHKnow* Guest
|
Posted: Sun Jan 28, 2007 7:00 am Post subject: |
|
|
This is a 5 star script. Awesome. Should be considered to be included with AutoHotkey's main package.
It was very easy for me to configure this script for Crimson Editor, but I was wondering if you could include Crimson Editor by default with your script.
Crimson Editor is free and opensource, you can look at it like a free version of EditPlus, and a number of hardcore fans still use. http://www.crimsoneditor.com/ and free/opensource project that supports Crimson Editor and is an "continuation" of it http://www.emeraldeditor.com/ |
|
| Back to top |
|
 |
majkinetor
Joined: 24 May 2006 Posts: 3615 Location: Belgrade
|
Posted: Sun Jan 28, 2007 1:46 pm Post subject: |
|
|
| Quote: | | It was very easy for me to configure this script for Crimson Editor, but I was wondering if you could include Crimson Editor by default with your script. |
Of course I will include it, thats why I said in the readme to give me feedback about editors not currently there. Crimson works with Method 2 witch is General as it is high probability that almost all editors will work with it. Supporting this editor "officialy" is just about adding it to the Method 2 INI section
Note however that Method 2 is using clipboard to select the current line (while method 1 & 3 do not).
Crimson really looks like EditPlus, so I am really surprised it doesn't work with Method 1. It seems developers forgot to support standard Windows "edit API messages". _________________
 |
|
| Back to top |
|
 |
majkinetor
Joined: 24 May 2006 Posts: 3615 Location: Belgrade
|
Posted: Sun Jan 28, 2007 7:38 pm Post subject: |
|
|
You could also ask on developers forum is there any way to select the current line up to the cursor point using windows messages. That is all what is needed to write the method for any editor. It is possible this feature exist.
So far the cleanest solution is for Notepad (Method 3) for witch you can get the current line without any workarounds so ISense shines in Notepad (and Metapad and similar). So far there are tree methods to get current line:
Method1: (edipt plus, pspad...)
Method1 editors are able to provide selection via native AHK commands (ControlGet, Select) so function select the line with Shift+Home then ask for it using ControlGet command, then cancels the selection to return the cursor. The cursor is back with simple RIGHT arrow witch positions it at the beginning of the selection.
| Code: |
/*
[EDITOR]
Editors=EditPlus, EmEditor, PSPad, Scite
version=1.0
*/
ISense_GetLine()
{
;select up to the beginning
Send +{home}
Sleep 20
;get selection
ControlGetFocus, line, A
ControlGet, line, Selected, ,%line%, A
Sleep 20
;cancel selection
Send {RIGHT}
Sleep 20
;return the line
return line
} |
Method2 (ultraedit, crimson...)
This is GENERAL method. Method 2 editors don't respond to native APIs in anyway, so it is imposible to ask them for the current line except doing some workaround. The workaround is this: Select the line using SHIFT HOME, copy it to clipboard and get it. Cursor is returned the funny way: before selecting I send space, and afterwards I issue UNDO witch removes the selection and returns the cursor to its starting position (this is needed because editors respond differently when right arrow is pressed on selection)
| Code: |
/*
[EDITOR]
Editors=General, Ultraedit, Crimson, Syn, SynPlus
version=1.0
*/
;------------------
; Neet workaround:
; - type space
; - select up to the beginning
; - copy to clipboard and grab it
; - undo space witch returns cursor to its position
;
ISense_GetLine()
{
Send, %A_Space%
oldClip := clipboardall
Send, +{HOME}
Send, ^c
Sleep, 50
line := clipboard
clipboard := oldClip
Send, ^z
Sleep, 50
StringTrimRight, line, line, 1
return %line%
} |
Method 3 (Notepad, metapad ...)
This is basicly for junk editors witch contain 1 simple EDIT control witch can be queried for all desired elements via Native API. So, no problems at all here.
| Code: |
/*
[EDITOR]
Editors=Notepad, Metapad
version=1.0
*/
ISense_GetLine()
{
ControlGet, curCol, CurrentCol
ControlGet, curLine, CurrentLine
ControlGet, line, Line, %curLine%
StringMid, line, line, 1, % curCol - 1
return, line
} |
So, if you find better way for your editor of choice write it down, name it Method N and place it in includes\editors from witch point you can select it among Setup options and use it.
NOTE: I think it is possible to do this the way some dictionaries do it, like Babylon pro, witch can get the text from any place of the screen. This is currently beyond ahk AFAIK as it uses some Accessibility API witch relays on COM. _________________
 |
|
| Back to top |
|
 |
Veovis
Joined: 13 Feb 2006 Posts: 390 Location: Utah
|
Posted: Mon Jan 29, 2007 12:06 am Post subject: |
|
|
This is awesome majkinetor! It worked great with Programmers NotePad 2 without me even having to change anything! I like that you made it work as long as ".ahk" is in the title. And it is so cool! I love that little IE control that pops up! No more having to have half the monitor full of the help, just pop it up when you need it! A million thanks!!! _________________
"Power can be given overnight, but responsibility must be taught. Long years go into its making." |
|
| Back to top |
|
 |
majkinetor
Joined: 24 May 2006 Posts: 3615 Location: Belgrade
|
Posted: Mon Jan 29, 2007 9:20 am Post subject: |
|
|
You are welcome.
There will be some nice updates too in near future.
Thx for the feedback. I added "confirmed editors" section in the first topic
CONFIRMED EDITORS
Method1 - EditPlus, EmEditor, Programmers NotePad 2, PSPad, Scite,
Method2 - Crimson Editor, UltraEdit, SynPlus, Syn
Method3 - Notepad, Metapad _________________
 |
|
| Back to top |
|
 |
Chris Site Admin
Joined: 02 Mar 2004 Posts: 10467
|
Posted: Tue Jan 30, 2007 4:56 pm Post subject: |
|
|
This is one of the most professionally designed and presented utilties I've seen for AutoHotkey. To help bring attention to it, I've linked to this topic from the Edit page:
| Quote: | | Finally, your productivity may be improved by using an auto-completion utility like ISense, which works in almost any editor. It watches what you type and displays menus and parameter lists, which does some of the typing for you and reminds you of the order of parameters. | (Revisions to the wording are welcome.)
I can also add this to the script showcase if you wish, though it would help if someone could make a quick blurb like this one: | Quote: | | IntelliSense -- by Rajat (requires XP/2k/NT): This script watches while you edit an AutoHotkey script. When it sees you type a command followed by a comma or space, it displays that command's parameter list to guide you. In addition, you can press Ctrl+F1 (or another hotkey of your choice) to display that command's page in the help file. To dismiss the parameter list, press Escape or Enter. |
Thanks. |
|
| Back to top |
|
 |
majkinetor
Joined: 24 May 2006 Posts: 3615 Location: Belgrade
|
Posted: Tue Jan 30, 2007 7:05 pm Post subject: |
|
|
Thx Chris.
I am currently in process of updating this script, so about the show case, let us delay it for the finall version of the script witch I plan to be language independent ( lets hope I can do that...). I also plan to support AHK functions, user variables etc..... _________________
 |
|
| Back to top |
|
 |
|
|
You can post new topics in this forum You can reply to topics in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|