在Sublime Startup上启用自动保存文件插件

时间:2017-12-07 19:41:11

标签: sublimetext3 sublimetext sublime-text-plugin autosave

如何在Sublime Text 3启动时自动启用Sublime Text的 AutoSave 插件?

link to auto-save is here

1 个答案:

答案 0 :(得分:1)

这个特殊的软件包本身并不支持在Sublime启动时自动启用它的想法,所以为了实现这个目的,需要一个小插件来实现这一点,我已经在下面发布了。

要使用此插件,请从菜单中选择Tools > Developer > New Plugin...,然后使用以下代码替换呈现给您的存根插件代码,并将文件保存在Sublime默认使用的位置(您的{ {1}} package)作为Python文件,例如User

auto_save_on_startup.py

编辑: 此插件的原始版本直接名为import sublime import sublime_plugin # Sublime executes this every time it loads the plugin, which includes when # it first starts, as well as whenever the this file changes on disk. def plugin_loaded(): settings = sublime.load_settings("auto_save.sublime-settings") if settings.get("auto_save_toggle_at_startup", False): sublime.set_timeout(lambda: sublime.run_command("auto_save"), 1000) ;但是,Sublime在完全添加插件提供的所有命令类之前调用​​run_command端点,因此可以尝试在命令可用之前运行该命令。

上面的代码已被修改,以便在命令触发之前施加延迟,以使命令有时间可用。

正如评论所暗示的,每次Sublime加载一个插件文件时,它都会执行该插件文件中的plugin_loaded函数,如果它恰好存在的话。

此处代码会检查自动保存包设置,以查看您是否已将值plugin_loaded()设置为auto_save_toggle_at_startup,如果有,则会调用自动保存包中的命令将其打开

因此,您还需要从菜单中选择true并添加适当的设置。如果您使用的是MacOS,则首选项位于菜单中的Preferences > Package Settings > Auto-save > Settings - User下。

如果出现空文件(因为您使用的是默认设置),则应在文件中输入以下内容并保存。否则,您只需将设置本身添加到现有设置即可。

Sublime Text

这里的评论提醒我们,这个设置是由包裹本身以外的东西提供的,万一你忘记了。

由于插件命令只会在加载时切换自动保存的状态,您必须在添加插件之前添加设置,保存插件文件以使Sublime在设置到位后重新加载,或重新启动Sublime。

或者,您可以将{ // Toggle auto save at startup (from User/auto_save_on_startup.py) "auto_save_toggle_at_startup": true } 函数替换为仅包含plugin_loaded()行,以无条件地始终在启动时切换状态,但您可能希望暂时停止它在将来某个时候执行此操作,只需切换设置即可轻松完成。