def on_modified(self, view):
        generate_slug_from_title = PelicanPluginTools.load_setting(view, "generate_slug_from_title", True)
        if generate_slug_from_title != "title_change":
            return

        if not PelicanPluginTools.isPelicanArticle(view):
            return

        if self.isInTitleLine(view):
            view.run_command('pelican_generate_slug')
    def on_pre_save(self, view):
        generate_slug_from_title = PelicanPluginTools.load_setting(view, "generate_slug_from_title", True)
        if generate_slug_from_title != "save":
            return

        if not PelicanPluginTools.isPelicanArticle(view):
            return

        slug_region = view.find(':?slug:\s*.+', 0, sublime.IGNORECASE)
        if slug_region:
            slug_line = view.substr(view.line(slug_region.begin()))
            regex = re.compile(":?slug:(.*)", re.IGNORECASE)
            find_all = regex.findall(slug_line)
            if len(find_all) > 0:
                slug_str = find_all[0].strip()

                if len(slug_str) > 0:
                    force_slug_regeneration = PelicanPluginTools.load_setting(view, "force_slug_regeneration", False)
                    if not force_slug_regeneration:
                        return

        view.run_command('pelican_generate_slug')