sorting - 如何在 Vim 中根据标题对段落进行排序?

标签 sorting vim

假设我们有以下段落,它们之间用空行分隔:

B Heading
Lorem ipsum 1.
Lorem ipsum 2.

A Heading
Lorem ipsum 3.
Lorem ipsum 4.

如何根据标题对这些段落进行排序并获得以下文本?
A Heading
Lorem ipsum 3.
Lorem ipsum 4.

B Heading
Lorem ipsum 1.
Lorem ipsum 2.

最佳答案

一种解决方案是在排序之前连接您的段落。

说你不使用@文本中的符号,您可以使用:

:%s/\(.\+\)\n/\1@//

要做到这一点。然后你可以用
:sort

最后进行相反的操作以恢复您的段落:
:%s/@/\r/g

关于sorting - 如何在 Vim 中根据标题对段落进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24098930/

相关文章:

javaFx 单选按钮和文本字段用户选择和用户输入

c++ - 用仿函数错误排序

vim - 如何让 vim 正确呈现阿拉伯文本?

vim - 不同的vim环境: separate plugins, vimrc等

vim - 命令模式下回车键是什么意思?

javascript - 有没有办法让对象过滤器在没有命名引用的情况下传递对象?

android - Android 聊天消息的可排序唯一 ID

vim - 我可以用 vim 创建无限的标记吗?

vim - Vim 中最近的文件历史记录?

c# - 在 C# 中对 XmlSerializer 的输出进行排序