Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Another JWM project
#11
(05-28-2024, 03:37 PM)grindstone Wrote: Hash table?

What about them? I currently use one for storing all the icon paths.
Reply
#12
It was just my first thought in case you didn't and were still faced with too many characters.
Reply
#13
(05-29-2024, 12:37 AM)grindstone Wrote: It was just my first thought in case you didn't and were still faced with too many characters.

Well, the problem is the parsing itself, not the actual storing of the data, most ini parsers will just segfault when it reaches that long line. So I just decided to have my own parser and just skip the [Desktop] section for now and retrieve the path via extraction of the other sections, since every path has its own section, basically, I'm just bypassing the issue altogether.

However, I did end up creating a second way of dealing with it, where I created another ini parser that just dynamically allocates the line length and stores all the files' key-value pairs in a hashmap, but I was not happy about storing the Directories list value in the hashmap since you would still need to parse that data also.

I might end up redoing the implementation in the future, but now that it is working and has a "good enough" implementation I'm not going to worry about it.

There are far more important features that need to be done, and right now, I'm currently changing the data structure for the Desktop entries from a dynamic array to a Binary Search Tree (BST), which will allow me to still sort the entries while not allowing for duplicates like Okular which have like eight different Desktop entries with the same name.

Anyways, here is a good resource that I used to help get me started. https://specifications.freedesktop.org/i...atest.html
It explains quite a lot and provided me with some pseudo-code which was pretty nice.
Reply
#14
Thanks. I don't mind reading but any days coding are far behind me. I think what you're doing is both cool and useful. You've covered a lot of ground pretty fast, too. Thanks on behalf of all of us Smile
Reply
#15
(05-29-2024, 02:19 AM)grindstone Wrote: Thanks.  I don't mind reading but any days coding are far behind me.  I think what you're doing is both cool and useful.  You've covered a lot of ground pretty fast, too.  Thanks on behalf of all of us Smile

Thank you for the kind words! There is still much to be done, for example. I still need to finish exposing the rest JWM configurations instead of having them hardcoded, but, I will admit I'm pretty happy with what I have already. 

As long as I stay unemployed (lol), this project will continue until I get tired of it or it reaches feature completeness.

Who knows? I might end up turning JWM into a full-fledged Desktop Environment. Maybe something that looks like KDE Plasma but with just the basics and RAM usage no more than IceWM. 

Just a thought, although good ole LXDE kinda makes it a little silly, but I do like a challenge or something new.
Reply
#16
Maybe something in this program (radky's JWMdesk) will help with your project:
https://forum.puppylinux.com/viewtopic.php?t=3561
Color temp control is an accessibility feature for me, so I love JWMdesk
Reply
#17
(05-31-2024, 06:11 PM)Chloe Wrote: Maybe something in this program (radky's JWMdesk) will help with your project:
https://forum.puppylinux.com/viewtopic.php?t=3561
Color temp control is an accessibility feature for me, so I love JWMdesk

That Looks really nice! But I can't seem to find any link to the source code?
Reply
#18
It does look completely great--the whole JWMDesk--doesn't it? Apparently people get the .pet file and extract it but it's too late in my day to start that. Alternatively, perhaps the thing to do is to register there and ask radky (Roger G.). Saw ~current is 3.6-ish, but found one lovely bash script (w/ magic word GPL3) in older v2.5 at least.

This thing is definitely worth a hard look IMO. Nice find, @Chloe.
Reply
#19
(06-05-2024, 02:53 AM)grindstone Wrote: It does look completely great--the whole JWMDesk--doesn't it? Apparently people get the .pet file and extract it but it's too late in my day to start that.
Yeah, I extracted the pet file and you end up with is just a bash file basically, although I have an issue with that. You usually don't do this type of task in a bash script IMO. Bash is great for small and simple tasks but doing a full-fledged GUI program in Bash is not the right way to go.
Reply
#20
Extracted 3.6 and poked-around. I see what you mean--3643 lines of bash. Still, that's less than half the size of the antiX iso build script (which I also find equally demotivating). The old 2.5 is 2679 lines. Glad it's readable and out there, but... Perhaps a perfect project for some summer of code person but not for me. But yeah--to your point, agreed--expected a much more modular thing.
Reply


Forum Jump:


Users browsing this thread: 6 Guest(s)