stepnem at gmail.com
Mon Jul 19 08:47:01 CEST 2010
Marc Weber <marco-oweber at gmx.de> writes:
> Hi list,
> I've been using Vim for years. However I'm at a point I think Vim will
> no longer serve (all) my needs - that's because the core is lacking
> functionality - which can be implemented - but would take a lot of
Welcome to the club. ;-)
> I want to thank you - I was very pleased seeing that these features
> just work:
> - ctrl-vI..<esc> (instert into multiple lines)
> - text objects
> - all visual modes
> - % in combination with visual mode.
> So Emacs comes pretty close to what I'm used to (which I use most)
> There is one last thing which I'm missing:
> Opening files by glob patterns:
> noremap :e :e<space>**/*
Be sure to also have a look at Frank Fischer's Vim mode:
Before some time it seemed lacking to me, but there were more commits
since then and IIRC it implements more :commands (personally I think
implementing Vim :commands is not really a good idea:
- you're using Emacs anyway, so you'll *have* to use M-x anyway and this
only introduces more inconsistency
- using and defining usual Emacs commands makes it easier to interact
with other Emacs libraries).
> In #emacs I was told use ido-find-file ..
> However patterns like this **/*Main.scala doen't work for me.
Yeah, I think that the double asterisk doesn't work (don't know if some
Emacs package implements it); but normal shell patterns do work, even
with plain `find-file'. Ido provides an `ido-wide-find-file-or-pop-dir'
command, bound to M-f, which uses `find' to search for a file under
current directory. I'm guessing that could help?
> creating a buffer with output of find then using gf (which works!)
> is not a perfect solution.
> Having gF implemented properly would be fine, because I use it often
> when reading Exception logs - I can still fallback to Vim.
Yeah, that'd be easy to implement, obviously nobody just felt the need
> Do you have some more hacks in you ~/.emacs making using Emacs easier
> for Vim addicts?
Not sure what you'd be most interested in... Some simple examples
(assuming you use Viper/Vimpulse):
;; redefine `viper-yank-line' (equiv. of the famous `map Y y$')
(defun viper-yank-line (arg)
"Delete to the end of line."
(viper-goto-eol (cons arg ?y)))
(define-key viper-vi-basic-map "ga" 'what-cursor-position)
(define-key viper-vi-basic-map "go" 'goto-char)
> Eg is there a :qa! like command (without the nasty: You have unsaved
> open files..)
Hm... Although I do often use :qa! (I have it bound to a key) in Vim, I
_never_ felt the need in Emacs :-D. Most people seem to use Emacs rather
differently, e.g. you never start Emacs to edit a file and then quit it
-- you use emacsclient for that, and then there is no such thing as
"quickly quit without saving". That being said, what I do find *very*
annoying is the default `yes-or-no-p', i.e. having to type "yes" instead
of just pressing "y" on this kind of prompts; (fset 'yes-or-no-p
'y-or-n-p) fixes that.
More information about the implementations-list