On Fri, Nov 03, 2006 at 09:45:22PM +0800, Eddy Zhao wrote: > Hi All, > > I Have the below configuration in vimrc > inoremap <ESC> <ESC>:set imd<CR> > nnoremap i :set noimd<CR>i > > Press "Esc" to change from insert mode to normal mode DO > disable the input method. > > But after that, when I press "i" to change from normal mode > back to insert mode, the input method is not enbabled (in > other words, I have to press C-SPACE to bring back the input > method). > > I've tried on below software enviroment, all doesn't get things > work (vim is with xim support) > - fc5+ion3+scim+vim7.0(selfbuild & officalrpm) > - fc6+gnome+scim+vim7.0(selfbuild & officalrpm) > > Meanwhile, the configuration works on windows. > > I've posted on mailing list similar problem before, but get no > solution, the feature is so important, so I'm posting it again. > Hope someone have the solution. > > Thanks > Eddy
I tried this on FC2: :set stl=%{&imd} :inoremap <ESC> <ESC>:set imd<CR> :nnoremap i :set noimd<CR>i The first line (along with my usual :set laststatus=2) means that I can check my 'imd' setting in the status line. When I go between Normal and Insert modes with i and <Esc>, it changes from 1 to 0 and back, so I think it is working. Please try this and see whether you get anything different. Also, try it with $ vim -u NONE :set nocp If you get the same results but are still having trouble, then the problem might be some other setting. HTH --Benji Fisher