I don’t think that’s a good idea. Pretty much all interaction with Emacs is
mediated through keybinds. There is no distinction between shortcuts and
fundamental behavior. Even ordinary typing is done by having each character on
your keyboard bound to self-insert-command
. Perhaps there is some way to nuke
the global keymap, but then you’re left with literally nothing. Besides, this
would not prevent various modes from adding their own keys anyway.
You should consider whether Emacs keybinds are actually in the way enough to be
bothersome. You can also keymap-global-unset
(or keymap-unset
) individual
bindings that you find problematic. I’d also consider delving into the Spacemacs
code to see how they implement their “vi only mode.”
Emacs’s regular clipboard is the “kill ring” which also allows you to retrieve any previously cut/copied text. It also has “registers” where you can store and retrieve snippets of text, which can be considered clipboards when used for this purpose. Registers can be referenced by any character you can type on your keyboard, including control characters like ^D.
This totals… a lot of clipboards.
My heart sank upon reading the word “electron” and rose again on the very next paragraph. I’m looking forward to seeing it in action.
I think that this is above all else the reason that I use Arch. Arch Linux makes creating packages trivial, basically just wrapping build instructions into a shell script template. Arch handles the rest. The build systems for deb or rpm packages don’t come close, and good luck rolling your own flatpak.
This allows me to use pacman for everything outside of my home directory. Pacman is practically the central feature of my computer, and it’s wonderful. I’m sure those Nix people can relate, though I guess my method is a bit less robust.
Xremap, despite the name, supports both X and Wayland, and can be used to move modifier keys around. Configuration is done with YAML but is otherwise pretty easy. I personally use it for full Emacs keybind emulation.
This might be the first time I’ve ever seen something productive happen in the Phoronix forums. I love that place. Go to any topic with more than about a dozen posts and it’s almost guaranteed to be a flame war. Genuinely one of the funniest places on the Internet.
Check out this one. It took like three posts!
I have done almost the opposite: moving as much configuration as I can into
use-package statements, even for built-in features like dired. You can
(use-package feature-name)
or even (use-package emacs)
in order to customize
the basics. use-package just provides much better organization than any schema
that I have ever been able to come up with on my own.
The reason that Doom is so portable goes beyond Linux and is an artefact of its development. id developed Doom on NeXTSTEP (i.e. Unix) machines and obviously targeted DOS. This is pretty unique among DOS games at the time and required id to write as much code as possible in a platform agnostic way. This means that the main engine does not care about where it is running and the usual DOS hacks are contained to DOS-specific files. In order to port Doom to a new platform, ideally one only needs to rewrite the system-specific implementation files for video, sound, filesystem access, etc., and this mostly holds true today. (These files are prefixed with
i_
in the Doom source).The Linux port is just one of many versions developed at the time. I don’t believe that it was commercially released; it was more of a portability test. The reason that the Linux version was chosen for the source release over the DOS version was because it didn’t rely on the proprietary DMX sound library that the DOS port used.