This is emacs running inside emacs inside emacs inside emacs.
Emacs vs vim? Why not both?

Edit: removed the top image from this body. This is my first post in this community.
This is emacs running inside emacs inside emacs inside emacs.
Emacs vs vim? Why not both?

Edit: removed the top image from this body. This is my first post in this community.
14 Comments
bulwark@lemmy.world · 30 pts · 2d
You said "I use vim," and I tremble.
It's not "vim." It's vi—no, wait, it's Neovim, technically, because the original vim is a closed-source fork of vim, which is a non-GPL free license, which means it's not even properly FOSS, which means your entire identity as a "vim user" rests on a legal technicality that most vim users have never read and would stop using if Bram Moolenaar actually enforced it, which he can't because of the way the vim project split in 2001, but you'd never know that because you peaked at :h i in third-grade sysadmin college.
Meanwhile, a mere coincidence of shared history lets you claim "modality" as a feature when it's a limitation inherited from 1976 line-buffered editing constraints on a PDP-11. You haven't "mastered the modal workflow," you've spent ten years cargo-culting a workflow that existed because there were no multi-key strokes. Ctrl-X Ctrl-S isn't "hard to learn," it exists because GNU Emacs was built for a different input model in 1978, and you keep reading the fact that Emacs is a fully extensible Lisp environment where the UI itself is a reconfigurable application as "bloat" because your entire editorial philosophy is "my editor should do one thing or I will file a bug report with the universe."
And you say "but vim starts faster," and I weep. You measure 40ms of saved execve and call it productivity while GNU Emacs sits in daemon mode since boot, already loaded, already aware, waiting for your emacsclient invocation, and you're stuck in a ssh session on a server you don't have root on, and of course vim is there, because vi is on every POSIX system, which is exactly the point of POSIX, which is exactly why GNU Emacs added ess, org-mode, treemacs, magit, and a working calendar to the same binary you called "IDE-adjacent bloat" while I was, what, organizing my life?
You know what? Fine. Use your vim. Save your file. :wq. Walk away clean. I'll be here, in a major I haven't switched out of since 1994, with C-x C-f on :w q, because the point was never the file.
…
Anyway. It's GNU Emacs, not "that one editor."
tal@lemmy.today · 4 pts · 2d
I don't think that emacs has a way to serialize the Lisp VM to disk or live-migrate it across machines, but there is
desktop-save-mode.https://www.gnu.org/software/emacs/manual/html_node/emacs/Saving-Emacs-Sessions.html
I've never done it, but I suppose that if one migrated an emacs desktop file, it might be restorable on another host. So...technically, upgrading to a new computer would involve closing emacs, but it'd be sorta like hibernating and restoring a Linux system or something.
NotSteve_@lemmy.ca · 3 pts · 1d
Hah, fair play but have you considered that I may actually be using Helix. What say you now, then?
boob_warbler@fedinsfw.app · 2 pts · 2d
This is something Stallman would say...
tal@lemmy.today · 19 pts · 2d
Note that you can also use emacs as your window manager, if this is running in Xorg, so your emacs window can be in emacs too.
https://github.com/emacs-exwm/exwm
There's some work on a Wayland compositor, but that's not as mature.
https://codeberg.org/ezemtsov/ewm
EDIT: I guess technically you could use Wayland, EWM making emacs the compositor, then use xwayland in that, with EXWM making emacs the window manager in that, in which you have an instance of X11 emacs running which itself is running...
EDIT2: No, wait. I don't know if you can run a window manager directly in xwayland.
considers
You could run it in Xephyr in xwayland, though, and you can run a window manager in that. So Wayland->emacs(EWM)->xwayland->Xephyr->emacs(EXWM)->emacs(X11)->emacs(terminal)->emacs(terminal)...
EDIT3: There have been people who have run emacs on the Linux kernel on bare metal, as the kernel's initd, but it's not very functional like that. Someone would have to go out and reimplement systemd in emacs, and that isn't a thing.
EDIT4: Oh wait, apparently I am out of date.
https://github.com/emacs-os/el-init
EDIT5: I think the real test is whether one can play this video in
mpvusing the libcaca target in terminal emacs using one of emacs' virtual terminal software packages in terminal emacs in X11 emacs in an emacs-window-managed Xephyr X11 display server in a Wayland environment with an emacs-driven compositor managed by emacs via el-init running directly on the Linux kernel.EDIT6: Oh, wait. Apparently someone also added KiTTY Graphics Protocol and Sixel support to terminal emacs in the last two months.
https://github.com/cashmeredev/kitty-graphics.el
So theoretically, I suppose you might be able to avoid the libcaca target and having to go through text even in the terminal emacs instances, and have the video playing graphically. You could potentially play that video in
mpv(KiTTY Graphics Protocol target,$ mpv -vo kitty) running in terminal emacs itself running in terminal emacs using KiTTY Graphics Protocol running in X11 emacs being window-managed by emacs (EXWM) running in Xephyr running in xwayland being composited by emacs (EWM) running in Wayland on a system with emacs as initd (el-init) on the Linux kernel on bare metal.EDIT7: Bonus points for controlling the
mpvinstance via emms.https://www.gnu.org/software/emms/
tal@lemmy.today · 2 pts · 2d
There should totally be an emacs package to generate a Kickstart file to feed an Debian or Fedora or something ISO that would automate setting all this up in one go on a machine so that people don't have to go outside emacs to get this sort of thing set up.
tal@lemmy.today · 12 pts · 2d
The goal was to combine all of the ease of use and approachability of vim with all of the ease of use and approachability of emacs.
moth@anarchist.nexus · 3 pts · 2d
moth wouldn't turn moth's back on anyone who said that with a straight face
tal@lemmy.today · 12 pts · 2d
You do have evil-mode.
https://github.com/emacs-evil/evil
Treczoks@lemmy.world · 10 pts · 2d
Booting Emacs...
Loading Linux.el...
provectus@lemmy.ml · 2 pts · 2d
Executing PID 1...
Loading init.el...
FuglyDuck@lemmy.world · 6 pts · 2d
If your emac is running… you should probably go catch it.
Agent641@lemmy.world · 2 pts · 2d
What is it used for?
provectus@lemmy.ml · 2 pts · 1d
Anything but editing text/s