3 ms·
About four months ago I moved from VS Code to Spacemacs and it has been an extremely rewarding experience. Anyone who is afraid of Emacs or Vim should give it a
by jacobherrington 8y ago
About four months ago I moved from VS Code to Spacemacs and it has been an extremely rewarding experience. Anyone who is afraid of Emacs or Vim should give it a try. I've heard good things about Doom and Prelude as well.
- brlewis 8y agoDid you have previous experience with emacs? I'm a long-time emacs user, but have been assuming it's better to introduce new people to VS Code since it's more mainstream.
- jacobherrington 8y agoI did not have any experience with emacs and only the most basic knowledge of Vim. I had some guidance from my company's CTO though.
- fbnlsr 8y agoCould you give us a few pointer on how you prefer working with Spacemacs rather than with VS Code? I've tried Vim a few times but got turned off by the slow process of learning the multiple keyboard shortcuts to do a simple task.
- Cyph0n 8y agoI'm relatively new to Vim (~4 months). I used the "learning by doing" approach by forcing myself to use Vim to write C and Python at work. I had two main reasons for learning Vim: (1) Vim is everywhere, so it must be worth it to learn the basics at least; and (2) modal editing felt easier on my wrists than the standard mouse + shortcuts approach I ended up using in other IDEs. Here is my advice: 1. Start with only a theme in your .vimrc, so no plugins or non-standard key bindings. 2. Use Vimtutor (or any other tutorial) to learn the basics: normal vs. insert mode, movement, manipulation, yank/paste (+ clipboard), splits, buffers, and searching. 3. As you write code, you will find yourself wanting to know how to do X. This is where Google and a simple "cheatsheet" file come in. Once you find out how to do X via Google, add an entry to your cheatsheet file (example in HTML form: [1]). 4. In many cases, you will find that a plugin will solve one of your issues. Install that plugin and add it to your .vimrc. I recommend vim-plug[2] for managing and installing plugins. 5. There are many useful plugins out there. Two I would strongly recommend: CtrlP[3] and NERDTree[4]. Once you have a good grasp of Vim, I would recommend exploring Emacs + Evil-mode if you want a more complete IDE experience. [1]: https://assil.me/2018/11/12/vim-cheatsheet.html https://assil.me/2018/11/12/vim-cheatsheet.html [2]: https://github.com/junegunn/vim-plug https://github.com/junegunn/vim-plug [3]: https://github.com/kien/ctrlp.vim https://github.com/kien/ctrlp.vim [4]: https://github.com/scrooloose/nerdtree https://github.com/scrooloose/nerdtree
- base698 8y agoI personally don't know much about VS Code. All my keys for openings/searching of files are very centered around emacs. In short: macros: I can turn a column of text values into a single line of a json array with a few strokes. Also more complicated formatting that has some pattern like: var some-column = 1; var some-columntwo = 2; Into formatted SQL queries or inserts, or more json with little effort. Not an issue with 2 columns, but with a hundred.... Interaction with the shell: I can do the above with curl or reading from a file so I don't have to leave the editor and download and open the file separately. Helm: https://tuhdo.github.io/helm-intro.html https://tuhdo.github.io/helm-intro.html Fuzzy searching of anything: emacs help files, man pages, your code, your code function/class/variable names. Magit: I generally hate git interfaces but this one is pretty good and allows commit, merge, rebase, and interactive adding seemlessly. org-mode/org-babel: Note keeping to automatically create tickets in my help files and keep my place where I am. Execute code inline as a test.
- jacobherrington 8y agoGive Spacemacs a shot. Here is why it's an easier transition than VS Code to vanilla emacs or Vim: - It's already 99% configured - The keyboard shortcuts are mnemonic - There is a UI display of all the shortcuts within one keystroke at any given time - You can still function with your mouse -- if you need to