Codebase for my homepage.
git clone git://vcs.sapka.me/michal-sapka-me
Log | Files | Refs

commit d7460f8a3b384bdad7af7b9bb3202abacfe52044
parent 02bfc818596e53ffa60716021f9ba728ca51d0be
Author: d-s <ds@voyager.local>
Date:   Thu, 13 Apr 2023 23:41:11 +0200

feat: article for 2023-04-13

Acontent/2023/emacs-as-a-shell.md | 30++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+), 0 deletions(-)

diff --git a/content/2023/emacs-as-a-shell.md b/content/2023/emacs-as-a-shell.md @@ -0,0 +1,30 @@ +--- +title: "Emacs as a Shell" +category: "software" +abstract: My current understanding of Emacs +date: 2023-04-13T23:38:38+02:00 +year: 2023 +draft: false +tags: +- emacs +- shell +- unix +--- +Pavel Korytov writes in his [recent post](https://sqrtminusone.xyz/posts/2023-04-13-emacs/): + +> So over time, Emacs has become my programming environment, email client, window manager, knowledge base, and a lot more. I think I ended up using Emacs for almost as many things as possible; + +This is where I want to be in the near future. So far I've moved my development environment and email to Emacs. Next up are notes, RSS reading, and music listening. + +What I love about Emacs is the consistency between modes/packages. They accomplish widely different things, but the general control scheme is the same. It's great since all TUI programs I use tend to support Vim's way of doing things. Having it all inside Emacs changes the dynamic. I'm trying to think of Emacs as a shell rather than an editor. + +What Emacs really is, is a virtual machine running LISP code. Some say that Emacs violates Linux philosophy. I don't see it this way. Does shell violate it? It's also a way to run different programs. Emacs is an abstraction over real shell which adds some calm to it. It's a way to have an interactive layer over OS... which also does text editing. + +So, when you look at it this way, Emacs makes a lot of sense: +- It runs programs. Bigger packages, like Magit, are nothing short of real programs. +- It's scriptable. Elisp all the way! +- It allows for interoperability between programs. +- It runs above basic OS. You can replace your window manager with Emacs, but you need some sort of kernel. +- You can live entirely inside Emacs, just like you can live entirely inside a terminal. + +