反转 Sublime Text 中的所有文本行

Reverse all line of text in Sublime Text

我有一个包含多行的文件。 Sublime Text 3 中是否有反转整行的选项?喜欢

ABCDEFG

GFEDCBA

不在 Sublime Text 中,但在 Linux/OSX 中,rev command-line utility 就是这样做的 - rev file.txt 反转文件的每一行。

你最好肯定会采纳 Leonid 的建议并使用不同的工具,但如果你对如何在 Sublime 中做到这一点感到好奇,你有两个选择。


首先转到工具->新建插件并将以下代码粘贴到文件中:

import sublime, sublime_plugin

class ReverseCharactersCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        for region in self.view.sel():
            stringContents = self.view.substr(region)
            self.view.replace(edit, region, stringContents[::-1])

然后 select 您想要反转的文档的不同部分和 运行 来自控制台的后续命令

view.run_command("reverse_characters")

这是该工作流程的图像。

该代码的导入部分是:

stringContents[::-1]

这是在 Python.

中反转字符串的惯用方式

或者,您可以按照 git 存储库查看此存储库,它具有相同的代码和为您指定的方便的命令选项板选项:)

https://github.com/MattSeen/ST_ReverseCharacters

如果有人需要做下面的操作

12345
67890
abcde
  |
  to
  |
  v

abcde
67890
12345

单击编辑---->排列行--->反转 它将反转您在文件中选择的所有行。

在香草崇高中:

  1. Select 要反转的文本
  2. 打开查找菜单(Ctrl+F)
    • 确保 "In selection" 和 "Regular expression" 选项已启用
  3. 搜索.并点击"Find all" (+回车)
    • 现在选择的每个字符都用自己的光标突出显示。
  4. 点击Edit > Permute selections > Reverse

它并不优雅,但它很直接且可重复。如果您已经有了游标,那么您只需要执行第 4 步。