Obsidian 插件:Cron

Obsidian 插件:Cron

插件名片

  • 插件名称:Cron
  • 插件作者:Callum Loh
  • 插件说明:简单的 CRON /调度程序插件,定期运行用户脚本或 Obsidian 命令。
  • 插件分类:[‘obsidian 插件 ’, ‘readme’]
  • 项目地址:点我访问
  • 国内下载地址:下载安装

概述

简单的 CRON /调度程序插件,定期运行用户脚本或 Obsidian 命令。

原文出处

下面自述文件的来源于 Readme


Readme(翻译)

下面是 cron 插件的自述翻译

Obsidian Cron 插件

Obsidian Cron 是 Obsidian.md 的一个插件,允许用户在预定的时间自动运行 Obsidian 命令或自定义用户脚本。

安装

要安装 Obsidian Cron,您可以通过 Obsidian 中的社区软件包下载,或者手动下载最新版本并手动添加。

用法

在插件设置页面中添加作业。

每个作业需要:

  1. 一个名称

  2. 要运行的 Obsidian 命令

  3. 一个 cron 调度语法表达式

    • 这将是作业运行的频率。如果需要帮助编写 cron 调度,请访问 crontab.guru

每个作业还有三个可切换的选项:

  1. 启用在移动设备上运行作业

    • 默认情况下,所有作业都不在移动设备上运行。
  2. 切换作业锁定

    • 如果作业由于错误日志而卡住,您可以在此处切换状态。有关更多详细信息,请参阅 锁定
  3. 切换同步检查

    • 在每个作业的基础上切换同步检查功能。有关更多详细信息,请参阅 同步

功能性

API / UserScripts

通过 Javascript 公开了一个 API 来添加用户函数。名称被视为作业的 UUID,以确保在 Obsidian 重新加载时保持一致,以确保锁定/上次运行的数据可用。

Obsidian 应用程序的一个实例作为第一个和唯一的参数传递给所有用户函数。

要清除通过 API 添加的作业的锁定,您可以添加一个具有相应名称的作业,然后将名称传递给 API 中的 clearJobLock(name: string) 函数。

用户函数的示例


const cron = app.plugins.plugins.cron.api;

cron.addCronJob('addCronJob', "* * * * 3", {"enableMobile": true}, function(app){console.log('Job has ran!')});

同步

Obsidian cron 可以与原生的 Obsidian Sync 插件进行连接。当启用时,所有的锁定、cron 运行和命令都会在运行任何 cron 作业之前等待 Obsidian Sync 完全完成。

如果您有多个 Obsidian 实例正在运行,并且希望确保 cron 作业仅在一个设备上运行或每个 Obsidian vault 只运行一次,这将非常有用。

在每个 cron 作业开始时,会将一个锁保存到插件设置中,以阻止多个相同作业的实例运行。有时,如果作业没有干净地完成,它们可能会保留锁定状态。可以在插件的设置页面上解锁它们。

许可证

Obsidian Cron 是根据 MIT 许可证发布的。有关更多信息,请参阅 LICENSE 文件。



反馈交流

其他渠道

版权声明