Tim Chase
mastodon 4.7.3Christian, husband, father, geek, dork behind @ed1conf
If bsd.cafe requires approval for you to follow me, but you have a default profile-pic and no public post/interaction with other folks on the fedi, it's likely to be a no.
@maccruiskeen@social.linux.pizza
look at the map and see if any off-ramps are coming up
eloquently put. As much as I like FreeBSD & OpenBSD, and haven't tinkered much with NetBSD, the latter's notably-stronger stand against LLM-generated code looks more enticing each day.
are your builds taking too long? Try this one simple hack:
$ CC=true make
😉
Ah, that satisfying feeling of cleaning up a picayune issue that has bugged you for years, and it just took editing a couple lines to smoothe out.
Today it was my remind(1) files. It defaults to putting a blank line after each reminder, but it can be suppressed with
SET $AddBlankLines 0
so I had several-but-not-all of my scripts selectively opting in to blank-line suppression. But I did want the blanks in the output that cron(8) emailed to me daily because it didn't have all my usual coloration, so the blank lines made it more readable.
Additionally, I had a msgsuffix() function that conditionally appended things like relevant context and various INFO fragments in my no-blank-lines version, but they weren't added in my emailed version. Adding it in (so my emails have that extra context/INFO) resulted in the msgsuffix() context getting added *after* the added-blank-line which meant weird line-breaks.
So about 10 minutes of cleanup, now *everything* defaults to AddBlankLines=0 and the msgsuffix() conditionally adds a newline based on that one cron-job specifying -iSEPARATE=1 which puts the newline at the place I actually want it.
remind(1) is so freaking flexible in giving me control over what I want. 🤩
dumb¹-but-appreciative-thanks to you…
popping around your blog, it has the bog-standard hyperlink and :visited coloration so it was easy to tell which links in an article I'd already read (or opened in another tab) vs those I hadn't.
So thanks!
⸻
¹ "dumb" because it's the default behavior of browsers, but too many sites override that default in the name of style/visual-aesthetics
Huzzah! I've been slowly moving my #plaintextaccounting workflow from the appears-to-be-sloppifying ledger(1) to hledger(1) which @simonmic@fosstodon.org seems to lovingly maintain by hand.
One of the reports I've run on occasion is a monthly (-M) or weekly (-W) breakdown of average-spending in particular categories¹. But there were some quirky edges in ledger(1) that meant that running the report for a parent category didn't roll up all the child-categories under it (so using the "-3"-style depth-limiting ended up only printing things at that level, excluding deeper child postings). So my saved command was a convoluted pipeline like
$ ledger print $PARENT_CATEGORY | sed 'substitution that strips off the child-categories with duplicated strings from $PARENT_CATEGORY' | ledger -f - reg -AM
It was a pain to play around with exploration because I had to update the parent and child-parent-stripping parts of the thing rather than just update it once.
I went to run the same report in hledger and tested the naïve command that I'd originally wanted, and it worked like a charm:
$ hledger -f wrapper.txt register Expenses:Household:Food -AM -3
Want to check average grocery-spend for each week?
$ hledger -f wrapper.txt register Expenses:Household:Food:Grocery -AW -4
compared with takeout?
$ hledger -f wrapper.txt register Expenses:Household:Food:Takeout -AW -4
And it delightfully answers the "How much does our household spend on food per month/weekly?" with much less effort than before. 🤗
⸻
¹ In case you're curious, it works out to ~$145/wk for groceries and $54/wk for takeout, or just a little over $200/wk average to feed our family of four (or about $2.40/person/meal).
looking over the lad's HS physics notes and free-body diagrams, I see the force of gravity (Fg), the force of friction (Ffric), the normal force (Fn), and the applied force (Fap). The junior-high boy in me can't help but snicker with puerile amusement.
