Announcing mklist2 - Printable Version +- LDraw.org Discussion Forums (https://forums.ldraw.org) +-- Forum: LDraw Programs (https://forums.ldraw.org/forum-7.html) +--- Forum: All Other Programs. (https://forums.ldraw.org/forum-26.html) +--- Thread: Announcing mklist2 (/thread-4827.html) |
Announcing mklist2 - Tim Gould - 2012-05-10 Hi all, Following recent discussion on changes to the parts library (specifically new leading characters for aliases and longer filenames) I've written a new version of mklist to ensure that backwards compatibility can be maintained, while also giving a little more power to the users. Features not appearing in mklist are:
The code is also open source so it can easily be modified in future. Find it here with a pre-compiled Windows executable. The code itself is exceedingly basic C++ so should compile on any OS using a gnu (or compatible) compiler with minimal changes. Tim Re: Announcing mklist2 - Willy Tschager - 2012-05-12 Dear Mr. Gould, since you've put much effort and knowledge in the creation of this program - for which I'm eternally thankful - I would humbly suggest that you go all the way. May I suggest that:
Yours sincerely, w. Re: Announcing mklist2 - Tim Gould - 2012-05-12 Thanks Willy,
Re: Announcing mklist2 - Tim Gould - 2012-05-13 [*] Add a feature which will place all pattern versions at the end of say "Bricks" or "Plates" bases on the p character in the part number and also sorted by description or number in order to have: Brick 1x1, Brick 1x2, Brick 2x2, Brick 1 x 1 with Angry Eye Left/Sad Eye Right Pattern, Brick 1 x 2 with Classic Space Logo Pattern Interesting thought. I'll have a think about how this might be implemented but I can't think of a trivial way to do so, or for that matter any way that's not highly complicated. Unless... they have more info in the header. (eg. Part_Patterened). I have an idea now. Tim Re: Announcing mklist2 - Steffen - 2012-05-13 +1 for this feature Re: Announcing mklist2 - Philippe Hurbain - 2012-05-13 Another interesting possibility (already present in an Arezey tool) is to give the possibility to add primitives to the list. Useful for parts authors... Re: Announcing mklist2 - Steffen - 2012-05-13 And one would need them also for LSYNTH bent parts generation... To me, the files where LSYNTH generates bent parts from are primitives. I find it not a good idea to put them into Parts just to see them im MLCad. One can see them there as well when adding the "P" folder to mlcad.ini, and creating a custom parts tree entry for LSYNTH. I'd prefer to see these become primitives. LDList Update 1 - Tim Gould - 2012-05-14 Worked some more on it. 0.9.2 Changes
Stripping unofficial files is presently crude. I plan to write a better way to get all the part header info. One further question though: should this happen by default and be switched off or vice versa? Re: Update 1 - Philippe Hurbain - 2012-05-14 Quote:Renamed to LDListI suggest you edit the title of this post to "LDlist update 1" and make things clear Quote:Can include primitives in Parts.lstThanks! unfortunately I can't run ldlist on this machine (XP), after a relatively long run it quits with a "ungetc failed" message. Parts.lst is not created. Anything I can do to find problem origin? (it's quite possible that I have a very queer file in my LDraw folder!)? Quote:should this happen by defaultI see no reason to strip unofficial files by default! Another very minor quirk: compression in your zip file is not managed by XP integrated unzipper. Re: Update 1 - Tim Gould - 2012-05-14 Quote:Thanks! unfortunately I can't run ldlist on this machine (XP), after a relatively long run it quits with a "ungetc failed" message. Parts.lst is not created. Anything I can do to find problem origin? (it's quite possible that I have a very queer file in my LDraw folder!)? That's kind of strange. If you have a file that's less than 4 lines long I can see it potentially having problems but I don't see why it would exit with that error. But C file input can be pretty odd and I've had to avoid the default line processing to make sure it works for newline in DOS or unix format. I've uploaded a 0.9.3 executable to narrow down the file with the problem. If you could send me the file I'll see what's going wrong. Tim Re: Update 1 - Philippe Hurbain - 2012-05-14 Got it! It was a png image file that was lounging there... Shouldn't you restrict the scan to valid LDraw extensions? Also, it indeed chokes on too short files (only one LDraw line), or files that start with an empty line (in the later case, I get this message: "This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information."). I could then try the "primitive" feature. Two problems: - 48 folder is not scanned - To be really useful (I don't know if it's easy), description should be prefixed with "Primitive" and "Hires" (or similar!), otherwise creating categories in MLCad is not so practical... Re: LDList Update 1 - Tore Eriksson - 2012-05-14 [quote="Tim Gould"] [*] Renamed to LDList Have you asked Anders Isaksson if it's ok to rip off the name of his software? http://www.blockcad.net/ldlist.htm Re: Update 1 - Tim Gould - 2012-05-14 Philippe \Philo\" Hurbain Wrote:Got it! It was a png image file that was lounging there... Shouldn't you restrict the scan to valid LDraw extensions? That's very odd. Because it should be checking the extension before doing any processing. Quote:Also, it indeed chokes on too short files (only one LDraw line), or files that start with an empty line (in the later case, I get this message: "This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information."). I'll look into this Quote:I could then try the "primitive" feature. Two problems: Both fairly straightforward changes. Will do that. Tim Re: LDList Update 1 - Tim Gould - 2012-05-14 Sigh. There's so many LDraw tools out there I'm totally unaware of. Will think of another name. Tim Re: LDList Update 1 - Tore Eriksson - 2012-05-14 Ah, don't lose heart. The LSC does a tremendous job making old LDraw tools outdated and discouraging programmers from making new tools. Re: LDList Update 1 - Anders Isaksson - 2012-05-16 Tim Gould Wrote:Sigh. There's so many LDraw tools out there I'm totally unaware of. Will think of another name. Well, my LDList has been available from ldraw.org, at least in 2008 (http://news.lugnet.com/cad/dev/org/ldraw/?n=4249) - I don't know which ldraw.org reorganisation removed it... Re: LDList Update 1 - Tim Gould - 2012-05-17 I've got no idea why it wouldn't be there either but I suggest you add it again. The link may have died at some point in which case it could have been removed. In truth I didn't look through the list. I do enought literature reviews for work to do them for LDraw too Tim Re: LDList Update 1 - Willy Tschager - 2012-05-17 I look through the report of broken downloads (submitted by the users) every three, four months - all links are tested through the CSM as well as copying the link directly in a browser. If it gets no response twice it will be removed. Broken links are annoyance to the users and will be removed independently of the prog they are linking to. If you submit links to LDraw.org just check them from time to time and don't forget to update them when moving to a new address. w. LDraw Content Manager Re: LDList Update 1 - Anders Isaksson - 2012-05-22 Well, I've added it again, but it doesn't show up - I guess the pages are updated manually? Re: LDList Update 1 - Tim Gould - 2012-05-23 Yes. And added. Tim Re: Announcing mklist2 - Jean-Philippe Ouellet - 2012-06-08 Not to hijack the thread, but as it might possibly be of use to others, I figure I should also probably share my partslist program I wrote a while ago for generating JSON formatted parts lists for use in my (yet unfinished and now stagnant) WebGL-based LDraw program in case somebody might find it useful. It's a bit too long to include in the message, so I put it on github here. It is unix only as-is, feel free do whatever with it, I don't care. Re: Update 1 - Philippe Hurbain - 2012-07-01 Quote:Any news? I know, UTSL, but...Quote:I could then try the "primitive" feature. Two problems: Also, if LDRAWDIR is not defined, LDlist doesn't work (and error message is a bit obscure...). Maybe path could be specified as an overriding argument? Re: Update 1 - Tim Gould - 2012-07-02 Hi Philo, I've got no time at all to work on this Unlike fixing bits of the website I'd need to sit down and really edit. And my time is just too full for that. Maybe this coming weekend I will have a chance. Maybe. Tim Re: LDList Update 1 - Anders Isaksson - 2012-08-21 I must be getting old (58 and counting...) - I can't find the 3:rd party downloads anywhere on the LDRAW pages, so I can't check the link. Re: LDList Update 1 - Tim Gould - 2012-08-21 They're not on the new site yet And unfortunately with the crash of the old site we can't even link to the old one. As an interim response I suggest adding software to here using the template demonstrated for LDView. Tim Re: LDList Update 1 - Anders Isaksson - 2012-09-02 Well, it seems I can't log in there, even though I'm already logged in to the forums, so I'll let it be... LDMakeList Update - Tim Gould - 2012-11-02 Hi all, I've renamed this program to be LDMakeList, thus keeping the LD for LDraw and the old name. If this conflicts with any old code I will scream The latest files can be found here Please note I cannot promise any further work on this other than bug fixes. New features will have to be added by others. I fully open this to editing by anyone. I'm super busy lately and thanks to my laptop being stolen in Switzerland I no longer have a working C++ compiler on windows and can't even compile this Tim Re: Update 1 - Tim Gould - 2013-02-05 These changes have been made. I will release a new version once I match Michael's XML file perfectly. We still have a couple of small differences. Tim |