Monday, March 1, 2010

Re: mass delete words based on spell

Christian Brabandt wrote:
> this should have been
>
> :%s/\w\+/\=printf("%s", !empty(spellbadword(submatch(0))[0])?submatch(0):'')/

Lovely solution and introduction to spellbadword() (which I've
not seen/used before). However, I'm curious why you chose to use
printf("%s", ...) instead of just using the contents.

So my reworking of Christian's idea:

:%s/\w\+/\=empty(spellbadword(submatch(0))[0]))?'':submatch(0)/g

The other catch (at least in English) is that words like "can't"
aren't found whole by "\w\+", so you might have to tweak the
regexp or 'iskeyword' to include apostrophes.

-tim

--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

No comments:

Post a Comment