5 ms·
“The authors intended redisplay to be used on text terminals over slow links. Emacs, to this day, has code that activates if it thinks you’re running on a conne
by mapgrep 7y ago
“The authors intended redisplay to be used on text terminals over slow links. Emacs, to this day, has code that activates if it thinks you’re running on a connection slower than 2600 baud.” https://m.facebook.com/notes/daniel-colascione/buttery-smooth-emacs/10155313440066102 https://m.facebook.com/notes/daniel-colascione/buttery-smoot...
I feel like a grumpy fossil for asking this, but if your problem is “Sometimes you have to use non-personal computers where it's not possible/undesirable to install desktop Emacs,” why not run emacs the way it has been run in exactly those sorts of situations for almost 50 years? Remotely, via shell?
Is the hat trick here that by stuffing emacs into a docker container and accessing it over the web you can consume like 10,000 times the energy and resources of just running it over ssh in a terminal window as God intended ?
Sorry sorry that was a rude question. Now please get off my lawn.
(Honestly though I ran emacs for 5+ years entirely on an overtaxed Sun workstation shared with dozens if not hundreds of other students, over ssh, and it was fine! I believe I even had color working. I began at 14.4kbps and went from there. I saw the machine once, maybe twice.)
- Spivak 7y agoBecause “a computer you don’t control” is almost certainly going to have a web browser available but not a SSH client or terminal. I have personally implemented Linux workstations where access to the terminal or any shell is prohibited.
- yjftsjthsd-h 7y agoSSH and terminal have long since been ported to browser, fwiw.
- nambit 7y agoSometimes I'm playing a video game on steam and would like to have the steam overlay browser to do some work while I respawn.
- pcr910303 7y ago> why not run emacs the way it has been run in exactly those sorts of situations for almost 50 years? Remotely, via shell? You know what? This project is doing exactly that; using Emacs remotely, via a terminal (not a shell BTW, shell is just a name for some specific language’s interpreter, that is good at launching sub processes). It’s using the gotty[0] library, which is an implementation of the tty[1] in the browser. It’s a natural extension; ttys have been ported for a few decades, starting from teleprinters[2] to text terminals[3] and terminal emulators[4]. [0] https://github.com/yudai/gotty https://github.com/yudai/gotty [1] https://en.m.wikipedia.org/wiki/Terminal_emulator https://en.m.wikipedia.org/wiki/Terminal_emulator [2] https://en.m.wikipedia.org/wiki/Teleprinter https://en.m.wikipedia.org/wiki/Teleprinter [3] https://en.m.wikipedia.org/wiki/Text_terminal https://en.m.wikipedia.org/wiki/Text_terminal [4] https://en.m.wikipedia.org/wiki/Terminal_emulator https://en.m.wikipedia.org/wiki/Terminal_emulator
- j88439h84 7y agoGreat answer.
- 0x445442 7y agoBut the migration from teleprinters to text terminals to terminal emulators was in one direction. I think the comment's point is terminal emulator to terminal emulator embedded in a web browser is a regression.
- burke 7y agoIf you squint hard enough, the browser is just a different location for the same old crufty TTY subsystem that normally lives in-kernel.
- karlicoss 7y agoThese are all fair points, thank you! Primary reason is that computers where I run it might not have shell and emacs installed in the first place, so I can't connect to a remote port. However you got me thinking: do you know any emacsclient implementations that run purely in browser? Presumably that would be not that hard to implement and will make more sense. Although I still think I'd not expose emacs daemon to the outside: it's basically shell, so if I was doing it, I'd dockerize it anyway.
- jjuel 7y agoDoes this require Docker on the local machine or the remote machine? If it requires it on the local this seems like a non-starter still for a lot of people. If I can't ssh from that machine what are the odds it has Docker or I can install Docker?
- karlicoss 7y agoDocker only on remote host, yep! You're right, if you can run Docker locally you've basically got root permissions anyway.
- wdr1 7y ago> I feel like a grumpy fossil for asking this, but if your problem is “Sometimes you have to use non-personal computers where it's not possible/undesirable to install desktop Emacs,” why not run emacs the way it has been run in exactly those sorts of situations for almost 50 years? Remotely, via shell? Ugh. So I did this. Not recently, but in the late 90s/early 2000s. Our startup was moved across the street from its incubator (Idealab). WiFi wasn't a thing, broadband was far from mainstream, and most generic office space wasn't wired for networking. So we had a microwave link (I think) connecting our workspace to fat pipes across the street. For anything interactive, it was awful. Waiting >500ms for each keystroke to appear is a very difficult experience. Thankfully after a week or two, I discovered TRAMP mode.[1] [1] https://www.emacswiki.org/emacs/TrampMode https://www.emacswiki.org/emacs/TrampMode