people who have gone from neo/VI/m to Emacs or wise verse - what made you swap? what made you then either stay or revert?

#editorwar #editorwars #vi #vim #neovim #emacs

I switch back and forth between vi and emacs.
Vi is nice if you are into "Unix IS the IDE".
It starts instantly. You use the shell for shell
things.

Emacs is nice to do EVERYTHING in.
When I use emacs I leave it running for
days. It's especially nice for programming
any kind of lisp.

Emacs is definitely more of an ideal for using
as a pure programming editor, but i have
become more and more unix pilled so I
tend to use vi more lately.

An example is auto formatting. Emacs is great
at this IN the editor. Press tab and emacs will
do the correct thing indent wise.

In vi I have to find an external program
that formats (like gofmt or indent) and
pipe the buffer contents out to that
program and back. This is made easier
by using map commands to map keys
to do the indenting. But shows how emacs
and vi differ basically.
Ramin Honary: Emacs fulfills the UNIX Philosophy (overview)

@tusharhero thanks for the shout-out!

“people who have gone from neo/VI/m to Emacs or wise verse - what made you swap? what made you then either stay or revert?”

@hell the article mentioned by Tusharhero is a little long, so to summarize it in a way that more directly answers your question: I basically realized that Emacs was not a text editor, it was a programming language designed for text editing that came with a built-in text editor and IDE. And the built-in editor and IDE are setup so that you don’t really need to learn the Emacs Lisp programming language to use it.

I had become frustrated with my editor (Vim) my terminal multiplexer (Screen or TMux), my shell (Bash), and many of my other CLI tools all being programmed, scripted, and/or configured in different languages. For example, when trying to get my shell to notify my editor that a build process completed, I was able to program Vim and my shell scripts to both use inotify or similar tools to do so, but I just thought it was a little ridiculous that I had to hack together solutions to these problems.

So I started thinking about ways of using the CLI with just one programming language and one runtime. Then it hit me: Emacs is exactly that: a combination of Tmux, Vim, Bash, and dozens of other tools all programmed in Lisp. Once I realized that, I decided I didn’t care how hard it was to use, it was exactly the tool I needed so I had better just learn how to use it. And it turned out not to be too hard anyways.

The best part was, I hardly ever need to write my own tools anymore because I was always able to find some Emacs Lisp code somewhere that solved practically any problem I had ever come across.

If you’d like to know more, then yeah, read my article, or ask me anything you’d like here on the fediverse!

#editorwar #editorwars #vi #vim #neovim #emacs

Ramin Honary: Emacs fulfills the UNIX Philosophy (overview)

@ramin_hal9001 wrote:
«And the built-in editor and IDE are set up so that you don’t really need to learn the Emacs Lisp programming language to use it.»

That's certainly true, but moreover you _have the option_ to learn and use Lisp as well _and_ to _gain a lot_ from that _in addition to_ the rest.

And then access to executing Lisp programs is highly integrated with the rest.
For example, you can insert an Emacs Lisp fragment into a plain text buffer (a text file opened for editing) and execute it right there with a trivial command.
It can change the same buffer or it can do a lot of other things.

And it goes on.

#Elisp
#Emacs
#EmacsLisp

@hell @tusharhero

@vnikolov @ramin_hal9001 @hell @tusharhero I have a function that is one of my most used functions which puts commas into numbers into a buffer. I just have a much stronger grip in the sizes of numbers with the commas and so I can add this in for my reading pleasure