On Fri, September 14, 2012 02:56, ping wrote:
> On 9/13/2012 3:21 PM, Christian Brabandt wrote:
>> Hi William!
>>
>> On Fr, 14 Sep 2012, William Fugh wrote:
>>
>>> Hi folks,
>>>
>>> As the title. How to sort only the non-TAB-beginning line(s) of a
>>> TAB-Based
>>> file like the below and keep the format? thanks!
>>> #
>>> ------------------------------------------------------------------------------
>>> Origin:
>>> #
>>> ------------------------------------------------------------------------------
>>> for openers
>>> want out
>>> a load of old cobblers
>>> want for
>>>          5. one
>>>          6. two
>>>          7. three
>>> muck about
>>> muck around
>>>          20. one
>>>          21. two
>>>          22. three
>>> bottom on
>>>          24. one
>>>          25. two
>>>          26. three
>>> lark around
>>> lark about
>>> darkred
>>>          29. one
>>>          30. two
>>>          31. three
>>> #
>>> ------------------------------------------------------------------------------
>>> Expect to see after sorting:
>>> #
>>> ------------------------------------------------------------------------------
>>> a load of old cobblers
>>> for openers
>>> want for
>>> want out
>>>          5. one
>>>          6. two
>>>          7. three
>>> muck about
>>> muck around
>>>          20. one
>>>          21. two
>>>          22. three
>>> bottom on
>>>          24. one
>>>          25. two
>>>          26. three
>>> darkred
>>> lark about
>>> lark around
>>>          29. one
>>>          30. two
>>>          31. three
>>> #
>>> ------------------------------------------------------------------------------
>>
>> I think, this will do:
>> :v/^^I/.,/^^I/-sort
>>
>> where ^I is a literal tab.
>>
>>
>> regards,
>> Christian
>>
>
> interestingly, I tested it, this doesn't give the expected result.
>
> //screen capture (that ^I is ctrl-v ctrl-i)
>      1 for openers
>      2 want out
>      3 a load of old cobblers
>      4 want for
>      5         5. one
>      6         6. two
>      7         7. three
>      8 muck about
>      9 muck around
>     10         20. one
>     11         21. two
>     12         22. three
>     13 bottom on
>     14         24. one
>     15         25. two
>     16         26. three
>     17 lark around
>     18 lark about
>     19 darkred
>     20         29. one
>     21         30. two
>     22         31. three
>    ~
>    ~
>    ~
>    ~
>    ~
> :v/^^I/.,/^^I/-sort
>
> maybe we need that range-end (/^^I/) to be one line back?

I can't reproduce it and it works for me.

BTW: the range .,/^\t/- already backs up one line, see :h :range

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

Reply via email to