304 Followers
306 Following
528 Posts
Fluffy tan software engineer squeaking at computers. I solve practical problems! ❤ @binaryfox ➕ @nrr. Kangaroo rats are real creatures!
SpeciesKangaroo Rat
PronounsHe/They
Githubhttps://github.com/cellivar
After a mainboard replacement its aliiiiive.

My 3D printer, having heard me speaking praise of it, decided to fail in a new and interesting way. I got several good prints, then it stopped dead in the middle of a large one. This has happened before, so I just rebooted it.

This time though the motors didn't move at all. Several reboots didn't help. I take the case apart and sure enough, a chip has let out the magic smoke that powers the motors.

Guess I'm waiting for a motherboard replacement for a while. Back to messing with 2D printers instead.

I wish I could get my 3D printer to print this well more consistently. It's so hard to reliably do huge batch prints.

And now all of the formatting appears to work correctly! Onto integration.

https://furry.engineer/@Cellivar/111697701200972941

Cellivar (@[email protected])

Attached: 1 image It's taken so much effort to create this receipt. It's hard to overstate how happy I am with this little scrap of paper. The text on the screen is a ReceiptLine document, think markdown but for receipts. My library parses it into ESC/POS commands and prints directly to the printer. No drivers. The webpage itself talks to the printer, I implemented the driver in typescript. There's a demo here: https://cellivar.github.io/WebReceiptLinePrinter/demo/ This is the whole document: ``` ^^^RECEIPT 12/18/2021, 11:22:33 AM Asparagus | 1| 1.00 Broccoli | 2| 2.00 Carrot | 3| 3.00 - ^TOTAL | ^6.00 = ``` ReceiptLine is a somewhat obscure standard developed a few years back in Japan. The major receipt printer companies collaborated on it. The idea was to have a standard that the various printers could interoperate with to some degree. I lifted some of my parser from that project. https://github.com/receiptline/receiptline Now some of you might reasonably ask "Cellivar why would you write a printer driver in TypeScript?" and the answer is easy: Chromebooks.

Furry.Engineer - Duct tape, hotfixes, and poor soldering!

It supports fancy formatting now too.

Next up is shipping a package to npm!

It's taken so much effort to create this receipt. It's hard to overstate how happy I am with this little scrap of paper.

The text on the screen is a ReceiptLine document, think markdown but for receipts. My library parses it into ESC/POS commands and prints directly to the printer. No drivers.

The webpage itself talks to the printer, I implemented the driver in typescript.

There's a demo here: https://cellivar.github.io/WebReceiptLinePrinter/demo/

This is the whole document:
```
^^^RECEIPT
12/18/2021, 11:22:33 AM
Asparagus | 1| 1.00
Broccoli | 2| 2.00
Carrot | 3| 3.00
-
^TOTAL | ^6.00
=
```

ReceiptLine is a somewhat obscure standard developed a few years back in Japan. The major receipt printer companies collaborated on it. The idea was to have a standard that the various printers could interoperate with to some degree. I lifted some of my parser from that project.

https://github.com/receiptline/receiptline

Now some of you might reasonably ask "Cellivar why would you write a printer driver in TypeScript?" and the answer is easy: Chromebooks.

WebReceiptLinePrinter Tool

Print job complete! It's easier to set up the game and get playing with this set of trays.
The maximum we saw at Tahoe
Modern phones are crazy. Here's the eclipse so far.
I'm chilling on the couch checking things on my phone and hear a weird smacking sound. The cat, who is very asleep, is apparently having a dream that involves drinking something. Loudly.