-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Include documentation/highlighting for acetutil functions #221
Comments
I've had all the same problems and totally get it, but if Autodesk hasn't made this documentation yet, then I don't think they ever will. My suggestion is to look at the video from PR #138 about user-documentation and read about using the Finally, just make your own file of ACET abstractions that do-nothing and document them. From there you can include the file in your project to get hover documentation. I would also suggest open-sourcing that file so others can use it/contribute. Those user defined |
Thanks for pointing out that the acetutil.chm file is missing. Looks like the file was accidentally removed from the product and not made available online. I have noted to make this content available once again online through the AutoLISP Reference. Similar functions you mention related to string manipulation are available as part of the Visual LISP Extension, under different names. Functions for string replacement and the trimming of whitespace can be found here under the String-Handling Functions Reference (AutoLISP) topic. |
@JD-Howard thanks for your suggestions, I'll look into creating stubs for the acetutils with the global modifier so that it shows in the editor. I'll definitely open source it when I get around making it. Do you know if it's possible to also include the "Types" section in user generated documentation for @ambrosl-adsk awesome to hear it will be made available online again! Hopefully it'll be up to date and include the new functions added in 1.38 :) And thanks for the link, however I was already aware of the string handling functions built into 'vanilla' autolisp, but the huge difference here is that the |
also, @JD-Howard, is it possible to make the acet- functions highlighted blue by the extension, even without documentation? if so, please point me to the file where to add that. I'll do that too when creating the stubs |
@Semx11 Unfortunately, types were too much of a floating target in Lisp and a purposefully omitted concept. However, you can do:
Basically the Edit: you might also try enhancing your documentation with basic markdown. like As a more long term solution to the problem, AutoLispExt will probably have to implement the Semantic Token API. If we do that and load the user defined symbols for highlighting, then that file I suggested you make would automatically make them highlight. |
Hi @Semx11 , I will make a PR to update the extension to get acet- functions highlighted. I'll do it soon. |
@JD-Howard thanks for the tips, I'll look into it tomorrow when I work again just realized I'm logged in with a different account on my phone. sorry if that caused any confusion - I'm the same person as @semkeijsper haha |
@Semx11 @semkeijsper I only added functions which are documented in:
It will take a while to release a new version to VS Code market place, but you could have a try with the pre-release now: If you would like to try with this pre-release version, the steps are: |
@Sen-real it works great! thank you so much. If it's not too much to ask, could you please integrate 3 more UI functions? We use them frequently in our project - they are called:
They are 'documented' here: https://www.cadforum.cz/en/qaID.asp?tip=5891 Hopefully the documentation for these functions will be available in acetutil.chm once it's put back online :) |
Small problem. I have tried adding user-defined documentation: However, because the function is now marked blue, you cannot hover it with user-generated documentation: Maybe @JD-Howard knows what to do in this case? |
Yes, they look so useful. They're now included in the following build: |
@Sen-real |
@JD-Howard sounds logical enough yeah. maybe it's possible to check if, when native documentation isn't available, it'll use user defined docs? like a priority system |
The documentation that was previously available in the CHM file for the Express Tools AutoLISP functions has been moved online and can be access from the AutoLISP Reference Guide now as part of the AutoCAD 2024 release. Only the functions that were previously documented are in this posted documentation set because they were fully tested for their individual use. All other functions are kind of use at your own risk. https://help.autodesk.com/view/OARX/2024/ENU/?guid=GUID-66179117-AF23-441B-A990-3266FAF7EA38 |
Thank you so much! Hopefully more functions will be added later if they are stable, I believe there are quite some functions that are :) @JD-Howard does this mean the plugin will pick up the docs for these functions then? as it looks at the online docs |
@Semx11 Not exactly, I'll see if I can get the existing C# one to account for the newly created documentation. If that documentation follows all the same standards existing documentation uses, then it won't be an issue. If it deviates in some meaningful way, then it won't be a simple task and may have to wait. |
@Semx11 I see how this works... since there are only about 40ish new functions, I could add this manually and then work on something that will pull the content together in the future from the source files themselves. |
This project is great when it comes to including documentation for the functions that are documented.
However, there are many
acetutil
functions that can be used from lisp, that are not documented or highlighted.I have found a small list of them on this archived site: https://www.afralisp.net/archive/lisp/acet-utils.htm
They are documented nowhere in official AutoCAD resources, yet they still work in AutoCAD 2023 today.
For example, one hugely useful function is
(acet-str-replace)
, which allows you to use RegEXP(!!!) to modify strings. This is honestly such a huge feature that I can't believe it's not documented more clearly. Another useful thing is the ability to show and update a progressbar, which we use extensively in our LISP code, using(acet-ui-progress-init)
and related functions.I have found a file on the Autodesk Forum called acetutil.chm, which contains limited documentation:
![image](https://user-images.githubusercontent.com/78076164/225051531-275ca850-d707-431c-8f00-c644d75dde93.png)
It seems like it was made by this guy: JTB World
This file contains documentation for version 1.37, but AutoCAD says we are at version 1.38, as shown when running
(acet-util-ver)
.I first thought the difference wouldn't be too great, but the
.chm
file was made in the year 2000. And I already found some functions that do work in AutoCAD, but aren't documented inacetutil.chm
, like(acet-str-space-trim)
(which just trims spaces from strings).Another huge list I found is located here, but it doesn't have clear documentation on what parameters it takes.
Can you please integrate documentation for these functions? They are very useful and gamechanging when performing simple operations, such as UI and string manipulation.
The text was updated successfully, but these errors were encountered: