gpt4 book ai didi

sublimetext2 - 有没有办法将所选文本提取到同一目录中的新文件中?

转载 作者:行者123 更新时间:2023-12-05 05:27:34 25 4
gpt4 key购买 nike

在 Sublime Text 中,有没有一种方法可以将选定的一段文本提取到一个单独的文件中?

我经常在 LaTeX 中这样做。考虑以下文件:

主.tex

\section{Introduction}
...
...

\section{Conclusion}

我希望能够选择从Introduction开始到Conclusion前一行的文本,右击然后说“Extract to file”(有点类似了解“提取方法”在 Visual Studio 中的工作方式)。有没有办法使用任何快捷方式实现此目的?

Bonus:提取完成后,将提取的文本替换为自定义文本,例如 \input{introduction} 其中 introduction 是文本被提取到的文件的名称。

最佳答案

没有内置内容,但可以通过插件轻松实现。请注意,以下是最低限度的测试,不会很好地处理 ST 中的所有内容。话虽如此,它应该是您入门的良好基础。为了安全起见,在大量使用它之前,我会把所有东西都放到本地 git 仓库中。讨厌这会导致失业。为了安全起见,我将要替换的内容复制到剪贴板,但如果您对此有信心,可以删除 sublime.set_clipboard(content)

import sublime
import sublime_plugin
import os
import re

class ExtractAndInput(sublime_plugin.TextCommand):
def run(self, edit):
view = self.view
self.region = view.sel()[0]
content = view.substr(self.region)
sublime.set_clipboard(content)
match = re.search(r"\\section{(.+?)}", content)
if match:
replace = "\\input{%s}" % match.group(1)
view.replace(edit, view.sel()[0], replace)
current = view.file_name()
new_file = "%s.tex" % match.group(1)
path = os.path.normpath(os.path.join(current, "..", new_file))
with open(path, "a") as file_obj:
file_obj.write("% Generated using ExtractAndInput Plugin\n")
file_obj.write(content)

保存插件后,您可以创建一个键绑定(bind)到 extract_and_input。您还可以通过在 Packages/User 中创建具有以下内容的 Context.sublime-menu 来添加上下文菜单。

[
{ "caption": "Extract to File", "command": "extract_and_input"}
]

关于sublimetext2 - 有没有办法将所选文本提取到同一目录中的新文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18745099/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com