Jump to content

List of ALL Constants in LSL?


primerib1
 Share

You are about to reply to a thread that has been inactive for 505 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

I was just doing some serendipity search for LSL when I stumbled upon someone's XML config that enables IntelliJ IDEA to do syntax-highlighting and rudimentary autocomplete for LSL.

(By "IntelliJ IDEA" of course I meant IntelliJ and it's derivatives like PyCharm, PHPStorm, and CLion. Basically, "JetBrain IDEs")

I forked the project, updated the list of functions and keywords, and uploaded the result here:

https://github.com/clairem-sl/jetbrains-lsl-support

(I have created a PR against the original project, as well)

The only thing I haven't done is cleaning up/updating the constants list, because the Category page for Constants in the wiki is incomplete.

(Yes, I know it's multipage, I created a Python script to grab all the pages, and some Constants are just not listed.)

Does anyone have a COMPLETE and up-to-date list of Constant NAMES?

(Don't need the values or the meaning, just the Names -- will be used for highlighting and autocomplete)

Link to comment
Share on other sites

1 hour ago, Rolig Loon said:

Yup.  https://wiki.secondlife.com/wiki/Category:LSL_Constants  should be complete.  The list that's used in Sublime Text, which I believe is based on that list, is current as well.

No, it's not complete.

For example, neither DENSITY nor FRICTION are listed in that page.

But both DENSITY and FRICTION are implied to be named constants in this page: https://wiki.secondlife.com/wiki/LlSetPhysicsMaterial (see the example code)

And that is just an example of 2 named constants. There are many others if you check the LSL.xml file in the repo I linked.

Edited by primerib1
Link to comment
Share on other sites

9 hours ago, primerib1 said:

I was just doing some serendipity search for LSL when I stumbled upon someone's XML config that enables IntelliJ IDEA to do syntax-highlighting and rudimentary autocomplete for LSL.

(By "IntelliJ IDEA" of course I meant IntelliJ and it's derivatives like PyCharm, PHPStorm, and CLion. Basically, "JetBrain IDEs")

I forked the project, updated the list of functions and keywords, and uploaded the result here:

https://github.com/clairem-sl/jetbrains-lsl-support

(I have created a PR against the original project, as well)

The only thing I haven't done is cleaning up/updating the constants list, because the Category page for Constants in the wiki is incomplete.

(Yes, I know it's multipage, I created a Python script to grab all the pages, and some Constants are just not listed.)

Does anyone have a COMPLETE and up-to-date list of Constant NAMES?

(Don't need the values or the meaning, just the Names -- will be used for highlighting and autocomplete)

Are the files that the Second Life Viewer uses not suitable?  I found them at:

C:\Program Files\SecondLifeViewer\app_settings\keywords.ini

C:\Program Files\SecondLifeViewer\app_settings\keywords_lsl_default.xml

  • Thanks 2
Link to comment
Share on other sites

16 hours ago, Ardy Lay said:

Are the files that the Second Life Viewer uses not suitable?  I found them at:

C:\Program Files\SecondLifeViewer\app_settings\keywords.ini

C:\Program Files\SecondLifeViewer\app_settings\keywords_lsl_default.xml

Wow thanks! Never realized the existence of those files!

Are those files guaranteed to be complete?

A glance at them though, makes me wonder how to parse them for which word is which. The XML seems to be a representation of a hashtable, so that's probably doable, but quite a lot of manual work. While the INI file needs some line-by-line state machine. Still doable but also a hassle...

For the time being I think I will still rely on kwdb Project ... their XML is much easier to quickly parse and filter as the maintainers seems to have done the heavy-lifting. Provided that the maintainers regularly update the project -- and I have no reasons to doubt that seeing the commits -- it will be Good Enough™ for me 😊

-----

EDIT: I don't have the Official SL Viewer currently installed so I can't say for SLV ... but the XML files that come with Black Dragon, FireStorm, and Kokua do NOT yet have LSD functions (did a search for "llLinksetDataReset") so they are definitely not (yet) complete. I guess I will stick with kwdb instead, they are proven to be complete.

Edited by primerib1
Apparently keywords_lsl_default.xml I have is not yet complete...
Link to comment
Share on other sites

On 12/6/2022 at 12:49 AM, primerib1 said:

I don't have the Official SL Viewer currently installed so I can't say for SLV ... but the XML files that come with Black Dragon, FireStorm, and Kokua do NOT yet have LSD functions (did a search for "llLinksetDataReset") so they are definitely not (yet) complete.

Any of the following files in appdata > local > firestorm have LSD library data:

keywords_lsl_1ed32442-4d87-1713-d156-23dd9c0456ec.llsd.xml
keywords_lsl_3e156818-84b1-881a-14b1-f989bc7f9cea.llsd.xml
keywords_lsl_55e840fd-ab59-a070-8a3c-0229983bbd3c.llsd.xml
keywords_lsl_e0528c38-0cd1-b1aa-b2bf-711b5705fd5b.llsd.xml
keywords_lsl_4b5a1c28-43ae-8e50-ef7b-11ba4c89b91a.llsd.xml
keywords_lsl_3065c6a4-6499-4685-772f-463c9cc12888.llsd.xml
keywords_lsl_5f772260-434c-b9df-178a-c31b16c8fd44.llsd.xml
keywords_lsl_aa19a199-8cbf-4371-69a9-10d25012956c.llsd.xml

The latest XML file is downloaded whenever you open the in-world script editor and go to Help > Keyword Help...

Edited by Lucia Nightfire
  • Thanks 1
Link to comment
Share on other sites

32 minutes ago, Lucia Nightfire said:

Any of the following files in appdata > local > firestorm have LSD library data:

keywords_lsl_1ed32442-4d87-1713-d156-23dd9c0456ec.llsd.xml
keywords_lsl_3e156818-84b1-881a-14b1-f989bc7f9cea.llsd.xml
keywords_lsl_55e840fd-ab59-a070-8a3c-0229983bbd3c.llsd.xml
keywords_lsl_e0528c38-0cd1-b1aa-b2bf-711b5705fd5b.llsd.xml
keywords_lsl_4b5a1c28-43ae-8e50-ef7b-11ba4c89b91a.llsd.xml
keywords_lsl_3065c6a4-6499-4685-772f-463c9cc12888.llsd.xml
keywords_lsl_5f772260-434c-b9df-178a-c31b16c8fd44.llsd.xml
keywords_lsl_aa19a199-8cbf-4371-69a9-10d25012956c.llsd.xml

The latest XML file is downloaded whenever you open the in-world script editor and go to Help > Keyword Help...

Ah I see.

Still, it's a pain trying to parse those XML files.

Kwdb's XML is so much easier to parse 😊

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 505 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...