surgiie/project-cli

该包已被废弃,不再维护。未建议替代包。

PHP Kanban 风格的待办事项 CLI。

安装: 16

依赖: 0

建议者: 0

安全: 0

星标: 4

关注者: 1

分支: 0

开放问题: 0

类型:项目

v1.2.0 2023-04-02 19:08 UTC

This package is auto-updated.

Last update: 2023-08-02 19:59:05 UTC


README

一个简单的 PHP Kanban 风格的待办事项 CLI。

Tests

安装

  • 确保已安装 sqlite 以及 sqlite3 & pctnl 扩展。

  • 运行 composer global require surgiie/project-cli。在 Windows 上使用时请使用 --ignore-platform-reqs

创建新看板

要创建新看板,运行:project new:board <看板名称>

这将创建以下目录:~/.project/boards/<看板名称>

还将创建以下 sqlite 数据库文件:~/.projects/boards/<看板名称>/database

设置/选择看板

要设置 CLI 将与之交互的默认看板,运行:project select <看板名称>

这允许 CLI 在运行命令时知道要交互哪个看板。

注意:这将在您创建第一个看板时自动完成。

创建任务状态

为看板任务创建状态,并在看板列表中使用它们作为标题。例如,您可能创建的常见状态集

project new:status "Todo"
project new:status "Doing"
project new:status "Done"

提示:为了获得最佳的渲染体验,请考虑将其保持在 3-5 个状态或您屏幕/终端大小可以渲染的状态数。3-4 个最佳,状态过多可能会导致看板渲染问题。

创建任务标签

可选地,您可以为看板任务创建标签。例如,您可能想按紧急程度标记任务

project new:tag "Urgent"
project new:tag "Not Urgent"

创建任务

您可以通过运行 new:task 命令来创建任务

project new:task "某些任务描述" --status="待办" --tag="紧急" --due-date="2 周"

注意 任何可以被 Carbon 库解析的字符串值都可以在这里使用。

编辑任务

您可以使用 edit:task 命令编辑现有任务

project edit:task <新描述> --id="<任务 ID>" --status="<新状态>" --tag="<新标签>" --due-date="<新到期日期>"

移动任务

要“移动”任务,只需更新状态字段

project edit:task --id="1" --status="进行中"

使用终端编辑器创建任务描述

如果您更喜欢在终端编辑器中而不是命令行中键入任务描述,请使用 --editor 标志打开临时文件以键入描述。默认情况下,这将是在 Vim 中

project new:task --editor --status="待办" --tag="紧急"

一旦您关闭 vim,您将返回到命令进程,您的任务将被创建。

注意:如果您想使用其他基于终端的编辑器,可以像下面文档中所述,通过设置TERMINAL_EDITOR首选项来使用其他基于终端的编辑器的二进制文件。仅支持基于终端的编辑器,因为VSCode、Sublime等编辑器不会在与命令调用相同的终端进程中运行。如果您尝试将其设置为非基于终端的编辑器,系统将提示您在终端中输入描述。

显示看板

您可以使用show:board命令显示您的看板,您将看到类似以下示例的内容

project-cli kanban board

显示任务详情

要打印出单个带详细信息的任务,请运行带有您要查看的任务ID的show:task命令

删除任务

要从看板中删除任务,请使用带有--id选项的remove:task命令。

project remove:task --id=20

注意 - 可以多次传递--id选项以一次删除多个任务。

CLI首选项

您可以使用存储在sqlite数据库中的首选项来定制某些功能或输出。例如,要指定看板列的顺序

project set "STATUS_ORDER" "Todo, Doing, Done"

CLI将消耗此表中存储的值所设置的首选项。

以下是当前可以设置的一些选项列表

名称 描述 示例 默认值
STATUS_ORDER 显示在板上的状态顺序。 project set STATUS_ORDER "Todo,Doing,Done" 不适用
TERMINAL_EDITOR 使用--editor选项创建任务内容时要使用的终端编辑器。 project set TERMINAL_EDITOR "nano" vim
DATE_TIMEZONE 用于显示在板和/或任务详情上的日期的时区。必须是PHP的timezone_identifiers_list函数返回的有效列表 project set DATE_TIMEZONE "America/New_York" America/Indiana/Indianapolis