コード例 #1
0
    def replace(self, edit, r, text):
        if edit.edit_token == 0:
            raise ValueError(
                "Edit objects may not be used after the TextCommand's run method has returned"
            )

        sublime_api.view_replace(self.view_id, edit.edit_token, r, text)
コード例 #2
0
    def run(self, edit):
        self.window = sublime.active_window()
        self.view = self.window.active_view()
        self.settings = sublime.load_settings("Papyrus.sublime-settings")
        self.language = re.sub(r"(?i)(?:(\w+/)|(\.(\w+-\w+)))", "",
                               self.view.settings().get('syntax').lower())
        self.regex = self.load_regex_from_file()

        #{ "command": "set_setting", "args": {"setting": "tab_size", "value": 4}, "caption": "Tab Width: 4", "checkbox": true },
        #{ "command": "expand_tabs", "caption": "Convert Indentation to Spaces", "args": {"set_translate_tabs": true} },
        #{ "command": "unexpand_tabs", "caption": "Convert Indentation to Tabs", "args": {"set_translate_tabs": true} }
        self.window.run_command("set_setting", {
            "setting": "tab_size",
            "value": 4
        })
        self.window.run_command("unexpand_tabs", {"set_translate_tabs": True})
        #replace(r"( {2})", r"\t") <- with 2 being whatever the tab_size WAS BEFORE CHANGE

        line_regions = self.view.split_by_newlines(
            sublime.Region(0, self.view.size()))

        for region in line_regions:
            line_text = self.view.substr(self.view.line(region))

            for word in self.view.substr(region).split(' '):
                for reg in self.regex:
                    match = re.search(reg, word, re.IGNORECASE)

                    if match:
                        matched = self.fold_hex(self.view, region,
                                                match.group())
                        line_text = line_text.replace(
                            matched, self.format_match(matched, reg))

            sublime_api.view_replace(self.view.view_id, edit.edit_token,
                                     self.view.line(region), line_text)
        sublime.status_message("Pretty Print – Papyrus")
コード例 #3
0
ファイル: sublime.py プロジェクト: ronnyzxr/aml
 def replace(self, edit, r, text):
     sublime_api.view_replace(self.view_id, edit.edit_token, r, text)
コード例 #4
0
ファイル: sublime.py プロジェクト: twolfson/sublime-files
    def replace(self, edit, r, text):
        if edit.edit_token == 0:
            raise ValueError("Edit objects may not be used after the TextCommand's run method has returned")

        sublime_api.view_replace(self.view_id, edit.edit_token, r, text)