Emacs for Professionals

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • nov.el

    Discontinued Major mode for reading EPUBs in Emacs

  • I'm one of those weird users who works in both, and I've also never really understood the need to pick a side. I initially used emacs for years, and now I've used both for years. I also don't pick a side in the tea and coffee debate, sometimes I want rooibos and others espresso.

    Admittedly, my emacs usage at this point is largely to treat it as a collection of distinct apps; fire up in nov-mode¹ mode to read books, fire up in magit-status² to mangle git repository, etc. It really feels like there are a collection of best of breed apps that just happen to built on emacs as a toolkit, most of which are fully functional without buying in to emacs for life(not that I'm saying there is anything wrong with that).

    The only time I really use it as an actual editing tool is when I'm working on documentation, and that is largely because I like being able to see inline screenshots in that instance.

    ¹ https://github.com/wasamasa/nov.el

    ² https://magit.vc/

  • magit

    It's Magit! A Git Porcelain inside Emacs.

  • I'm one of those weird users who works in both, and I've also never really understood the need to pick a side. I initially used emacs for years, and now I've used both for years. I also don't pick a side in the tea and coffee debate, sometimes I want rooibos and others espresso.

    Admittedly, my emacs usage at this point is largely to treat it as a collection of distinct apps; fire up in nov-mode¹ mode to read books, fire up in magit-status² to mangle git repository, etc. It really feels like there are a collection of best of breed apps that just happen to built on emacs as a toolkit, most of which are fully functional without buying in to emacs for life(not that I'm saying there is anything wrong with that).

    The only time I really use it as an actual editing tool is when I'm working on documentation, and that is largely because I like being able to see inline screenshots in that instance.

    ¹ https://github.com/wasamasa/nov.el

    ² https://magit.vc/

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • doomemacs

    An Emacs framework for the stubborn martian hacker

  • Yeah, but when everything lives inside the same Lisp environment, there is no need for glue. You have variables and functions, all with built in documentation, that are easily composed.

    Vim, on the other hand, appears to conspire against the user's attempts to build reusable configurations. One plugin may require Neovim. Another may require the Python runtime to be configured and installed. Vanishingly few of them have built in keybinds, and those that do are not guaranteed to be harmonious with other plugins. And besides, should I write my config in vimscript or Lua?

    It might sound like I'm picking nits, but I don't find it coincidental that the best configurations that people have managed to build have been upon the strong bones that Emacs provides. Doom Emacs (https://github.com/doomemacs/doomemacs) is best-in-class, providing harmony between all of the built in modules and their bindings. I uncomment a line in a config file and get full Python support, with refactoring and formatting and such, ootb. This ends up being true for a shockingly long list of languages and tools.

    On the Vim side you have https://github.com/NvChad/NvChad which appears to no longer be accepting new plugins and https://github.com/LunarVim/LunarVim which appears to provide a really good programming experience but is limited in scope to a handful of core plugins and whichever LSP servers they can get their hands on.

    I used to use Neovim and compose everything together by hand as well. I don't see why I should bother today when Doom Emacs provides the same experience I would have built for myself, out of the box.

  • NvChad

    Blazing fast Neovim config providing solid defaults and a beautiful UI, enhancing your neovim experience.

  • Yeah, but when everything lives inside the same Lisp environment, there is no need for glue. You have variables and functions, all with built in documentation, that are easily composed.

    Vim, on the other hand, appears to conspire against the user's attempts to build reusable configurations. One plugin may require Neovim. Another may require the Python runtime to be configured and installed. Vanishingly few of them have built in keybinds, and those that do are not guaranteed to be harmonious with other plugins. And besides, should I write my config in vimscript or Lua?

    It might sound like I'm picking nits, but I don't find it coincidental that the best configurations that people have managed to build have been upon the strong bones that Emacs provides. Doom Emacs (https://github.com/doomemacs/doomemacs) is best-in-class, providing harmony between all of the built in modules and their bindings. I uncomment a line in a config file and get full Python support, with refactoring and formatting and such, ootb. This ends up being true for a shockingly long list of languages and tools.

    On the Vim side you have https://github.com/NvChad/NvChad which appears to no longer be accepting new plugins and https://github.com/LunarVim/LunarVim which appears to provide a really good programming experience but is limited in scope to a handful of core plugins and whichever LSP servers they can get their hands on.

    I used to use Neovim and compose everything together by hand as well. I don't see why I should bother today when Doom Emacs provides the same experience I would have built for myself, out of the box.

  • LunarVim

    🌙 LunarVim is an IDE layer for Neovim. Completely free and community driven.

  • Yeah, but when everything lives inside the same Lisp environment, there is no need for glue. You have variables and functions, all with built in documentation, that are easily composed.

    Vim, on the other hand, appears to conspire against the user's attempts to build reusable configurations. One plugin may require Neovim. Another may require the Python runtime to be configured and installed. Vanishingly few of them have built in keybinds, and those that do are not guaranteed to be harmonious with other plugins. And besides, should I write my config in vimscript or Lua?

    It might sound like I'm picking nits, but I don't find it coincidental that the best configurations that people have managed to build have been upon the strong bones that Emacs provides. Doom Emacs (https://github.com/doomemacs/doomemacs) is best-in-class, providing harmony between all of the built in modules and their bindings. I uncomment a line in a config file and get full Python support, with refactoring and formatting and such, ootb. This ends up being true for a shockingly long list of languages and tools.

    On the Vim side you have https://github.com/NvChad/NvChad which appears to no longer be accepting new plugins and https://github.com/LunarVim/LunarVim which appears to provide a really good programming experience but is limited in scope to a handful of core plugins and whichever LSP servers they can get their hands on.

    I used to use Neovim and compose everything together by hand as well. I don't see why I should bother today when Doom Emacs provides the same experience I would have built for myself, out of the box.

  • lem

    Common Lisp editor/IDE with high expansibility

  • well there's a working Emacs-like in Common Lisp! https://github.com/lem-project/lem/

  • GNU Emacs

    Mirror of GNU Emacs

  • https://github.com/emacs-mirror/emacs/commit/5afe27624f7

    This is the patch that added the feature you wanted to dired. 30 lines of diff, 20 of which is documentation.

    Calling a piece of exceptional software an "abomination" because of one specific behavior that you find annoying is the wrong attitude to have, especially for an emacs user.

    It is emacs. You can make it do whatever you want within a few lines of lisp.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • consult

    :mag: consult.el - Consulting completing-read

  • Others have mentioned the awesome projectile, but I think it should be said that Emacs now has built in project.el which has come in leaps and bounds (though probably still lacks some projectile features).

    I use project.el alongside consult[1] which has many convenient wrapper functions over built-in ones, like an enhanced `switch-to-buffer` with project support. I am actually using an even tighter integration called consult-project-extra[2].

    The most advanced and overkill solution would probably be to use bufler.el[3] which basically allows you to define your custom logic for buffer grouping.

    [1] https://github.com/minad/consult

    [2] https://github.com/Qkessler/consult-project-extra

    [3] https://github.com/alphapapa/bufler.el

  • consult-project-extra

    Consult extension for project.el

  • Others have mentioned the awesome projectile, but I think it should be said that Emacs now has built in project.el which has come in leaps and bounds (though probably still lacks some projectile features).

    I use project.el alongside consult[1] which has many convenient wrapper functions over built-in ones, like an enhanced `switch-to-buffer` with project support. I am actually using an even tighter integration called consult-project-extra[2].

    The most advanced and overkill solution would probably be to use bufler.el[3] which basically allows you to define your custom logic for buffer grouping.

    [1] https://github.com/minad/consult

    [2] https://github.com/Qkessler/consult-project-extra

    [3] https://github.com/alphapapa/bufler.el

  • bufler.el

    A butler for your buffers. Group buffers into workspaces with programmable rules, and easily switch to and manipulate them.

  • Others have mentioned the awesome projectile, but I think it should be said that Emacs now has built in project.el which has come in leaps and bounds (though probably still lacks some projectile features).

    I use project.el alongside consult[1] which has many convenient wrapper functions over built-in ones, like an enhanced `switch-to-buffer` with project support. I am actually using an even tighter integration called consult-project-extra[2].

    The most advanced and overkill solution would probably be to use bufler.el[3] which basically allows you to define your custom logic for buffer grouping.

    [1] https://github.com/minad/consult

    [2] https://github.com/Qkessler/consult-project-extra

    [3] https://github.com/alphapapa/bufler.el

  • doom-emacs

    Discontinued An Emacs framework for the stubborn martian hacker [Moved to: https://github.com/doomemacs/doomemacs]

  • The performance lag of Spacemacs was addressed by Doom Emacs ( https://github.com/hlissner/doom-emacs ). Have you tried Doom Emacs by any chance. After syncing everything, the performance is stellar in my opinion.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Trying to learn minimal installation arch setup (inside a vm). Looking for a good place to start.

    2 projects | /r/archlinux | 8 Jan 2023
  • Syntax highlighting for JavaScript that uses coc-tsserver? The picture shows how my JavaScript import statement looks like currently on top, and below is how it should be highlighted

    3 projects | /r/neovim | 7 Jan 2023
  • coc or nvim.lsp?

    11 projects | /r/neovim | 1 Dec 2022
  • Emacs 29 is nigh What can we expect?

    31 projects | news.ycombinator.com | 29 Nov 2022
  • Vim/Neovim light theme aims at eyes comfort

    2 projects | /r/vim | 1 Mar 2022