你们怎么都不看我的 vimrc。。。。
https://github.com/lilydjwg/dotvim/blob/master/vimrc#L532-533
nmap <silent> to :call append('.', '')<CR>j
nmap <silent> tO :call append(line('.')-1, '')<CR>k
--
Best regards,
lilydjwg
Linux Vim Python 我的博客
http://lilydjwg.is-programmer.com/
--
要退订此论坛,请发邮件至 vim-cn+un...@googlegroups.com
更多选项,请通过 http://groups.google.com/group/vim-cn 访问该论坛
--
设置无误的话在关键字上按 K 就可以看到 manual 了。
不过看manual还是有点找不着头绪的感觉。大多数时候都靠google
懒得弄那么复杂了。真要加那么多空行的话,用 9o<Esc> 不就好了嘛。当然,如
果有人愿意写 patch 的话我会很高兴的 ;-P
On Thu, Sep 22, 2011 at 06:07:11PM +0800, Jacky Liu wrote:> 这样一次只能加一行,不能 9to
> 2011/9/21 依云 <lily...@gmail.com>
>
> > On Wed, Sep 21, 2011 at 07:57:09PM +0800, unbutun wrote:
> > > 那空行用啥来表示呢?
> >
> > 你们怎么都不看我的 vimrc。。。。
> >
> > https://github.com/lilydjwg/dotvim/blob/master/vimrc#L532-533
> >
> > nmap <silent> to :call append('.', '')<CR>j
> > nmap <silent> tO :call append(line('.')-1, '')<CR>k
>
懒得弄那么复杂了。真要加那么多空行的话,用 9o<Esc> 不就好了嘛。当然,如
果有人愿意写 patch 的话我会很高兴的 ;-P
:h v:count
:h v:countOn Thu, Sep 22, 2011 at 08:39:27PM +0800, Jacky Liu wrote:
> 2011/9/22 依云 <lily...@gmail.com>
>
> > On Thu, Sep 22, 2011 at 06:07:11PM +0800, Jacky Liu wrote:
> > > 2011/9/21 依云 <lily...@gmail.com>
> > >
> > > > On Wed, Sep 21, 2011 at 07:57:09PM +0800, unbutun wrote:
> > > > > 那空行用啥来表示呢?
> > > >
> > > > 你们怎么都不看我的 vimrc。。。。
> > > >
> > > > https://github.com/lilydjwg/dotvim/blob/master/vimrc#L532-533
> > > >
> > > > nmap <silent> to :call append('.', '')<CR>j
> > > > nmap <silent> tO :call append(line('.')-1, '')<CR>k
> > >
> > > 这样一次只能加一行,不能 9to
> >
> > 懒得弄那么复杂了。真要加那么多空行的话,用 9o<Esc> 不就好了嘛。当然,如
> > 果有人愿意写 patch 的话我会很高兴的 ;-P
> >
> >
> 楼主的意思,大概是要免按这个 Esc 才是主要目的。但是我刚翻了一下 help,好像没有什么方法可以获得已输入的 [count] 。
上面那个有问题的。你试试在一个空文件里输入 10\\。
On Thu, Sep 22, 2011 at 09:07:31PM +0800, Jacky Liu wrote:
> 2011/9/22 依云 <lily...@gmail.com>
>
> > On Thu, Sep 22, 2011 at 08:39:27PM +0800, Jacky Liu wrote:
> > >
> > > 楼主的意思,大概是要免按这个 Esc 才是主要目的。但是我刚翻了一下 help,好像没有什么方法可以获得已输入的 [count] 。上面那个有问题的。你试试在一个空文件里输入 10\\。
> >
> > :h v:count
> >
> >
> Oh yea ... 我刚还正在试另一个解决方案:
>
> nnoremap \\ :call <SID>TestFunction()<CR>
>
> function! s:TestFunction() range
> let l:cnt= a:lastline - a:firstline + 1
> echomsg 'count ' . l:cnt . ' specified !'
> endfunction
>
> 是行得通的,但你这个似乎更好:
>
> nnoremap \\ :call <SID>TestFunction()<CR>
>
> function! s:TestFunction()
> echomsg 'count ' . v:count . ' specified !'
> endfunction
这个叫 code snip 不叫 patch.....
另外,我就是为了避免模式切换才会去做这个映射的。fcitx 3.6 的时候有些问题,
快速的调用 fcitx-remote 会导致死锁之类的。而我的 vim
在 Insert{Leave,Enter} 时会调用它。
On Thu, Sep 22, 2011 at 11:29:23PM +0800, Jacky Liu wrote:这个叫 code snip 不叫 patch.....
> 恩,所以除了 v:count 木有别的办法。
>
> patch:
>
> nnoremap to :<C-u>call <SID>InsertEmptyLines('o')<CR>
> nnoremap tO :<C-u>call <SID>InsertEmptyLines('O')<CR>
>
> function! s:InsertEmptyLines(op)
> if a:op == 'o'
> exe 'normal! ' . v:count1 . "o\<Esc>"
> else
> exe 'normal! ' . v:count1 . "O\<Esc>"
> if v:count1 > 1
> exe 'normal! ' . (v:count1-1) . 'k'
> endif
> endif
> endfunction
>
> 我已经加到我的 .vimrc 里了,但没有加那个 't'。
另外,我就是为了避免模式切换才会去做这个映射的。fcitx 3.6 的时候有些问题,
快速的调用 fcitx-remote 会导致死锁之类的。而我的 vim
在 Insert{Leave,Enter} 时会调用它。
--
要退订此论坛,请发邮件至 vim-cn+un...@googlegroups.com
更多选项,请通过 http://groups.google.com/group/vim-cn 访问该论坛
---
您收到此邮件是因为您订阅了Google网上论坛中的“Vim.cn”论坛。
要退订此论坛并停止接收此论坛的电子邮件,请发送电子邮件到vim-cn+un...@googlegroups.com。
要查看更多选项,请访问https://groups.google.com/d/optout。