From Vim to Emacs in Fourteen Days

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

Our great sponsors
  • SonarLint - Deliver Cleaner and Safer Code - Right in Your IDE of Choice!
  • Scout APM - Less time debugging, more time building
  • SaaSHub - Software Alternatives and Reviews
  • doom-emacs

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

    May I advise to give a try to Doom instead? It has less ambitious objectives [1] and feels much snappier while providing a similar experience (vim-like, out of the box)

    Also, if you enjoy the experience provided by emacs + evil, giving a try to the native compilation branch of emacs 28 gives noticeable improvement in terms of speed.

    [1] Spacemacs "it's a sophisticated and polished set-up, focused on ergonomics, mnemonics and consistency" VS being focused on speed, https://github.com/hlissner/doom-emacs#introduction

  • public

    I made a video[0] showing off the power of org-babel, which is the part of org that lets you embed dynamic code blocks in your document. In the video I write a little essay[1] on how git stores data that has a lot of dynamic content that is managed by org. It's a bit like reproducible research or literate programming, but for me it's all about writing technical documents that are easy to keep consistent when things change.

    [0]: https://www.youtube.com/watch?v=0g9BcZvQbXU

    [1]: https://gitlab.com/spudlyo/public/-/blob/master/git.md

  • SonarLint

    Deliver Cleaner and Safer Code - Right in Your IDE of Choice!. SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.

  • lem

    Common Lisp editor/IDE with high expansibility

    Am I the only person who uses Lem? An Emacs-clone written and extended in Common Lisp rather than the weird version of Lisp Emacs uses.

    https://github.com/lem-project/lem

  • emacs4cl

    A 50 line ~/.emacs to quickly set up vanilla Emacs for Common Lisp programming

    > I'll just say if you want to do Common Lisp, vim works fine, so don't let that hold you back from pursuing your interest.

    I agree. For those who are interested in using Vim as their development environment for Common Lisp, I have written a detailed comparison between Slimv and Vlime here: https://susam.in/blog/lisp-in-vim-with-slimv-or-vlime/

    And for those who are willing to start Common Lisp development using Emacs, there is Portacle which is a really quick way to set up a working environment with a few clicks. There is also https://github.com/susam/emacs4cl that I wrote to offer as a quick-starter DIY alternative for those who want to use vanilla Emacs and want to configure it themselves without wasting too much time.

  • ivy-lsp-current-buffer-symbols

    Jump to a symbol in current buffer with an Emacs ivy buffer

    I would say that what areally changes the game is to use evil (vi style bindings, 95% stays the same) with Emacs so you keep the muscle memory and you can keep making use of the common ex commands.

    I have gone back and forth between vim and emacs, usually for a bunch of years each time before currently settling on emacs with Doom. With the nativecomp branch, it's actually pretty snappy and doom emacs is a great setup to get started without drowning in the amount of configuration.

    I would say that I just love vim style input and modal editing, but doing that on top of emacs with evil mode and elisp is a better match for me than vimscript. The feedback loop you get with LISP and emacs is incredible when tweaking things to your liking.

    Every function is accessible, there is just a global scope and you can call pretty much anything. It's sounds like an horrible idea, but it also means you can quickly hack stuff by reusing the internals of a package you like.

    For example, it took me half an hour to initially POC this https://github.com/jhchabran/ivy-lsp-current-buffer-symbols by just skimming through the emacs-lsp codebase and randomly trying funcs in the repl to get an idea of what each function was doing.

  • emacs-anywhere

    Configurable automation + hooks called with application information

    As always, the Emacs experience is better: https://github.com/zachcurry/emacs-anywhere

    :)

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