【问题标题】:Formatting columns of text in vim (alignment)格式化vim中的文本列(对齐)
【发布时间】:2021-12-11 14:54:35
【问题描述】:

除了录制动作之外,是否有任何捷径可以使用 vim 快速编辑此内容,然后应用于所有行?

发件人:

French Polynesia  French Polynesian
Gambia The Gambian
Georgia Georgian
Ghana Ghanaian
Grenada Grenadian
Guam  Guamanian

收件人:

French Polynesia  French Polynesian
Gambia            The Gambian
Georgia           Georgian
Ghana             Ghanaian
Grenada           Grenadian
Guam              Guamanian

【问题讨论】:

  • 内置?不,无论如何,输入文本没有清晰的结构,因此这里的自动化/优化空间很小。如果那是 TSV,那么它可能可行,但没有 <Tab>GambiaThe Gambian 分开,所以你的前景非常糟糕。
  • @romainl,如果有任何捷径,我可以从 The Cambian 中删除 The The Cambian。 (然后加回来)
  • 请编辑问题以将其限制为具有足够详细信息的特定问题,以确定适当的答案。

标签: vim macvim


【解决方案1】:

如果您可以用下面的连字符替换空格(从您的示例中,它是 很难为这个初始步骤提供一个我确信会使用的方法 您的数据中可能存在的其他变化):

French-Polynesia  French-Polynesian
Gambia The-Gambian
Georgia Georgian
Ghana Ghanaian
Grenada Grenadian
Guam  Guamanian

然后你可以运行%!column -t 得到这个:

French-Polynesia  French-Polynesian
Gambia            The-Gambian
Georgia           Georgian
Ghana             Ghanaian
Grenada           Grenadian
Guam              Guamanian

然后执行%s/-/ /g 来达到这个目的:

French Polynesia  French Polynesian
Gambia            The Gambian
Georgia           Georgian
Ghana             Ghanaian
Grenada           Grenadian
Guam              Guamanian

【讨论】:

    猜你喜欢
    • 2021-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-17
    • 1970-01-01
    • 1970-01-01
    • 2021-01-16
    相关资源
    最近更新 更多