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 <Escape>5dd :)