The Emacs Widget Library
gnu.org
gnu.org
I could never use Emacs without vim keybindings, but I don't need to install Spacemacs to get that. It's as easy as
package-install evil
package-install evil-commentary
package-install evil-leader
package-install evil-org
package-install evil-surround (require 'evil)
(require 'evil-matchit)
(require 'evil-surround)
(evil-mode 1)
(global-evil-matchit-mode 1)
(global-evil-surround-mode 1)
(evil-commentary-mode)
judge for yourself whether this is too much work to paste into your .emacsThe biggie to me is discoverability, with it's pneumonic key combos, and integrating with packages like helm.
Even with evil, the vim semantics are often violated in special buffers, making for a rather disjointed experience. Spacemacs also does a lot to smooth out a lot of those problems.
Similar slow startup. Majority impact on spacemacs startup is the regular search for package updates. Without it the startup-time is relative tame, though there is of course some place for improvment if you aim for <1 sec-startups.
It has an insane startup speed! I tried once and it opened within a second. I'm not an evil user myself, so don't know about the vim compatibility.
If you are interested in making the startup faster, check https://github.com/hlissner/doom-emacs/wiki/FAQ#how-is-dooms... from the same author
If you like this idea, it does make sense to try it. Some people love Evil, a Vim emulation layer on top of Emacs.
I do all my computing using just StumpWM, Emacs, Firefox and xterm. I'm much happier than with my previous setup. Curses-based CLI applications don't compose well. They are little silos.
In contrast, on Emacs everything is hackable and alive. There's a wealth of classic packages (calc, dired, gnus, ansi-term, ess, auctex...) and modern ones (org-mode, magit, notmuch, pdf-tools, projectile, ivy, company...) that can let you craft a great environment.
Even if you are not a fan of huge customizations, I'm not either, small tweaks that adapt everything to your preferred workflow really do increase productivity. For example, my agenda view on org-mode emulates a kanban board.
I prefer to do as much of my computing as possible on a text-mode Lisp machine for this reason. Everything is friendly and customizable alive. I do web stuff on a regular browser inside a container: Firefox + Tridactyl. And plumbing is left to Unix, either NixOS or a simple Linux (Arch or Slackware) on xterm.
I find that trying to move stuff that naturally falls into one of these platforms (Emacs, Web, Unix) into another one makes me unhappy. For example, trying to browse the web on Emacs or composing emails on a web browser.
Same, though I use Awesome for my window manager.
XEmacs did better there, but it seems to have faded away.
https://firejail.wordpress.com/
https://wiki.archlinux.org/index.php/Firejail
It's super easy to use.
Unless you have it your heart to become an absolute elisp guru, emacs won't really offer you anything more than vim or any other editor, except plugins that are harder to integrate and configure.
Have you considered org-drill instead of exporting to Anki? Or you run Anki on a phone?
The only thing I miss on Emacs is a good OMEMO XMPP or Signal implementation. Currently Bitlbee lacks both.
Yes, I use Anki on my phone too.
I haven't thought about using Emacs as an IM, but I use w3m for browsing, which is great given all JS/CSS crap we get from websites these days. I just want text and can easily search for it within w3m.
Now imagine the commercial ones.
https://franz.com/products/allegro-common-lisp/acl_ide.lhtml
http://basalgangster.macgui.com/RetroMacComputing/The_Long_V...
20 minutes into a Franz video about single-step debugging and they still hadn’t set it up yet. Maybe that was impressive 30 years ago?
Then again nowadays I am trying to be pragmatic with editors and more get things done. It is easy to go into endless customization in Emacs where you don't actually solve any real problems. (i.e I once used elnode https://github.com/nicferrier/elnode to build and host a website... great little project that took way too much time better used elsewhere.)
Nowadays I basically do VSCode for many things and jump onto Emacs if VSCode can't do it. Still using vim bindings though.
Ideal would be to use a keyboard and OS (MacBooks have both) where you can map Control to the keys immediately next to the spacebar. Using the strongest finger (thumb) instead of the weakest finger and the strongest movement (thumb curl) rather than the weakest is a true upgrade.
On every keyboard I have in my apartment, and every keyboard I've used for a long time, moving my left pinky straight down with my hands on the home row hits left shift and the windows key, in that order. Hitting caps lock with my left pinky is barely a movement at all.
Truly hardcore modifier wizards (or people recovering from injury) have been known to use pedals.
I set it up over a couple of days to almost entirely emulate my vim setup: leader key, 'jk'->ESC, evil binding everywhere, you name it. At this point, my config file is only 165 lines, yet it provides all the editing comforts to which I'm accustomed. The only thing I haven't figured out yet is how to map my enter key to ':' in normal mode.
I still use vim out of habit when I'm in the terminal, but the transition is so smooth I don't even notice which one I'm using. It's difficult to say if it's worth the effort to switch unless you are looking at a specific use case with which vim struggles. I am in love with the ease of CL/Scheme editing in Emacs, but without that itch, I probably wouldn't have switched. I've had many people try to convert me in the past, but they couldn't provide the why.
I don't use a lot of plugins in vim so it's relatively trim. The only thing I'm planning on adding at this point is https://github.com/emacs-evil/evil-surround. Ivy probably requires some tweaking to get the behavior right, and I'm not super familiar with it yet.
[0] https://github.com/magit/magit/issues/495#issuecomment-17480...
your project looks very nice though, certainly an improvement over the default in magit.
When I was testing mine the worst case repository for me was git.git. It's essentially useless to view the graph in any ASCII viewer. It actually breaks tig right now on my box. gitk does much better because it breaks some of the long branches rather than piling them all up until it no longer fits on the screen.
I imagine a sticky header for the last line of any text from another level, is that would you built?