分页: 1 / 1
VIM或emacs可以按成排列工作吗
发表于 : 2009-08-02 9:44
由 jsjcjsjc
例如
lsdask
sadfhsiadlf
asdifj
sadfh sila
sdajf lsa
sda fas
asdi fjioasdf
aosdlfh
我想将上面的文字按照从短到长的方法排列
如下
a
sad
asdasd
asdasd as
asasd.sdasda
asdas.asdasdasd
office或者VIM.emacs能办到吗
Re: VIM或emacs可以按成排列工作吗
发表于 : 2009-08-02 10:32
由 O_O_BOT
cat file | while read line;do echo "${#line} $line";done | sort -n -k 1| cut -d" " -f2-
vim 用过滤就是了
Re: VIM或emacs可以按成排列工作吗
发表于 : 2009-08-02 21:07
由 jsjcjsjc
超级帅哥 可以说的详细一点吗是输入:之后就把
cat file | while read line;do echo "${#line} $line";done | sort -n -k 1| cut -d" " -f2-
黏在后面?
Re: VIM或emacs可以按成排列工作吗
发表于 : 2009-08-02 21:42
由 jsjcjsjc
PS 我是windows平台下的
Re: VIM或emacs可以按成排列工作吗
发表于 : 2009-08-02 21:48
由 sarrow
有一个办法,把行长添加到每行的头部(注意长度),然后:sort
最后Block选择模式下,删除行号即可。
添加行长:
:%s#^#\=printf("%4d ", len(getline('.')))#g
Re: VIM或emacs可以按成排列工作吗
发表于 : 2009-08-02 21:58
由 jsjcjsjc
sarrow 写了:有一个办法,把行长添加到每行的头部(注意长度),然后:sort
最后Block选择模式下,删除行号即可。
添加行长:
:%s#^#\=printf("%4d ", len(getline('.')))#g
厉害谢谢
Re: VIM或emacs可以按成排列工作吗
发表于 : 2009-08-02 21:59
由 O_O_BOT
:%s/^/\=col('$')." "/
:%sort n
:%s/\d\+ //
vim this
Re: VIM或emacs可以按成排列工作吗
发表于 : 2009-08-02 22:06
由 sarrow
O_O_BOT的更简洁,更命令化。
Re: VIM或emacs可以按成排列工作吗
发表于 : 2009-08-02 23:46
由 jsjcjsjc
应该做一个键盘映射 方便啊~~
Re: VIM或emacs可以按成排列工作吗
发表于 : 2009-08-02 23:48
由 jsjcjsjc
怎么把这3条命令一起合并在F5?
Re: VIM或emacs可以按成排列工作吗
发表于 : 2009-08-03 1:24
由 ChloeRei
= =哇,我会去写个ruby脚本搞了
Re: VIM或emacs可以按成排列工作吗
发表于 : 2009-08-18 10:34
由 hjjdebug
jsjcjsjc 写了:怎么把这3条命令一起合并在F5?
map <F3> :%s/^/\=col('$')/<CR>:%sort n<CR>:%s/\d\+//<CR>