请问VIM怎么将每行按数字大小排序啊?谢谢!

Vim、Emacs配置和使用
回复
guang3000
帖子: 11
注册时间: 2012-03-24 12:48

请问VIM怎么将每行按数字大小排序啊?谢谢!

#1

帖子 guang3000 » 2012-04-17 23:59

用了sort!命令,只能排到下面这种程度。请问怎么将每行按数字大小排序啊? 请高手指点,谢谢!

9.2
9
6.1
5.3
4.8
3
3
2
11.2
1.9
1.2
0.3
0
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 请问VIM怎么将每行按数字大小排序啊?谢谢!

#2

帖子 lilydjwg » 2012-04-18 0:14

Vim 只能按整数排序,不能按浮点数排。sort 命令也一样。我试试用 Python 写个好了。
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 请问VIM怎么将每行按数字大小排序啊?谢谢!

#3

帖子 lilydjwg » 2012-04-18 0:16

代码: 全选

:py import vim
:py b = vim.current.buffer
:py b[:] = sorted(b, key=lambda x: float(x.split()[0]))
Python 果然好用 ;-)
回复