ianm / flarum-diff
Requires
- ext-json: *
- flarum/core: ^1.0.0
- jfcherng/php-diff: ^6.7.1
Suggests
- the-turk/flarum-quiet-edits: Recommended if you want to save storage volume
Conflicts
- dem13n/nickname-changer: >=0.1.0
- the-turk/flarum-edit-notifications: <0.1.4
Replaces
- dev-master
- 3.0.0
- 2.1.0
- 2.0.0-beta.1
- 1.0.8
- 1.0.7
- 1.0.6
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- 0.2.0-beta.1
- 0.1.0-beta.7
- 0.1.0-beta.6
- 0.1.0-beta.5
- 0.1.0-beta.4
- 0.1.0-beta.3
- 0.1.0-beta.2
- 0.1.0-beta.1
- dev-stable1-0
- dev-beta14
- dev-dependabot/npm_and_yarn/js/ini-1.3.8
- dev-dependabot/npm_and_yarn/js/elliptic-6.5.3
- dev-dependabot/npm_and_yarn/js/lodash-4.17.19
- dev-analysis-L3rylk
- dev-beta.7
- dev-beta.6
This package is auto-updated.
Last update: 2021-06-23 19:06:47 UTC
README
这是一个临时维护的分支
当Kylo / the-turk不在时,我自愿维护这个扩展。我希望这个分支能够最终重新集成。
~ IanM - 2020年12月
这个扩展为您的Flarum论坛添加了“帖子修订历史”功能。我为了我个人的Flarum项目做了这个,并决定分享它。
截图
功能
- 基于jfcherng/php-diff仓库(这个是从不再维护的chrisboulton/php-diff分支出来的)。
- 可选行(默认)、词和字符级别的差异。
- 包括“内联”、“并列”和“合并”三种渲染模式。
- 使用cron作业或手动存档旧修订。
- 删除修订或回滚到特定修订。
- 支持
fof/nightmode
、the-turk/flarum-quiet-edits
。 - 支持所有支持css-grid的浏览器。
此外,它会在您点击“已编辑”按钮之前不加载(并缓存)任何内容,因此无需担心加载时间。
要求
您可以通过运行php -v
来检查您的php版本,并通过运行php --ri iconv
来检查是否安装了iconv
(应显示iconv支持 => 启用
)。
您还需要将s9e/text-formatter
更新到v2.3.7,以便在“预览”模式下进行语法高亮(如果尚未将flarum/core
更新到beta 12,请跳过此步骤)
composer update s9e/text-formatter:2.3.7
冲突
此扩展与以下包冲突
-
如果您正在使用the-turk/flarum-edit-notifications,则应将其更新到v0.1.4
composer update the-turk/flarum-edit-notifications:0.1.4
安装
使用Bazaar或手动安装
composer require ianm/flarum-diff
更新
composer update ianm/flarum-diff php flarum migrate php flarum cache:clear
用法
启用扩展并设置权限。您就可以开始使用了!
存档旧修订
如果 x ≥ A(其中 x 是文章的修订次数),则可以先将文章的前 y=mx+b 次修订存储为新表(称为 post_edit_histories_archive
)中的合并 & 压缩的 BLOB
。从设置模态中指定 A、m 和 b。y 的浮点值将四舍五入到下一个最低的整数值。如果您想节省存储空间,建议存档旧修订,但如果不想这么做,则不建议这么做。
如果您想存档旧修订,请考虑从设置模态中启用 cron job 选项。我设置了一个每周的 cron job,每周日 02:00 AM 执行(没什么特别)。使用 diff:archive
命令**。否则,它将在 Post\Revised
事件触发时尝试查找 & 存档文章的旧修订,或者等待您的 php flarum diff:archive
命令。
**: 您需要添加到您的 (Linux) 服务器上的唯一 Cron 条目
* * * * * php /
/flarum schedule:run >> /dev/null 2>&1 这个 Cron 将每分钟调用 Laravel 命令调度器。然后,Laravel 评估您的计划任务,并运行到期的任务。