Post Az5DZk1Z7rCpsMi1fE by foone@digipres.club
(DIR) More posts by foone@digipres.club
(DIR) Post #Az4bR1ewOQp7hoXlYG by foone@digipres.club
2025-10-10T17:38:40Z
0 likes, 0 repeats
me: when I'm bored and trying to find something to do, often I find myself thinking "I should refactor and rewrite my javascript codebase"doctor: I don't think that means you have a brain tumor, but we can do a check anyway
(DIR) Post #Az4h2yTr9xFwccH1rE by foone@digipres.club
2025-10-10T18:41:34Z
0 likes, 0 repeats
var? let? consts?why not combine them, to vaconst!
(DIR) Post #Az4h6YAiurrOBZ1srA by foone@digipres.club
2025-10-10T18:41:54Z
0 likes, 0 repeats
I also made a fun typo, where I set the description to "Death Generator is a tool to make fake videogame screenshits"
(DIR) Post #Az4hDwU2vNS5c7amYq by foone@digipres.club
2025-10-10T18:42:26Z
0 likes, 0 repeats
@gewt not today
(DIR) Post #Az4hOdUfruthu3z95U by foone@digipres.club
2025-10-10T18:45:21Z
0 likes, 0 repeats
@gewt I've written programming languages before! I might do so again!
(DIR) Post #Az4inPcUgjr24H1MCu by foone@digipres.club
2025-10-10T19:01:05Z
0 likes, 0 repeats
number of times (so far) I've misspelled "number" while working on this refactor:2 (nunmber and nubmer)
(DIR) Post #Az4jjORTE27fD8VodU by foone@digipres.club
2025-10-10T19:11:43Z
0 likes, 0 repeats
misspelled "justify" as "justifdy"
(DIR) Post #Az4k0R6mZ6coP3xidc by silvermoon82@wandering.shop
2025-10-10T19:14:46Z
0 likes, 0 repeats
@foone The stuff I'm on at dayjob right now integrates with an outside api. The vendor's name is spelled at least three different ways in our code and db, sometimes different spellings inside the same function or table.
(DIR) Post #Az4kmEK1PMmIe9wd8q by zygoon@fosstodon.org
2025-10-10T19:23:21Z
0 likes, 0 repeats
@foone I'm constantly let down by the variability.
(DIR) Post #Az4kpQzKltTKncnQ1Y by DLC@mstdn.social
2025-10-10T19:23:59Z
0 likes, 0 repeats
@foone & what is the intended behaviour?vaconst foo foo ← "Bar"foo ← "Foobar"
(DIR) Post #Az4lVGwAX0FXmzGWEC by wilkie@archived.software
2025-10-10T19:31:31Z
0 likes, 0 repeats
@foone @gewt it happens when you least suspect it!! I'm pretty sure I've done it accidentally at least twice
(DIR) Post #Az4n9sba0ByA9SYuP2 by foone@digipres.club
2025-10-10T19:50:04Z
0 likes, 0 repeats
I'm pretty sure the idiot who designed this codebase was specifically trying to make sure it couldn't be easily typescriptified
(DIR) Post #Az4nFGBvjhuQkd88nI by foone@digipres.club
2025-10-10T19:50:52Z
0 likes, 0 repeats
it's based around a giant object which has no schema, since it's just a raw JSON object, and it handles the existence or non-existence of various parts at runtime.
(DIR) Post #Az4nJZXRkKlbugFats by foone@digipres.club
2025-10-10T19:51:25Z
0 likes, 0 repeats
it also makes heavy use of a "first" function, which works by returning the first argument that isn't undefined
(DIR) Post #Az4nRRrs9J4CRLYnUO by foone@digipres.club
2025-10-10T19:52:43Z
0 likes, 0 repeats
so instead of something like:const fontScale = 'scale' in fontInfo ? fontInfo['scale'] : 2it does:const fontScale = first(fontInfo['scale'], 2)
(DIR) Post #Az4nibTXgJobA0MOHo by barubary@infosec.exchange
2025-10-10T19:54:52Z
0 likes, 0 repeats
@foone https://metacpan.org/pod/Symbol::Approx::Sub
(DIR) Post #Az4nicLmQfCTsDjhpI by foone@digipres.club
2025-10-10T19:56:19Z
0 likes, 0 repeats
@barubary of course it's perl
(DIR) Post #Az4nmF2P2wOKjHOuMS by foone@digipres.club
2025-10-10T19:56:34Z
0 likes, 0 repeats
@glitchsister I dunno, I don't know who this jason guy is!
(DIR) Post #Az4oVfgqnfxoQByyMi by foone@digipres.club
2025-10-10T20:05:16Z
0 likes, 0 repeats
'unadvance': first(lig_unadvance, ligature_default.unadvance, info.unadvance, defaultInfo.unadvance, 0),AHHHHHH
(DIR) Post #Az4p0RVpYwqhQXV75M by foone@digipres.club
2025-10-10T20:10:45Z
0 likes, 0 repeats
@AlisonW yes
(DIR) Post #Az4p40Tg1FRMjrC0uW by foone@digipres.club
2025-10-10T20:11:02Z
0 likes, 0 repeats
number misspelling #3: nyumber
(DIR) Post #Az4pCTngsiOZzxauUi by foone@digipres.club
2025-10-10T20:12:55Z
0 likes, 0 repeats
@barrowofdirt I'm a transfem hacker, bold of you to assume I'm not already wearing cat ears
(DIR) Post #Az4pj2Ji5N4IJe5yZU by foone@digipres.club
2025-10-10T20:17:57Z
0 likes, 0 repeats
I tried to type "class" and got "caches;ass"
(DIR) Post #Az4prhprbWrdOsGjk8 by foone@digipres.club
2025-10-10T20:19:04Z
0 likes, 0 repeats
@nleanba probably could have but didn't
(DIR) Post #Az4puBtknpTpDXH1Bg by foone@digipres.club
2025-10-10T20:19:27Z
0 likes, 0 repeats
I like my bitmap borders like I like my ass: cached
(DIR) Post #Az4q4jJBRIp3jVC2z2 by silvermoon82@wandering.shop
2025-10-10T20:22:44Z
0 likes, 0 repeats
@foone No war but caches;ass war.
(DIR) Post #Az4qM4Qo9qfSAS1ocC by StompyRobot@mastodon.gamedev.place
2025-10-10T20:25:54Z
0 likes, 0 repeats
@foone it's like coalesce in sql
(DIR) Post #Az4rcPjsnus0q7J8AS by North@chaos.social
2025-10-10T20:40:00Z
0 likes, 0 repeats
@foone Don't write a check that your ;ass can't cache
(DIR) Post #Az4ryrlRHvDW82k1qq by foone@digipres.club
2025-10-10T20:44:02Z
0 likes, 0 repeats
@ilmari @dysfun I worked for Google Meet for several months. I typo'd it as Google Meat about once a week
(DIR) Post #Az4sbHNiUXaGaFxia0 by dakkar@s.thenautilus.net
2025-10-10T20:22:49.913Z
0 likes, 0 repeats
@foone@digipres.club would'unadvance': lig_unadvance ?? ligature_default.unadvance ?? info.unadvance ?? defaultInfo.unadvance ?? 0;work as well?
(DIR) Post #Az4sbIcdsX7KQpx9U0 by foone@digipres.club
2025-10-10T20:50:45Z
0 likes, 0 repeats
@dakkar it would, yeah. this code wasn't written this way originally, so instead there's 77 various calls to first() that I'm going to need to rewriet
(DIR) Post #Az4t6HLif40NSdoGJ6 by APPTeOORuzvlGOetVY.verita84@poster.place
2025-10-10T20:57:10.833498Z
0 likes, 0 repeats
@foone Tranny! :tranny_fat: :trannycide:
(DIR) Post #Az50wVzm9UGvceOv3Y by foone@digipres.club
2025-10-10T22:23:32Z
0 likes, 0 repeats
next typo: tyoescruot(for typescript)
(DIR) Post #Az59HShYOQq77ZNQwq by foone@digipres.club
2025-10-10T23:57:57Z
0 likes, 0 repeats
typo'd ligature as luigiture
(DIR) Post #Az59hq1GJv5oyAAlA8 by Lady_Noremon@mas.to
2025-10-11T00:02:42Z
0 likes, 0 repeats
@foone In this Year Of Luigi
(DIR) Post #Az5B4omvAFMvlUzCpU by shinyjirachi@cyberplace.social
2025-10-11T00:18:00Z
0 likes, 0 repeats
@foone ligmature
(DIR) Post #Az5BT4kRTd2KDLOSm0 by foone@digipres.club
2025-10-11T00:22:25Z
0 likes, 0 repeats
I don't understand node.js/npm and don't know why this function is named LineBreaker in the source but once I installed it, it turned into $557adaaeb0c7885f$var$LineBreaker and now I can't import it because that name is horribly wrong
(DIR) Post #Az5BdINJfPFXNDRwkS by foone@digipres.club
2025-10-11T00:24:23Z
0 likes, 0 repeats
I think this maybe has something to do with module resolution? like require vs import. I'm using import, but it's expecting require
(DIR) Post #Az5CFGP9RPQIGaPeQS by foone@digipres.club
2025-10-11T00:31:12Z
0 likes, 0 repeats
I think it's parcel, which is used by the build system for this npm module? ugh.
(DIR) Post #Az5CNrMPvKw3CSEUfA by foone@digipres.club
2025-10-11T00:32:41Z
0 likes, 0 repeats
import linebreak from 'linebreak'linebreak.LineBreaker(text)this works. why does this work? I have no idea
(DIR) Post #Az5CZsHYK6i5X6gd0q by foone@digipres.club
2025-10-11T00:34:56Z
0 likes, 0 repeats
now I have a completely different problem: I'm getting error messages with paths like:parse (dist/lib/linesplitting/Snippet.js:132:28)except that filename and line number are based on the JS output of the typescript source, so it doesn't tell me where the error actually originates in my sourcethere has to be a way to fix this (I have sourcemaps and shit) but it's not turned on by default for some reasons
(DIR) Post #Az5CwMhHvBaQEbRrf6 by foone@digipres.club
2025-10-11T00:38:58Z
0 likes, 0 repeats
changed my launch.json (I'm in VS Code, for some fucking reason) to point the runtimeExecutable at ts-node instead of node
(DIR) Post #Az5D0m4nVJbU6ZXzhw by foone@digipres.club
2025-10-11T00:39:45Z
0 likes, 0 repeats
for some reason I still can't ctrl-click on paths in the traceback to open them from the results, but at least I have filenames
(DIR) Post #Az5DCv9Rabjvj2Vpzc by foone@digipres.club
2025-10-11T00:41:53Z
0 likes, 0 repeats
@rudi me too! unfortunately, browsers
(DIR) Post #Az5DZk1Z7rCpsMi1fE by foone@digipres.club
2025-10-11T00:46:03Z
0 likes, 0 repeats
yay, I finally have "working" typescript death generator! okay it can't render text, which some might argue is vital for a death generator, but it at least ran and did SOMETHING
(DIR) Post #Az5DclWC1lojNVTcrg by foone@digipres.club
2025-10-11T00:46:34Z
0 likes, 0 repeats
christ I spent 7 hours porting this code to typescript only for it to not work at all
(DIR) Post #Az5DriYjJNeaXonF1E by foone@digipres.club
2025-10-11T00:49:20Z
0 likes, 0 repeats
@zoe I was writing (type/java)script, so absolutely not
(DIR) Post #Az5Dydm1VEBvjHJPnc by tomasino@tilde.zone
2025-10-11T00:50:57Z
0 likes, 0 repeats
@foone if you added up all the distance your fingers traveled while typing everything for those 7 hours, how far do you think they went?
(DIR) Post #Az5EUT52nMjDpcNxrs by foone@digipres.club
2025-10-11T00:56:22Z
0 likes, 0 repeats
source character:{char: 72 // 'H')x: 469y: 0w: 17h: 0}
(DIR) Post #Az5EnAAnJezAh4zQEy by foone@digipres.club
2025-10-11T00:59:44Z
0 likes, 0 repeats
oh I hacked out ligature support to at least get something working, but accidentally broke it so that it thinks ligature_default is valid, since it's got all attributes set to zero
(DIR) Post #Az5FAadN6Kb7QBWkN6 by foone@digipres.club
2025-10-11T01:03:59Z
0 likes, 0 repeats
ugh I'm not sure how I'm gonna hack the way these fallbacks work into the typesystem of typescript.the way this works in the JS original is that it's a lot of lazy-evaluation, like:output.x = first(char.x, ligature.x, default.x, 0)
(DIR) Post #Az5FDzYit3FfaryVv6 by foone@digipres.club
2025-10-11T01:04:35Z
0 likes, 0 repeats
but obviously to fallback these have to be nullable values, except I don't want the output.x version to be nullable, or I have to consider the type to be (number|undefined) everywhere I use it
(DIR) Post #Az5FHWBw169JfbzuIy by gsuberland@chaos.social
2025-10-11T01:04:57Z
0 likes, 0 repeats
@foone ah this is Tchaikovsky's 72th in H flat
(DIR) Post #Az5FKSSuKLroyxL21o by foone@digipres.club
2025-10-11T01:05:00Z
0 likes, 0 repeats
and I don't want to have to declare two copies of the class, which are the same except one has nullable attributes and the other doesn't. that just sounds like a mess
(DIR) Post #Az5FlASTNvUAx9s4GG by foone@digipres.club
2025-10-11T01:10:33Z
0 likes, 0 repeats
what the glorious fuck is going on here?I've got, like, shadowing? and the wrong color? The original game doesn't work this way!
(DIR) Post #Az5FuABPmFOWhqBK8u by foone@digipres.club
2025-10-11T01:12:13Z
0 likes, 0 repeats
yeah here's what the game actually looks like
(DIR) Post #Az5FxyjyGLGONMAFlo by matoakit@beach.city
2025-10-11T01:12:23Z
0 likes, 0 repeats
@foone I used to love that game, still one of the best gamey rail simulators out there.
(DIR) Post #Az5G1MHXC1IMFyTVbM by foone@digipres.club
2025-10-11T01:12:39Z
0 likes, 0 repeats
@gloriouscow no, this is wholly a JS/TS issue, not a DOS game issue, sadly
(DIR) Post #Az5G4BajObdHyBnoJs by foone@digipres.club
2025-10-11T01:13:58Z
0 likes, 0 repeats
okay the death generator font file looks like this:I don't know why it looks like this. But the y-offset isn't getting set right, so it ends up using the top version of the font, not the correct bottom version.why are these other versions in here? I DON'T KNOW
(DIR) Post #Az5GEa3jHRTwkcK3vc by foone@digipres.club
2025-10-11T01:15:55Z
0 likes, 0 repeats
okay there. it works. I had to hack out overlays, hooks, ligatures, borders, and probably linewrapping to get this far, but this much works. Time to quit for today.
(DIR) Post #Az5GHz6sbANHJUQ3dI by foone@digipres.club
2025-10-11T01:16:18Z
0 likes, 0 repeats
@gloriouscow you're glorious cow, not glorious fuck! that's different
(DIR) Post #Az5GQyavsqNEJzlQJ6 by foone@digipres.club
2025-10-11T01:18:11Z
0 likes, 0 repeats
@matoakit it was one of the first PC games I played, and definitely helped me make a lifelong attachment to PC games!
(DIR) Post #Az5GscPrw5x7e1ln1c by scott@mastodon.clitheroe.ca
2025-10-11T01:23:06Z
0 likes, 0 repeats
@foone I have no idea what you are up to, but my heart lept with joy seeing that screen. I probably played more RRT1 than any other game besides Ultima Online.
(DIR) Post #Az5Izp85GcOv0d0xE0 by cap_ybarra@mastodon.social
2025-10-11T01:37:35Z
0 likes, 0 repeats
@foone live tooting javascript shenanigans is a cry for help, should we call someone
(DIR) Post #Az5IzqJ6t6oaf7BH3A by foone@digipres.club
2025-10-11T01:46:43Z
0 likes, 0 repeats
@cap_ybarra yes. call someone with a time machine so we can go back in time and STOP BRENDAN EICH
(DIR) Post #Az5JPxWuempyal5eq0 by cap_ybarra@mastodon.social
2025-10-11T01:47:33Z
0 likes, 0 repeats
@foone at this point i think javascript may be the least of his crimes
(DIR) Post #Az5JPybudgQlwYRAGm by foone@digipres.club
2025-10-11T01:51:37Z
0 likes, 0 repeats
@cap_ybarra he personally donated to my marriage being illegal, yeah, but I"m still mad about the JS
(DIR) Post #Az5StUMSZJlIOzMANc by Netux@mastodon.sdf.org
2025-10-11T03:37:40Z
0 likes, 0 repeats
@foone where are the semicolons?
(DIR) Post #Az5TFEfXanz06WeRGq by foone@digipres.club
2025-10-11T03:41:43Z
0 likes, 0 repeats
@Netux unnecessary in typescript
(DIR) Post #Az5lmNIGLW5DaGiN3A by foone@digipres.club
2025-10-11T07:09:14Z
0 likes, 0 repeats
@krutonium porting the Death Generator to typescript/nodejs
(DIR) Post #Az5nFaojFD9fsYOeGW by foone@digipres.club
2025-10-11T07:25:47Z
0 likes, 0 repeats
@zero @krutonium I want to be able to run it outside the browser, though! and the typescript helps with some of the code, honestly. it's just a mess transitioning to it
(DIR) Post #Az5nJ5mmYnXGnM9erI by foone@digipres.club
2025-10-11T07:26:29Z
0 likes, 0 repeats
@zero @krutonium "transitioning is hard but the results are worth it" - foone, a girl with a flag in her name
(DIR) Post #Az5s9ijjO33wTR4uLQ by foone@digipres.club
2025-10-11T08:20:51Z
0 likes, 0 repeats
@Rairii @cap_ybarra hey, I did my time with visual basic, I'm not scared.
(DIR) Post #Az5xPx16YotZAQlNUu by Netux@mastodon.sdf.org
2025-10-11T09:19:46Z
0 likes, 0 repeats
@foone lol. Json. Thought it was a struct. Shouldn't there be commas then?