What your project desperately needs is a description of what it does. I had to follow the links to ethical-tldr back to the original tldr to see what it's supposed to do.
Ohh! That's a good point! Thanks! I just updated the README to provide an actual description.
The irony of a tldr missing from tldr...

I could only wish to be this cool.
This is an instance of that recurring trope of coding something better out of pure spite
This looks like a colossally bad idea:
if (!strcmp(platform, "windows") && !isSpecificPlatform) {
debugLog("Falling back to rm -rf", 2);
debugLog(strfmt("rm -rf exited with code %d",system(strfmt("rm -rf %s", path))), 3);
}
In addition,
However, their even though their client doesn’t allow vibe coding, it is still written in Python, which itself takes ai contributions.
Per the Makefile, this project is built using GCC. GCC itself accepts AI contributions, provided that the code is "legally insignificant" (meaning less than around 15 lines of code) or is part of test cases: https://gcc.gnu.org/ai-policy.html
https://github.com/tealdeer-rs/tealdeer Rust TLDR
So, I decided to learn C from scratch
...
on my own in just the past 3 days
Really impressive, great job! What resources did you use for learning?
Mostly just w3. Occasionally I had to look up some stuff for more “niche” use cases, but for the most part I just learned from w3.
I already have experience with programming in general, so the hardest part was learning the syntax, and strings… oh god strings are so bad in C, I had to make a new function called strfmt that works like printf but just for returning a formatted string.
Do you know about the sprintf function?

So... C code is faster than python. We knew that. Thanks for the better performing rewrite. Now do it in rust 🤓
Looks like someone did that https://github.com/tldr-pages/tlrc
There's also https://github.com/tealdeer-rs/tealdeer
In all distros I've recently used this is what gets installed when you install the "tldr" package with the package manager. And for good reason.
What is the reason?
Already exists and isn't vibecoded https://github.com/tealdeer-rs/tealdeer
I was gonna post this as well, this comes with CachyOS by default.
I'm not sure why you did this when Tealdeer exists and has for years? https://github.com/tealdeer-rs/tealdeer
My reasoning is simple: I had never heard of it.
But also, this is an incredibly simple program and a really good way to help me learn C. Additionally, it seems like tealdeer accepts ai generated submissions, though generally discourages it. I aim to make my project as free of ai as I possibly can.
Consider using a different name for the project if you care for searchability. There's already Unicode CLDR Project.
damn! I guess I should have looked it up before going with the name. I just liked the play on tldr, cldr.
Just go with tlcr!
Ohh, not bad! If I feel like I need to change it, tlcr is probably the best option
You might want to have a glance at the OpenSSF compiler hardening guide, and maybe try out ASAN (-fsanitize=address).
E.g. I get
[nobody@bb14e99a9c8e cldr]$ ./build/cldr --update --language C.
caution: filename not matched: ethical-tldr/pages.C./*/*.md
=================================================================
==454==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 4 byte(s) in 1 object(s) allocated from:
#0 0x7fa48a32c0c1 in malloc (/usr/lib/libasan.so.8+0x12c0c1) (BuildId: b8a4241051a1621937fdc46e867ba7ecb56d96ea)
#1 0x7fa489e8be0f (/usr/lib/libc.so.6+0x8be0f) (BuildId: 503200d7fda94a5dc6058d7e0694e5d1dcb2e372)
#2 0x7fa48a2f2761 in vasprintf (/usr/lib/libasan.so.8+0xf2761) (BuildId: b8a4241051a1621937fdc46e867ba7ecb56d96ea)
#3 0x561d84213d8c in strfmt (/home/nobody/cldr/build/cldr+0x6d8c) (BuildId: 2a0f13efc2c9b12a67e7dd810a2cbdfd1866e53d)
SUMMARY: AddressSanitizer: 4 byte(s) leaked in 1 allocation(s).
Alrighty! I tried out -fsanitize=address and I have now patched every memory leak. There were many...
Update to this, ~~I actually just fixed that bug, and ~~I went through the first section of the hardening guide. Changes are now pushed to main and I released v1.2.1
Ah damn! That's one of the things I had told myself I needed to make sure I checked, but I forgot! Thanks! I'll look into this tomorrow. Like I said, I literally learned C over the last 3 days to make this, so I'm always happy to learn more!
I wish people still had shame.
Python isn't for command line utilities that you intend to distribute to others. It's for personal one-off scripts.
I mean, FFS, if you're gonna vibecode something, why not pick a fast language? The fact that they can't even tell the LLM to use the right technology shows that they are a complete imbecile
Python isn’t for command line utilities that you intend to distribute to others
wat
Python isn't for command line utilities that you intend to distribute to others.
Sorry, but you're wrong about this. Python can be an excellent choice for many command line utilities intended for distribution to others.
Dependancies
[Optional] wget can be installed for less reliance on other projects using ai, if wget is not found, curl will be used instead
- Small typo: dependencies.
- Is curl using AI in its code now?
Thanks for your work!
Update to my previous comment:
1: Fixed!
2: Yes, it seems like it is! According to the open-slopware repository curl does take ai submissions.
Dang, looks like they went all-in on it.
1: thanks! I’ll fix that soon.
2: this is according to the same friend I talked about, but it would be good to double check her knowledge
excellent. however if you are making a point about AI not being as good s a quality developer, you are missing the point.
CEOs don't give a shit about quality and effectiveness. it is all about getting rid of labor costs. once all he few remaining providers of service are absorbed, we take what they give and pay through the nose. monthly.
Oh yeah this is bound to be maintained
I intend on maintaining this for as long as I'm able to program
Opensource
A community for discussion about open source software! Ask questions, share knowledge, share news, or post interesting stuff related to it!
⠀

