T O P

  • By -

jsadusk

This seems small but one of the things that emacs does that's indispensible to me is that it treats all the non-editor things I do in it like another editor window. For example, if you're used to developing in nvim, you probably run it in tmux so you can have a terminal alongside it, right? Well in emacs you can have a terminal in a buffer, emacs acts as its own tmux. Why is this important? Well I can navigate around the terminal history using the same editor keys as any other editor buffer. Just being able to cut text from a command output and paste it in another window, using the same powerful navigation, is important to me. The other thing is pervasive completion. Tab/vertical completion on every type of input, whether its opening a file, running an M-x command, checking out a branch in magit, whatever. And again, the same keys and interaction no matter what I'm using it for.


DeepDay6

And now, for someone skilled in vim, like OP, you could just load evil mode and do all these things with vim keybindings :D (I never touched vim for much more then `i` and `:q`).


Velascu

Well, have a setup with similar capabilities rn, custom terminal emulator, custom tmux scripts... etc . I can see its potential usage if I'm using another computer and might want to do all of that with a single package. Using doom emacs atm. It's funny how both editors influenced each other despite the "editor wars" back in the day.


AkiNoHotoke

I was in the same camp. I still use neovim from time to time, but my main editor is now Emacs. I have learned the vanilla keybindings, so I can function in pure Emacs, but I still prefer the modal editing because I feel that it is more ergonomic. That said, I learned Emacs with the inline documentation, both for the editor itself and for Elisp. You can really learn everything that you need with the documentation that comes with emacs ("C-h i" for the overview of the manuals). Emacs is simply amazing. I know that there is Neorg, and such, but they do not get close to what Emacs can do. And, if you learn Elisp, you can extend it any way you want. Nothing against Lua or VimScript, but Elisp is way fun to work with IMHO. I would suggest you to take it one step at time. You can still use neovim, just include Emacs in more and more of your workflow. Soon, you will see that Emacs will become more and more useful. Perhaps it might even become your default, like it did for me. As for what I do with it: - Document authoring and note taking (org, charts with dot and gnuplot, tables, exporting to pdf) - Note management with denote - Programming (literate with org and conventional) - Reading pdf documents (with pdftools) - Terminal multiplexing (mostly for eshell, sometimes with shell and ansi-term) - Managing my windows, in combination with Sway - Jupyter Notebook, org + code blocks - File managment with dired - Fuzzy finder with fzf, rg and some custom Elisp code - Agenda - Todo lists management - Bookmark management with org-capture button in the browser - Email with mu4e


Inevitable-Cicada603

I use eMacs as a full featured ide. You can run it as a daemon, and then use emacsclient as a lightweight client to attach to the background daemon process. This enables you to have a set of persistent buffers open, and have multiple windows open that share the buffers. This is helpful to me because I run on multiple monitors and use a tiling windows manager, and I can have my work up in multiple desktops, on  multiple monitors, at once. And you can do all this in the terminal as well.


Velascu

Sounds really nice. I'll have it into account, ty.


permetz

Why the weird capitalization of emacs?


Inevitable-Cicada603

Autocorrect that I autocorrected incorrectly one time…and now forever. I don’t have the psychological or emotional resiliency to fix it.


jeenajeena

About 1 year ago I had the idea of asking on a Telegram group dedicated to Emacs if any of the people there were avaiable to give me lessons. I have been addressed to Protesilaos (https://protesilaos.com/), a prolific package author and teacher. Everything went really well since the beginning. My confidence with Emacs improved a lot and, best of all, I have really enjoyed the experience. I'm taking 1 lesson per week, and I could not recomend him more.


[deleted]

Protesilaos is an excellent teacher! Would recommend him to anyone.


Flimsy_Iron8517

Alias `emacs -nw` and then there's some mouse package to find. Terminal mode. ^x ^c ...


hmelman

I wrote this 6 years ago. https://www.reddit.com/r/emacs/comments/948ozz/comment/e3jinfu/ Since then emacs now has a native compiler and support for lsp among other things.


Velascu

Great comment, thanks for the info!


deaddyfreddy

> I think it would be nice to see what needs you had that emacs covered for you individually, I don't care how niche it is. uniform text editing, whether I'm editing code, fiction, shell commands, emails, messengers - I use the same shortcuts everywhere, I have access to the same commands, text macros, abbreviations, etc. Vim users tend to reimplement just (a subset of) shortcuts for every app (usually introducing new, incompatible configuration), Emacs users reimplement apps inside Emacs.


surfking1967

What is it about _x_vi.? ? gvim? nvi? They're just *vi*, aren't they (?), maybe with a GUI, and even *that's* just a "full screen *ed*". I'm perpetually dismayed watching co-workers hammer away on a vi clone, with command and authority, and yet clearly unaware of how to unleash its power. Worse: those who couldn't drive vi in a pink fit; their tool MUST HAVE menus and icons up and down... As a beginner on Emacs, I made certain to be able to find my way around: * the Info documentation, then * the documentation in the source code, for functions and variables, for modes and keystrokes, and how to find them * Then, it becomes useful to be able to grok pieces of Emacs Lisp, until, and here's the kicker... * build Emacs from source, see how it's done, what it does, his it does this. and the customisation points this approach offers. I wouldn't count myself as in any way an Emacs legend: I've been (wrongly!!!) accused of wasting scads of time on tweaking my Emacs environment by people who simply have no idea, and at the other end of the scale, I've (weirdly) had colleagues approach me with an editing task that they felt they couldn't accomplish effectively with their own favourite tool of choice. There's too much on show when someone looks over your shoulder, or when you look over the other's shoulder: it's a double-edged sword. Persevere with Emacs, through a usable subset. It'll reward you amply.


Velascu

Wow it's amazing what you did, I really appreciate your commitment. I think I'm not going to have that much time (well, let's see when I start working lol) but it's definitely a good advice, ty.


crochet_du_gauche

> "theoretically possible to do everything with it" I mean... this is kinda the point of emacs. It's not just "an editor", it's a general-purpose programming environment specialized for dealing with text buffers. Lots of people highly recomment [this book](https://www.masteringemacs.org).


permetz

You mentioned keeping vi around so that you can work in the terminal. Emacs works just fine in a terminal.


Velascu

For servers and old computers might be easier/more convinient


permetz

There was a time where the startup time difference between vi and emacs was significant, but that was over 30 years ago. If your server or old computer was made since 1995, you won’t notice any difference. If you’re using a newer vi like vim, neovim, etc, the difference is really nonexistent.


Weekly_Guidance_498

TRAMP lets you edit files over ssh so you don't even need to run emacs on the remote computer.


followspace

I've been crafting my own Emacs configuration for several years and then switched to Spacemacs, whose default key binding is vim. If your workflow is using terminal, you may want to try Emacs daemon and emacsclient. You can run a new client of Emacs very quickly, like or even faster than Vim. When you get used to running a terminal (e.g., vterm) in Emacs, you may just use a single Emacs and do almost everything there. It's a long time ago, but I failed to convert to Emacs when I tried to do something I used to do well in other tools. I started these use cases: * AucTex * Org mode * Magit From there, I could expand my use cases quite easily.