Jump to content

A little tool to auto complete code in SciTE


kcvinu
 Share

Recommended Posts

Hi all, 

This script will help you to auto complete "Then / EndIf / () / EndFunc / Next / WEnd / EndSwitch / Until / EndSelect" when you press enter followed by appropriate keyword. I want to say thanks for Yashied for making this script true. Without his _HoteKey_Assign function, i can't even think about this tool. I have tested it in my 32 bit Win8 and 64 bit Win8.1. 

Here is the code .

AutoFiller version2. At last i have re-invented the wheel. Last week, to be precisely, from April 1, i have no broadband connection. So decided to complete this script. Check this script and please tell me if you find any bugs. 

; Necessary includes
#include <HotKey_21b.au3>
#include <Array.au3>

; A littile delay for smooth working
Opt("SendKeyDownDelay",20 )

; Declare enter key as a const
Global Const $VK_RETURN = 0x0D

; Start SciTE editor
Local $Process = Run(@ProgramFilesDir &"\AutoIt3\SciTE\SciTE.exe")
; Wait for SciTE to active
WinWait("[CLASS:SciTEWindow]")
; Get the handle of SciTE window
Local $Handle = WinGetHandle("[CLASS:SciTEWindow]")

; Here is our hotkey assignment. Thanks for Yashied.
_HotKey_Assign($VK_RETURN, "EnterPress", 0, $Handle)

; Looping while SciTE closes
While 1
    Sleep(10)
    If Not ProcessExists($Process) Then
        Exit
    EndIf
WEnd

; Main Function starts here

; #FUNCTION# ====================================================================================================================
; Name ..........: EnterPress
; Description ...: This is the main function
; Syntax ........: EnterPress()
; Parameters ....: No parametes
; Return values .: None
; Author ........: kcvinu
; Modified ......: 04-04-2015
; Remarks .......:
; Related .......:
; Link ..........:
; Example .......: No
; ===============================================================================================================================
Func EnterPress()
;------------------------------------------------------------------------------------------------------------------
    Global $SciTE_Title                     ; Title of SciTE window
    Global $SciTE_Text                      ; Total text in SciTE code editor
    Global $CurrentLineNumber               ; Line number where cursor rests
    Global $LineCount                       ; Total line numbers
    Global $CurrentColNumber                ; Col number where cursor rests
    Global $CurrentLine_Text                ; Text of current line number
    Global $CLT_Length                      ; Length of current line
    Global $IsSymbol                        ; Boolean variable for checking any "#, ; , _" symbols in the beginning
    Global $SpaceStriped_CLT                ; Space stripped from both side of current line text
    Global $FirstWord                       ; First word of the current line
    Global $LastThen                        ; If a "Then" key word is in the last are a current line
    Global $FW_col                          ; Col number of first word
    Global $EW_col                          ; Col number of end keywords like"EndIf/WEnd" etc
    Global $CLT_Array                       ; An array to split whole text with @LF, Means each line will be splitted
    Global $NxtLineTxt                      ; Text of next line from cursor
    Global $NWC_Status = True               ; Boolean, if an end keyword is in next line, it is false
    Global $EndWord                         ; End keywords like "EndIf/WEnd" etc.
    Global $NoNeedToPaste = False           ; Boolean, if first word is not a keywork like "If/While", then it is false
;----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    Global $KeyWordList[7][7] = [['If', 'EndIf'], ['While', 'WEnd'], ['For', 'Next'], ['Do', 'Until'], ['Select', 'EndSelect'], ['Func', 'EndFunc'], ['Switch', 'EndSwitch']]
;----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Getting total line number from SciTE code window
    $LineCount = ControlCommand($Handle, "S", 350, "GetLineCount", " ")
    ; Getting text from SciTE code window
    $SciTE_Text = ControlGetText($Handle, "S", 350)
    ; Getting current line number from SciTE code window
    $CurrentLineNumber = ControlCommand($Handle, "S", 350, "GetCurrentLine", " ")
    ; Getting current col number from SciTE code window
    $CurrentColNumber = ControlCommand($Handle, "S", 350, "GetCurrentCol", " ")

;-----------------------------------------------------------------------------------------------
    ; Split the text into lines and put each line text in this array
    $CLT_Array = StringSplit($SciTE_Text, @LF)
    ; Getting the current line text from the array
    $CurrentLine_Text = $CLT_Array[$CurrentLineNumber]


;------------------------------------------------------------------------------------------------------------
    ; If any errors are there, then current line text is empty
    If @error Then $CurrentLine_Text = ""
    ; getting the length of current line text
    $CLT_Length = StringLen($CurrentLine_Text)
    ; Stripping the left side space from current line text
    $SpaceStriped_CLT = StringStripWS($CurrentLine_Text, 1)
    ; Stripping the right side space from current line text
    $SpaceStriped_CLT = StringStripWS($SpaceStriped_CLT, 2)
    ; Checking if there is any symbols in the beginning
    $IsSymbol = StringRegExp($SpaceStriped_CLT, "^#|^_|^;")

    ; Getting the first word,only if it is a 'if' or 'func' etc.. (StringMatchAndGet is my function)
    $FirstWord = StringMatchAndGet($SpaceStriped_CLT, "^[iI]f|^[fF]unc|^[fF]or|^[wW]hile|^[sS]witch|^[dD]o|^[sS]elect")
    ; Check if there is a "Then" is present
    $LastThen = StringMatchAndGet($SpaceStriped_CLT, "Then$")
    ; Getting col number of first word
    $FW_col = StringInStr($CurrentLine_Text, $FirstWord)
;-----------------------------------------------------------------------------------------------------------------------------
    ; If first word is a keyword like "If/While"
    If $FirstWord <> "" Then
        For $j = 0 To 6
            ; Find the appropriate end keyword
            If $KeyWordList[$j][0] = $FirstWord Then
                $EndWord = $KeyWordList[$j][1]
            EndIf
        Next
    ; If the first word is not a keyword
    ElseIf $FirstWord = "" Then
                ; Then no need to paste any end key words
        $NoNeedToPaste = True
    EndIf
;-------------------------------------------------------------------------------------------------------------------
    ; Calling the ColFinder function
    ColFinder()
;-------------------------------------------------------------------------------------------------------------------
    ; If cursor is in the middile area of the line
    If $CLT_Length > $CurrentColNumber Then
        ; Just act like a normal enter key press
        ControlSend($Handle, "S", 350, "{ENTER}")
    ; If there is no text in SciTE
    ElseIf $SciTE_Text = "" Then
        ; Just act like a normal enter key press
        ControlSend($Handle, "S", 350, "{ENTER}")
    ; If no need to paste any keywords, That means first word is empty
    ElseIf $NoNeedToPaste = True Then
        ; Just act like a normal enter key press
        ControlSend($Handle, "S", 350, "{ENTER}")
    ; If the beginning of the line is a symbol like "#, ; , _"
    ElseIf $IsSymbol = 1 Then
        ; Just act like a normal enter key press
        ControlSend($Handle, "S", 350, "{ENTER}")
    ; If there is no text in current line
    ElseIf $CurrentLine_Text = "" Then
        ; Just act like a normal enter key press
        ControlSend($Handle, "S", 350, "{ENTER}")

    ; If first word is 'If' and no 'EndIf' in next line
    ElseIf $FirstWord = "If" And $NWC_Status = True Then
        ; Check for the presence of a 'Then'
        If $LastThen = "" Then
            ; If there is not a 'Then', then paste it
            ControlSend($Handle, "S", 350, " Then{SPACE}{ENTER 2}{BS}EndIf{SPACE}{UP}")
        ElseIf $LastThen = "Then" Then
            ; Else do paste the 'EndIf'
            ControlSend($Handle, "S", 350, "{ENTER 2}{BS}EndIf{SPACE}{UP}")
        EndIf
    ; If first word is 'func' and no 'Endfunc' in next line
    ElseIf $FirstWord = "Func" Or $FirstWord = "func" And $NWC_Status = True Then
        ; Check for the presence of a '()'
        If StringRight($SpaceStriped_CLT,2) = "()" Then
            ; If so, just paste the 'EndFunc'
            ControlSend($Handle, "S", 350, "{ENTER 2}{BS}EndFunc{SPACE}{UP}")
        Else  ; Paste the Endfunc followed by '()'
            ControlSend($Handle, "S", 350, "(){SPACE}{ENTER 2}{BS}EndFunc{SPACE}{UP}")
        EndIf
    ; If first word is 'For' And no 'Next' In Next line
    ElseIf $FirstWord = "For" Or $FirstWord = "for" And $NWC_Status = True Then
        ; Paste a 'Next'
        ControlSend($Handle, "S", 350, "{ENTER 2}{BS}Next{SPACE}{UP}")
    ; If first word is 'While' And no 'WEnd' In Next line
    ElseIf $FirstWord = "While" Or $FirstWord = "while" And $NWC_Status = True Then
        ; Paste a 'WEnd'
        ControlSend($Handle, "S", 350, "{ENTER 2}{BS}WEnd{SPACE}{UP}")
    ; If first word is 'Do' And no 'Until' In Next line
    ElseIf $FirstWord = "Do" Or $FirstWord = "do" And $NWC_Status = True Then
        ; Paste an 'Until'
        ControlSend($Handle, "S", 350, "{ENTER 2}{BS}Until{SPACE}{UP}")
    ; If first word is 'Switch' And no 'EndSwitch' In Next line
    ElseIf $FirstWord = "Switch" Or $FirstWord = "switch" And $NWC_Status = True Then
        ; Paste a 'Case' and 'EndSwitch'
        ControlSend($Handle, "S", 350, "{ENTER}Case{SPACE}{ENTER}{BS 2}EndSwitch{SPACE}{UP}{SPACE}")
    ; If first word is 'Select' And no 'EndSelect' In Next line
    ElseIf $FirstWord = "Select" Or $FirstWord = "select" And $NWC_Status = True Then
        ; Paste an 'EndSelect'
        ControlSend($Handle, "S", 350, "{ENTER 2}{BS}EndSelect{SPACE}{UP}")
    Else ; Else, Just act like a normal enter key press
        ControlSend($Handle, "S", 350, "{ENTER}")
    EndIf

EndFunc   ;==>EnterPress
;================================================================================================================================


; #FUNCTION# ====================================================================================================================
; Name ..........: StringMatchAndGet
; Description ...: A simple function for finding words with regular expression
; Syntax ........: StringMatchAndGet($String, $Pattern)
; Parameters ....: $String              - A string to use
;                  $Pattern             - A pattern to find any word.
; Return values .: None
; Author ........: kcvinu
; Modified ......:
; Remarks .......:
; Related .......:
; Link ..........:
; Example .......: No
; ===============================================================================================================================
Func StringMatchAndGet($String, $Pattern)
    Local $Result
    Local $MatchArray = StringRegExp($String, $Pattern, 1)
    If @error Then
        $MatchArray = " "
    Else
        $Result = $MatchArray[0]
    EndIf
    Return $Result
EndFunc   ;==>StringMatchAndGet


; #FUNCTION# ====================================================================================================================
; Name ..........: ColFinder
; Description ...: A function to find the col number of an end keyword like "EndIf" or "WEnd"
; Syntax ........: ColFinder()
; Parameters ....: None
; Return values .: None
; Author ........: kcvinu
; Modified ......:
; Remarks .......:
; Related .......:
; Link ..........:
; Example .......: No
; ===============================================================================================================================
Func ColFinder()

    ; This is the col number of the first word
    $FW_col = StringInStr($CurrentLine_Text, $FirstWord)

    If $SciTE_Text = "" Then
        $NWC_Status = False
    ElseIf $CLT_Array[0] = 1 Then
        $NWC_Status = True

; If there is more lines under the current line
    ElseIf $LineCount > $CurrentLineNumber Then
        ; Loop through each line
        For $i = $CurrentLineNumber + 1 To $CLT_Array[0]
            ; Getting next line
            $NxtLineTxt = $CLT_Array[$i]
            ; If there is an appropriate end keyword there
            If StringInStr($NxtLineTxt, $EndWord) = $FW_col Then
                ; No need to paste an end keyword
                $NWC_Status = False
                ExitLoop
            EndIf
        Next
    EndIf

EndFunc   ;==>ColFinder
 

 You can get HotKey_21b.au3 from this link.

Change the SciTE.exe path and run this script. It will work as normally as SciTE is. And it will add all end keywords automatically. Here is the au3 file. And here is the include file "HotKey_21b.au3"

AutoFiller Version2.au3

HotKey_21b.au3

Edited by kcvinu
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

@JohnOne, Mistakes makes a man perfect. But please tell me how to delete that post ?

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

I would like to stick this post and continue this. 

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

@Jos, I think now it is almost complete as i dreamed. But i need to extend this script's capability to auto correct extra white spaces and make proper casing all key words. 

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

@kcvinu - You should really update your first post with the new download, and remove the original.

Most people coming here, will see the first post, and perhaps not read on past the first couple of replies, and so miss later updates.

If you want, you can link new posts and first post like I do with mine, and I also take notice of the number of downloads and write them up as (6 previously).

It makes things easier all round, including for yourself.

Make sure brain is in gear before opening mouth!
Remember, what is not said, can be just as important as what is said.

Spoiler

What is the Secret Key? Life is like a Donut

If I put effort into communication, I expect you to read properly & fully, or just not comment.
Ignoring those who try to divert conversation with irrelevancies.
If I'm intent on insulting you or being rude, I will be obvious, not ambiguous about it.
I'm only big and bad, to those who have an over-active imagination.

I may have the Artistic Liesense ;) to disagree with you. TheSaint's Toolbox (be advised many downloads are not working due to ISP screwup with my storage)

userbar.png

Link to comment
Share on other sites

@

TheSaint. Thanks 
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

  • Developers

@Jos, I think now it is almost complete as i dreamed. But i need to extend this script's capability to auto correct extra white spaces and make proper casing all key words. 

Is there a question in it for me or was this just a statement you are going to work on next? :)

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

@Jos,

No .. there is no such questions to you. But can you please tell me what is the connection between a lua script and AutoIt options such as abbreviations. I mean How can i control AutoIt abbreviations with a lua script ?. Because lua is just an another scripting language. 

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

  • Developers

@Jos,

No .. there is no such questions to you. But can you please tell me what is the connection between a lua script and AutoIt options such as abbreviations. I mean How can i control AutoIt abbreviations with a lua script ?. Because lua is just an another scripting language. 

There are many LUA scripts in the full distribution of SciTE4AutoIt3 and the SciTE Documentation contains all information are the LUA integration in SciTE.

It's a little steep learning curve to understand it all but after that you have many options to improve what you have done today with the posted script.

Jos

Edited 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

@Jos, Thank you :)

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

  • 4 weeks later...

Hi all, I have updated my script. Fixed some bugs. Please check post # 1. It contains the download link 

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

Hi all, 

This script will help you to auto complete "Then / EndIf / () / EndFunc / Next / WEnd / EndSwitch / Until / EndSelect"

... ...

Here is the au3 file. 

"C:\Users\Owner\Downloads\SciTE_with_AutoFiller.au3"(10,10) : error: can't open include file <Alert.au3>.
#include <Alert.au3>
~~~~~~~~~^
"C:\Users\Owner\Downloads\SciTE_with_AutoFiller.au3"(11,10) : error: can't open include file <HotKey_21b.au3>.
#include <HotKey_21b.au3>
~~~~~~~~~^

could you point to where these UDFs are at ?

thanks

Follow the link to my code contribution ( and other things too ).
FAQ - Please Read Before Posting.
autoit_scripter_blue_userbar.png

Link to comment
Share on other sites

Hi 

argumentum, You can avoid "#include <Alert.au3>. And here is the link of HotKey_21b.ay3 by yashied

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

4 downloads and no comments... ? 

...ok, I'll comment, I've used it. The "if Then" don't do the "If Then" properly proper casing, other than that it behaves well but I'm so used to do my own filling of these that I don't find it as needed. But thanks for sharing. :)

Follow the link to my code contribution ( and other things too ).
FAQ - Please Read Before Posting.
autoit_scripter_blue_userbar.png

Link to comment
Share on other sites

4 downloads and no comments... ? 

It's such a small download size that I wouldn't expect a single comment. This is also quite a demanding comment and breaks forum etiquette.

I don't use it as it doesn't fit my needs and I am not happy with the way you've used Global variables inside a function. Please don't get angry, but you did wanted a comment and I am being honest.

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Link to comment
Share on other sites

@guinnes. I didn't meant that. I mean, i am asking politely that if anybody have any comments. OK. If it is against the rules, then i am apologizing. But i am eagerly waiting for the comments. And that was my mistake to declare global variables inside function. I didn't even think about that. 

Edited by kcvinu
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

My first programming experience was in Visual studio. So i don't bothered about filling "EndIf" or EndSelect" etc.. But when i came to SciTE, it become a problem for me. So i wanted to write a script. 

@argumentum Proper casing of the "If" and other keywords will automatically done by SciTE. But you need to enable it.
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

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
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...