Jump to content

BETA: SciTE v5x & lua Dynamic_include and "Smart" AutoComplete for Vars/UDFs/Abbrevs


Jos
 Share

Recommended Posts

37 minutes ago, Jos said:

That is the case already when you have the local cache enabled, but lets agree that 30 seconds is simply wrong and should never happen, not even one time at save!
All my tests so far have shown that there is nothing to gain to enable the cache for local files. 

As I understand you are talking about caching locally caltips/AutoComplete features which is used while typing the function name, variable name, abbreviations.
But when I hit ENTER key then all includes are checked recursivly, and if I'm right it is done dynamically as used include tree is not stored in any cache.
Let me know if I'm wrong.

37 minutes ago, Jos said:

There has to something wrong in the logic of the LUA scripts for your well known big ass setup that I haven't encountered yet, so hope your last zip will also show the problem to me and I am able to squash that bug. :) 

I hope so.
Thus I keep waiting for you diagnosis.

Edited by mLipok

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

I just hit new issue.
After typing

MsgBox($MB_TOPMOST, @ScriptLineNumber)

image.png.7471c4c6c048ed6c69cc19031fcaf241.png

and when I press ENTER key, all subsequent lines change colors.

image.png.6f982eab321f8f4f3c3d24c86fe6fa8b.png

Edited by mLipok

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

Also I start wondering if it is possible to differentiating the LUA action related to pressing the ENTER key

in case when currsor is on line that has been changed

image.png.d1d707ccd3f31545a89c239ab4515f44.png

from case when the cursor is on a line that has not been changed

image.png.9f4949ef5725206781f4e5f3b6c3eab2.png

 

I mean only pressing ENTER key on changed line, should fire recursive include check.

Edited by mLipok

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

Another feature request is to not fire recursive check when currsor is at the beginning of the line:

image.png.080b7ebe2b93a3c346227eeba31257aa.png

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

  • Developers
6 hours ago, mLipok said:

and when I press ENTER key, all subsequent lines change colors.

Will have a look at that.

 

6 hours ago, mLipok said:

from case when the cursor is on a line that has not been changed

Don't think I want to make things even more complex than they are, but have no issue to make the "Check for includes for the whole line" optional with a Directive/Propery.

5 hours ago, mLipok said:

Another feature request is to not fire recursive check when currsor is at the beginning of the line:

Same answer as the previous one: Seems you have issues with the Enter doing the Check for includes. Why exacly? Time it takes on your setup as you know it is only 0.2secs for me so am not too worried making the logic even more complex than it is already.

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

  • Developers
7 hours ago, Danp2 said:

Small typo in AutoHScroll.lua -- Witdh >> Width 😃

Thanks :) 

7 hours ago, Danp2 said:

Also get the following in the console when launching Scite,

Sounds like you trying to run the scripts on an older version of SciTE in stead of v5.2.5?

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

  • 2 months later...
  • Developers

Could you remove the cache files in C:\Users\U\AppData\Local\AutoIt v3\SciTE\ as it seems they are not correct, so they will be rebuild?

Also don't see any autocomplete debug info in the log. Did you enable it?

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

  • 1 month later...

I found that the issue is the localization of the Windows date, specifically setting the regional formate "Date (short)" to include the current month as a string

causes

Common:GetScriptName_DateTime()

in Common.lua to fail, because the regex is unable to extract the date from curfiledate, which contains this string in my case:

Datentr„ger in Laufwerk C: ist Win10 M.2
 Volumeseriennummer: B455-4E47

 Verzeichnis von C:\Program Files (x86)\AutoIt3\SciTE\Lua

09. Apr. 2023  15:01           111.448 AutoItDynamicIncludes.lua
               1 Datei(en),        111.448 Bytes
               0 Verzeichnis(se), 37.802.168.320 Bytes frei

EDIT: Actually, upon further investigation, all uses of the dir command cause such issues, the match expressions which parse the output into the ifdate, iftime, ifsize, includefile variables in AutoitDynamicIncludes.lua would need some tweaking to allow for more date formats. I think they are just compared as strings so doing that wouldn't be an issue.

Currently they contain this for me:

ifdate=08.
iftime=Mrz.
ifsize=2022
includefile=19:42             1.748 APIConstants.au3

which is why I think includefile never gets read

Edited by paw
Link to comment
Share on other sites

  • Developers

Does it work when you change the regex from:

irec:match('^%s-([^%s]*)%s+([^%s+]*%s?[aApP]?[mM]?)%s+([^%s]*)%s+(.*%.au3)')

to 

irec:match('^%s-(.-)%s*(%d%d:%d%d*%s?[aApP]?[mM]?)%s+([^%s]*)%s+(.*%.au3)')

on the 3 places it exists?

 

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

  • 5 weeks later...

Hi Jos!

I want to first say, thank you very much for this very handy sounding addition! I look forward to this added functionality for sure!

Now for the bad news — I have attempted to try this beta but have ran into some display problems.  Is there known limitations for Windows 7?

I have downloaded the following files, from https://www.autoitscript.com/autoit3/scite/download/beta_SciTE4AutoIt3/SciTE5-with-DynamicFunctions/

SciTE4AutoIt3.exe;
SciTE_changes_Dynamic_Includes_LUA.zip;
SciTEx86.zip

I uninstalled everything, Autoit and Scite, deleted the autoit folder in ProgramFiles 86, and in the Local folder. Reinstalled Autoit 3.3.16.1, and installed the SciTE4AutoIt3.exe file, then replaced the files in ProgramFiles 86\Autoit\Scite\Lua with the files in SciTE_changes_Dynamic_Includes_LUA.zip, and also replaced the files in ProgramFiles 86\Autoit\Scite with the ones in SciTEx86.zip. (I also tried x64)

Upon opening Scite I get 3(?) CMD windows popup then disappear on start up and also at  each Tab switch (not a problem, but noticed another user reporting the issue on Page 2)

But upon opening a pre-existing script, I get a display error where a certain line is displayed for the entire viewpane.

 

But If I move my cursor to the spot with clicking or down arrow etc, that particular line displays correctly.

 

As I scroll, the displayed line changes.

If I move the cursor to the last line, this is what an empty script looks like: (Note the entire viewpane turns yellow.

 

If I type a function there,

 

Here is the script using Scite Ver. 4.4.6

 

Same Script, Scite, 5.3.5

 

I Have a Windows 7 64bit, 4GB Ram (Max possible), Intel Pentium E5800 3.2.0GHz, Intel G41, E2041 Express chipset which has been known to have display issues for certain graphic applications, but I wouldn't think for Autoit?? In looking at the error log with all debug options active, I see no errors during this problem??

Let me know if you need more info.

Donny

EDIT*

Just a further note. I found that when the lines are shown as duplicated, the line that is one below the last visible line is the one displayed, or the last visible numbered line, which ever comes first. For Example, in pictures 1 & 2, the line shown duplicated would be located on line 33.

Edited by donnyh13

LibreOffice UDF  ; Scite4AutoIt Spell-Checker Using LibreOffice

Spoiler

"Life is chiefly made up, not of great sacrifices and wonderful achievements, but of little things. It is oftenest through the little things which seem so unworthy of notice that great good or evil is brought into our lives. It is through our failure to endure the tests that come to us in little things, that the habits are molded, the character misshaped; and when the greater tests come, they find us unready. Only by acting upon principle in the tests of daily life can we acquire power to stand firm and faithful in the most dangerous and most difficult positions."

 

Link to comment
Share on other sites

Just an update, though perhaps not a very useful one, but I downloaded Scite executable, 5.3.7 from

https://www.scintilla.org/SciTEDownload.html

and ran the Scite program, and just typed a few lines, ...I don't seem to have any of these display issues on there? Not sure if that helps any or not, as I know the one that comes with AutoIt3 is a customized version.

EDIT*

I have further tested, perhaps this is useless to say, but... I reverted to Scite 4.4.6 installation, and copied over the files: SciTE.exe, Scintilla.dll, Lexilla.dll,  from the Scite 5.3.5 installation. The problem still persists. I also tried copying Scintilla.dll, Lexilla.dll, from the plain Scite installation from Neil, and the problem persists. It seems what ever is changed in Scite.exe (Autoit Version??) between 4.4.6 and 5.3.5 is to blame. I'm not code-wise enough to know any further troubleshooting steps to perform.

Edit:

Fixed via this thread:

 

Edited by donnyh13

LibreOffice UDF  ; Scite4AutoIt Spell-Checker Using LibreOffice

Spoiler

"Life is chiefly made up, not of great sacrifices and wonderful achievements, but of little things. It is oftenest through the little things which seem so unworthy of notice that great good or evil is brought into our lives. It is through our failure to endure the tests that come to us in little things, that the habits are molded, the character misshaped; and when the greater tests come, they find us unready. Only by acting upon principle in the tests of daily life can we acquire power to stand firm and faithful in the most dangerous and most difficult positions."

 

Link to comment
Share on other sites

Hi Jos, I ran across an error message, and I'm not sure if it's a problem or no? Perhaps not.

If I type the following in a saved script (It wont do it when the script has never been saved to a destination, of course.)

Local $sPageStyle

IsString($sPageStyle)

After I press the ")" in IsString, I get this message, \AutoIt3\SciTE\Lua\AutoItAutoComplete.lua:724: invalid pattern capture

Isn't that the wrong bracket to be triggering AutoComplete?

 

Also, as is MLipok, I have noticed after inserting a function, the lines below turn to different colour, even pressing enter below certain ones, perhaps Standard UDFs (ArrayDisplay) even does it, and pressing backspace above the function fixes it. Also while this is occurring, if I insert a variable anywhere in the coloured text, when I press enter to accept the auto complete suggestion the variable is inserted and appended with a "(". If I switch tabs the colour goes back to normal.

Here is the error log after I switch to the script and press enter one line below _ArrayDisplay

16:27:09 ->fn ->PerfDynUDFs ====== action : switch   props['AutoItDynamicIncludes.lastFileUDFs']: C:\Users\D\Desktop\Test.au3
>16:27:09 ->fn ->PerfDynUDFs > Dynamic UDFs is enabled.
>16:27:09 ->fn ->PerfDynUDFs > Action:switch  AutoItDynamicIncludes.dynamic.includesinit.done:on  props['AutoItDynamicIncludes.lastFileUDFs']: C:\Users\D\Desktop\Test.au3
>16:27:09 ->PerfDynUDFs ->Get_STD_Include_Dir >0 SciteDefaultHome\..\ dir:C:\Program Files (x86)\AutoIt3\
>16:27:09 ->PerfDynUDFs ->Get_STD_Include_Dir >3 Final standard Includes dir:C:\Program Files (x86)\AutoIt3\include\
>16:27:09 ->fn ->PerfDynUDFs > Standard Include directory :C:\Program Files (x86)\AutoIt3\include\
 16:27:09 ->OnStartup ->LoadPixmap Skipping
 16:27:09 ->BeginEvents ->OnStartup ###AutoItIndentFix:OnStartup
 16:27:09 ->BeginEvents ->OnStartup ###AutoItTools:OnStartup
 16:27:09 ->BeginEvents ->OnStartup ###AutoItDynamicIncludes:OnStartup
 16:27:09 ->OnStartup ->LoadPixmap Skipping
 16:27:09 ->BeginEvents ->OnStartup ###AutoItIndentFix:OnStartup
 16:27:09 ->BeginEvents ->OnStartup ###AutoItTools:OnStartup
 16:27:09 ->BeginEvents ->OnStartup ###AutoItDynamicIncludes:OnStartup
-16:27:09 ->PerfDynUDFs ->reload_apis ->reloadproperties:
 16:27:09 ->fn ->SetWidth AutoHscroll editor longest line:2   change Witdh from:2000 to:768
 16:27:09 ->fn ->SetWidth AutoHscroll output longest line:20   change Witdh from:2000 to:1236
 16:27:12 -> * ->fn *** Enter detected => Start Indent checking
!16:27:12 ->fn ->AddMissingIncludes ! ===== Start AddMissingIncludes for linecheck to current script C:\Users\D\Desktop\Test.au3
 16:27:12 ->OnStartup ->LoadPixmap Skipping
 16:27:12 ->BeginEvents ->OnStartup ###AutoItIndentFix:OnStartup
 16:27:12 ->BeginEvents ->OnStartup ###AutoItTools:OnStartup
 16:27:12 ->BeginEvents ->OnStartup ###AutoItDynamicIncludes:OnStartup
 16:27:12 ->OnStartup ->LoadPixmap Skipping
 16:27:12 ->BeginEvents ->OnStartup ###AutoItIndentFix:OnStartup
 16:27:12 ->BeginEvents ->OnStartup ###AutoItTools:OnStartup
 16:27:12 ->BeginEvents ->OnStartup ###AutoItDynamicIncludes:OnStartup
-16:27:12 ->AddMissingIncludes ->reload_apis ->reloadproperties:
>16:27:12 ->fn ->AddMissingIncludes >> Currentline:14:_ArrayDisplay($oPages)
 16:27:12 ->fn ->AddMissingIncludes  -> 4 14 14 | _ArrayDisplay 15 0
 16:27:12 ->fn ->AddMissingIncludes   Add atSourceWords Word _ArrayDisplay :15
 16:27:12 ->fn ->AddMissingIncludes  -> 4 14 14 | $oPages 9 8
 16:27:12 ->fn ->AddMissingIncludes   Add atSourceWords Word $oPages :9
 16:27:12 ->fn ->AddMissingIncludes ### Start processing found words
 16:27:12 ->fn ->AddMissingIncludes  -> _arraydisplay 15
 16:27:12 ->fn ->AddMissingIncludes ==> Initial STD tableload: 3589
>16:27:12 ->fn ->AddMissingIncludes > STD Func: _arraydisplay array.au3 Array.au3 C:\Program Files (x86)\AutoIt3\include\
>16:27:12 ->fn ->AddMissingIncludes > already included Array.au3
 16:27:12 ->fn ->AddMissingIncludes  -> $opages 9
 16:27:12 ->fn ->AddMissingIncludes ==> Initial VARIABLE FILE globalconst tableload: 13
 16:27:12 ->fn ->AddMissingIncludes ==> Initial VARIABLE STD globalconst tableload: 12805
>16:27:12 ->fn ->AddMissingIncludes > Variable FILE: $opages iFileName:  Includename:  Includepath:
>16:27:12 ->fn ->AddMissingIncludes > Variable STD: $opages igFileName:  gIncludename:  gIncludepath:
-16:27:12 ->fn ->AddMissingIncludes - UDFs         Processed:1
-16:27:12 ->fn ->AddMissingIncludes - Global Const Processed:1
!16:27:12 ->fn ->AddMissingIncludes ! ===== Start AddMissingIncludes for wordcheck to current script C:\Users\D\Desktop\Test.au3
 16:27:12 ->OnStartup ->LoadPixmap Skipping
 16:27:12 ->BeginEvents ->OnStartup ###AutoItIndentFix:OnStartup
 16:27:12 ->BeginEvents ->OnStartup ###AutoItTools:OnStartup
 16:27:12 ->BeginEvents ->OnStartup ###AutoItDynamicIncludes:OnStartup
 16:27:12 ->OnStartup ->LoadPixmap Skipping
 16:27:12 ->BeginEvents ->OnStartup ###AutoItIndentFix:OnStartup
 16:27:12 ->BeginEvents ->OnStartup ###AutoItTools:OnStartup
 16:27:12 ->BeginEvents ->OnStartup ###AutoItDynamicIncludes:OnStartup
-16:27:12 ->AddMissingIncludes ->reload_apis ->reloadproperties:
>16:27:13 ->fn ->AddMissingIncludes >>2 wordcheck Word:282-282  15 15 15
 16:27:13 ->fn ->AddMissingIncludes ### Start processing found words
-16:27:13 ->fn ->AddMissingIncludes - UDFs         Processed:0
-16:27:13 ->fn ->AddMissingIncludes - Global Const Processed:0
!16:27:13 ->fn ->AddMissingIncludes ! ===== Start AddMissingIncludes for wordcheck to current script C:\Users\D\Desktop\Test.au3
 16:27:13 ->OnStartup ->LoadPixmap Skipping
 16:27:13 ->BeginEvents ->OnStartup ###AutoItIndentFix:OnStartup
 16:27:13 ->BeginEvents ->OnStartup ###AutoItTools:OnStartup
 16:27:13 ->BeginEvents ->OnStartup ###AutoItDynamicIncludes:OnStartup
 16:27:13 ->OnStartup ->LoadPixmap Skipping
 16:27:13 ->BeginEvents ->OnStartup ###AutoItIndentFix:OnStartup
 16:27:13 ->BeginEvents ->OnStartup ###AutoItTools:OnStartup
 16:27:13 ->BeginEvents ->OnStartup ###AutoItDynamicIncludes:OnStartup
-16:27:13 ->AddMissingIncludes ->reload_apis ->reloadproperties:
>16:27:13 ->fn ->AddMissingIncludes >>2 wordcheck Word:282-282  15 15 15
 16:27:13 ->fn ->AddMissingIncludes ### Start processing found words
-16:27:13 ->fn ->AddMissingIncludes - UDFs         Processed:0
-16:27:13 ->fn ->AddMissingIncludes - Global Const Processed:0
 16:27:13 ->fn ->SetWidth AutoHscroll editor longest line:2   change Witdh from:2000 to:768
 16:27:13 ->fn ->SetWidth AutoHscroll output longest line:20   change Witdh from:2000 to:1236
 16:27:14 ->OnStartup ->LoadPixmap Clearing
 16:27:14 ->BeginEvents ->OnStartup ###AutoItIndentFix:OnStartup
 16:27:14 ->BeginEvents ->OnStartup ###AutoItTools:OnStartup
 16:27:14 ->BeginEvents ->OnStartup ###AutoItDynamicIncludes:OnStartup

 

 

 

 

Edited by donnyh13

LibreOffice UDF  ; Scite4AutoIt Spell-Checker Using LibreOffice

Spoiler

"Life is chiefly made up, not of great sacrifices and wonderful achievements, but of little things. It is oftenest through the little things which seem so unworthy of notice that great good or evil is brought into our lives. It is through our failure to endure the tests that come to us in little things, that the habits are molded, the character misshaped; and when the greater tests come, they find us unready. Only by acting upon principle in the tests of daily life can we acquire power to stand firm and faithful in the most dangerous and most difficult positions."

 

Link to comment
Share on other sites

Hi Jos, sorry for another post, but I have a feature request, if it's possible. When I have included a file that is in another location, say such as:

#include "C:\Autoit Scripts\LibreOfficeWriter.au3"

When I use a function out of this UDF the UDF file is still dynamically included -- incorrectly -- like this:

#include <LibreOfficeWriter.au3>                         

Is it possible to check "Path" includes also for the required file, before dynamically adding the include? Unless I'm doing something wrong? I have recursive.check set to yes.

Thanks,

Donny

 

 

Edited by donnyh13

LibreOffice UDF  ; Scite4AutoIt Spell-Checker Using LibreOffice

Spoiler

"Life is chiefly made up, not of great sacrifices and wonderful achievements, but of little things. It is oftenest through the little things which seem so unworthy of notice that great good or evil is brought into our lives. It is through our failure to endure the tests that come to us in little things, that the habits are molded, the character misshaped; and when the greater tests come, they find us unready. Only by acting upon principle in the tests of daily life can we acquire power to stand firm and faithful in the most dangerous and most difficult positions."

 

Link to comment
Share on other sites

  • Developers
14 hours ago, donnyh13 said:

After I press the ")" in IsString, I get this message, \AutoIt3\SciTE\Lua\AutoItAutoComplete.lua:724: invalid pattern capture

I get that too so will have a look why.   tnx for reporting. 

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

  • Developers
12 hours ago, donnyh13 said:

#include "C:\Autoit Scripts\LibreOfficeWriter.au3"

When I use a function out of this UDF the UDF file is still dynamically included -- incorrectly -- like this:

#include <LibreOfficeWriter.au3>     

Not sure I understand the total case here: That include in not available in the standard defined include paths? 
It would be helpful to provide the log with debugging enabled so I can exactly see what is happening in these kind of cases. 

12 hours ago, donnyh13 said:

Is it possible to check "Path" includes also for the required file, before dynamically adding the include?

Not sure what you mean exactly here.....   the \include subdirectory is considered already a a standard place to look for includes.
Please elaborate. :) 

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

On 9/15/2023 at 6:51 AM, Jos said:

Not sure I understand the total case here: That include in not available in the standard defined include paths? 
It would be helpful to provide the log with debugging enabled so I can exactly see what is happening in these kind of cases. 

Not sure what you mean exactly here.....   the \include subdirectory is considered already a a standard place to look for includes.
Please elaborate. :) 

Okay, sorry.

What I'm meaning is I have a User Created UDF, it is located in "C:\Autoit Scripts\Autoit\Libre Writer UDF files\LibreOfficeWriter.au3", I have another script open where I am using some of these functions out of my UDF (LibreOfficeWriter.au3), At the top of my script I already have this line:

#include "C:\Autoit Scripts\Autoit\Libre Writer UDF files\LibreOfficeWriter.au3"

However when I insert a function out of my UDF, say _LOWriter_DocCreateTextCursor, and press enter, Scite attempts to include the necessary Includes for the function, instead of recognizing I already included that UDF (#include "C:\Autoit Scripts\Autoit\Libre Writer UDF files\LibreOfficeWriter.au3"), Scite automatically inserts this line:

#include <LibreOfficeWriter.au3>

Which is not necessary, nor correct as the UDF is not in the includes directory.

My request is, can Scite check all include types that I have already inserted in my script, both standard includes folder type #Include <> and the relative path type  #Include " "  before it automatically inserts an include? Otherwise I have to keep deleting the include it adds, as it is not correct and causes an error when running the script (!->Includefile <LibreOfficeWriter.au3> not found.)

 I will include the error log.

On 9/15/2023 at 6:44 AM, Jos said:

I get that too so will have a look why.   tnx for reporting.

Welcome, I noticed one more thing, when declaring or using an array, or perhaps a map too, after typing the name and pressing "[" I get the following error after each "$aArray[".

 

Local $aArray[1] = [1]

Isint($aArray[0])

\AutoIt3\SciTE\Lua\AutoItAutoComplete.lua:733: malformed pattern (missing ']')

 

 

Edited by donnyh13

LibreOffice UDF  ; Scite4AutoIt Spell-Checker Using LibreOffice

Spoiler

"Life is chiefly made up, not of great sacrifices and wonderful achievements, but of little things. It is oftenest through the little things which seem so unworthy of notice that great good or evil is brought into our lives. It is through our failure to endure the tests that come to us in little things, that the habits are molded, the character misshaped; and when the greater tests come, they find us unready. Only by acting upon principle in the tests of daily life can we acquire power to stand firm and faithful in the most dangerous and most difficult positions."

 

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