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
#
--------------------------------------------------------------------------- ---
> 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
> #
> --------------------------------------------------------------------------- ---
> > 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
> --
It also works using \t rather than the literal tab (^I):
> > I think, this will do:
> > :v/^^I/.,/^^I/-sort
> > where ^I is a literal tab.
> > regards,
> > Christian
> > --
> It also works using \t rather than the literal tab (^I):
> :v/^\t/.,/^\t/-sort
> Bill
> --
> 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
>> 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?
> --
> 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
On Fri, Sep 14, 2012 at 10:56 AM, ping <songpingem...@gmail.com> 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)
try to press <TAB> key directly in command line. it does work fine. :-)
> 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?
> --
> 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<http://www.vim.org/maillist.php>
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