FR: 希望加入插件启停模板
hustrjh opened this issue · comments
首先感谢大佬的无私奉献!
我在平时实际使用示例库时有一个问题,就是插件太多,启动较慢,有些插件也不是用不上,只是不是每次都需要用。如果一并禁用,要用时再启用,操作较麻烦,如果一并启用,使用频率不高,还影响每次启动速度。所以受FastStartup模板的启发,我改写了一份插件启停模板,代码贴在下方,希望加入示例库,方便更多人。
模板文件
<%*
let myEn= await tp.system.suggester( ["启用", "停用"], [1, 0]);
let myChoice = await tp.system.suggester( ["编辑增强", "表格增强", "显示加强", "全部",], ["Edit+", "Table+", "View+", "All"]);
var i;
var num;
var pluginArr = [];
-%>
<%*
//函数定义
fastSwitch = async (choice, en) => {
switch(choice)
{
case "Edit+":
//pluginArr.splice(0, 0, "editing-toolbar", "obsidian-outliner");
pluginArr=pluginArr.concat(["editing-toolbar", "obsidian-outliner", "various-complements", "number-headings-obsidian"]);
break;
case "Table+":
pluginArr=pluginArr.concat(["notion-like-tables", "dbfolder", "obsidian-charts", "obsidian-echarts", "obsidian-yaml-database"]);
break;
case "View+":
pluginArr=pluginArr.concat(["obsidian-quiet-outline", "obsidian-react-components", "ProxyGithub"]);
break;
case "All":
pluginArr=pluginArr.concat(["editing-toolbar", "obsidian-outliner", "various-complements", "number-headings-obsidian", "notion-like-tables", "dbfolder", "obsidian-charts", "obsidian-echarts", "obsidian-yaml-database", "obsidian-quiet-outline", "obsidian-react-components", "ProxyGithub"]);
break;
}
num = pluginArr.length;
switch(en)
{
case 1:
for(i=0;i<num;i++)
{
await app.plugins.enablePlugin(pluginArr[i]);
}
break;
case 0:
for(i=0;i<num;i++)
{
await app.plugins.disablePlugin(pluginArr[i]);
}
break;
}
}
//函数调用
await fastSwitch(myChoice, myEn);
-%>
使用方法
这是一个Templater模板
,放入模板文件夹即可。
- 使用时调用这份模板,先选择启用、停用插件。
- 根据需求选择对应的选项,每个选项内的插件个数和名称都是自定义的,根据需求把相关插件放一起启用、停用。我发现
editing-toolbar
、obsidian-outliner
、various-complements
这几个插件启动消耗资源较多,建议不用每次都随软件启动。
优点
- 通过模板启用同类多个插件后,下次再开启Obsidian时不会自动启用,不影响启动速度。我也曾尝试使用Advanced URI启停插件,这种方式只能一个一个启停,同时启停的效果下次再启动Obsidian时仍会保留,十分不便。
- 启停什么插件及数量都是可以自定义的,之所以不用js方式,就是因为js不方便在Obsidian中查看和修改。
- 以后安装、使用多少插件都更加灵活自由,无需担心影响启动速度,使用也方便。
说明
- 除了在启动Obsidian时就必须同时启用的插件外,其它插件都需要先手动禁用,否则这些没禁用的插件仍会随软件启动。
- 这份模板想使用的更方便,至少
将模板绑定快捷键
或者通过Buttons插件新建按钮
。不建议QuickAdd方式,模板本身不产生新文件,但通过QuickAdd新建模板就会产生一个空文件。
很棒! 感谢你的模板,下一版本会集成,谢谢!
谢谢大佬的认可! 😄 这份模板只是抛砖引玉,希望这份模板能在大佬的改造和集成下更方便修改和使用! 👍 👍 👍
已添加到最新的示例库中 感谢!