通常我只想按照#include它们的长度在源文件和头文件的顶部排序.
vim允许我以类似的方式按字母顺序排序:{range} sort u.
在vim,如何按行长度对一系列行进行排序?这样较短的线条后面跟着较长的线条.
搜索互联网,我发现了这个:
:% s/.*/\=printf("%03d", len(submatch(0)))."|".submatch(0)/ | sor n | %s/..../
Run Code Online (Sandbox Code Playgroud)
但这只能对整个文件进行排序,无论如何对我来说都是黑魔法.我试图找出如何使用范围从第4行到第18行进行同样的排序,如同:4,18 s/...你有任何想法吗?