4 ms·
So, I agree, somewhat. I am a long-time Emacs user. Occasionally, editing/macros/etc can save a LOT of time, and makes it much easier to make some changes whic
by JoelMcCracken 6y ago
So, I agree, somewhat.
I am a long-time Emacs user. Occasionally, editing/macros/etc can save a LOT of time, and makes it much easier to make some changes which I might not decide to do.
What I find more important however is the effective window/buffer management. Being able to manage my screen real-estate is killer; being able to do everything within one "world" is really valuable. One of the things I find most valuable is that I run my shell within Emacs. This lets me keep my flow going instead of switching context and perhaps getting distracted. I can watch the output of tests etc in one corner of my screen and edit files etc in the other ones. And because its quick to switch buffers, I can more easily reference various files for what I am doing.
Basically, the literal time it takes to type is not the big benefit, but that it allows me to reduce my cognitive overhead of doing everyday, boring things like resizing windows, looking up symbols/finding definitions etc. This makes it easier to focus on my task at hand and not get distracted by all of the mundane tasks I would need to do otherwise.
- dj_mc_merlin 6y ago> What I find more important however is the effective window/buffer management. Yes! I cannot imagine how my life looked before `C-x b` (switch buffers in helm). However, I still have an actual terminal emulator open the entire time for serious stuff. Eshell is not compatible with a lot of programs, term/ansiterm are ok but not quite as good as a dedicated terminal. I get around having to context switch by using virtual desktops (KDE). I have Shift-F1 bound to the desktop with only emacs, and Shift-F3 to my terminal. Works beautifully. Rather than try to use a terminal in emacs I've found it more useful to use an solution designed for emacs, i.e git vs magit.
- smabie 6y agoEshell is a really great shell and a lot of full screen nurses apps can be replaced with an Emacs equivalent. The ability to use elisp in pipes and stuff is a game changer
- JoelMcCracken 6y agoI’ve never been able to make eshell part of my workflow. I wonder if you would share more info
- smabie 6y agoSure, so basically I keep a small eshell window at the bottom of my current frame at all times. Full screen commands like man, info, or less will automatically open a new Emacs buffer. You can seamlessly mix and match shell constructs and elisp, allowing you to leverage elisp and traditional shell scripting together. It also makes it really easy to open a file from eshell since you're already in Emacs. Instead of things like top, I just use Emacs process viewer. For full screen apps that absolutely have no Emacs equivalent (quite rare), I have a term buffer that I occasionally use. You should check out a list of eshell features, its much more powerful than even zsh. Also I use company-mode for command and file completion, which is a lot nicer than zsh 's completion method, for example. Once you get used eshell, it's hard to go back. I think you should be able to use eshell+Emacs for almost everything, and for me at least, I find the experience quite nice.
- deleted 6y ago[deleted]
- JoelMcCracken 6y agoI used both of those for years but recently switched to vterm. I highly recommend it. I do keep a terminal open for a variety of reasons (and some curses apps don’t work perfectly in emacs) but I probably only use it every other work day.
- em-bee 6y agoi get the same effect running everything in tmux. i don't know about emacs, but out of the box switching buffers is easier/faster in tmux than in vim (maybe i need to learn more vim).
- JoelMcCracken 6y agoYeah you can emulate this behavior in other ways. You could also use vim splits, a tiling window manager for some of it, etc. That’s fine. I would probably argue that it’s easier to get there with emacs, and having one language is a lot nicer than having to learn vimscript, whatever tmux uses, etc, though neovim makes that a totally different discussion because iiuc you can script with many different languages, and emacs lisp, while pretty decent, isn’t great. Probably the biggest issue facing these environments at this point is that need stronger types to scale better. Doom emacs helps with this because it locks packages down, but for example spacemacs was always broken for me. So eventually I switched. Anyway if you want to try it I’d recommend doom emacs. It uses vim style bindings so your muscle memory won’t atrophy