From: kyu Date: 2005-04-30T02:22:59+09:00 Subject: Re: [Re: Emacs vs. VI vs. IDE tony summerfelt wrote: > everytime the vim vs emacs thread comes up i like to make these two > points: > >>> C-X2-C-Xo m-x shell >> > > and that's ALL you have to do to get a command line in emacs :) > >> That's scary. Try this instead: > > > ok, but this is scarier: > >> (defvar ys::eshell-wins nil) >> (global-set-key "\C-cs" (lambda (win-num) >> (interactive "p") >> (message "win-num %s" win-num) >> (let ((assoc-buffer (cdr (assoc win-num >> ys::eshell-wins)))) >> (if (not (buffer-live-p assoc-buffer)) >> (progn ; the requested buffer not there >> (setq assoc-buffer (eshell t)) >> (setq ys::eshell-wins (assq-delete-all win-num >> ys::eshell-wins)) >> (add-to-list 'ys::eshell-wins (cons win-num >> assoc-buffer)))) >> (switch-to-buffer assoc-buffer) >> (rename-buffer (concat "*eshell-" (int-to-string >> win-num) "*")) >> assoc-buffer))) > > > one advantage is that vim has is that you can extend your editor using > the (or all for that matter) scripting language of your choice, > vimscript, tcl, perl, ruby, python. to extend emacs you use something > like have the lisp code above. > > another advantage is that if you're a touch-typist, vim is very > efficient at editing code. i think it's very handy that to delete 5 > lines of text you can type: 5dd or do it the long way: Vjjjjjd > > compared to emacs: C-spacebar, cursor to your target, C-w > > the first key combo assumes your terminal will support it otherwise > you're stuck with: M-x set-mark-command > > > > > Err, in emacs to delete 5 lines i would type: C-u 5 c-k, which isn't much longer than 5dd :)