Hi everyone, I wrote this article. It's the first time I've done anything like it. I wish I knew more techniques of static analysis in particular, although I have a long way to improve all around. I'd love to hear comments and/or questions about anything written. I didn't want to put the specimen itself on my site for obvious reasons, but anyone here that is interested is welcome to ask and I'll be happy to share. Thanks for taking the time to read!
HN user
alphabethos
Hi!
I work for DuckDuckGo and happened to catch your article here. I noticed that despite your praise, a few of the engines you mentioned were missing bangs. We've just added !gigablast (!giga), !procog (!pc), and !verticalset (!vs). The rest already have !bangs (note that MSN/Live/Bing are the same, as are Altavista/Yahoo).
We also accept new !bangs at https://duckduckgo.com/newbang.html
Thanks!
I'm not sure exactly what you're looking for without knowing more what you mean by multi-line editing, but you can apply arbitrary commands (including inserts) to any set of lines.
Switches case on lines 4, 15:
:4,15 norm ~
Indents text and changes the first two words of ever line to "duck" from mark a to the end of the file
:'a,$ norm >>2cwduck
Prepends a # to every line of the visual selection
:'<'> norm I#
Applies regex to lines that match a regex
:g/ducks/ s/moo/quack
That may have something to do with it, but in practice, I find myself moving up/down (j/k) files far more often than I need to backtrack by a single character, and when I do, as often as not my pinky flies up to backspace (note this works by default only in Vim). It ends up being the most natural to keep your hands on the home row anyway.
USCF blitz chess is played this way. "Real time" chess seems more similar to blitz then standard chess to me, so I think this makes sense.