cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 
Libraries & objects
About Archicad and BIMcloud libraries, their management and migration, objects and other library parts, etc.
SOLVED!

How to get a library path

GP2025
Participant

Hi,

 

I'd like to make a gdl script able to get me the library path of a used objet in a specific file.


I have some libraries on my bimcloud, some others on my computer or lan and it would be so long to check for each file wich of those libraries I used.


So, if I could know wich variable I must request... The wonderful I-kwow-everything Chatgpt told me about a "libraryinfo lib_name, lib_path" and then admited that "libraryinfo" didn't even exist in gdl...

 

So, is there a way to get a specific library path thru a gdl script ?

 

My brain and me thank you so much for trying to get me from madness.

 

Best regards.

 

GP

 

Operating system used: Windows

1 ACCEPTED SOLUTION

Accepted Solutions
Solution
runxel
Hero

You can only get the name, but not the path – at least I'm not aware of any way to acquire this information.

But may I ask what you want to achieve here? Why would you need the path?

For historical reasons GDL works on a string basis regarding the loaded objects.

Meaning: If you now happen to load two libraries (and the internal library is included in this equation) and there are two or more elemens (actually any file type, not only .gsm) sharing the same name, then you'll get the "duplicated loaded elements" warning in the library manager.

runxel_0-1738618940471.png

In that list you see all your duplicates – with the path 😉

 

There is a caveat now: While Archicad still might seem to work flawless, only one of these duplicates will actually be loaded and available in both the object (or other related) tool, and as a macro for other objects to call (macro calls are string based, too).

Archicad will load the first object it encounters, be it unique or not. However: You can not foresee which (it kinda depends on the loading order) that will be.

The rest will be skipped. There is no way to enforce a loading order either (to my best knowledge).

 

So after all it does not seem to really matter in your case – or maybe I misunderstood you there.

If you want to consolidate your library just download your BIMCloud libraries, put all stuff in one folder; your Explorer/Finder will tell you what is duplicate. Then add the folder to an AC file in the library manager which you then share on the BIMCloud.

 

Lucas Becker | AC 27 on Mac | Graphisoft Insider Panelist | Author of Runxel's Archicad Wiki | Editor at SelfGDL | Developer of the GDL plugin for Sublime Text | My List of AC shortcomings & bugs | I Will Piledrive You If You Mention AI Again |

POSIWID – The Purpose Of a System Is What It Does /// «Furthermore, I consider that Carth... yearly releases must be destroyed»

View solution in original post

2 REPLIES 2
Solution
runxel
Hero

You can only get the name, but not the path – at least I'm not aware of any way to acquire this information.

But may I ask what you want to achieve here? Why would you need the path?

For historical reasons GDL works on a string basis regarding the loaded objects.

Meaning: If you now happen to load two libraries (and the internal library is included in this equation) and there are two or more elemens (actually any file type, not only .gsm) sharing the same name, then you'll get the "duplicated loaded elements" warning in the library manager.

runxel_0-1738618940471.png

In that list you see all your duplicates – with the path 😉

 

There is a caveat now: While Archicad still might seem to work flawless, only one of these duplicates will actually be loaded and available in both the object (or other related) tool, and as a macro for other objects to call (macro calls are string based, too).

Archicad will load the first object it encounters, be it unique or not. However: You can not foresee which (it kinda depends on the loading order) that will be.

The rest will be skipped. There is no way to enforce a loading order either (to my best knowledge).

 

So after all it does not seem to really matter in your case – or maybe I misunderstood you there.

If you want to consolidate your library just download your BIMCloud libraries, put all stuff in one folder; your Explorer/Finder will tell you what is duplicate. Then add the folder to an AC file in the library manager which you then share on the BIMCloud.

 

Lucas Becker | AC 27 on Mac | Graphisoft Insider Panelist | Author of Runxel's Archicad Wiki | Editor at SelfGDL | Developer of the GDL plugin for Sublime Text | My List of AC shortcomings & bugs | I Will Piledrive You If You Mention AI Again |

POSIWID – The Purpose Of a System Is What It Does /// «Furthermore, I consider that Carth... yearly releases must be destroyed»

Hi Runxel,

 

Thanks a lot for such a detailed answer. Despite of the deception, I would'nt waste time trying to do an impossible thing.

 

We have older files here, done by some who left us for new horizons, and I thought I'd would be easier to apply a gdl script telling us where are the used libraries. I'd put a warning if they are not in the right place (local rather than bim for example).

 

Anyway, thanks again for your advices and clear explainations.

 

Best regards.

 

GP

 

 

Setup info provided by author