Ответ на сообщение «Re: how to display registers 0-9?- concise way & enhanced 
#,*», 
присланное в 16:50:14 09 августа 2010, Понедельник,
отправитель yosi izaq:

> Any idea re. how to search for WORD with */# shortcuts?- Can I make a
> map like \* \# for that?- Or is there already a common mapping that
> does the same?

There are two ways:
1. Somewhat destructive, but the most simple: yank the word and search for it:
       noremap <special> \* yiW/<C-r>=escape(@", '^$*~[]\')<CR>
2. Custom function, like I use in my transliteration plugin to transliterate 
current word:
            let s:tWregs=[['\(\S*\)', '\(\S\+\|\%$\)'],
                         \['\(\s*\)', '\(\s*\)'      ],]
            function s:LRmatch(patlist)
                let line=getline('.')
                let column=col('.')
                let match=[]
                let i=0
                let lpatlist=len(a:patlist)
                while i<lpatlist && (match==[] || match[0]=='')
                    let pattern=a:patlist[i][0].'\%'.column.'c'.a:patlist[i][1]
                    let match=matchlist(line, pattern)
                    let i+=1
                endwhile
                let lmatch=match[1]
                let rmatch=match[2]
                return escape(lmatch.rmatch, '^$*~[]\')."\n"
            endfunction
            " You cannot use script global variables in mappings, but you can 
            " define a wrapper function
            function s:Eval(str)
                return eval(a:str)
            endfunction
            noremap <expr> \* "/".<SID>LRmatch(<SID>Eval('s:tWregs'))
            noremap <expr> \# "?".<SID>LRmatch(<SID>Eval('s:tWregs'))

This is a bit complicated, but it does not do anything with registers content 
(except current search register @/, of course)

> Your answer to first part if helpful, though I didn't understand
> what's probably Russian.

Yes, it is russian:
Ответ на сообщение «...» -> reply to the message «TOPIC»
присланное в ...         -> sent on DATE
отправитель ...          -> sender NAME
Текст сообщения:         -> Message text:

Текст сообщения:
> On Thu, Aug 5, 2010 at 8:44 PM, ZyX <zyx....@gmail.com> wrote:
> > Ответ на сообщение <<how to display registers 0-9?- concise way &
> > enhanced #,*>>, присланное в 16:54:56 05 августа 2010, Четверг,
> > 
> > отправитель Yosi Izaq:
> >    execute 'registers '.join(range(0, 9))
> > 
> > ? ``execute'' may be truncated to ``exe'', ``registers'' to ``reg','
> > other part cannot by truncated, but ``j<tab>'' gives ``join('' and
> > ``r<tab>'' gives ``range(''.
> > 
> > Текст сообщения:
> >> Hi,
> 
> Hi ZyX,
> 
> Your answer to first part if helpful, though I didn't understand
> what's probably Russian.
> Thanks!
> 
> Any idea re. how to search for WORD with */# shortcuts?- Can I make a
> map like \* \# for that?- Or is there already a common mapping that
> does the same?
> 
> Thanks,
> Yosi

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to