kcvinu Posted March 11, 2015 Share Posted March 11, 2015 Hi all, This script is working. But i don't know how to limit it only for SciTE window. Here is the code. I think it will be useful for somebody. And if somebody helps to limit this function only for SciTE, this will useful for me. That's sure. expandcollapse popup#Region ;**** Directives created by AutoIt3Wrapper_GUI **** #AutoIt3Wrapper_Outfile=D:\AotoIt Works\EXEs\AutoFiller32.Exe #AutoIt3Wrapper_Outfile_x64=D:\AotoIt Works\EXEs\AutoFiller64.Exe #AutoIt3Wrapper_Compile_Both=y #AutoIt3Wrapper_UseX64=y #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI **** #cs ---------------------------------------------------------------------------- AutoIt Version: 3.3.12.0 Author: kcvinu Script Function: This program will paste EndIf / EndFunc / WEnd / Next / EndSwitch / Until / EndSelect automaticlly right after you hit enter #ce ---------------------------------------------------------------------------- ; Script Start - Add your code below here #include <Array.au3> #include <String.au3> #include <StringConstants.au3> #include <WinAPISys.au3> HotKeySet("{ENTER}", "AutoFiller") HotKeySet("{ESC}", "Exiter") While 1 Sleep(5) WEnd Func AutoFiller() Global $Words_array Global $FW_array Global $LW_array Global $First_word Global $Index Global $Last_word Global $Parenthesis Global $title = WinGetTitle("[CLASS:SciTEWindow]") If WinGetState($title) = 47 Or WinGetState($title) = 15 Then Global $Current_line = ControlCommand($title, "S", 350, "GetCurrentLine", "") Global $Text = ControlGetText($title, "S", 350) Global $Text_Array = StringSplit($Text, @LF) Global $Current_lineRaw = $Text_Array[$Current_line] Global $Current_lineText = StringStripWS($Current_lineRaw, 2) $Current_lineText = StringStripWS($Current_lineText, 1) $Last_word = StringRight($Current_lineText, 4) $Parenthesis = StringRight($Current_lineText, 2) If StringInStr($Current_lineText, " ") Then $FW_array = StringRegExp($Current_lineText, "(^\w+)", 1) $First_word = $FW_array[0] If @error Then ControlSend($title, "S", 350, "{ENTER}") EndIf If $First_word == "If" And Not ($Last_word == "Then") Then ControlSend($title, "S", 350, " Then {ENTER}{HOME}{ENTER}EndIf {UP}{TAB}", 0) ElseIf $First_word == "If" And $Last_word == "Then" Then ControlSend($title, "S", 350, "{ENTER}{HOME}{ENTER}EndIf {UP}{TAB}", 0) ElseIf $First_word == "Func" And Not ($Parenthesis = "()") Then ControlSend($title, "S", 350, "(){ENTER}{HOME}{ENTER}EndFunc {UP}{TAB}", 0) ElseIf $First_word == "Func" And $Parenthesis = "()" Then ControlSend($title, "S", 350, "{ENTER}{HOME}{ENTER}EndFunc {UP}{TAB}", 0) ElseIf $First_word == "For" Then ControlSend($title, "S", 350, "{ENTER}{HOME}{ENTER}Next {UP}{TAB}", 0) ElseIf $First_word == "While" Then ControlSend($title, "S", 350, "{ENTER}{HOME}{ENTER}WEnd {UP}{TAB}", 0) ElseIf $First_word == "Do" Then ControlSend($title, "S", 350, "{ENTER}{HOME}{ENTER}Until {UP}{TAB}", 0) ElseIf $First_word == "Switch" Then ControlSend($title, "S", 350, "{ENTER}Case {ENTER} {HOME}EndSwitch {UP}{SPACE}", 0) ElseIf $First_word == "Select" Then ControlSend($title, "S", 350, "{ENTER}{HOME}{ENTER}EndSelect {UP}{TAB}", 0) Else ControlSend($title, "S", 350, "{ENTER}") EndIf Else ControlSend($title, "S", 350, "{ENTER}") EndIf Else Local $hnd = _WinAPI_GetActiveWindow() WinActivate($hnd) Send("{ENTER}") EndIf EndFunc ;==>AutoFiller Func Exiter() Exit EndFunc ;==>Exiter ;~ AF() ;~ _ArrayDisplay($Words_array) I know lines 103 to 105 are not working. conmed 1 Spoiler My Contributions Glance GUI Library - A gui library based on Windows api functions. Written in Nim programming language. UDF Link Viewer --- A tool to visit the links of some most important UDFs Includer_2 ----- A tool to type the #include statement automatically Digits To Date ----- date from 3 integer values PrintList ----- prints arrays into console for testing. Alert ------ An alternative for MsgBox MousePosition ------- A simple tooltip display of mouse position GRM Helper -------- A littile tool to help writing code with GUIRegisterMsg function Access_UDF -------- An UDF for working with access database files. (.*accdb only) Link to comment Share on other sites More sharing options...
Developers Jos Posted March 11, 2015 Developers Share Posted March 11, 2015 What about when you slowdown a little and lower the average "threads created per day on the same topic" to 1? You shoot questions like crazy, glue it all together and post it in examples without any proper testing or finishing the development and even telling us that 3 lines aren't working. Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Link to comment Share on other sites More sharing options...
kcvinu Posted March 11, 2015 Author Share Posted March 11, 2015 I am giving up. All this effort was to make this feature available in SciTE. There is a dissappoinment in one side for what i am trying to do is not going to be success. On the other side you peaple are Pointing me a sword of dicspline. I am fed up. Spoiler My Contributions Glance GUI Library - A gui library based on Windows api functions. Written in Nim programming language. UDF Link Viewer --- A tool to visit the links of some most important UDFs Includer_2 ----- A tool to type the #include statement automatically Digits To Date ----- date from 3 integer values PrintList ----- prints arrays into console for testing. Alert ------ An alternative for MsgBox MousePosition ------- A simple tooltip display of mouse position GRM Helper -------- A littile tool to help writing code with GUIRegisterMsg function Access_UDF -------- An UDF for working with access database files. (.*accdb only) Link to comment Share on other sites More sharing options...
jaberwacky Posted March 11, 2015 Share Posted March 11, 2015 Aren't you reinventing the wheel? kcvinu 1 Helpful Posts and Websites: AutoIt3 Variables and Function Parameters MHz | AutoIt Wiki | Using the GUIToolTip UDF BrewManNH | Can't find what you're looking for on the Forum? Link to comment Share on other sites More sharing options...
kcvinu Posted March 11, 2015 Author Share Posted March 11, 2015 @ jaberwacky, I don't know... I need a feature. Tried my best. But ... Spoiler My Contributions Glance GUI Library - A gui library based on Windows api functions. Written in Nim programming language. UDF Link Viewer --- A tool to visit the links of some most important UDFs Includer_2 ----- A tool to type the #include statement automatically Digits To Date ----- date from 3 integer values PrintList ----- prints arrays into console for testing. Alert ------ An alternative for MsgBox MousePosition ------- A simple tooltip display of mouse position GRM Helper -------- A littile tool to help writing code with GUIRegisterMsg function Access_UDF -------- An UDF for working with access database files. (.*accdb only) Link to comment Share on other sites More sharing options...
Developers Jos Posted March 11, 2015 Developers Share Posted March 11, 2015 (edited) I am giving up. All this effort was to make this feature available in SciTE. There is a dissappoinment in one side for what i am trying to do is not going to be success. On the other side you peaple are Pointing me a sword of dicspline. I am fed up. SciTE is not intended to be a IDE for AutoIt3 in the same way as MS Visual Studio and will never be that type of development environment! There are many things implemented that makes coding in SciTE for AutoIt3 much easier, but it remains a generic Editor. To build what you want needs way more code and logic then what you posted here. logic like "only adding it one time" is not there and is not trivial. Again... this could be a fun project but you need to be serious about it and think it through properly. Jos Edited March 11, 2015 by Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Link to comment Share on other sites More sharing options...
JohnOne Posted March 11, 2015 Share Posted March 11, 2015 @ jaberwacky, I don't know... I need a feature. Tried my best. But ... If it's working for you, what's the problem? I agree though, it should at least work if you're going to post it here. AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans. Link to comment Share on other sites More sharing options...
kcvinu Posted March 11, 2015 Author Share Posted March 11, 2015 @Jos, It is working. But i need to limit it only for SciTE. I think i need to learn more about keyboard hooking for that. And If SciTE is not for AutoIt, then do we need a good IDE for AutoIt ? Spoiler My Contributions Glance GUI Library - A gui library based on Windows api functions. Written in Nim programming language. UDF Link Viewer --- A tool to visit the links of some most important UDFs Includer_2 ----- A tool to type the #include statement automatically Digits To Date ----- date from 3 integer values PrintList ----- prints arrays into console for testing. Alert ------ An alternative for MsgBox MousePosition ------- A simple tooltip display of mouse position GRM Helper -------- A littile tool to help writing code with GUIRegisterMsg function Access_UDF -------- An UDF for working with access database files. (.*accdb only) Link to comment Share on other sites More sharing options...
JohnOne Posted March 11, 2015 Share Posted March 11, 2015 And If SciTE is not for AutoIt, then do we need a good IDE for AutoIt ? '?do=embed' frameborder='0' data-embedContent>> kcvinu 1 AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans. Link to comment Share on other sites More sharing options...
Developers Jos Posted March 11, 2015 Developers Share Posted March 11, 2015 And If SciTE is not for AutoIt, then do we need a good IDE for AutoIt ? An IDE can only be build when AutoIt3 has the hooks to do debugging etc. It would be nice but honestly: This is not a complex language and it it probably isn't worth the effort it would take. Jos kcvinu 1 SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Link to comment Share on other sites More sharing options...
kcvinu Posted March 11, 2015 Author Share Posted March 11, 2015 @Jos, Thanks for pointing me the direction to ISN. I have it. But i thought SciTE is the "Original" IDE and sticked to it. In my short life, i havn't seen a simple language like AutoIt. In my humble opinion, if the creator of autoit can make this like the way it is, he/ she can make it worth the effort it would take. I hope. Spoiler My Contributions Glance GUI Library - A gui library based on Windows api functions. Written in Nim programming language. UDF Link Viewer --- A tool to visit the links of some most important UDFs Includer_2 ----- A tool to type the #include statement automatically Digits To Date ----- date from 3 integer values PrintList ----- prints arrays into console for testing. Alert ------ An alternative for MsgBox MousePosition ------- A simple tooltip display of mouse position GRM Helper -------- A littile tool to help writing code with GUIRegisterMsg function Access_UDF -------- An UDF for working with access database files. (.*accdb only) Link to comment Share on other sites More sharing options...
Developers Jos Posted March 11, 2015 Developers Share Posted March 11, 2015 @Jos, Thanks for pointing me the direction to ISN. I have it. But i thought SciTE is the "Original" IDE and sticked to it. In my short life, i havn't seen a simple language like AutoIt. In my humble opinion, if the creator of autoit can make this like the way it is, he/ she can make it worth the effort it would take. I hope. I haven't pointed you in the direction of ISN since I support another setup, that was JohnOne. Already commented about the IDE and the likelihood of that ever happening. Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Link to comment Share on other sites More sharing options...
kcvinu Posted March 14, 2015 Author Share Posted March 14, 2015 Hi Admins, I request you to lock this topic since i started another topic related to this script. It is a new and better version of this script. Spoiler My Contributions Glance GUI Library - A gui library based on Windows api functions. Written in Nim programming language. UDF Link Viewer --- A tool to visit the links of some most important UDFs Includer_2 ----- A tool to type the #include statement automatically Digits To Date ----- date from 3 integer values PrintList ----- prints arrays into console for testing. Alert ------ An alternative for MsgBox MousePosition ------- A simple tooltip display of mouse position GRM Helper -------- A littile tool to help writing code with GUIRegisterMsg function Access_UDF -------- An UDF for working with access database files. (.*accdb only) Link to comment Share on other sites More sharing options...
Recommended Posts