From 586030d9702a03121e57a4326124b248732342e5 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Fri, 2 Jan 2015 21:04:36 +0100 Subject: Add old posts --- there-is-an-evil-in-your-emacs.post | 68 +++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 there-is-an-evil-in-your-emacs.post (limited to 'there-is-an-evil-in-your-emacs.post') diff --git a/there-is-an-evil-in-your-emacs.post b/there-is-an-evil-in-your-emacs.post new file mode 100644 index 0000000..537b5b2 --- /dev/null +++ b/there-is-an-evil-in-your-emacs.post @@ -0,0 +1,68 @@ +;;;;; +title: There is an Evil in your Emacs +tags: emacs, vim, editors +date: 2014-07-01 21:44 +format: md +;;;;; + +When I first started using GNU/Linux I was looking for a proper text +editor. I only had any experience with Visual Studio on Windows +because I was a .Net developer at the time, and didn't really have +much of a choice. One of the main things I wanted was an editor that +worked in a terminal. + +Naturally I came to Vim and Emacs (as well as Nano, and perhaps some +others as well). For a few weeks I kept switching between Vim and +Emacs. I liked Vim's syntax highlighting better, but on the other hand +I liked Emacs' keybindings/modelessness better as well. I ended up +going with Emacs mostly because of Vim's moded editing. + +For years the thought of Vim's moded editing gave me nightmares. I +never really realised the best thing about Vim. Even when a post +appears on Stack Overflow about grokking Vim. I was already so blinded +by the idea that Emacs was the superior editor for me that I failed to +register the information. It took a long time, but eventually I opened +up to the possibility of such moded editing. By now I was stuck with +Emacs because I just couldn't give up its customizability or +extensibility. Also, I've grown to love Lisp, and specifically Emacs +Lisp, so to go from that to Vimscript wouldn't be quite ideal. + +Eventually I decided I really did want to try it. Thankfully Emacs has +a package for that: Evil, the Extensible Vi Layer for Emacs. There is +one other problem, though: I use the Colemak keyboard layout. The +usual `hjkl` keys are more like `hynu`, with the up key at the bottom +of the keyboard, down at the top and left and right diagonally from +eachother. Again Emacs has a package for that, `colemak-evil`. It +rebinds some of the keys so that Evil will work with the Colemak +keyboard layout. It is based on that the creator of the Colemak layout +used to use in Vim. It's a bit aggressive, so I customized it to be a +little less so, mostly removing rebindigs from the motion and emacs +state maps. + +The real power is in the composability of the commands. In Emacs you +have commands like `forward-kill-word`, `forward-kill-sexp` and +`forward-kill-char`. In Vim you have the `delete` operation, which can +be combined with, for example, the `forward-word` motion, or the +`next-line` or `forward-char` motion. I probably have the names wrong, +but hopefully they convey the meaning of what they do. This is what it +is all about, or at least from what I've learned to use so far. Of +course the powerful ed-like editing features called forth through the +Vim `ex` mode, such as `%s/find/replace`. Lastly, of course, the fact +that a lot of editing can be done in normal mode helps in preventing +Emacs-pinky. + +I haven't yet been able to work with the extensible part, but some of +the modules that exist for evil speak volumes of it. + +If you are interested in increasing your productivity, or you like to +experiment with new things, you might really want to try it. It may +not completely be Vim, but it's still completely Emacs. If you use the +colemak-evil package as well you'll also notice that in the insert +state all your regular Emacs keys work normally, which is a great +combination of the two editors. So far I feel that Vim is great for +editing existing code and text, but Emacs still feels better when +writing a lot of new code or text. + + + + -- cgit v1.2.3-54-g00ecf