6 ms·
I realize it's super early, and this look interesting, but I'm unable to figure out if "cloud" in this case means: - Runs in a Browser for the purposes of edit
by michaelbuckbee 9y ago
I realize it's super early, and this look interesting, but I'm unable to figure out if "cloud" in this case means:
- Runs in a Browser for the purposes of editing files locally
or
- Runs in a Browser and we have a whole backend way of spinning up a VM/Docker/something for you to do things with as well (The new defunct https://www.nitrous.io/ https://www.nitrous.io/ did this so you could do things like remotely run pg, your Rails stack, etc.)
Both are good/bad for different reasons, mostly just curious.
- swsieber 9y agoI think the second, because of this line from the article: "So you would build one application and run it in both contexts. Theia even supports a third mode, which is a native desktop app connecting to a remote workspace." Which implies the browser version is connection to a remote workplace by default.
- hexa00 9y agoIt's the latter, the backend process (that exposes the filesytem etc) can be anywhere and the frontend (browser or electron) will connect to it over tcp. How you setup vms/docker or something is up to you however as long as the theia backend (nodejs) can run in it.
- simark1 9y agoThere's nothing that prevents you from doing the first one, if for some reason you prefer working in the browser rather than in some Electron application. For fully local scenarios, it is expected that it will be able to work like a standard editor: you just launch it and work, you don't have to be aware of this frontend/backend separation. The use case I am interested in is the following: at my company, code has to stay on central servers/infrastructure, you shouldn't clone it on your laptop. The only choices to work are either a graphical editor through a remote X session or a terminal-based editor, both having important shortcomings. Having a complete IDE (electron or browser) that edits files remotely be really nice in that situation.
- tbirdz 9y agoHow about emacs in tramp mode? Or even mounting the remote file system with sshfs and using whatever editor you had installed locally?
- hexa00 9y agoTheia does not only provide remote file access you also have LSP (language server protocol) for code-completion / docs ala eldoc , company) etc.. Almost all of Theia's features are based in the backend. The emacs equivalent would be like having emacs in daemon mode and a tcp based emacsclient locally. (I wish that existed) Also the idea is to have something a bit more modern and appealing to the mass of javascript/web devs out there. Theia is still far from replacing emacs, but as an emacs user myself and a Theia dev I hope I can bring what I love about emacs to Theia :)
- fiddlerwoaroof 9y agoTheoretically, couldn't you use socat and ssh tunnels to proxy the emacs server to another machine?
- hexa00 9y agoSo emacsclient/emacs deamon work with a tty, basically emacsclient opens a tty and sends it to the emacs deamon and it uses it to send output/receive input, so you really need to be local there's no way that I know to forward a tty on the network. The local socket opened is used only for configuration between emacs and emacsclient see: https://github.com/emacs-mirror/emacs/blob/master/lib-src/emacsclient.c https://github.com/emacs-mirror/emacs/blob/master/lib-src/em...
- hexa00 9y agoJust found out http://www.dest-unreach.org/socat/doc/socat-ttyovertcp.txt http://www.dest-unreach.org/socat/doc/socat-ttyovertcp.txt So it seems possible with socat indeed, I'll have to give it a try :) One problem that I see however is that emacsclient also forwards signals to emacs when the window changes size for example, I don't think that will work with socat