Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 05/12/2025 in Posts

  1. @argumentum I am not sure i get if it's the platform, the repositories, the individual users or a combination you dislike? When it comes to git, keeping the version in the file seems wrong, in my opinion. Git tags and/or releases on some git platforms seems the best way to keep good track of the available versions of scripts/projects. In regards to the same code being available at a later date, unless they delete or change the visibility of the repository, you could keep a commit hash reference for a perma-link to the code you were able to access last time I personally prefer git (GitHub more specifically). Old files on this forum sometimes go poof, and sometimes no one can provide a replica (it's rare, i know). Both Git and this forum can be a time waster, if dependencies are not kept with the project, and you are forced to go on a treasure hunt to find the necessary files (happened once or twice to me 🫠). Personally i am working towards a package manager, using primarily git to automatically resolve and fetch dependencies of a project. If developers use the semver standard, patches should be pain free and allow upgrading dependencies using a single command I agree forking is not exactly a perfect solution, but is sometimes necessary, for example when dealing with abandoned projects or not agreeing on where a project is heading
    2 points
  2. These border colors are set by the app every time the window is created. The example for this is already posted. Since this is more of an app than an example, I opened a thread here for support. The script and compilation to .exe is the files area for download. According to Microsoft, the possibility to set the border color is available from Windows 11 Build 22000 onwards.
    1 point
  3. Well, I read that there should be problems and that the function should be broken, but so far I have not been able to discover anything concrete about what it is actually about. I couldn't find an example string where i could check whether it is correctly encoded in JSON. Therefore, it is not yet clear to me exactly what the problem should be. When I look at the supposed fix, it differs from __JSON_FormatString() in the handling of @CRLF. The fact that it only turns @CRLF into \n was a deliberate design decision at the time. For good platform compatibility, \n has basically established itself as the standard separator. This is not a bad thing, as basically every reasonable JSON decoder converts the line break sequence suitable for the respective system. It also makes for more compact and readable JSON strings. I would be somewhat surprised if an application explicitly insisted on \r\n for its JSON input. But yes - this approach of mine is of course open to discussion - there are of course also arguments against it. At least this choice was not made by accident. On the other hand, that doesn't seem to be the problem either, since (as I interpret the statements) an earlier version obviously doesn't seem to have the problem. But even then, the behavior regarding @CRLF was the same. I therefore suspect that it's more about the not so long ago introduced variant for small strings with the StringRegExpReplace(). Since I am very unhappy with this ugly cascade of StringReplace I have been looking for (more performant) alternatives and have found them at least for small strings by handling the replacements in a single StringRegExpReplace call (yes I know - the pattern comes directly from the RegEx hell...). It may well be that there are string constellations where this variant produces incorrect results. But: I have not yet seen a concrete example. Therefore, I need input data to see if there is a bug and if so, how it can be fixed. On the subject of the version numbers in the file: Yes, I was too careless because I also have a pure git view rather than manual numbers
    1 point
  4. I wrote this: and ollama will tells why it failed. So I added code to fix those 3 events. @ioa747 said (in not so many words) that those lines were not needed and it all took off from there. I posted in @AspirinJunkie's thread, and once his coded gets fixed, these 2 past pages can be removed. ( ...well, disregarded ) ...that byRef and return would not fly as is. Am sure he'll fix it once he sees it.
    1 point
  5. Off topic Best regards Sven
    1 point
  6. ioa747

    _StringToTable

    I removed the unnecessary frame formats and kept the basic ones 0=NoFrame, 1=FrameNoHeader, 2=FrameAndHeader. I removed the extra f, from the alignment format, for the decimals, and now we simply put the number, for how many digits we want after the decimal point [0-9]. e.g. "L,1,2,3" and I got into the philosophy, make it simple
    1 point
  7. but what about the future user going to use it and have for breakfast that it ( the code ) don't work because one of the dependencies changed fundamentally and, ...suck it. I understand selfishness and still advocate for ethical behaviors that don't lead to forking. A letter R apart from the same trend of thought. And I do understand that you are just adjusted to the current way of developing and you have to do what you must ( at least for you ). I strongly disagree with this way of participation mainly because anyone trying to replicate what is claimed, is out of phase with time. The time at witch it was all put together because the forks are not what they were. Pardon my less than nice posture but it is just non-functional. How can one be expected to have forked 2 years ago something so today ( because it was posed 1 day ago ) can not use what is supposed to be there as it was ? Even tho this chat is with you @SOLVE-SMART, is not necessarily personal. Is the way it is, and leads to these mishaps, hence the concept is wrong. And no, I can not change it ( the I fork what I need ) because it takes people to feel different, and people adjust for survival of the self over the survival of the group. That's all there is to it so, foRk it, I guess.
    1 point
  8. pixelsearch

    _StringToTable

    @ioa747 Hello, just watch out or it may turn out to a PƤndora box. In fact your UDF could be used by 2 different kind of users : 1) The users who need a simple 4th parameter (and no headache) containing only 1 character between the commas, for example "L, C, R, 2, 3, 5, 2" 2, 3, 5, 2 are the number of decimals (most numeric columns are placed at the right, especially those with decimals [as you do now] because of the decimals alignment) In this 1st case, after you split the 4th parameter to an array (as you already do) then all elements of the array are only 1 character long, so far so good and no headache. 2) The users who master StringFormat (not my case) and indicate the StringFormat syntax directly inside the 4th parameter, for example "L, C, R, %09i, %x, %.2f" In this second case, after you split the 4th parameter to an array, any element having its length > 1 should be considered as a correct StringFormat format control, that you could "easily" apply directly to the cell. But now, maybe you'll have a lot of work with this, because you'll have to calculate the resulting length of any valid StringFormat indicated by the user (the Pandora box !) So I guess it's your choice to know exactly where you want to go with your UDF, keeping it simple or not ? If I may, here are a few notes I wrote while studying a bit your UDF this morning : ============= ; If $iFrame < 0 Or $iFrame > 3 Then $iFrame = 3 ; If $sSeparator = Default Or $sSeparator = -1 Then $sSeparator = @TAB If $iFrame = Default Then $iFrame = 3 If $sSeparator = Default Then $sSeparator = @TAB If $iFrame < 0 Or $iFrame > 3 Then Return SetError(...) ============= Example3 (1D) As any 1D array is turned to a 2D array by the UDF (before being turned to a string using _ArrayToString) then actually you force the separator to be "|" to have a correct output : Local $sOut = _StringToTable($aMonth, 3, "|", "C") ; actual example found in the original UDF script If the user makes a "mistake" and chooses another separator (like @Tab) Then the output will be incorrect : Local $sOut = _StringToTable($aMonth, 0, Default, "C") ; user's script, Default means @Tab Incorrect user's output (showing a "|" at the right of each row) Months| January| February| March| But if you apply the following change in the UDF, then the output seems always correct, no matter the delimiter chosen by the user : ; If $b2D Then ; $vString = _ArrayToString($vString, $sSeparator) ; Else ; _ArrayColInsert($vString, 1) ; $vString = _ArrayToString($vString) ; EndIf If Not $b2D Then _ArrayColInsert($vString, 1) ; 1D => 2D $vString = _ArrayToString($vString, $sSeparator) ; same code for both cases ============= A missing Local in example4 (Local $sData = "") Opt("MustDeclareVars", 1) would detect this but I'm not sure you can use this Opt in an UDF as it would create issues in many users scripts which don't use it. ============= If $aCols[0] < $iCols Then ReDim $aCols[$iCols + 1] ; For $k = $aCols[0] + 1 To $iCols ; not needed ; $aCols[$k] = "" ; not needed ; Next ; not needed $aCols[0] = $iCols ; missing line (though maybe not useful) EndIf ============= Once again, please accept my apologies for any incorrect note above, thank you. And bravo for this great UDF
    1 point
  9. As many of you may not be aware, of much about AutoIt's humble beginnings, and aspects related to the first GUI version of AutoIt, I thought it might be nice to create a historical reference here for all the many GUI creators that have been created by various people over the years. NOTE - While one could argue, that this topic might be better placed in one of the Chat forums, I would argue, that it links to heaps of good code. While much may be redundant in that code, it is still interesting and forms a great perspective. Many are bound to find useful elements at the very least. Koda, is no doubt the most well-known GUI creator now, but there was a time, when CyberSlug's legendary GUIBuilder (first known as AutoBuilder) ruled the roost, and AutoIt coder's saw it as a Godsend. AutoIt coding was much simpler back then of course. Below, will be a timeline, of any AutoIt GUI creators listed in forum pages. It will be added to by myself as I find them or as others here find them and place a link in a subsequent post ... PLEASE HELP! Comments welcome too. (Also note, that this is also intended to include updates, branches etc by others) Apr 20 2004 - AutoBuilder by CyberSlug. Sep 27 2004 - An interesting topic, where CyberSlug talks about the future of AutoBuilder (etc) and renaming to GUIBuilder and you see the first mentions and links to updates by others (including myself & livewire). Nov 05 2004 - A topic where lookfar is working on a SciTE replacement, talks about starting a Form Designer. Aug 10 2005 - GuiBuilder first update by TheSaint. Sep 26 2005 - GUIBuilder updates by livewire (he also talks about transferring his efforts to Koda). Nov 02 2005 - KODA FormDesigner v1.3 by lookfar Nov 03 2005 - Seemingly interesting topic about forms by tonedeaf Dec 26 2005 - AutoIt Studio(beta) by BillLuvsU Jan 09 2006 - AutoBuilder update (or branch) by _^__darkbytez (livewire also posts). Feb 19 2006 - Koda v1.5 by lookfar Sep 07 2006 - Koda v1.7.3.0 by Lazycat Jan 07 2007 - Form/GUI Builder by FlintBrenick Jun 10 2007 - Gorganizer by _Kurt (more of an assister than actual GUI maker) Jun 27 2007 - Basic GUI Designer by Mast3rpyr0 May 03 2008 - Autoit Programmer's Desktop (APD) by Ealric Jul 11 2008 - Gui Designer by Alek Aug 11 2008 - Gorganizer update by _Kurt Jun 19 2009 - Easy GUI by Mat Aug 13 2009 - GUI Script Creator by Pandemic (not sure this qualifies, but it made me think of templates) Aug 16 2010 - Creation Gui by AZJIO Jan 22 2012 - ISN AutoIt Studio by ISI360 (includes ISN Form Studio 2, a GUI editor) Mar 19 2012 - Arduino GUI Programmer by nikosliapis (creates a specific type of GUI) Aug 01 2012 - GuiBuilder Resurrected update/branch to GUIBuilder by baroquebob Dec 01 2012 - Form Builder beta (v1.0.6) by BuckMaster Jan 12 2015 - GUIBuilderNxt update by jaberwacky of GUIBuilder v0.8 (as a new prototype, modified to work with latest AutoIt) (not a update to the Resurrected version) Aug 12 2016 - The GuiBuilder Return by DFerrato as an update to GUIBuilder, Jan 17 2017 - GUIBuilder Project by TheSaint (a work in progress based on CyberSlug's original ... and later versions, updated by Roy, TheSaint & others). May 29 2019 - The GuiBuilder Return by DFerrato as an update to GUIBuilder, His new and improved version. May 9 2022 - GuiBuilderPlus by kurtykurtyboy as an update to GUIBuilder. A new an improved version with more to come. There are a significant number of creators/designers that have been started and never completed. +++++ STILL UNDER CONSTRUCTION +++++ P.S. Well that's it from me tonight. I know of at least one other major creator, but cannot recall it's name or the name of the coder, though I think it starts with 'L'. Bound to be a few I've missed, and some I cannot seem to find their first appearance here (Koda, Form Builder, etc), but there may be an obvious reason for that. Will probably rely on feedback from others now that I've got the ball rolling. NOTE - If anyone wants to discuss any of these programs above or give some background history, then by all means do so. I will cross-reference (link to) any important comments.
    1 point
  10. gruntydatsun, I have been using this pattern to force @CRLF line endings for some time: $sText = StringRegExpReplace($sText, "((?<!\x0d)\x0a|\x0d(?!\x0a))", @CRLF) It looks for (@LF not preceded by @CR) or (@CR not followed by @LF) and replaces them with @CRLF. M23
    1 point
×
×
  • Create New...