> Hello,
> Or in other words. It will be easier to reconfigure and use Vim as
> prototype of a specific edit-component instead of programming the
> prototype in any language.
Try this:
fun! ExecuteCommand(char)
let pos = getpos('.')
let beforeline=getline('.')[0:pos[1]]
let command = matchstr(beforeline, '.*!\zs[^ !]*$')
" check for !!, ignore that
let idx = len(beforeline)-len(command)-2
echoe
if command=="" || (idx >=0 && beforeline[idx] == '!')
return a:char
else
exec command
return repeat("\<bs>", len(command)+1)
endif
endf
inoremap <space> <c-r>=ExecuteCommand(" ")<cr>
" this <cr> does not work for some reason. If you care about it I'll
" investigae
inoremap <cr> <c-r>=ExecuteCommand("\<cr>")<cr>
Not that Vim can define custom commands starting with upper case letters
only.
Marc Weber
--
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