I have been using Emacs for two years. I am not a programmer. But Emacs opens the opportunities for me to discover to the true capability of a computer. The tinkering nature of Emacs has forced me to learn all sort of staffs. I am even living in EXWM. Without Emacs, I would not even be close to the current me. The reason I started using Emacs was stupid. I was a Mac fanboy, and I thought Emacs has something to do with Mac. This is the best misunderstanding in my life.
I used vim for probably 15 years before getting into emacs. The biggest problem with Emacs is the learning curve (and the vim curve is pretty big, but tiny in comparison). The way I got into it was to spend a day watching the emacs from scratch videos from system crafters. It is the most fantastic tutorial for making emacs what you want it to be. Your anaolgy was fantastic and entirely accurate. Love your videos, keep up the good work.
I'm going down the same path... A friend of mine is really into Emacs, and convinced me to give it a crack mentioning system crafter videos. I'm going to learn C++, and I would use Emacs as IDE in the first place for that
As a devoted Emacs user, I definitely agree with the key message here. (Though obviously I think you haven't fully covered Emacs' strong points, being an Emacs fan!) vim is a text editor. That's what it does, that's what it's good at (to the point that people copied it into Emacs :) ). Emacs, on the other hand, is essentially an OS, in the sense that it's a wrapper for the computer's functionality which (mostly) hides away the stuff underneath it (i.e. Linux, MacOS, etc.) under a more effective interface. As long as you're working with "things that can be represented as text", Emacs is the most efficient, generalizable, and integrated system you can find. This is why it has so many packages doing so many different things: not only can it accelerate a variety individual tasks, but the more you do in emacs, the more you can integrate all those tasks together. Examples of the benefits of this approach include: Share autocomplete, search, and other packages across your feeds, notes, code, and terminal Write automation scripts that extend along your entire workflow without having to fiddle with linking multiple different frameworks Manage files in your projects with an interface better than the OS file manager and often more convenient than console commands (not to mention easily integrated with them) Use org mode for editing markup text with versatile links (to files, sites, other org notes, etc.), literate programming using either custom plugins or the many default languages (Python, Lisp, etc.), exporting to a variety of formats (LaTeX, HTML, etc.), et cetera. ...and so on. On the other hand, Emacs does have a rather steep learning curve. Until you're comfortable enough with it to do large portions of your work within Emacs (and preferably using a configuration that allows you to interface easily with your type of text, and/or a config like Doom/Spacemacs which provides built-in functionality for most common subjects), you're not really getting any more than you would with e.g. vim (as mentioned, vim's screen-key-user loop is actually somewhat superior imo, judging from my experience with the emacs port). There's also the use of Emacs Lisp ("Elisp") as a configuration language. It's a good decision overall, allowing for on-the-fly configurability for literally everything but a few C functions; and *personally* I've found lisps easier than any other language I know, especially with minor editor support (just parenthesis-based traversal is usually enough). But I've known people who just can't change the way their brains are trained to process parentheses from other languages, which makes any lisp language quite difficult for them to learn. And if you don't eventually become comfortable with reading Elisp and occasionally writing some glue code, what you get out of Emacs is limited to the features added by package maintainers, which (while quite a broad range) gives you little ability to customize for your particular use-cases. Personally, it took me a few days to learn enough Emacs (Doom Emacs, to be specific) to use it in combination with a modern IDE, but 3-4 months to get to the point where I was actually better off living (almost) entirely in Emacs than just mixing vim with IDEs instead (as someone who wasn't particularly familiar with either tool before running this experiment, and who made efforts to learn a bit of both afterwards). If you have that level of slack and are able to approach it with the proper mindset, Emacs is a **great** investment to improve your overall workflow. But if you're tight on time and just need a really good text editor, just using vim is probably the better option, with the added bonus of the base version being present on most machines and very easy to work with for quick reads and edits.
Emacs vs vim is such a weird comparison. If ever there was an apples to oranges thing, this is it. If vim is an apple, then Emacs is like an industrialized country that produces oranges but also has apples. If comparing them solely as text editors, no one in their right mind would say Emacs is better. Vim is simply the world's best text editor. But boy oh boy, Emacs is so much more. Vim is a text editor, Emacs is a lifestyle 🤗
One huge reason that made me use Emacs is it's support for bidirectional text (Which you absolutely require if you're going to write any Arabic Hebrew or Persian). After decades of personal computing, the state of bidi text in text editors is still a mess. As far as my search has resulted only Emacs has per paragraph directions. Because a lot of people don't need this feature, you won't see it being mentioned a lot and that's a shame because it has no alternatives.
When drawing comparisons between vim and emacs, it's more helpful to view emacs as a text based app platform that acts as an enhanced interface to your operating system that also has a text editor built in. It actually has multiple text editors; evil (vim), kakoune, boon, XFK, meow, and more. If you like TUIs and keyboard driven workflows plus tmux to use vim style key bindings to copy stuff, well... If you were to compare emacs to something, it should be to your tmux+vim+ranger+bash environment. I use vterm to replace tmux. Dired/dirvish replaces ranger. Magit replaces lazygit/gitui. It has apps to enhance ripgrep, fd, curl, make, top, etc; Then instead of having configs and apps all written in different programming languages, and duck-taped together using shell scripts, it's all unified by lisp. All your key bindings are consistent throughout. However, you sir are 100% correct; she is indeed high maintenance. But she'll be good to you once you put in the work.
This is probably the best, most balanced, objective review of Emacs from a VIM user. I am a big fan of Notepad (the regular notepad lol) who stumbled onto VIM and shortly thereafter Emacs and realized how awesome they both are. I happen to also have stumbled onto Common Lisp (separately from Emacs) and realized that I like lisp and also really like Org mode, so Emacs is just a good fit for me. Emacs is a huge time sink due to its learning curve, it's just a matter of deciding if spending that time is in any way worth it to each individual. The reason to spend all that time is not to have a text editor. Notepad++ will probably cut it for anyone looking for more than Notepad/nano. The reason to spend time learning Emacs IS for all the extra stuff. In my case it's built-in Org mode, and Elisp interpretation. Great review. I think the analogy at the end is spot on lol.
Well, so here's my take on this stuff. First off, nano. When I'm on a Linux system I love nano for quick and dirty text editing. It's fast to load and once you learn it, it works great. Now as for Vim vs. Emacs, I'm Emacs all the way. Why? Well it's mainly because I'm not a touch typist, I'm a ten-finger hunt-and pecker. Maybe I should work on that but so far I haven't. Because this is the case and I absolutely hate modal text editors because I can never remember which mode I'm in at any given time, well there you are. I've spoken to a few Vim lovers and to a man they are all touch typists. Some of them also use Emacs with versions that emulate vim, such as evil or doom. Now a word here about modes. Modes mean completely different things in Vim and Emacs. Vim is called a modal text editor because you are either in command mode or insert mode. In command mode what you type is interpreted by the editor as a command to do something with or about the text. Insert mode is how you actually type text into the buffer. Now Emacs is completely different. In Emacs you are always in insert mode and if you want to execute some command or other you use special key chords usually using the Control, Alt (aka Meta or sometimes the escape key), or Shift keys. In Emacs modes come in 2 flavors major modes and minor modes. These modes will generally affect the appearance or formatting of the text in the buffer. As far as extensibility goes, the reason that many consider Emacs superior to Vim is that in Emacs if you want to write an extension, you write it in elisp, so the code essentially is a part of the editor. In Vim you write your code as a script which is not usually an integral part of the editor, but is a foreign piece of code called by the editor. Thus my 2 cents.🤔😁
I started using Emacs about 6 months ago. Before I forced myself into learning it I was the first to say "this is stupid", "this is too damn heavy for any normal use". "WTF is all this C-c, C-, C-bs crap?". As of today, I really can't imagine living without it. The more you explore the more you can do and do very, very well. Org Mode is great and even more so org-roam is amazing. For anyone thinking about Emacs though, I do highly advise going with Doom Emacs. If it wasn't for that I likely wouldn't be using Emacs today.
Thanks for not being another fan boy on the internet (for one or the other, not matter which) and give you opinion based on REAL experience. I really like your video. I think everybody should do what you did, that is, use both editors and then choose the one you feel more comfortable with and gives you an advantage to the task(s) you have to do. I really believe nobody can decide which is a better editor FOR you. It is already proven that both editors are amazing tools, so it's not like one is amazing and the other is trash. Just have to choose the one is right for you. But they are so vast and expandable that I enjoy seeing videos like this, to see what use do other people make of these tools. I always end up learning something new. Thanks!
Small quibble: while GNU Emacs has strong support for windowing systems these days, it has a far longer history as an editor for traditional terminals. My earliest exposure to GNU Emacs was installing and maintaining version 18.53 at my school's Sun 3/60 lab, and those run SunView rather than X11. As I didn't have lab keys to start, I more often than not had to use Emacs via a DEC VT220 at a public terminal room.
Another really good reason is the built in documentation. C-h m to get information about the current mode in the buffer. C-h k key-chord to get info on the key-chord. C-h f for a function. C-h v for a variable. The discoverability of emacs is really good, if you just know how to ask emacs for the information.
Yeah, I really like that. Sometimes I'll do a key chord by mistake that does something weird and the ability to do 'C-h k' to get the answer to "what did I just do".
Doom Emacs is just emacs with a lot of plugins. But emacs does buffers, splits, and tabs so much better than vim. Plus vim can chug with gigantic files in my experience.
As a 22+ year Vim user, and now a (Doom) Emacs user... the best part about Emacs is that Evil Mode, the Vi(m) emulation package, is properly extensible in a way that Vim simply is not. When you want to "add commands" to Vim, all you're doing is clunky macros, and then you need to often override every verb version to accomplish the task, and likely collide with various packages also overriding various keybinds via macros -- it's chaos! Evil mode is implemented as a nice stack of composable functions you can *directly[1]* call and create your own new nouns and verbs, with custom temporary modes and keymaps, or language-specific behaviors and layers. Vim simply struggles to be extensible, and Neovim still lacks language extensibility last I checked (and is why I jumped from Neovim to Spacemacs, and then to Doom). And along with this, Vim is hell to customize and keep every package playing nice. Since VimL is awful and lacking in function, everyone is compiling Vim with Python and Ruby support, and now you're updating VimL packages, Ruby gems, Python PIPs, etc. Since there's no actual extensibility mechanism with major/minor modes like in Emacs, a lot of these packages can stomp all over each other's bindings and behaviors, leading to a mess to manage. [1]: If you've read this far here's what I mean by directly calling and extending Evil: In this example I've created my own brand new select all functionality with zero macros, and assigned it to several bindings: ;; Select All (let ((evil-select-all (lambda () (interactive) (evil-visual-select 0 (point-max))))) (define-key evil-normal-state-map "\C-a" evil-select-all) (define-key evil-insert-state-map "\C-a" evil-select-all) (define-key evil-command-window-mode-map "\C-a" evil-select-all))
@@exnihilonihilfit6316 Emacs is not the only tool I use, but as this video has contrasted Emacs and Vim, like everyone always does, I chose to highlight why Evil mode is a better Vim.
1 Reason you should not use emacs is: TIME not bloat. I've created plugins for both Emacs and Vim and Emacs has a steep learning curve even for people coming from vim. Emacs is not bloated, people install a ton of plugins (e.g, doom) and that's what makes it bloated. The best editor is vim in Emacs, evil mode lol. I use Emacs for org mode documentation and nvim for a quick configuration edit.
I understand exactly what you mean to say about emacs at the end of the video. Only in my case, it is what I feel about vim/neovim. Someday, I will probably be able to learn lua enough to be able to feel as comfortable using neovim as I am with emacs at the moment. Of course I am not saying I know much elisp, but emacs just is so easy to learn about from within itself, that it is easy to search for elisp functions I am looking for at any moment.
Hey man! Can we add privacy as a pro in using emacs? Emacs seems almost as a sandbox which could almost replace your OS (email, games etc.) Just came to mind
I mean, it all boils down to selecting the right tool for the problem. On one hand we have a very robust, light, extensible text editor. On the other hand, we have a very functional, hackable, efficient, extensible, multi-purpose lisp interpreter/processor. The text editor can be extended into a very complete IDE. The lisp processor can be used to edit regular files and that might be an overkill unless you do a lot of other things inside it, or it might not depending on what both of them bring to your table. You can bloat both. One has a built-in package manager... Functionalities of both may overlap but each have their niche where they thrive.
Nicely said, very fair. I'd quibble with saying Emacs packages and vim plugins are on equal footing. In Emacs you load elisp to the running elisp system, and have the ability to directly modify the existing elisp. This is of course kind of terrifying from a security mindset, and the ability of any misbehaving elisp to wedge the system is the source of many complaints about its "single threaded" nature, when it stutters or freezes. But the glorious insanity works. This ain't the cathedral baby, this is the bazaar. It brings power you can shape to your needs to adapt and grow with you. As you said, the sheer extent of the possibilities are daunting, but that's also key to its rewards in the long term. Emacs users steadily bring activities into Emacs for the continuity of experience and how capabilities combine to more than the sum of the parts. It rewards care and feeding to get the most out of it. And so it's above all a coders editor because it really comes alive as you become more able to modify and extend it yourself. I'm 28 years in, after 3 years of vi, still learning, and loving that Emacs is enjoying a new era of significant development.
Emacs can do everything Vim can do and much more. The builtin editor into the operating system Emacs is nice to have. But on a more serious note, Emacs also has a terminal mode and even started as a terminal editor like Vim. I got downvoted to hell in Reddit when pointing out that most Emacs users use the GUI version anyway. I personally would only want to use the editor portion and I think Emacs is fine. It just comes down to which editor you learn first and feel comfortable. One big plus for Vim is, it comes as Vi in almost any Linux OS at default. I am a die hard Vim user nowadays, but Emacs looks very nice too. The war makes no sense, ... because Vim is better anyway. 🙂
Ofk most emacs users use gui version. But for example when I mess with my dotfiles in terminal, it very usfull to quickly edit file in emacs terminal mode, I think that's why you was down voted =)
@@blackbeard3449 This can be set in the config file. Every yank, delete and insert function will default to system clipboard. I use Vim only like this. Just set following option: set clipboard=unnamed,unnamedplus
I have always been a diehard Vim user butlately I've been getting into using Emacs in Evil mode. I get the goodness of emacs buffer handlling without having to give up my Vim habit. Also, GUI Emacs allows me to use the system clipboard without having to even touch the config.
I used to do everything in Emacs for several years before I tried Vim. Emacs is great, you can do absolutely everything: read mail, chat, browse internet, read pdf... it doesn't do coffee yet, that's about it :D But as a text editor, unless you install the plugins that emulate Vim in Emacs, it's pretty bad, it's like using a mouse again. I agree 100% about org mode; this is the best reason to use Emacs and a very good one, I don't think anyone could argue with that. However, I think you forget the most important reason why you shouldn't use Emacs: you have to learn and use Lisp, which is a very well thought and good programming language which is at the same time an absolute nightmare to read and write :D
you do not need a plugin to emulate vim, builtin to emacs is viper-mode and it is a simple switch on or off. it is not as feature rich as evil-mode, but it takes nothing to add or alter key binds to get it exactly where you want it.
I've dabbled with Emacs, got started with org-mode, like you suggest, and eventually moved all my dev work over from Vim. The reason I kind of went back to NeoVIm is the keybinds, VIM bindings are best for me, and at the moment that means evil-mode, evil-mode as much as we can patch it over Vanilla emacs is never going to be a first class citizen, you will rely on stuff like evil-collection or writing you own config layer on top of whatever mode you want to configure. That's all fine but I didn't want to do the work, at least at the time. It also seems like Neovim's community is flourishing and the project moves on to greener pastures, while Emacs' seems (to me) a lot more stagnant than Neovim's and not as active. I should also mention that I never really got into reading my email, listening to music, surfing the web, all the more "OS" like features that Emacs offers, they are simply not for me right now. Great video Matt, you make very good points, take care
Well i will add two more reasons of why you shouldn't (And yeah i'm an active Emacs user) 1) Is single threaded, and this is a reason because if you want to do programming in Emacs and you need two or more LSP servers running in the background (example: React and Tailwind) the experience will be soooo slowww, the autocomplete will struggle to work and sometimes will broke. (This don't happen in Neovim or Vim due multithreading i think) 2) If you work on android or ios development, these two type of development needs a lot of help of the IDE to work, Emacs has a "android-mode" and the last update was 2 years ago so do all the things by hand is a hard work (and requires a deep knowledge of how the language works underthehood), and what happen if you are a hardcore-mobile-developer and you can do all the things by hand? The Kotlin LSP server just don't work, Jetbrains don't want to support other editors but Intellij's.
Here's a summary of the key points from the video "5 Reasons You Should Use Emacs (And 1 Reason Why You Shouldn't)": ### Reasons to Use Emacs: 1. **GUI Application**: Emacs is primarily a GUI application, allowing for variable font sizes and better display capabilities, especially useful for markdown and other text formatting. 2. **IDE Capabilities**: Emacs, particularly with Doom Emacs, offers robust language support and IDE-like features out of the box, making it highly suitable for programming tasks. 3. **Buffer Management**: Emacs has excellent buffer management built-in, allowing easy navigation and control over open documents. 4. **Keyboard-Centric with Key Chords**: Emacs excels in supporting key chords (combinations of key bindings), offering efficient and intricate control over the editor. 5. **Org Mode**: Emacs' Org Mode is extremely powerful for organizing documents, creating websites, managing code blocks, and more, providing functionality unmatched by Vim. ### Reason Not to Use Emacs: - **Complexity and Bloat**: Emacs can feel bloated as it includes a wide array of features beyond simple text editing, such as email clients and torrent clients. This makes it more complex and potentially overwhelming for users seeking a straightforward text editor. ### Additional Thoughts: - While both Vim and Emacs are customizable and extendable, Vim might be seen as less encumbered with out-of-the-box features, making it potentially more suitable for new users looking for simplicity. - For users who only need a basic text editor, simpler alternatives like Nano or Micro might be more appropriate. The video ultimately concludes that despite the attractiveness of Emacs' features, particularly Org Mode, the complexity and extensive feature set make it less appealing for the creator compared to Vim.
Emacs is the best because of elisp. You could easily customize vanilla Emacs without any plugins. Vimscript is pain, maybe Lua is better, but elisp for me is a the most powerful part of Emacs
I do find that the ssh capabilities of emacs using tramp is better than an ssh experience with vim. With tramp you can setup your whole emacs config locally and use most of your config (I’ve had some issues with lsp) on the ssh connection. You don’t have to worry about downloading packages on a computer where you may not have these capabilities. For vim, as far as I know I would have to make all my config changes on the remote device. This is the main reason I run emacs and use evil mode at the same time.
It really depends on what you need to do, if you just need to write a quick script, you can do that from the terminal. I have never ran into problems with nano, but either use the -lm for line numbering and mouse support. And I have it aliased to nano='sudo nano ' and I uncomment whatever setting I need from the /etc/nanorc file and just use nano to edit nano lol. You can get rid of the scroll bar and set smart home and all that stuff. Plus, I don't have to have the bloat that is emacs, but org mode is pretty cool, I will give emacs that. It's subjective though, and whatever's feels comfortable, just use it, there are hundreds of text editor configurations out there that you can use.
yeah, emacs has a ton of plugins, which is compareable to vim. But emacs still has tons of things built in by default. (so not as a plugin). There is org mode for example, but there is also things like tetris, a text adventure, artist mode for drawing ascii art etc. etc. I am an emacs user for years and I encourage everyone who likes to try it (then go for doom emacs, they do a superb job) but I can see that this is off putting for someone who is looking for a simple text editor. And with that in mind: 9:50 Emacs IS bloated. It totally is. Emacs is not just an elisp interpreter and you can install plugins on it. Emacs has tons of (amazing) stuff built in that you probably don't need. That is bloat. Most of that stuff is lazily loaded, so only when you start the mode, so usually this just means some extra few wasted megabytes on your harddrive.
Emacs only seems unobtainable whereas is actually isn't. Emacs plays along perfectly fine with other GNU tools such as bash. You actually use the same keyboard shortcuts to move around a (command)line because they both use the GNU Readline library. I have always wondered why Linux folks got so attached to an alien text editor such as Vi that does not use the Readline library.
Vim vs emacs. My answer is use one, both or none. Whatever works for you. Which is better is really about personal opinion and preference. I like the analogy.
As a Emacs user from about 1986-1987, the argument at 10:30 is the only kind of valid argument against Emacs. To use more then just basic capabilities in Emacs, you will have learn and set up more stuff. That means it will not stop you, because you can add and configure it to work as you want. I remember when I started, I like Emacs better, as I had HUGE problems with the states in vim, which are not that of a problem in Emacs. And bash short cuts are basically for free if you know Emacs short cuts. Like C-r C-a C-e C-t etc. Just try them in bash.
I've been using Vim for almost ten years (just for editing typical text and the occasional config file or bash script). I've certainly been curious about emacs, but it seems like such a daunting thing to learn. Also, a lot of the built in stuff or plugins, I can use other programs for. People say that they like to just use emacs for everything, but I don't think that's for me. If I do ever use emacs, I'm kind of torn on whether to use evil mode, or just learn the built-in commands. Seems like learning it as it is out of the box would be a good thing to do.
I'm not a programmer, but your comment reminded me of me when I was first learning VIM. I was attracted at being able to do everything via the keyboard, but it did seem like overkill for my needs (it seems that you are "only" doing typical text editing and occasional script writing/editing). I realized that while the learning curve for Emacs is so much bigger, if I was going to go down the rabbit hole of learning a "crazy text editing program" I might as well go all the way and get Org-mode with it. In reality I started using Emacs ONLY for Org-mode and completely ignored everything else as to not overload myself, but little by little I started learning Elisp also.
Honestly I find the Emacs basics to be easier and friendlier than the Vim basics. Without evil mode I mean. A few nice default ootb abilities: - batch renaming files is crazy intuitive - moving between projects is so good - the calculator and calendar easily paste results where you were typing - everything pops up in the other split you've opened, and you have key bindings for handling the other split without going to it.
If you are a touch typist then you would probably like one of the Vim emulator modes like Evil or Doom. If, like me you are not a touch typist then plain Jane out-of-the-box emacs will probably work just as well or better than the Vim emulator modes. Try it out and do what works best for you.😁😁
Oh yea, I almost forgot another major difference. With Vim, if you try to integrate an extension as an integral part of the editor itself, you run into major issues because Vim is not open source, it is the property of the original author, (Bram Moolinarr) I think? In any case messing with the editor itself is a big no no. It's not impossible, but you have to jump through a lot of major league hoops to get it accepted. With Emacs though, any extension you write is essentially now an integral part of your particular Emacs and there are ways that you can share this with other Emacs users. Just something to keep in mind.😁😁😁😁
When I first chose a Un*x editor in the very early '90s (before I was even running Linux) I was using a couple of Unix-like environments on my Atari ST that both offered MicroEMACS and vi. I found them both to be a bit daunting, but I liked vi better because it felt simpler. I didn't care for the "command chords" in MicroEMACS and I quickly got used to the mode switching in vi. Emacs is impressive because it includes everything but the kitchen sink as well as Elisp so you can easily add anything else you want, or modify any of it. For me, Vim feels "bloated" because its help screens go on for pages and pages. Recently I've settled on ed as my go-to text editor. It's very simple, light and it doesn't take up my whole terminal display the way the other editors do. Also, the commands are familiar from its descendant vi. It's surprisingly powerful, you can even run shell commands from it and use the output in a buffer. But when I "just want a text editor," I fire up ed.
You can pretty much use Org Mode out of the box without any configuration. But the lure of crafting a configuration for yourself is strong and can be a productivity sink.
I guess the real question will be (if you are a Linux user): Should you use Emacs or Linux? By that I don't say you can't use Linux and Emacs but that Emacs users have a tendency to put everything inside Emacs or find alternatives written in elisp. Neovim/Vim users most of the time use specific applications for specific task and (if they want it) make then interface with NEovim/vim, if possible. That saying that Emacs is an Operating System, it's taking literally by some Emacs users to the point of even using it as a Window Manger (I tried it but I failed). That's mostly how it goes, Emacs will make you live in Emacs Island, using Emacs related programs or putting everything inside Emacs. It works for some people, for others don't. Both can get to high levels of customization and BOTH can get into configuration bankrupt. I learned Vim first, then Emacs, then Neovim, then Emacs again and now I came back to Neovim but there is always that itch of trying Emacs again. The problem with switching is that I have to migrate all my notes, agenda, workflow, etc to the new format/applications I am using. Moving from: Org mode to taskwarrior, asciidoctor/wiki.vim, buku, abook Efeed to newsboat emms to cmus .... is a pain in the ass. If you choose one, you have to live with the cons and quirks of your decision. You can also don't choose neither, you don't NEED Vim or Emacs to be good with Linux or computers in general. I don't program or manage systems for a living, I just like Linux because it's free.
Emacs is not so much an OS but definitely a shell (in the sense of explorer.exe, KDE or GNOME). A lot of emacs functions are elisp wrappers for OS programs like ls so much is integration not alternatives so in the end you're still using linux and the gnu tools. Yes integration into the productivity shell is a valid goal as it enables you to use your acquired skills and the tools for more task. For example if you open the terminal emulator in your emacs shell, it enables you to use the keyboard to navigate end manipulate the output of commands and you're not just limited to use readline to manipulate the command you're preparing for execution. Now it's possible to interactively build a emacs macro to get a hostname from a list in one buffer, run the reverse dns search for the ip, copy that resulting IP into third buffer, to build REST API URL calls to update hundreds of servers in a monitoring system as they just got moved into a new vlan. Sure, I could write a script to do the same but it's a throw away task and to me it's easier to build it up interactively as a macro.
@@slalomsk8er397 Yeah, Emacs as "an interface to interact with your system" is a better definition for it. I read somewhere that Emacs can do everything at 65% or 75%, for some people that's good enough, for others, they look for a dedicated tool.
@@scotth8828 spacemacs is crap, doom is becoming crap, System Crafters has the right idea TEACH how to configure emacs rather than shove a configuration down your throat. A few videos with System Crafters, and maybe a few of Prots videos and you'll pretty much be a jedi ready to build your own lightsabre.
A big reason for me is the fact that vim is just everywhere, and emacs isn't. My locked down work MacBook has vim. My windows 11 laptop with WSL is running vim. Ssh onto my raspberry pi, proxmox server, Ubuntu server or pretty much any other machine? You got vim. All of the skills you learn with vim translate over to those machines automatically. Emacs? Not so much.
the very first version of emacs in history, was just a configuration package for another text editor, called TECO, emacs was just the mnemonic keychords organized in a tree structure like C-h is like the "leader" to speak in vim terms for all helping commands. then it was made into its own executable, then the creator of Java, James Gosling added lisp into it, then Stallman made GNU Emacs with emacs-lisp as the very first package of the GNU system. Emacs today is not a package configuration, neither a stand alone editor, is a scripting environment much like bash/zsh/fish/python/ruby/perl/lua/guile/clisp/nodejs/deno but with the difference is that instead of offering a shell interface, offers a gui that is like a terminal emulator in itself with full support for 2d text and 2d graphics, and this scripting language is for processing text and handle gui events and interact with the underlying system (gnu/linux/macos/windows/hp-ux you name it). You can even run emacs on the browser. I call this type of program a Programming System.
Comparing Doom Emacs language support to vanilla Vim it’s kinda unfair in my opinion. It would be better to compare it against Spacevim or something like that (I’m not including Neovim equivalents here)
In console I've switched to helix as its puts command to end and highlights where stuff is going to happen, love it. I don't like emacs as its seems recipe for RSI, or at least it's very unpleasant to use IMNSHO. Also honestly with LSP and Tree-sitter we are at the point, where editor front-end is not that important anymore.
I liked the video and the fact you can see things objectively even though you are a dedicated Vim user. However in an era total bullcrap like VS (or its derivatives) are so popular among young programmers, it doesn't matter much what we think; they will keep using that crap. Looks like I am with "a pretty girl that needs a six-figure income from her man" (a.k.a Emacs) for many years now - and I'm far from being rich. 😆 Seriously though, that metaphor might not be a good one to describe Emacs, but it's certainly a funny one. Comparison with Vim/Neovim is not fair because Vim is a text editor, Emacs is... an operating system. For me, the number one reason for using Emacs is its IDE capabilities (and you don't need Doom Emacs for that)
Never learned Vi in too much depth but i like it anyway and i will use it from within Emacs when running a terminal cause otherwise the keybinds would conflict (of course Emacs has Tramp mode but that's a different workflow). What i really hate is this "nano" editor which comes preinstalled pretty much everywhere. One day a colleague asked me "how do i exit this?" and i thought he would be referring to Vim... no, he was referring to nano... (which he choose to run despite of not knowing it - maybe he was following some guide on the internet). This proves to me that this nano editor is a complete failure cause the only reason of its existence is that Vim is supposedly hard.
I tried to get into emacs but couldn't get my hands around it. I've heard it called an operating system that you can edit text files with. I just learned vim so I'm gonna focus on that right now instead of listening to my ADHD brain and say "OOOH! SOMETHING NEW!"
I probably started and stopped about five times before I carried on with it. I too actually did it right after I learned VIM and that turned out not to be a bad thing.
If just the concept of bloat bothers you, Emacs is not for you. Core Emacs ships with over 1.3 million lines of Lisp code, not including comments or empty lines. It includes an absolutely byzantine amount of features, and there are many long-forgotten nooks and crannies to explore. I personally think it's fun to go spelunking in the bowels of Emacs, but that's just me.
Even though it was comparatively short, this video has been one of your best. And while it has been mentioned in the comment section already, it cannot be said enough: I think the chances of finding a better analogy than the high-maintenance unattainable pretty girl you outlined are astronomically small...
HaHahAha That is a awesome way to put it... "Prettiest Girl in the Room!" An yes we can't afford her... 🤣 Nice that you mentioned Nano and Micro, Thanks... Some times Nano is way more than I need... 🤪 Anything more than Ctrl +o & Ctrl +x is just bloat... Lol Thanks Matt! LLAP 🖖
Ever so touchy topic for geeks. I use emacs mostly for my notes (so, org-mode), but I know that you can basically do most if not all of your professional computing inside of it, so calling it a text editor or comparing it to vim is a bit of apples and oranges in my opinion, mainly due to the very different natures of the two. Also, I'm not terribly worried about the bloat either, not with modern computers. How many times a day do you have to fire up an editor so that extra one second on startup adds up to anything relevant? And if you pimp the config file enough for it to start up significantly slower, I'm pretty sure you then also use for much more than just for quick edits that the speed is not exactly a relevant factor at that point.
I use emacs and vim and tbh dooms emacs or customs config (which is more complicated to set on emacs), it seems so slow compared to neovim with a astronvim config ....
I have no idea what your talking about bloat when emacs vanilla (not doom-emacs) starts with just enough to do all things u want with no email , torrent etc. It has games that takes like no space but doom-emacs is to show u what is possible if u customize it for awhile and yes doom-emacs is bloated for sure. Best things people love about emacs is always org-mode , magit, dired, eww, and the fact u can use vim commands with evil-mode that u can customize yourself just like vim. I heard many writers use emacs to write there books and papers. Best thing for me is i get all this that i can install emacs on windows work pc and still use my vim controls super badass i would say. Also i second what ever Josh says in the comments he knows. 🤣
only in that they are both configuration frameworks that are highly opinionated. I am quite possibly wrong, but Lua in the case of vim is itself a "plugin" whereas in emacs lisp is at the core. Elisp is not a plugin and as such elisp allows you to alter (to some degree) even the bones of emacs if you wish.
I agree, and suspect you will become an emacs fanboy 😊. for new users. nano is pretty good for basic text editing, if thats all youre doing you dont need emacs. Emacs is also pretty good for just text editing, there is not much difference (out the box). once you have been using emacs for a while you realise there is so much more and text editing is the tip of the iceberg. so how long it takes to be comfortable with emacs, a day upwards i guess. it is a little bloated, but im not sure it can be classed as bloat, its more a case of features you may never use, but others will (its not useless bloat)
If I was going to use either emacs or vim for anything, I would use a GUI text editor instead. I use nano if I need to edit some text in a terminal, and I frankly avoid doing that as much as possible. These tools were good once upon a time. We've got so much better tools today.
The thing is that Emacs can do significantly more than any other GUI text editor that has ever existed and because you configure it in the same language it is (mostly) written in it is also significantly more extensible than anything else. If you're willing to overcome the learning curve there is simply no better tool than it. No other text editor can provide me an experience even remotely close to something like dired, org-mode or magit. Most mainstream text editors and IDEs stop being relevant after like a decade. Emacs has been continuously popular since the 80s for a good reason.
emacs is NOT primarily a GUI. The GUI has features the CLI does not, same as neovim. buffers in emacs are not files, it only becomes a file when you write it to a file once you start using org-roam you will never look at vimwiki again if all you need is a text editor, turn on CUA mode and you'll get key binds similar to other editors (e.g. Ctrl-C copy, Ctrl-V paste, etc...) This "bloated" argument is becoming irrelevant, especially with the things neovim is doing. Don't use Doom, use SciMacs or Purcell something geared toward prose rather than coding. Actually, I've made this offer before...let me help you write your own config. You'll see how easy and how OP it is.
Emacs isn't bloated. It's more like a 3D rabbit hole with rabbit holes in rabbit holes. I use both. Vim for coding and writing and Emacs for writing and coding.
I’ve never heard how Vim or Emacs make me productive, so that’s why I quit even thinking about using these text editors unless I’m at SSH to a server and need quick edits to files. I can quickly Google key binding for complex text operations using my smartphone instead of spending months to build muscle memory for either Vim or Emacs. It never stops to amaze me how “Emacs is great” vids popup every year, while clearly it’s a niche tool with mystical productivity gains. There are folks who do calculations with abacus and that looks impressive and they can go without a battery. Call me dumb, lazy and stupid but I will stick with my calc app on smartphone. Same with Emacs and Vim. I appreciate time and effort folks put into learning and becoming fluent in Vim/Emacs key bindings, but personally I’d stick to new generations of text editors that offer “more with less”.
Personally, VIM has been great for my productivity. I spent less time on thinking about what and how to edit than just edit as second nature. Muscle memory kicks in and your "though-to-code" speed gets quicker. Also, not having any micro interruptions because of having to use the mouse also boosts my productivity.
@@ketansrivastav Mouse-free interactions is the only advantage of Vim I see. And I’m pretty sure many text editors will develop on this idea in upcoming years (something like Ctrl+HJKL for cursor navigation and Ctrl+Shift to switch into Vim’s “edit” mode). This workflow is way more natural to me than giving up on modern tech and going back into teletype age.
@@alexandersuvorov2002 absolutely. You're correct in all of your points. I know it sounds boring or psychotic but Vim and Emacs are parts of personal, esoteric journeys. And you can see that Vim and Emacs users are super productive and adaptive.
Emacs is a text-centered productivity environment. Without any plugins, it can be used as any modern text editor with minimal effort. One can use shift-arrows or mouse to select text and so forth. Granted, by default, it supports IBM CUA shortcuts for copy, paste and stuff, which luckily are commonly supported in non-Apple software. The barebones Emacs already comes with the full blown org mode (with tables, links, exports to pdf and html and all that). As a pure text editor, Emacs, indeed, has limited advantages over the next editor without investing time into learning Emacs and building the muscle memory. But its capabilities as the productivity environment are quite impressive and a lot of people benefit from them. For instance, for me, besides text editors, Emacs replaced Excel and Jupyter-lab, solved a bunch of organizational issues. Could use for more but unfortunately I’m not locked to a single platform plus I’m not that dedicated. Is Emacs the best thing after the sliced bread? I don’t think so. But is it a real deal? Definitely.
@@LeslieRussell tbf yes, these neovim configs are not really upto the mark, and the best approach is to maybe start with something like kickstart nvim file I found somewhere and add your own tweaks to it whatever you need
Emacs is not bloated distributions make it bloated. Yes its bigger out of the box than vim because it does everything vim does and more. Emacs can do everything that that vim does but vim can't do everything emacs does.
Matt, you forgot to mention that a user will have to learn LISP to configure the editor, which is very different from the popular languages that most people are familiar with.
@@LeslieRussell For example I wanted to have indentation guidelines because you would think it's a very basic feature. I tried like 4 plugins and every either had ugly gaps between empty lines, didn't supported tabs and if it tried to not have gaps between empty lines it was very glitchy after few seconds of using. Meanwhile in neovim I have perfect looking guidelines with treesitter integration. I'm very dependent on lsp-mode and some things even in the plugin itself doesn't work with itself. For example I can't have code lenses and sidelines turned on in the same time because it results in the sidelines creating a newline because the length is calculated badly and a flicking effect when I move my cursor.
@@p0n-pompf the one I used is by DarthFennec called highlight-indent-guides, never had any of those problems. But if emacs is not for you it is not for you. No need to break your brain if vim works for you.
Want more Linux content? Follow me on Mastodon: fosstodon.org/@thelinuxcast
I have been using Emacs for two years. I am not a programmer. But Emacs opens the opportunities for me to discover to the true capability of a computer. The tinkering nature of Emacs has forced me to learn all sort of staffs. I am even living in EXWM. Without Emacs, I would not even be close to the current me.
The reason I started using Emacs was stupid. I was a Mac fanboy, and I thought Emacs has something to do with Mac. This is the best misunderstanding in my life.
bro 😂😂😂😂😂😂 this reason is gold 😂😂😂😂
I used vim for probably 15 years before getting into emacs. The biggest problem with Emacs is the learning curve (and the vim curve is pretty big, but tiny in comparison). The way I got into it was to spend a day watching the emacs from scratch videos from system crafters. It is the most fantastic tutorial for making emacs what you want it to be. Your anaolgy was fantastic and entirely accurate. Love your videos, keep up the good work.
+1 to System Crafters' videos, they are awesome
+1 System Crafters is state of the art in terms of coherent and well-polished Emacs tutorials!
I'm going down the same path... A friend of mine is really into Emacs, and convinced me to give it a crack mentioning system crafter videos. I'm going to learn C++, and I would use Emacs as IDE in the first place for that
As a devoted Emacs user, I definitely agree with the key message here. (Though obviously I think you haven't fully covered Emacs' strong points, being an Emacs fan!)
vim is a text editor. That's what it does, that's what it's good at (to the point that people copied it into Emacs :) ). Emacs, on the other hand, is essentially an OS, in the sense that it's a wrapper for the computer's functionality which (mostly) hides away the stuff underneath it (i.e. Linux, MacOS, etc.) under a more effective interface.
As long as you're working with "things that can be represented as text", Emacs is the most efficient, generalizable, and integrated system you can find. This is why it has so many packages doing so many different things: not only can it accelerate a variety individual tasks, but the more you do in emacs, the more you can integrate all those tasks together. Examples of the benefits of this approach include:
Share autocomplete, search, and other packages across your feeds, notes, code, and terminal
Write automation scripts that extend along your entire workflow without having to fiddle with linking multiple different frameworks
Manage files in your projects with an interface better than the OS file manager and often more convenient than console commands (not to mention easily integrated with them)
Use org mode for editing markup text with versatile links (to files, sites, other org notes, etc.), literate programming using either custom plugins or the many default languages (Python, Lisp, etc.), exporting to a variety of formats (LaTeX, HTML, etc.), et cetera.
...and so on.
On the other hand, Emacs does have a rather steep learning curve. Until you're comfortable enough with it to do large portions of your work within Emacs (and preferably using a configuration that allows you to interface easily with your type of text, and/or a config like Doom/Spacemacs which provides built-in functionality for most common subjects), you're not really getting any more than you would with e.g. vim (as mentioned, vim's screen-key-user loop is actually somewhat superior imo, judging from my experience with the emacs port).
There's also the use of Emacs Lisp ("Elisp") as a configuration language. It's a good decision overall, allowing for on-the-fly configurability for literally everything but a few C functions; and *personally* I've found lisps easier than any other language I know, especially with minor editor support (just parenthesis-based traversal is usually enough).
But I've known people who just can't change the way their brains are trained to process parentheses from other languages, which makes any lisp language quite difficult for them to learn. And if you don't eventually become comfortable with reading Elisp and occasionally writing some glue code, what you get out of Emacs is limited to the features added by package maintainers, which (while quite a broad range) gives you little ability to customize for your particular use-cases.
Personally, it took me a few days to learn enough Emacs (Doom Emacs, to be specific) to use it in combination with a modern IDE, but 3-4 months to get to the point where I was actually better off living (almost) entirely in Emacs than just mixing vim with IDEs instead (as someone who wasn't particularly familiar with either tool before running this experiment, and who made efforts to learn a bit of both afterwards).
If you have that level of slack and are able to approach it with the proper mindset, Emacs is a **great** investment to improve your overall workflow. But if you're tight on time and just need a really good text editor, just using vim is probably the better option, with the added bonus of the base version being present on most machines and very easy to work with for quick reads and edits.
Emacs vs vim is such a weird comparison. If ever there was an apples to oranges thing, this is it. If vim is an apple, then Emacs is like an industrialized country that produces oranges but also has apples. If comparing them solely as text editors, no one in their right mind would say Emacs is better. Vim is simply the world's best text editor. But boy oh boy, Emacs is so much more. Vim is a text editor, Emacs is a lifestyle 🤗
Emacs is a great OS, lacks a good text editor tho
One huge reason that made me use Emacs is it's support for bidirectional text (Which you absolutely require if you're going to write any Arabic Hebrew or Persian). After decades of personal computing, the state of bidi text in text editors is still a mess. As far as my search has resulted only Emacs has per paragraph directions. Because a lot of people don't need this feature, you won't see it being mentioned a lot and that's a shame because it has no alternatives.
Persia will rise again!!!
When drawing comparisons between vim and emacs, it's more helpful to view emacs as a text based app platform that acts as an enhanced interface to your operating system that also has a text editor built in. It actually has multiple text editors; evil (vim), kakoune, boon, XFK, meow, and more. If you like TUIs and keyboard driven workflows plus tmux to use vim style key bindings to copy stuff, well... If you were to compare emacs to something, it should be to your tmux+vim+ranger+bash environment. I use vterm to replace tmux. Dired/dirvish replaces ranger. Magit replaces lazygit/gitui. It has apps to enhance ripgrep, fd, curl, make, top, etc; Then instead of having configs and apps all written in different programming languages, and duck-taped together using shell scripts, it's all unified by lisp. All your key bindings are consistent throughout.
However, you sir are 100% correct; she is indeed high maintenance. But she'll be good to you once you put in the work.
You just made DT's day, he's so happy now.
This is probably the best, most balanced, objective review of Emacs from a VIM user. I am a big fan of Notepad (the regular notepad lol) who stumbled onto VIM and shortly thereafter Emacs and realized how awesome they both are. I happen to also have stumbled onto Common Lisp (separately from Emacs) and realized that I like lisp and also really like Org mode, so Emacs is just a good fit for me. Emacs is a huge time sink due to its learning curve, it's just a matter of deciding if spending that time is in any way worth it to each individual. The reason to spend all that time is not to have a text editor. Notepad++ will probably cut it for anyone looking for more than Notepad/nano. The reason to spend time learning Emacs IS for all the extra stuff. In my case it's built-in Org mode, and Elisp interpretation. Great review. I think the analogy at the end is spot on lol.
Well, so here's my take on this stuff. First off, nano. When I'm on a Linux system I love nano for quick and dirty text editing. It's fast to load and once you learn it, it works great. Now as for Vim vs. Emacs, I'm Emacs all the way. Why? Well it's mainly because I'm not a touch typist, I'm a ten-finger hunt-and pecker. Maybe I should work on that but so far I haven't. Because this is the case and I absolutely hate modal text editors because I can never remember which mode I'm in at any given time, well there you are. I've spoken to a few Vim lovers and to a man they are all touch typists. Some of them also use Emacs with versions that emulate vim, such as evil or doom. Now a word here about modes. Modes mean completely different things in Vim and Emacs. Vim is called a modal text editor because you are either in command mode or insert mode. In command mode what you type is interpreted by the editor as a command to do something with or about the text. Insert mode is how you actually type text into the buffer. Now Emacs is completely different. In Emacs you are always in insert mode and if you want to execute some command or other you use special key chords usually using the Control, Alt (aka Meta or sometimes the escape key), or Shift keys. In Emacs modes come in 2 flavors major modes and minor modes. These modes will generally affect the appearance or formatting of the text in the buffer. As far as extensibility goes, the reason that many consider Emacs superior to Vim is that in Emacs if you want to write an extension, you write it in elisp, so the code essentially is a part of the editor. In Vim you write your code as a script which is not usually an integral part of the editor, but is a foreign piece of code called by the editor. Thus my 2 cents.🤔😁
I started using Emacs about 6 months ago. Before I forced myself into learning it I was the first to say "this is stupid", "this is too damn heavy for any normal use". "WTF is all this C-c, C-, C-bs crap?". As of today, I really can't imagine living without it. The more you explore the more you can do and do very, very well. Org Mode is great and even more so org-roam is amazing. For anyone thinking about Emacs though, I do highly advise going with Doom Emacs. If it wasn't for that I likely wouldn't be using Emacs today.
+ 1000 for org-roam
Thanks for not being another fan boy on the internet (for one or the other, not matter which) and give you opinion based on REAL experience. I really like your video. I think everybody should do what you did, that is, use both editors and then choose the one you feel more comfortable with and gives you an advantage to the task(s) you have to do. I really believe nobody can decide which is a better editor FOR you. It is already proven that both editors are amazing tools, so it's not like one is amazing and the other is trash. Just have to choose the one is right for you.
But they are so vast and expandable that I enjoy seeing videos like this, to see what use do other people make of these tools. I always end up learning something new. Thanks!
Small quibble: while GNU Emacs has strong support for windowing systems these days, it has a far longer history as an editor for traditional terminals. My earliest exposure to GNU Emacs was installing and maintaining version 18.53 at my school's Sun 3/60 lab, and those run SunView rather than X11. As I didn't have lab keys to start, I more often than not had to use Emacs via a DEC VT220 at a public terminal room.
Another really good reason is the built in documentation. C-h m to get information about the current mode in the buffer. C-h k key-chord to get info on the key-chord. C-h f for a function. C-h v for a variable. The discoverability of emacs is really good, if you just know how to ask emacs for the information.
You got that right, I don't use C-h nearly as much as I should!!😚
Yeah, I really like that. Sometimes I'll do a key chord by mistake that does something weird and the ability to do 'C-h k' to get the answer to "what did I just do".
I'm so glad that humanity has finally started seriously developing AI, so hopefully one day an entity will exist that fully understands Emacs.
Ha, ha, ha. (And yes, it probably have some truth) 🙂
Doom Emacs is just emacs with a lot of plugins. But emacs does buffers, splits, and tabs so much better than vim. Plus vim can chug with gigantic files in my experience.
As a 22+ year Vim user, and now a (Doom) Emacs user... the best part about Emacs is that Evil Mode, the Vi(m) emulation package, is properly extensible in a way that Vim simply is not. When you want to "add commands" to Vim, all you're doing is clunky macros, and then you need to often override every verb version to accomplish the task, and likely collide with various packages also overriding various keybinds via macros -- it's chaos! Evil mode is implemented as a nice stack of composable functions you can *directly[1]* call and create your own new nouns and verbs, with custom temporary modes and keymaps, or language-specific behaviors and layers. Vim simply struggles to be extensible, and Neovim still lacks language extensibility last I checked (and is why I jumped from Neovim to Spacemacs, and then to Doom).
And along with this, Vim is hell to customize and keep every package playing nice. Since VimL is awful and lacking in function, everyone is compiling Vim with Python and Ruby support, and now you're updating VimL packages, Ruby gems, Python PIPs, etc. Since there's no actual extensibility mechanism with major/minor modes like in Emacs, a lot of these packages can stomp all over each other's bindings and behaviors, leading to a mess to manage.
[1]: If you've read this far here's what I mean by directly calling and extending Evil: In this example I've created my own brand new select all functionality with zero macros, and assigned it to several bindings:
;; Select All
(let ((evil-select-all (lambda ()
(interactive)
(evil-visual-select 0 (point-max)))))
(define-key evil-normal-state-map "\C-a" evil-select-all)
(define-key evil-insert-state-map "\C-a" evil-select-all)
(define-key evil-command-window-mode-map "\C-a" evil-select-all))
@@exnihilonihilfit6316 Emacs is not the only tool I use, but as this video has contrasted Emacs and Vim, like everyone always does, I chose to highlight why Evil mode is a better Vim.
still waiting for your RAP video Matt
I would love that lmao
As an emacs user, I thought this was a great video! 👍🏻
1 Reason you should not use emacs is: TIME not bloat. I've created plugins for both Emacs and Vim and Emacs has a steep learning curve even for people coming from vim. Emacs is not bloated, people install a ton of plugins (e.g, doom) and that's what makes it bloated. The best editor is vim in Emacs, evil mode lol. I use Emacs for org mode documentation and nvim for a quick configuration edit.
Thank you. Keep growing, you deserve it.
I understand exactly what you mean to say about emacs at the end of the video. Only in my case, it is what I feel about vim/neovim. Someday, I will probably be able to learn lua enough to be able to feel as comfortable using neovim as I am with emacs at the moment. Of course I am not saying I know much elisp, but emacs just is so easy to learn about from within itself, that it is easy to search for elisp functions I am looking for at any moment.
Hey man! Can we add privacy as a pro in using emacs? Emacs seems almost as a sandbox which could almost replace your OS (email, games etc.) Just came to mind
I mean, it all boils down to selecting the right tool for the problem. On one hand we have a very robust, light, extensible text editor. On the other hand, we have a very functional, hackable, efficient, extensible, multi-purpose lisp interpreter/processor. The text editor can be extended into a very complete IDE. The lisp processor can be used to edit regular files and that might be an overkill unless you do a lot of other things inside it, or it might not depending on what both of them bring to your table. You can bloat both. One has a built-in package manager... Functionalities of both may overlap but each have their niche where they thrive.
Nicely said, very fair.
I'd quibble with saying Emacs packages and vim plugins are on equal footing. In Emacs you load elisp to the running elisp system, and have the ability to directly modify the existing elisp.
This is of course kind of terrifying from a security mindset, and the ability of any misbehaving elisp to wedge the system is the source of many complaints about its "single threaded" nature, when it stutters or freezes.
But the glorious insanity works. This ain't the cathedral baby, this is the bazaar. It brings power you can shape to your needs to adapt and grow with you. As you said, the sheer extent of the possibilities are daunting, but that's also key to its rewards in the long term. Emacs users steadily bring activities into Emacs for the continuity of experience and how capabilities combine to more than the sum of the parts.
It rewards care and feeding to get the most out of it. And so it's above all a coders editor because it really comes alive as you become more able to modify and extend it yourself.
I'm 28 years in, after 3 years of vi, still learning, and loving that Emacs is enjoying a new era of significant development.
Emacs can do everything Vim can do and much more. The builtin editor into the operating system Emacs is nice to have.
But on a more serious note, Emacs also has a terminal mode and even started as a terminal editor like Vim. I got downvoted to hell in Reddit when pointing out that most Emacs users use the GUI version anyway. I personally would only want to use the editor portion and I think Emacs is fine. It just comes down to which editor you learn first and feel comfortable. One big plus for Vim is, it comes as Vi in almost any Linux OS at default. I am a die hard Vim user nowadays, but Emacs looks very nice too. The war makes no sense, ... because Vim is better anyway. 🙂
The one thing I hate about vi and vim is the problematic global clipboard integration. Neovim is better in that regard.
Ofk most emacs users use gui version. But for example when I mess with my dotfiles in terminal, it very usfull to quickly edit file in emacs terminal mode, I think that's why you was down voted =)
@@blackbeard3449 This can be set in the config file. Every yank, delete and insert function will default to system clipboard. I use Vim only like this. Just set following option:
set clipboard=unnamed,unnamedplus
I genuinely admire how Matt knows "this is probably going to be a weird analogy" but doesn't care and does it anyways, lol.
I have always been a diehard Vim user butlately I've been getting into using Emacs in Evil mode. I get the goodness of emacs buffer handlling without having to give up my Vim habit. Also, GUI Emacs allows me to use the system clipboard without having to even touch the config.
I used to do everything in Emacs for several years before I tried Vim. Emacs is great, you can do absolutely everything: read mail, chat, browse internet, read pdf... it doesn't do coffee yet, that's about it :D But as a text editor, unless you install the plugins that emulate Vim in Emacs, it's pretty bad, it's like using a mouse again. I agree 100% about org mode; this is the best reason to use Emacs and a very good one, I don't think anyone could argue with that. However, I think you forget the most important reason why you shouldn't use Emacs: you have to learn and use Lisp, which is a very well thought and good programming language which is at the same time an absolute nightmare to read and write :D
you do not need a plugin to emulate vim, builtin to emacs is viper-mode and it is a simple switch on or off. it is not as feature rich as evil-mode, but it takes nothing to add or alter key binds to get it exactly where you want it.
I've dabbled with Emacs, got started with org-mode, like you suggest, and eventually moved all my dev work over from Vim. The reason I kind of went back to NeoVIm is the keybinds, VIM bindings are best for me, and at the moment that means evil-mode, evil-mode as much as we can patch it over Vanilla emacs is never going to be a first class citizen, you will rely on stuff like evil-collection or writing you own config layer on top of whatever mode you want to configure. That's all fine but I didn't want to do the work, at least at the time.
It also seems like Neovim's community is flourishing and the project moves on to greener pastures, while Emacs' seems (to me) a lot more stagnant than Neovim's and not as active.
I should also mention that I never really got into reading my email, listening to music, surfing the web, all the more "OS" like features that Emacs offers, they are simply not for me right now.
Great video Matt, you make very good points, take care
Emailing from a text editor is one thing... But listening to music with it? Just seems to be a bit much.
@@gamezoid1234 heh, it's the concept of emacs being the go-to tool, it's even used a window manager and people boot their pcs into emacs
I learned vim through Emacs (doom) Lol .
Well i will add two more reasons of why you shouldn't (And yeah i'm an active Emacs user)
1) Is single threaded, and this is a reason because if you want to do programming in Emacs and you need two or more LSP servers running in the background (example: React and Tailwind) the experience will be soooo slowww, the autocomplete will struggle to work and sometimes will broke. (This don't happen in Neovim or Vim due multithreading i think)
2) If you work on android or ios development, these two type of development needs a lot of help of the IDE to work, Emacs has a "android-mode" and the last update was 2 years ago so do all the things by hand is a hard work (and requires a deep knowledge of how the language works underthehood), and what happen if you are a hardcore-mobile-developer and you can do all the things by hand? The Kotlin LSP server just don't work, Jetbrains don't want to support other editors but Intellij's.
Here's a summary of the key points from the video "5 Reasons You Should Use Emacs (And 1 Reason Why You Shouldn't)":
### Reasons to Use Emacs:
1. **GUI Application**: Emacs is primarily a GUI application, allowing for variable font sizes and better display capabilities, especially useful for markdown and other text formatting.
2. **IDE Capabilities**: Emacs, particularly with Doom Emacs, offers robust language support and IDE-like features out of the box, making it highly suitable for programming tasks.
3. **Buffer Management**: Emacs has excellent buffer management built-in, allowing easy navigation and control over open documents.
4. **Keyboard-Centric with Key Chords**: Emacs excels in supporting key chords (combinations of key bindings), offering efficient and intricate control over the editor.
5. **Org Mode**: Emacs' Org Mode is extremely powerful for organizing documents, creating websites, managing code blocks, and more, providing functionality unmatched by Vim.
### Reason Not to Use Emacs:
- **Complexity and Bloat**: Emacs can feel bloated as it includes a wide array of features beyond simple text editing, such as email clients and torrent clients. This makes it more complex and potentially overwhelming for users seeking a straightforward text editor.
### Additional Thoughts:
- While both Vim and Emacs are customizable and extendable, Vim might be seen as less encumbered with out-of-the-box features, making it potentially more suitable for new users looking for simplicity.
- For users who only need a basic text editor, simpler alternatives like Nano or Micro might be more appropriate.
The video ultimately concludes that despite the attractiveness of Emacs' features, particularly Org Mode, the complexity and extensive feature set make it less appealing for the creator compared to Vim.
Emacs is the best because of elisp. You could easily customize vanilla Emacs without any plugins. Vimscript is pain, maybe Lua is better, but elisp for me is a the most powerful part of Emacs
I do find that the ssh capabilities of emacs using tramp is better than an ssh experience with vim. With tramp you can setup your whole emacs config locally and use most of your config (I’ve had some issues with lsp) on the ssh connection. You don’t have to worry about downloading packages on a computer where you may not have these capabilities. For vim, as far as I know I would have to make all my config changes on the remote device.
This is the main reason I run emacs and use evil mode at the same time.
It really depends on what you need to do, if you just need to write a quick script, you can do that from the terminal.
I have never ran into problems with nano, but either use the -lm for line numbering and mouse support. And I have it aliased to nano='sudo nano ' and I uncomment whatever setting I need from the /etc/nanorc file and just use nano to edit nano lol.
You can get rid of the scroll bar and set smart home and all that stuff.
Plus, I don't have to have the bloat that is emacs, but org mode is pretty cool, I will give emacs that. It's subjective though, and whatever's feels comfortable, just use it, there are hundreds of text editor configurations out there that you can use.
Another reason to consider Emacs is Magit. Super nice to interact with git repos.
there's a similar option if you're in neovim, vim-fugitive
yeah, emacs has a ton of plugins, which is compareable to vim. But emacs still has tons of things built in by default. (so not as a plugin). There is org mode for example, but there is also things like tetris, a text adventure, artist mode for drawing ascii art etc. etc.
I am an emacs user for years and I encourage everyone who likes to try it (then go for doom emacs, they do a superb job) but I can see that this is off putting for someone who is looking for a simple text editor.
And with that in mind: 9:50 Emacs IS bloated. It totally is. Emacs is not just an elisp interpreter and you can install plugins on it. Emacs has tons of (amazing) stuff built in that you probably don't need. That is bloat. Most of that stuff is lazily loaded, so only when you start the mode, so usually this just means some extra few wasted megabytes on your harddrive.
Emacs only seems unobtainable whereas is actually isn't. Emacs plays along perfectly fine with other GNU tools such as bash. You actually use the same keyboard shortcuts to move around a (command)line because they both use the GNU Readline library. I have always wondered why Linux folks got so attached to an alien text editor such as Vi that does not use the Readline library.
“…whereas is actually isn’t.” I can’t argue with that! 😜
Vim vs emacs. My answer is use one, both or none. Whatever works for you. Which is better is really about personal opinion and preference.
I like the analogy.
As a Emacs user from about 1986-1987, the argument at 10:30 is the only kind of valid argument against Emacs. To use more then just basic capabilities in Emacs, you will have learn and set up more stuff. That means it will not stop you, because you can add and configure it to work as you want. I remember when I started, I like Emacs better, as I had HUGE problems with the states in vim, which are not that of a problem in Emacs.
And bash short cuts are basically for free if you know Emacs short cuts. Like C-r C-a C-e C-t etc. Just try them in bash.
What about Helix? Seems Vim like but possibile easier to learn.
I've been using Vim for almost ten years (just for editing typical text and the occasional config file or bash script). I've certainly been curious about emacs, but it seems like such a daunting thing to learn. Also, a lot of the built in stuff or plugins, I can use other programs for. People say that they like to just use emacs for everything, but I don't think that's for me.
If I do ever use emacs, I'm kind of torn on whether to use evil mode, or just learn the built-in commands. Seems like learning it as it is out of the box would be a good thing to do.
I'm not a programmer, but your comment reminded me of me when I was first learning VIM. I was attracted at being able to do everything via the keyboard, but it did seem like overkill for my needs (it seems that you are "only" doing typical text editing and occasional script writing/editing). I realized that while the learning curve for Emacs is so much bigger, if I was going to go down the rabbit hole of learning a "crazy text editing program" I might as well go all the way and get Org-mode with it. In reality I started using Emacs ONLY for Org-mode and completely ignored everything else as to not overload myself, but little by little I started learning Elisp also.
Honestly I find the Emacs basics to be easier and friendlier than the Vim basics. Without evil mode I mean.
A few nice default ootb abilities:
- batch renaming files is crazy intuitive
- moving between projects is so good
- the calculator and calendar easily paste results where you were typing
- everything pops up in the other split you've opened, and you have key bindings for handling the other split without going to it.
If you are a touch typist then you would probably like one of the Vim emulator modes like Evil or Doom. If, like me you are not a touch typist then plain Jane out-of-the-box emacs will probably work just as well or better than the Vim emulator modes. Try it out and do what works best for you.😁😁
Oh yea, I almost forgot another major difference. With Vim, if you try to integrate an extension as an integral part of the editor itself, you run into major issues because Vim is not open source, it is the property of the original author, (Bram Moolinarr) I think? In any case messing with the editor itself is a big no no. It's not impossible, but you have to jump through a lot of major league hoops to get it accepted. With Emacs though, any extension you write is essentially now an integral part of your particular Emacs and there are ways that you can share this with other Emacs users. Just something to keep in mind.😁😁😁😁
When I first chose a Un*x editor in the very early '90s (before I was even running Linux) I was using a couple of Unix-like environments on my Atari ST that both offered MicroEMACS and vi.
I found them both to be a bit daunting, but I liked vi better because it felt simpler. I didn't care for the "command chords" in MicroEMACS and I quickly got used to the mode switching in vi.
Emacs is impressive because it includes everything but the kitchen sink as well as Elisp so you can easily add anything else you want, or modify any of it.
For me, Vim feels "bloated" because its help screens go on for pages and pages.
Recently I've settled on ed as my go-to text editor. It's very simple, light and it doesn't take up my whole terminal display the way the other editors do. Also, the commands are familiar from its descendant vi.
It's surprisingly powerful, you can even run shell commands from it and use the output in a buffer.
But when I "just want a text editor," I fire up ed.
You can pretty much use Org Mode out of the box without any configuration. But the lure of crafting a configuration for yourself is strong and can be a productivity sink.
I guess the real question will be (if you are a Linux user): Should you use Emacs or Linux? By that I don't say you can't use Linux and Emacs but that Emacs users have a tendency to put everything inside Emacs or find alternatives written in elisp.
Neovim/Vim users most of the time use specific applications for specific task and (if they want it) make then interface with NEovim/vim, if possible. That saying that Emacs is an Operating System, it's taking literally by some Emacs users to the point of even using it as a Window Manger (I tried it but I failed).
That's mostly how it goes, Emacs will make you live in Emacs Island, using Emacs related programs or putting everything inside Emacs. It works for some people, for others don't. Both can get to high levels of customization and BOTH can get into configuration bankrupt.
I learned Vim first, then Emacs, then Neovim, then Emacs again and now I came back to Neovim but there is always that itch of trying Emacs again. The problem with switching is that I have to migrate all my notes, agenda, workflow, etc to the new format/applications I am using. Moving from:
Org mode to taskwarrior, asciidoctor/wiki.vim, buku, abook
Efeed to newsboat
emms to cmus
.... is a pain in the ass.
If you choose one, you have to live with the cons and quirks of your decision. You can also don't choose neither, you don't NEED Vim or Emacs to be good with Linux or computers in general.
I don't program or manage systems for a living, I just like Linux because it's free.
Emacs is not so much an OS but definitely a shell (in the sense of explorer.exe, KDE or GNOME). A lot of emacs functions are elisp wrappers for OS programs like ls so much is integration not alternatives so in the end you're still using linux and the gnu tools.
Yes integration into the productivity shell is a valid goal as it enables you to use your acquired skills and the tools for more task.
For example if you open the terminal emulator in your emacs shell, it enables you to use the keyboard to navigate end manipulate the output of commands and you're not just limited to use readline to manipulate the command you're preparing for execution. Now it's possible to interactively build a emacs macro to get a hostname from a list in one buffer, run the reverse dns search for the ip, copy that resulting IP into third buffer, to build REST API URL calls to update hundreds of servers in a monitoring system as they just got moved into a new vlan. Sure, I could write a script to do the same but it's a throw away task and to me it's easier to build it up interactively as a macro.
@@slalomsk8er397 Yeah, Emacs as "an interface to interact with your system" is a better definition for it.
I read somewhere that Emacs can do everything at 65% or 75%, for some people that's good enough, for others, they look for a dedicated tool.
thanks for the video Matt.
I am gonna try out emacs for a bit. But not impressed with spacemacs atm. Might have to check out doom emacs.
If you're looking for some instruction with emacs you can check out System Crafters www.youtube.com/@SystemCrafters
@@scotth8828 spacemacs is crap, doom is becoming crap, System Crafters has the right idea TEACH how to configure emacs rather than shove a configuration down your throat. A few videos with System Crafters, and maybe a few of Prots videos and you'll pretty much be a jedi ready to build your own lightsabre.
A big reason for me is the fact that vim is just everywhere, and emacs isn't. My locked down work MacBook has vim. My windows 11 laptop with WSL is running vim. Ssh onto my raspberry pi, proxmox server, Ubuntu server or pretty much any other machine? You got vim. All of the skills you learn with vim translate over to those machines automatically. Emacs? Not so much.
I just have a hard time learning the keybindings for vim and emacs. That's what I get for coming from Windows and families with those keybindings.
Used emacs for years! But most days vi works fine for my editing tasks for my bash scripts. For other basic editing I use Abiword (yeah I'm old)
the very first version of emacs in history, was just a configuration package for another text editor, called TECO, emacs was just the mnemonic keychords organized in a tree structure like C-h is like the "leader" to speak in vim terms for all helping commands.
then it was made into its own executable, then the creator of Java, James Gosling added lisp into it, then Stallman made GNU Emacs with emacs-lisp as the very first package of the GNU system.
Emacs today is not a package configuration, neither a stand alone editor, is a scripting environment much like bash/zsh/fish/python/ruby/perl/lua/guile/clisp/nodejs/deno but with the difference is that instead of offering a shell interface, offers a gui that is like a terminal emulator in itself with full support for 2d text and 2d graphics, and this scripting language is for processing text and handle gui events and interact with the underlying system (gnu/linux/macos/windows/hp-ux you name it). You can even run emacs on the browser. I call this type of program a Programming System.
Comparing Doom Emacs language support to vanilla Vim it’s kinda unfair in my opinion. It would be better to compare it against Spacevim or something like that (I’m not including Neovim equivalents here)
In console I've switched to helix as its puts command to end and highlights where stuff is going to happen, love it. I don't like emacs as its seems recipe for RSI, or at least it's very unpleasant to use IMNSHO. Also honestly with LSP and Tree-sitter we are at the point, where editor front-end is not that important anymore.
I only enjoy Emacs with the Control and Alt keys moved elsewhere. I do recommend you to look up the idea of "home row mods".
I liked the video and the fact you can see things objectively even though you are a dedicated Vim user. However in an era total bullcrap like VS (or its derivatives) are so popular among young programmers, it doesn't matter much what we think; they will keep using that crap.
Looks like I am with "a pretty girl that needs a six-figure income from her man" (a.k.a Emacs) for many years now - and I'm far from being rich. 😆 Seriously though, that metaphor might not be a good one to describe Emacs, but it's certainly a funny one.
Comparison with Vim/Neovim is not fair because Vim is a text editor, Emacs is... an operating system. For me, the number one reason for using Emacs is its IDE capabilities (and you don't need Doom Emacs for that)
Never learned Vi in too much depth but i like it anyway and i will use it from within Emacs when running a terminal cause otherwise the keybinds would conflict (of course Emacs has Tramp mode but that's a different workflow). What i really hate is this "nano" editor which comes preinstalled pretty much everywhere. One day a colleague asked me "how do i exit this?" and i thought he would be referring to Vim... no, he was referring to nano... (which he choose to run despite of not knowing it - maybe he was following some guide on the internet). This proves to me that this nano editor is a complete failure cause the only reason of its existence is that Vim is supposedly hard.
Nano is so easy, and Ctrl x and y or n to save.
And you can uncomment a lot of settings in the /etc/nanorc file.
I tried to get into emacs but couldn't get my hands around it. I've heard it called an operating system that you can edit text files with. I just learned vim so I'm gonna focus on that right now instead of listening to my ADHD brain and say "OOOH! SOMETHING NEW!"
I probably started and stopped about five times before I carried on with it. I too actually did it right after I learned VIM and that turned out not to be a bad thing.
If just the concept of bloat bothers you, Emacs is not for you. Core Emacs ships with over 1.3 million lines of Lisp code, not including comments or empty lines. It includes an absolutely byzantine amount of features, and there are many long-forgotten nooks and crannies to explore. I personally think it's fun to go spelunking in the bowels of Emacs, but that's just me.
top content!! do you have awesome videos thanks very much for share your thoughts and knowledge
Even though it was comparatively short, this video has been one of your best. And while it has been mentioned in the comment section already, it cannot be said enough: I think the chances of finding a better analogy than the high-maintenance unattainable pretty girl you outlined are astronomically small...
i just use vi, because i don't do complex stuff, i just edit config files etc. plus, it comes preinstalled anyways.
HaHahAha That is a awesome way to put it...
"Prettiest Girl in the Room!" An yes we can't afford her... 🤣
Nice that you mentioned Nano and Micro, Thanks...
Some times Nano is way more than I need... 🤪
Anything more than Ctrl +o & Ctrl +x is just bloat... Lol
Thanks Matt!
LLAP 🖖
Ever so touchy topic for geeks. I use emacs mostly for my notes (so, org-mode), but I know that you can basically do most if not all of your professional computing inside of it, so calling it a text editor or comparing it to vim is a bit of apples and oranges in my opinion, mainly due to the very different natures of the two.
Also, I'm not terribly worried about the bloat either, not with modern computers. How many times a day do you have to fire up an editor so that extra one second on startup adds up to anything relevant? And if you pimp the config file enough for it to start up significantly slower, I'm pretty sure you then also use for much more than just for quick edits that the speed is not exactly a relevant factor at that point.
I gave a definitive thumb up for a spot on metaphor...
But nonetheless this was a very nerdy metaphor as well :)
Love your videos!
Hey, can you do video about Helix ide, its kinda similar to Vim..
I use emacs and vim and tbh dooms emacs or customs config (which is more complicated to set on emacs), it seems so slow compared to neovim with a astronvim config ....
The most impressive part of this video is a Vim enjoyer remaining objective in his praise of Emacs. :)
I have no idea what your talking about bloat when emacs vanilla (not doom-emacs) starts with just enough to do all things u want with no email , torrent etc. It has games that takes like no space but doom-emacs is to show u what is possible if u customize it for awhile and yes doom-emacs is bloated for sure. Best things people love about emacs is always org-mode , magit, dired, eww, and the fact u can use vim commands with evil-mode that u can customize yourself just like vim. I heard many writers use emacs to write there books and papers. Best thing for me is i get all this that i can install emacs on windows work pc and still use my vim controls super badass i would say. Also i second what ever Josh says in the comments he knows. 🤣
Wouldn’t be fair to compare Doom Emacs to LunarVim?
only in that they are both configuration frameworks that are highly opinionated. I am quite possibly wrong, but Lua in the case of vim is itself a "plugin" whereas in emacs lisp is at the core. Elisp is not a plugin and as such elisp allows you to alter (to some degree) even the bones of emacs if you wish.
@@LeslieRussell just because he made some comparisons between Doom Emacs and plain Vim/Neovim
i use doom as ide , ricing neovim is pain .
That's facts
Fantastic video 10/10
I agree, and suspect you will become an emacs fanboy 😊.
for new users.
nano is pretty good for basic text editing, if thats all youre doing you dont need emacs.
Emacs is also pretty good for just text editing, there is not much difference (out the box).
once you have been using emacs for a while you realise there is so much more and text editing is the tip of the iceberg.
so how long it takes to be comfortable with emacs, a day upwards i guess.
it is a little bloated, but im not sure it can be classed as bloat, its more a case of features you may never use, but others will
(its not useless bloat)
If I was going to use either emacs or vim for anything, I would use a GUI text editor instead. I use nano if I need to edit some text in a terminal, and I frankly avoid doing that as much as possible. These tools were good once upon a time. We've got so much better tools today.
The thing is that Emacs can do significantly more than any other GUI text editor that has ever existed and because you configure it in the same language it is (mostly) written in it is also significantly more extensible than anything else. If you're willing to overcome the learning curve there is simply no better tool than it. No other text editor can provide me an experience even remotely close to something like dired, org-mode or magit. Most mainstream text editors and IDEs stop being relevant after like a decade. Emacs has been continuously popular since the 80s for a good reason.
emacs is NOT primarily a GUI. The GUI has features the CLI does not, same as neovim.
buffers in emacs are not files, it only becomes a file when you write it to a file
once you start using org-roam you will never look at vimwiki again
if all you need is a text editor, turn on CUA mode and you'll get key binds similar to other editors (e.g. Ctrl-C copy, Ctrl-V paste, etc...)
This "bloated" argument is becoming irrelevant, especially with the things neovim is doing. Don't use Doom, use SciMacs or Purcell something geared toward prose rather than coding.
Actually, I've made this offer before...let me help you write your own config. You'll see how easy and how OP it is.
Emacs isn't bloated. It's more like a 3D rabbit hole with rabbit holes in rabbit holes. I use both. Vim for coding and writing and Emacs for writing and coding.
I’ve never heard how Vim or Emacs make me productive, so that’s why I quit even thinking about using these text editors unless I’m at SSH to a server and need quick edits to files. I can quickly Google key binding for complex text operations using my smartphone instead of spending months to build muscle memory for either Vim or Emacs. It never stops to amaze me how “Emacs is great” vids popup every year, while clearly it’s a niche tool with mystical productivity gains. There are folks who do calculations with abacus and that looks impressive and they can go without a battery. Call me dumb, lazy and stupid but I will stick with my calc app on smartphone. Same with Emacs and Vim. I appreciate time and effort folks put into learning and becoming fluent in Vim/Emacs key bindings, but personally I’d stick to new generations of text editors that offer “more with less”.
Personally, VIM has been great for my productivity. I spent less time on thinking about what and how to edit than just edit as second nature. Muscle memory kicks in and your "though-to-code" speed gets quicker. Also, not having any micro interruptions because of having to use the mouse also boosts my productivity.
@@ketansrivastav Mouse-free interactions is the only advantage of Vim I see. And I’m pretty sure many text editors will develop on this idea in upcoming years (something like Ctrl+HJKL for cursor navigation and Ctrl+Shift to switch into Vim’s “edit” mode). This workflow is way more natural to me than giving up on modern tech and going back into teletype age.
@@alexandersuvorov2002 absolutely. You're correct in all of your points. I know it sounds boring or psychotic but Vim and Emacs are parts of personal, esoteric journeys. And you can see that Vim and Emacs users are super productive and adaptive.
Emacs is a text-centered productivity environment. Without any plugins, it can be used as any modern text editor with minimal effort. One can use shift-arrows or mouse to select text and so forth. Granted, by default, it supports IBM CUA shortcuts for copy, paste and stuff, which luckily are commonly supported in non-Apple software. The barebones Emacs already comes with the full blown org mode (with tables, links, exports to pdf and html and all that). As a pure text editor, Emacs, indeed, has limited advantages over the next editor without investing time into learning Emacs and building the muscle memory. But its capabilities as the productivity environment are quite impressive and a lot of people benefit from them. For instance, for me, besides text editors, Emacs replaced Excel and Jupyter-lab, solved a bunch of organizational issues. Could use for more but unfortunately I’m not locked to a single platform plus I’m not that dedicated. Is Emacs the best thing after the sliced bread? I don’t think so. But is it a real deal? Definitely.
9:44
Interesting.
Matt Emacs is like plasma where vim is like xfce for me.
I can't believe I'm seeing this video from you, are you okay Matt?
I think u use emacs to script stuff using lisp.
If u don't do that it's probay just a confusing wastem
uemacs is what Linux Torvalds uses :)
I'm a total emacs guy and it is astronomically slower than vim.
Tmux + LazyVim is the way to go
if you want vim upto the level of ide like stuff, give a try to astrovim
the hilarious thing about these config (SpaceVim, AstroVim, LunarVim) is that they are very poor imitations of Doom, & Spacemacs laughably poor.
@@LeslieRussell tbf yes, these neovim configs are not really upto the mark, and the best approach is to maybe start with something like kickstart nvim file I found somewhere and add your own tweaks to it whatever you need
Emacs is not bloated distributions make it bloated. Yes its bigger out of the box than vim because it does everything vim does and more. Emacs can do everything that that vim does but vim can't do everything emacs does.
Matt, you forgot to mention that a user will have to learn LISP to configure the editor, which is very different from the popular languages that most people are familiar with.
The main reason to use Emacs is that it fun 😊
still waiting for you RAP video Matt
I want to use emac but man... the plugin ecosystem for emacs just sucks and is very buggy compared to the new shiny neovim.
in what way buggy?
@@LeslieRussell For example I wanted to have indentation guidelines because you would think it's a very basic feature. I tried like 4 plugins and every either had ugly gaps between empty lines, didn't supported tabs and if it tried to not have gaps between empty lines it was very glitchy after few seconds of using. Meanwhile in neovim I have perfect looking guidelines with treesitter integration. I'm very dependent on lsp-mode and some things even in the plugin itself doesn't work with itself. For example I can't have code lenses and sidelines turned on in the same time because it results in the sidelines creating a newline because the length is calculated badly and a flicking effect when I move my cursor.
@@p0n-pompf the one I used is by DarthFennec called highlight-indent-guides, never had any of those problems. But if emacs is not for you it is not for you. No need to break your brain if vim works for you.
@@LeslieRussell It has gaps between empty lines though. It's even acknowledged in the readme. Check out issue #111 for example
I'd rather write programs in Windows's NotePad than Emacs.
worst and it's not a metaphor. It's a simile. A metaphor claims one thing is another. A simile uses the term like for comparison.
Me, a KATE user, watching the show...
Vim is the best editor to configure emacs :)
(if (like ('parantheses) (you))) (then (is (good idea) (use ('emacs))))
Magit.
Your opinion is completely invalid with just the opening sentence of this video!
Use spacemacs or doom emacs!!!