On Jul 19, 3:11 am, "Christian Brabandt" <cbli...@256bit.org> wrote: > On Thu, July 19, 2012 08:20, sinbad wrote: > > with the following insert mode mapping, if i type "test<space>oe", i'll > > get > > double space between "test one", can i change the mapping to always have > > atmost one <space> > > > inoremap oe <space>one<space> > > Use an expression mapping: > > fu! Map(arg) > return (col('.') == 1 || getline('.')[col('.')-2] =~ '\S' ? ' ' : ''). > a:arg. ' ' > endfu > > iunmap oe > inoremap <expr> oe Map('oe') > > regards, > Christian
can we perform some action inside the map function. i have this " normal /;<CR>" inside the Map(), it doesn't seem to be working, it just prints '0', can't map functions do that ? -- 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