El 2 de junio de 2010 16:48, Pablo Giménez <[email protected]> escribió:

> Thanks guys works like a charms. I am using Christian's version.
> I prefer the second name:
> JustifyHelpHeader
>
> 2010/6/2 Christian Brabandt <[email protected]>
>
> On Wed, June 2, 2010 3:46 pm, David Fishburn wrote:
>> > On 02/06/2010 8:54 AM, Christian Brabandt wrote:
>> >> On Wed, June 2, 2010 1:30 pm, Jürgen Krämer wrote:
>> >>
>> >>> The replacement text
>> >>>
>> >>>    \=submatch(1) . repeat(' ',&tw ?&tw :&wm ? winwidth(0) -&wm :
>> >>> winwidth(0) - len(submatch(1)) - len(submatch(2))) . submatch(2)
>> >>>
>> >>>
>> >> Shouldn't that be something like that
>> >> \=submatch(1) . repeat(' ', (&tw ?&tw :&wm ? winwidth(0) -&wm :
>> >> winwidth(0)) - len(submatch(1)) - len(submatch(2))) . submatch(2)
>> >>
>> >> (note that added paranthesis...)
>> >>
>> >> Also, one should be aware, that len and strlen returns the byte length
>> >> of its argument, but one rather would like to have the character width.
>> >> That would mean, one needs to do
>> >> len(substitute(submatch(1), '.', 'x', 'g')) to return the character
>> >> width.
>> >>
>> > I wrapped that into a command:
>> > command! FullJustifyHelpLine
>> > :s/^\s*\(.\{-\}\)\s\+\(\*.*\*\)\s*$/\=submatch(1) . repeat(' ', (&tw ?
>> > &tw : &wm ? winwidth(0) - &wm : winwidth(0)) - len(submatch(1)) -
>> > len(submatch(2))) . submatch(2)/<CR>
>> >
>>
>> I have a different suggestion, if I may ;)
>> :s/^\s*\(.\{-\}\)\s\+\(\*.*\*\)\s*$/\=printf("%s%*.s%s", submatch(1),
>> ((&tw?&tw:&wm?winwidth(0)-&wm:winwidth(0)) -
>> len(split(submatch(1).submatch(2),'\zs'))), ' ', submatch(2))/
>>
> I have made a variation of this command to support |tags| and not only
*tags* :
command! JustifyHelpHeader :silent!
s/^\s*\(.\{-\}\)\s\+\([*|].*[*|]\)\s*$/\=printf("%s%*.s%s",
submatch(1),((&tw?&tw:&wm?winwidth(0)-&wm:winwidth(0)) -
len(split(submatch(1).submatch(2),'\zs'))), ' ', submatch(2))/


>> This should be a little bit shorter and should work with multibyte glyphs
>> as well.
>>
>> > So, with your cursor on that line, simply run:
>> > :FullJustifyHelpLine
>> >
>> > Can anyone think of a better name :-)
>>
>> JustifyHelpHeader
>>
>> regards,
>> Christian
>>
>> --
>> 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
>>
>
>
>
> --
> Un saludo
> Best Regards
> Pablo Giménez
>



-- 
Un saludo
Best Regards
Pablo Giménez

-- 
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

Reply via email to