toggl track 插件一键重载

自从发现quickadd的macro的强大之后,就一发不可收拾。
自己在ob用了toggl track,非常好用,只是有个问题,容易卡死,需要手动关掉再打开该插件。
之前搜过解决方案是,有个大神自己写了个插件来重载它。
现在发现了macro的好用,想着能不能简单点,用个轻量的脚本实现。成功!
效果:
1716282831000-ezgif.com-video-to-gif-converter

方法:

  1. ob中新建一个js脚本,如restart.js
  2. quickadd 的macro添加该脚本并点:zap:到命令面板
  3. 使用commander装载到菜单栏里。
  4. 点击就能重载啦~

restart.js内容如下

module.exports = {
    entry: async (QuickAdd, settings, params) => {
      const pluginId = "obsidian-toggl-integration";
      
      const pluginManager = app.plugins;
      
      if (!pluginManager.plugins[pluginId]) {
        console.log(`插件 ${pluginId} 未安装`);
        return;
      }
      
      await pluginManager.disablePlugin(pluginId);
      console.log(`插件 ${pluginId} 已禁用`);
      
      // 等待一段时间以确保插件完全禁用
      await new Promise(r => setTimeout(r, 1000));
      
      await pluginManager.enablePlugin(pluginId);
      console.log(`插件 ${pluginId} 已启用`);
      
      console.log(`插件 ${pluginId} 已重载`);
    },
    settings: {
        name: "重载Toggl Track插件",
        author: "suosuo",
        options: {}
      }
  };
  
2 个赞

谢谢, 有时需要 “频繁开启禁用某插件”, 这个法子挺好用