Cool. One thing I found odd was that on export there are two listed formats. "ASCII" and "ASCII extended" but as far as I can tell, the ASCII version is actually outputting UTF-8. It's hard to tell for sure though because the output is just text that you can cut and paste and so it's difficult to know what conversions the browser or OS might be doing behind the scenes. But when I paste it into a text editor on my mac, it's definitely UTF-8, not ASCII encoded.
Which is probably more useful anyway given that if it really outputted ASCII encoded line drawing characters, you'd end up with gibberish on a system that assumed UTF-8 encoding.
numpad0 2 days ago [-]
20 20 78 78 78 ... Looks ASCII to me, Firefox on Windows. Could be OS.
16bytes 2 days ago [-]
" xxx"? That's the same in ASCII and UTF-8.
OP is asking what are the line-drawing characters encoded as e.g: "┌" and "┐".
Since the charset returned by the app is UTF-8, these will be interpreted and encoded as UTF-8 and not whatever "ASCII - Extended" means.
numpad0 2 days ago [-]
that would be completely correct... sorry. the export options now read "ASCII Basic" and "ASCII Extended", and "Basic" generates plus signs for corners, as of now. I feel like the behavior might have changed. Extended option seem to use 0xE294xx range for lines.
Firefox on Linux: I just copied and pasted into emacs and did a M-x describe-char and got 0xE29480 which is definitely not ASCII: https://www.compart.com/en/unicode/U+2500
Also confirmed with hexl-mode (hex editor in emacs)
ilovetux 2 days ago [-]
Disclaimer, I just pulled this quote from Google ai which probably took it from somewhere else, but I just wanted to provide a little context. ASCII encoded text is also valid utf8.
> The first 128 characters of Unicode, which are the same as the ASCII character set (characters 0-127), are encoded in UTF-8 using a single byte with the exact same binary value as their ASCII representation. This means that any file containing only ASCII characters is also a valid UTF-8 file
staplung 2 days ago [-]
Yes, but the box drawing characters in "ASCII" are all above 127 so they don't encode the same way. So that last AI generated sentence is basically false (or really misleading): ASCII files that consist only of characters in the lower 127 will also be valid UTF-8. But ASCII files that use characters above 127 will not be valid UTF-8.
Now, technically, ASCII only concerns the lower 127 characters. There's no single standard definition as to what the upper half of the byte space represents in ASCII itself so technically it's true that all valid ASCII files are valid UTF-8. By the same logic however, the box drawing characters are not ASCII. They're actually part of something called code page 437, which maps those bit patterns to box drawing characters. With other code pages they map to something else, often non-Latin characters or ones with accents.
So, the name ASCII flow is misleading and the the output options are too. ;-)
Basically, if the high bit is set in UTF-8 it indicates that more than one byte is needed to represent the code point.
ilovetux 2 days ago [-]
Granted, all of that is true, but GP specifically differentiated between ASCII and ASCII Extended, then GP went on to say that after choosing the ASCII option and pasting the text in a text editor on Mac it was reported as UTF-8, which I was pointing out would be true because if the ASCII option is chosen as opposed to the ASCII Extended option then what he ends up with (ASCII) is valid UTF-8 as reported by the text editor.
em3rgent0rdr 2 days ago [-]
Indeed, UTF-8 "was designed for backward compatibility with ASCII: the first 128 characters of Unicode, which correspond one-to-one with ASCII, are encoded using a single byte with the same binary value as ASCII, so that a UTF-8-encoded file using only those characters is identical to an ASCII file."
There are lots of similar projects to this that made top HN the past week. Is there a list of it? I was not logged in and I lost history but the previous one I just saw earlier today was quite nice, too!
Edit: Oh apparently it was "Monodraw". There was yet another one besides that. I am all up for such tools. What was the name of the one that allowed you to specify the diagrams using some custom DSL which in turn would generate the diagrams themselves?
dragonwriter 2 days ago [-]
> What was the name of the one that allowed you to specify the diagrams using some custom DSL which in turn would generate the diagrams themselves?
I think the recent one on HN that meets that description was D2 (https://d2lang.com/), though that description fits a lot of tools.
johnisgood 2 days ago [-]
Yes, it was D2! Thank you a lot!
Note to self: IIRC author said I can do it locally from browser now, should work without connectivity.
Are there no-mouse alternatives? I hate drawing lines and boxes using mouse and I wish there was a way to write the "structure" and have it generate the ASCII art for that.
Aissen 2 days ago [-]
It was on HN recently, the open source text-to-diagram tool d2 just launched an ascii output mode: https://d2lang.com/blog/ascii/
behnamoh 2 days ago [-]
This is really close to what I wanted, thanks!
jvinet 2 days ago [-]
Mermaid is great for this, though the output will be an image, not ASCII.
Cool concept, but I couldn't get everything to work; namely the "Select & Move" on individual boxes or lines. The select area and move did work, though.
ctenb 2 days ago [-]
It works for me, but differently than I first thought. You don't select and move line shapes as a whole, but only segments in a perpendicular direction
IceHegel 2 days ago [-]
Why is it blurry? If there is one thing I'd expect to be fast and sharp it's an ascii editor.
butlike 2 days ago [-]
Reminds me of an old program I had on Mac: Monospace. Loved that program.
2 days ago [-]
MT4K 2 days ago [-]
Doesn’t open in some regions because of Cloudflare.
I think monodraw is way better and at a one time price of $10, it's really is a fantastic piece of software.
stronglikedan 2 days ago [-]
too bad it's only for a not fantastic piece of OS
leohart 2 days ago [-]
While True, I believe the reason Monodraw doesn't expand is because the ASCII / TUI tooling economy is not rewarding. There are few users and even fewer customers who are willing to pay for ASCII/TUI tools.
We dive into the long tail quickly. I would be very surprised if Monodraw make more than 1M a year. At that revenue, it's going to be hard to expand into a multi-platform / web strategy (especially if your existing product is platform-locked).
Which is probably more useful anyway given that if it really outputted ASCII encoded line drawing characters, you'd end up with gibberish on a system that assumed UTF-8 encoding.
OP is asking what are the line-drawing characters encoded as e.g: "┌" and "┐".
Since the charset returned by the app is UTF-8, these will be interpreted and encoded as UTF-8 and not whatever "ASCII - Extended" means.
1: https://gist.github.com/numpad0/7880ad1e3ed32b91d1ccf9c3374f...
Also confirmed with hexl-mode (hex editor in emacs)
> The first 128 characters of Unicode, which are the same as the ASCII character set (characters 0-127), are encoded in UTF-8 using a single byte with the exact same binary value as their ASCII representation. This means that any file containing only ASCII characters is also a valid UTF-8 file
Now, technically, ASCII only concerns the lower 127 characters. There's no single standard definition as to what the upper half of the byte space represents in ASCII itself so technically it's true that all valid ASCII files are valid UTF-8. By the same logic however, the box drawing characters are not ASCII. They're actually part of something called code page 437, which maps those bit patterns to box drawing characters. With other code pages they map to something else, often non-Latin characters or ones with accents.
So, the name ASCII flow is misleading and the the output options are too. ;-) Basically, if the high bit is set in UTF-8 it indicates that more than one byte is needed to represent the code point.
https://en.wikipedia.org/wiki/UTF-8
Edit: Oh apparently it was "Monodraw". There was yet another one besides that. I am all up for such tools. What was the name of the one that allowed you to specify the diagrams using some custom DSL which in turn would generate the diagrams themselves?
I think the recent one on HN that meets that description was D2 (https://d2lang.com/), though that description fits a lot of tools.
Note to self: IIRC author said I can do it locally from browser now, should work without connectivity.
https://mermaid.js.org
How would what it generates be any different than what you wrote?
2022: https://news.ycombinator.com/item?id=30273299
2021: https://news.ycombinator.com/item?id=27536253
2018: https://news.ycombinator.com/item?id=16051428
2014: https://news.ycombinator.com/item?id=7085133
But now on web!
If you look at tooling companies annual revenue
- Atlassian: 1.4B - Jetbrains: 400M - Vercel: 100M - Supabase: 16M - Prisma: 10M (maybe?)
We dive into the long tail quickly. I would be very surprised if Monodraw make more than 1M a year. At that revenue, it's going to be hard to expand into a multi-platform / web strategy (especially if your existing product is platform-locked).