Just discovered emacs as a long term vim user and it's incredible

This page summarizes the projects mentioned and recommended in the original post on /r/vim

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • doom-emacs

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

    While Doom is more opinionated, it's not too difficult make Emacs your own, most of the choices are optimized anyway. Currently the head of Spacemacs devs is not active on the project anymore. Also I don't think it's hard to upstream code to Doom, as long as the code is thoroughly written, take a similar example on both sides: the introduction of a completion engine as layer/module (same packages are installed): - https://github.com/syl20bnr/spacemacs/pull/14901: 23 comments, 7 participants - https://github.com/hlissner/doom-emacs/pull/4664: 576 comments, 20 participants

  • vim-surround

    surround.vim: Delete/change/add parentheses/quotes/XML-tags/much more with ease

    "basic visual settings set number set linebreak "text type settings set encoding=utf-8 "Remapping keys inoremap jk nnoremap j gj nnoremap k gk "to quickly open NERDTree filebrowser. nnoremap :NERDTree "to open files with external programs from paths written in vim. nnoremap gF :!xdg-open "to make Y behave similar to D and C nnoremap Y y$ "to make a new line after the word without entering insert mode nnoremap e a "insert a new line without entering insert mode nnoremap o ok nnoremap O Oj "search settings set hlsearch set incsearch "clipboard settings set clipboard=unnamedplus "for use of Vim plug plugin manager. call plug#begin() " To change the surroundings a text. Plug 'https://github.com/tpope/vim-surround' " A Vim Plugin for Lively Previewing LaTeX PDF Output " Use this command to start the previewer :LLPStartPreview Plug 'xuhdev/vim-latex-live-preview', { 'for': 'tex' } Plug 'https://github.com/vimwiki/vimwiki' "It is a file browser and does basic file ops. Plug 'preservim/nerdtree' "It highlights most movement commands like w,j,f,t,/ etc.Triggered by "leader twice plus the movement key. Plug 'https://github.com/easymotion/vim-easymotion.git' "enables completion with tab instead of control p. Plug 'https://github.com/ervandew/supertab' "To edit csv files in vim and display them nicely. Plug 'chrisbra/csv.vim' call plug#end() "settings required by plugins. "to use markdown in vimwiki instead of learning vimwiki syntax let g:vimwiki_list = [{'path': '~/vimwiki/', \ 'syntax': 'markdown', 'ext': '.md'}] "Self defined commands which can be executed on vim command line.(must start "with caps) "This is shortcut for quickly sourcing vimrc. command Src source ~/.vimrc "shortcut to delete entire file. command Dal norm ggdG "shortcut to copy entire file. command Yal norm ggyG command Erc vsplit ~/.vimrc "to make presentations with pandoc using source markdown and then opening the pdf through external viewer. command Mkppt :!pandoc % -t beamer -o output.pdf ; xdg-open output.pdf "changing the default leader key which is "\" let mapleader = "\" "auto commands to do stuff based on certain events "This inserts # when leader + c key is pressed in a python file. autocmd filetype python nnoremap c I# autocmd filetype python nnoremap C ^x "saving macros or registers. "macro for anki cloze deletion let @b="f:a{{c1::jkA}}jkj0"

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • vimwiki

    Personal Wiki for Vim

    "basic visual settings set number set linebreak "text type settings set encoding=utf-8 "Remapping keys inoremap jk nnoremap j gj nnoremap k gk "to quickly open NERDTree filebrowser. nnoremap :NERDTree "to open files with external programs from paths written in vim. nnoremap gF :!xdg-open "to make Y behave similar to D and C nnoremap Y y$ "to make a new line after the word without entering insert mode nnoremap e a "insert a new line without entering insert mode nnoremap o ok nnoremap O Oj "search settings set hlsearch set incsearch "clipboard settings set clipboard=unnamedplus "for use of Vim plug plugin manager. call plug#begin() " To change the surroundings a text. Plug 'https://github.com/tpope/vim-surround' " A Vim Plugin for Lively Previewing LaTeX PDF Output " Use this command to start the previewer :LLPStartPreview Plug 'xuhdev/vim-latex-live-preview', { 'for': 'tex' } Plug 'https://github.com/vimwiki/vimwiki' "It is a file browser and does basic file ops. Plug 'preservim/nerdtree' "It highlights most movement commands like w,j,f,t,/ etc.Triggered by "leader twice plus the movement key. Plug 'https://github.com/easymotion/vim-easymotion.git' "enables completion with tab instead of control p. Plug 'https://github.com/ervandew/supertab' "To edit csv files in vim and display them nicely. Plug 'chrisbra/csv.vim' call plug#end() "settings required by plugins. "to use markdown in vimwiki instead of learning vimwiki syntax let g:vimwiki_list = [{'path': '~/vimwiki/', \ 'syntax': 'markdown', 'ext': '.md'}] "Self defined commands which can be executed on vim command line.(must start "with caps) "This is shortcut for quickly sourcing vimrc. command Src source ~/.vimrc "shortcut to delete entire file. command Dal norm ggdG "shortcut to copy entire file. command Yal norm ggyG command Erc vsplit ~/.vimrc "to make presentations with pandoc using source markdown and then opening the pdf through external viewer. command Mkppt :!pandoc % -t beamer -o output.pdf ; xdg-open output.pdf "changing the default leader key which is "\" let mapleader = "\" "auto commands to do stuff based on certain events "This inserts # when leader + c key is pressed in a python file. autocmd filetype python nnoremap c I# autocmd filetype python nnoremap C ^x "saving macros or registers. "macro for anki cloze deletion let @b="f:a{{c1::jkA}}jkj0"

  • vim-easymotion

    Vim motions on speed!

    "basic visual settings set number set linebreak "text type settings set encoding=utf-8 "Remapping keys inoremap jk nnoremap j gj nnoremap k gk "to quickly open NERDTree filebrowser. nnoremap :NERDTree "to open files with external programs from paths written in vim. nnoremap gF :!xdg-open "to make Y behave similar to D and C nnoremap Y y$ "to make a new line after the word without entering insert mode nnoremap e a "insert a new line without entering insert mode nnoremap o ok nnoremap O Oj "search settings set hlsearch set incsearch "clipboard settings set clipboard=unnamedplus "for use of Vim plug plugin manager. call plug#begin() " To change the surroundings a text. Plug 'https://github.com/tpope/vim-surround' " A Vim Plugin for Lively Previewing LaTeX PDF Output " Use this command to start the previewer :LLPStartPreview Plug 'xuhdev/vim-latex-live-preview', { 'for': 'tex' } Plug 'https://github.com/vimwiki/vimwiki' "It is a file browser and does basic file ops. Plug 'preservim/nerdtree' "It highlights most movement commands like w,j,f,t,/ etc.Triggered by "leader twice plus the movement key. Plug 'https://github.com/easymotion/vim-easymotion.git' "enables completion with tab instead of control p. Plug 'https://github.com/ervandew/supertab' "To edit csv files in vim and display them nicely. Plug 'chrisbra/csv.vim' call plug#end() "settings required by plugins. "to use markdown in vimwiki instead of learning vimwiki syntax let g:vimwiki_list = [{'path': '~/vimwiki/', \ 'syntax': 'markdown', 'ext': '.md'}] "Self defined commands which can be executed on vim command line.(must start "with caps) "This is shortcut for quickly sourcing vimrc. command Src source ~/.vimrc "shortcut to delete entire file. command Dal norm ggdG "shortcut to copy entire file. command Yal norm ggyG command Erc vsplit ~/.vimrc "to make presentations with pandoc using source markdown and then opening the pdf through external viewer. command Mkppt :!pandoc % -t beamer -o output.pdf ; xdg-open output.pdf "changing the default leader key which is "\" let mapleader = "\" "auto commands to do stuff based on certain events "This inserts # when leader + c key is pressed in a python file. autocmd filetype python nnoremap c I# autocmd filetype python nnoremap C ^x "saving macros or registers. "macro for anki cloze deletion let @b="f:a{{c1::jkA}}jkj0"

  • supertab

    Perform all your vim insert mode completions with Tab

    "basic visual settings set number set linebreak "text type settings set encoding=utf-8 "Remapping keys inoremap jk nnoremap j gj nnoremap k gk "to quickly open NERDTree filebrowser. nnoremap :NERDTree "to open files with external programs from paths written in vim. nnoremap gF :!xdg-open "to make Y behave similar to D and C nnoremap Y y$ "to make a new line after the word without entering insert mode nnoremap e a "insert a new line without entering insert mode nnoremap o ok nnoremap O Oj "search settings set hlsearch set incsearch "clipboard settings set clipboard=unnamedplus "for use of Vim plug plugin manager. call plug#begin() " To change the surroundings a text. Plug 'https://github.com/tpope/vim-surround' " A Vim Plugin for Lively Previewing LaTeX PDF Output " Use this command to start the previewer :LLPStartPreview Plug 'xuhdev/vim-latex-live-preview', { 'for': 'tex' } Plug 'https://github.com/vimwiki/vimwiki' "It is a file browser and does basic file ops. Plug 'preservim/nerdtree' "It highlights most movement commands like w,j,f,t,/ etc.Triggered by "leader twice plus the movement key. Plug 'https://github.com/easymotion/vim-easymotion.git' "enables completion with tab instead of control p. Plug 'https://github.com/ervandew/supertab' "To edit csv files in vim and display them nicely. Plug 'chrisbra/csv.vim' call plug#end() "settings required by plugins. "to use markdown in vimwiki instead of learning vimwiki syntax let g:vimwiki_list = [{'path': '~/vimwiki/', \ 'syntax': 'markdown', 'ext': '.md'}] "Self defined commands which can be executed on vim command line.(must start "with caps) "This is shortcut for quickly sourcing vimrc. command Src source ~/.vimrc "shortcut to delete entire file. command Dal norm ggdG "shortcut to copy entire file. command Yal norm ggyG command Erc vsplit ~/.vimrc "to make presentations with pandoc using source markdown and then opening the pdf through external viewer. command Mkppt :!pandoc % -t beamer -o output.pdf ; xdg-open output.pdf "changing the default leader key which is "\" let mapleader = "\" "auto commands to do stuff based on certain events "This inserts # when leader + c key is pressed in a python file. autocmd filetype python nnoremap c I# autocmd filetype python nnoremap C ^x "saving macros or registers. "macro for anki cloze deletion let @b="f:a{{c1::jkA}}jkj0"

  • straight.el

    🍀 Next-generation, purely functional package manager for the Emacs hacker.

    The rest AFAICS are pretty much in stock Emacs and Evil. You'll just have to add a few bindings. If you choose to use something like https://github.com/raxod502/straight.el to handle packages, there's a quite declarative way of setting key-bindings.

  • vim-table-mode

    VIM Table Mode for instant table creation.

    Try vim-table-mode, works great for me.

  • 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.

  • elisp-tree-sitter

    Emacs Lisp bindings for tree-sitter

    emacs got tree-sitter bindings fairly recently: https://github.com/emacs-tree-sitter/elisp-tree-sitter

  • GNU Emacs

    Mirror of GNU Emacs

    The included eshell scripts are easily visible from this mirror of emacs repo or from emacs itself of course. Personally I think a lot of them are useful to a large part of the userbase and all the gimmick scripts don't take up much space at all.

  • aniseed

    Neovim configuration and plugins in Fennel (Lisp compiled to Lua)

    If you want a more lispy configuration experience, you can even try fennel which compiles to lua and use that to configure neovim: https://github.com/Olical/aniseed

  • spacemacs

    A community-driven Emacs distribution - The best editor is neither Emacs nor Vim, it's Emacs *and* Vim!

    While Doom is more opinionated, it's not too difficult make Emacs your own, most of the choices are optimized anyway. Currently the head of Spacemacs devs is not active on the project anymore. Also I don't think it's hard to upstream code to Doom, as long as the code is thoroughly written, take a similar example on both sides: the introduction of a completion engine as layer/module (same packages are installed): - https://github.com/syl20bnr/spacemacs/pull/14901: 23 comments, 7 participants - https://github.com/hlissner/doom-emacs/pull/4664: 576 comments, 20 participants

  • dotfiles

    Dotfiles (by jeetelongname)

    as an emacser, lua is not a big language, you can learn the basics in an afternoon and for configuring nvim with little experience with lua I managed to write just under three hundred lines of lua, its a great language even if I don't want to use it for much more than nvim

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