Re:MapSCII – The Whole World in Your Console
by gregsadetsky on Tuesday May 04, 2021 @06:31PM
(#27043680)
It's such a beautiful project. The telnet access, the supported zoom and scroll gestures...
I once heavily hacked the (very!) well organized and readable code to send the vector features -- the roads -- to an Arduino that was generating a TV signal. I actually used two Arduinos, one showing text labels only, the other one for line features.
MapSCII was programmed to slowly pan between two of my homes (between Quebec City and Montreal), along the highway connecting these cities. The pan was in real time -- 300km in about 3 hours. I've been going back and forth between these cities for many years. This art piece, named "Contrecœur" (a city name along the way, and also "against one's heart" in French) was a digital contemplative take on this.
Re:MapSCII – The Whole World in Your Console
by kzrdude on Tuesday May 04, 2021 @07:15PM
(#27044035)
I've recently been looking into terminals that can show images properly - and it's looking more widely supported and maturing than I thought.
Is there anyone else also looking into the same thing?
It's promising but my main problem is that the multiplexers tmux and screen don't really support the various protocols.
There are some terminals that support images using various protocols:
- Xterm - Sixel (but not built with it in your distro, maybe)
- Gnome-terminal/libvte terminals - Sixel - not released yet/not available to me, so unconfirmed
Using this support one can for example configure IPython to render images in the terminal inline using its mime-type hooks.
It would be great if we could slowly move terminals forward with this (even if I understand the technology is quite cumbersome to work with). Imagine having neovim, IPython or jupyter notebooks etc all available with image support in a multiplexed terminal.
Re:MapSCII – The Whole World in Your Console
by dohliam on Tuesday May 04, 2021 @11:35PM
(#27045888)
Given the terminals you listed above, I assume you are referring to something very specific when you say "show images properly". However, there is a lot more flexibility to use the terminal of your choice (not to mention compatibility with other programs like tmux) if you don't need pixel-perfect reproduction.
For example, I made an image browser for the terminal [0] based on Terminal Image Viewer [1] (for most image formats) and catimg [2] (for animated GIFs) that doesn't require installing a new terminal. It works great with tmux and SSH and I use it all the time for this purpose (though I didn't initially expect to find it so useful).
YMMV, but I have found that the image quality provided by TIV for example is more than sufficient for the kinds of use cases I tend to have when in a console session and needing to quickly view one or more images. Mostly that involves quickly identifying a particular image file among others in a directory, but it's so much easier to not have to leave the terminal and change contexts that it's often more convenient to reach for it for more general tasks too. Any tradeoff in quality is more than made up for in my view by the convenience of being able to use my regular terminal.
Re:MapSCII – The Whole World in Your Console
by themk on Tuesday May 04, 2021 @07:41PM
(#27044260)
Googles hterm also supports the iTerm2 protocol. Can be good for embedding a terminal in a slideshow presentation.
If your language has a REPL with appropriate control over the display of objects you can get a pretty great experience. I used it to get familiar with Haskell's diagrams and JuicyPixel libraries and it was great[0].
Re:MapSCII – The Whole World in Your Console
by kzrdude on Wednesday May 05, 2021 @08:00AM
(#27048810)
Yes, I'm looking for something that can display plots like a jupyter notebook could so the low resolution solutions don't really cut it. Maybe it's good as a fallback, though..
Re:MapSCII – The Whole World in Your Console
by themk on Friday May 07, 2021 @01:55AM
(#27072698)
This is using the iTerm2 protocol from the REPL. So it's high resolution. For example all the plots in this Haskell tutorial [0] can be plotted in your terminal from the REPL while you are developing and the appear as they do in the PDF.
Re:MapSCII – The Whole World in Your Console
by ant6n on Tuesday May 04, 2021 @05:40PM
(#27043232)
That video zoomed in to a place 200m from my house (near C-Base, Berlin). It felt totally natural (of course I'll zoom to my house!) and only when it deviated slightly from my actual home did it seem weird (wait, It's not me who zoomed to my house).
Re:MapSCII – The Whole World in Your Console
by kderbyma on Tuesday May 04, 2021 @05:36PM
(#27043205)
this is great. I have been looking for map alternatives to google and apple. this is great for those times when all you have is a shell and no Gui. very nice. will bookmark and remember this.
Re:MapSCII – The Whole World in Your Console
by tomcooks on Wednesday May 05, 2021 @02:57AM
(#27046970)
When on a bike ride between Spain and France but you only have 2G connection from your termux session to the tmux session running mapscii on your VPS. Google maps would timeout and you can't download a billion gigabyte map file.
Re:MapSCII – The Whole World in Your Console
by anthk on Wednesday May 05, 2021 @06:31AM
(#27048253)
Just use OSMand from FDroid and download the offline maps. The just use the GPS.
That's what I did with my GF at the French Basque Country in order to avoid paying roaming fees.
The map files for a few provinces don't occupy more than few GB's. I think the whole map of Spain was about 3GB.
Re:MapSCII – The Whole World in Your Console
by jmiskovic on Wednesday May 05, 2021 @10:09AM
(#27050017)
It's a subgenre of games that has some combination of roleplaying, ASCII graphics (or low resolution bitmaps without animation), procedural content generation and perma-death. Most well known are NetHack and Dwarf Fortress.
People tend to enjoy them for two very different reasons. First is that focus on things other than graphics tends to improve depth and re-playability. Second is that without graphics, the player's imagination plays large part in building world. It's bit more like reading a book than watching a movie.
I once heavily hacked the (very!) well organized and readable code to send the vector features -- the roads -- to an Arduino that was generating a TV signal. I actually used two Arduinos, one showing text labels only, the other one for line features.
MapSCII was programmed to slowly pan between two of my homes (between Quebec City and Montreal), along the highway connecting these cities. The pan was in real time -- 300km in about 3 hours. I've been going back and forth between these cities for many years. This art piece, named "Contrecœur" (a city name along the way, and also "against one's heart" in French) was a digital contemplative take on this.
A video, if anyone's curious:
https://www.youtube.com/watch?v=QrTbg49Tx7k
@rastapasta, thanks a lot for your work!
It’s not great
It's promising but my main problem is that the multiplexers tmux and screen don't really support the various protocols.
There are some terminals that support images using various protocols:
- iTerm2 (Macos) - bespoke protocol
- Kitty - bespoke protocol
- Mlterm - Sixel and iTerm2 protocol
- Wezterm - iTerm2 protcol (and potentially Sixel too)
- Xterm - Sixel (but not built with it in your distro, maybe)
- Gnome-terminal/libvte terminals - Sixel - not released yet/not available to me, so unconfirmed
Using this support one can for example configure IPython to render images in the terminal inline using its mime-type hooks.
It would be great if we could slowly move terminals forward with this (even if I understand the technology is quite cumbersome to work with). Imagine having neovim, IPython or jupyter notebooks etc all available with image support in a multiplexed terminal.
For example, I made an image browser for the terminal [0] based on Terminal Image Viewer [1] (for most image formats) and catimg [2] (for animated GIFs) that doesn't require installing a new terminal. It works great with tmux and SSH and I use it all the time for this purpose (though I didn't initially expect to find it so useful).
YMMV, but I have found that the image quality provided by TIV for example is more than sufficient for the kinds of use cases I tend to have when in a console session and needing to quickly view one or more images. Mostly that involves quickly identifying a particular image file among others in a directory, but it's so much easier to not have to leave the terminal and change contexts that it's often more convenient to reach for it for more general tasks too. Any tradeoff in quality is more than made up for in my view by the convenience of being able to use my regular terminal.
[0]: https://github.com/dohliam/console-image-browser [1]: https://github.com/stefanhaustein/TerminalImageViewer [2]: https://github.com/posva/catimg/
https://codeberg.org/dnkl/foot
If your language has a REPL with appropriate control over the display of objects you can get a pretty great experience. I used it to get familiar with Haskell's diagrams and JuicyPixel libraries and it was great[0].
[0] https://hackage.haskell.org/packages/search?terms=iterm-show
[0] https://lancelet.github.io/space-workshop/notes.pdf
Really like the Braille Console hacks.
Genuine question: like when?
* Installing a new OS, some installers are cmdline only
* Server console
* If you've broken your GUI installation and need to fall back to the shell
I will say though: I don't know if I've ever needed a map in any of these situations :)
That's what I did with my GF at the French Basque Country in order to avoid paying roaming fees. The map files for a few provinces don't occupy more than few GB's. I think the whole map of Spain was about 3GB.
In Europe you don't need to worry about roaming, if you have and European SIM.
[0] https://n-o-d-e.net/zeroterminal3.html
https://old.reddit.com/r/cataclysmdda/comments/n32lj3/real_w...
People tend to enjoy them for two very different reasons. First is that focus on things other than graphics tends to improve depth and re-playability. Second is that without graphics, the player's imagination plays large part in building world. It's bit more like reading a book than watching a movie.
[1] https://github.com/rastapasta/mapscii/blob/master/src/Braill...
The telnet server zooms and scrolls more smoothly than Google Maps for me.