Vim Tips Wiki

Abbreviation that prompts whether to expand it or not

1,613pages on
this wiki
Revision as of 00:58, November 29, 2009 by Ipkiss (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Tip 650 Printable Monobook Previous Next

created February 4, 2004 · complexity basic · author Yakov Lerner · version 6.0

You can define an abbreviation in such a way that it will ask whether to expand it or not. The trick is to define it as an expression, then have that expression ask for confirmation:

function! s:Ask(abbr,expansion,defprompt)
  let answer = confirm("Expand '" . a:abbr . "'?", "&Yes\n&No", a:defprompt)
  " testing against 1 and not 2, I correctly take care of <abort>
  return answer == 1 ? a:expansion : a:abbr

iabbrev <expr> for <SID>Ask('for', "for () {\n}", 1)



Around Wikia's network

Random Wiki