I got a questions, I maintain code in autoIT and every time I compile a new version or modification, Scite generate 2 folders. One folder is finish by released and the other is tentative. I try to make some google search, but never find answer would satisfied myself. The dev who was maintain it before were using AutoIt3Wrapper_GUI, and I don't know if it's related. I look both folder, but they seem pretty identical, but I would like to know what it's the difference between those to folder. Anyone have a clue?
ConsoleWrite('>Message here.' & @CRLF) outputs colored text (per + > - ! characters).
ConsoleWrite('warning' & @TAB & '38' & @TAB & 'more text ...' & @CRLF) enables jump to line 38 on doubleclick.
Using "jump to line" format, only red and pink text coloring seems possible (simply prefixing color directives to output-text disables jump to line functionality). Is it possible to combine the two (define custom color while keeping "jump to line" functionality)?
After testing various schemes (themes) in the settings for the newest SciTE editor (v. 4.1.2), I discovered that I wasn't able to fully reset it back to its original colors (See snapshot). Specifically, after applying the "__SciTE4AutoIt3_Dark ==> Dark SciTE4AutoIt3 Color scheme."
The problem: The Line number column and the Output console do not reset back to their original colors.
The Solution: Delete or edit the user config file. You can safely delete the config file because it will completely regenerate on SciTE restart- with it's factory (out of the box) color scheme.
I also wrote a small script that will do it programatically: How to reset SciTE scheme in version 4.1.2.
I'm using SciTE v188.8.131.52 I think, and I find this very annoying (GIF):
I've searched around but found nothing that helped including this:
So the problem obviously is that when I go to a new line after "EndIf", it removes the tab which I don't want to happen.
Is there any fix?
I've tried to change some configs such as
Line 183: # Indentation Line 185: indent.size=0 Line 187: #indent.auto=0 Line 188: indent.automatic=0 Line 189: indent.opening=0 Line 190: indent.closing=0 Line 191: #tab.indents=0 Line 192: #backspace.unindents=0 strip.trailing.spaces=0 But nothing seems to get rid of this.
There is an issue, while using the function SendSciTE_Command by @Jos, if more than one instance of SciTE is open. Each instance of SciTE has its own DirectorExtension window, so we must choose the right one.
Here is a way to solve this:
; by BugFix Func _GetHwndDirectorExtension() Local $hActive = WinGetHandle('[ACTIVE]') Local $PIDActive = WinGetProcess($hActive) Local $aExtension = WinList("DirectorExtension") Local $PIDExt For $i = 1 To $aExtension $PIDExt = WinGetProcess($aExtension[$i]) If $PIDExt = $PIDActive Then Return $aExtension[$i] Next EndFunc ; by Jos Func SendSciTE_Command($_sCmd) Local $WM_COPYDATA = 74 Local $WM_GETTEXT = 0x000D Local $WM_GETTEXTLENGTH = 0x000E224 Local Const $SCI_GETLINE = 2153 ;~ Local $Scite_hwnd = WinGetHandle("DirectorExtension") ; Get SciTE DIrector Handle Local $Scite_hwnd = _GetHwndDirectorExtension() ; Get SciTE DIrector Handle Local $My_Hwnd = GUICreate("AutoIt3-SciTE interface") ; Create GUI to receive SciTE info Local $My_Dec_Hwnd = Dec(StringTrimLeft($My_Hwnd, 2)) ; Convert my Gui Handle to decimal $_sCmd = ":" & $My_Dec_Hwnd & ":" & $_sCmd ; Add dec my gui handle to commandline to tell SciTE where to send the return info Local $CmdStruct = DllStructCreate('Char[' & StringLen($_sCmd) + 1 & ']') DllStructSetData($CmdStruct, 1, $_sCmd) Local $COPYDATA = DllStructCreate('Ptr;DWord;Ptr') DllStructSetData($COPYDATA, 1, 1) DllStructSetData($COPYDATA, 2, StringLen($_sCmd) + 1) DllStructSetData($COPYDATA, 3, DllStructGetPtr($CmdStruct)) DllCall('User32.dll', 'None', 'SendMessage', 'HWnd', $Scite_hwnd, _ 'Int', $WM_COPYDATA, 'HWnd', $My_Hwnd, _ 'Ptr', DllStructGetPtr($COPYDATA)) GUIDelete($My_Hwnd) EndFunc ;==>SendSciTE_Command Func MY_WM_COPYDATA($hWnd, $msg, $wParam, $lParam) Local $COPYDATA = DllStructCreate('Ptr;DWord;Ptr', $lParam) Local $SciTECmdLen = DllStructGetData($COPYDATA, 2) Local $CmdStruct = DllStructCreate('Char[' & $SciTECmdLen+1 & ']',DllStructGetData($COPYDATA, 3)) ;~ Local $CmdStruct = DllStructCreate('Char', DllStructGetData($COPYDATA, 3)) $SciTECmd = StringLeft(DllStructGetData($CmdStruct, 1), $SciTECmdLen) EndFunc ;==>MY_WM_COPYDATA