Obsidian 插件:Project Planner 通过多种视图管理你的计划

[!example] 插件名片

  • 插件名称:Project Planner
  • 插件作者:James Hawkins
  • 插件版本:0.8.1
  • 插件概述:Project Planner插件提供了多种任务管理视图,每个任务都是一个笔记文件,在插件界面中所做的修改会即时同步到原文件中,反之亦然
  • 插件项目地址:点我跳转
  • 国内下载地址:下载安装

术语解说

Project Planner插件将任务(Task)视为一个基本单元,任务从属于计划(Project),它们本质上都是 Obsidian 库内的笔记文件和文件夹,插件只是通过它们的笔记属性将其可视化展现出来而已

[!NOTE] 一个任务笔记必须具有以下笔记属性:

  • id:UUID v4
  • title:任务的展示名
  • status:进展情况
  • completed:属性值要填布尔值

[!NOTE] 一个任务笔记可以具有以下笔记属性(非必须):

  • parentid:亲任务的 UUID
  • priority:任务的优先级
  • startDateYYYY-MM-DD格式
  • createdDateYYYY-MM-DD格式
  • lastModifiedDateYYYY-MM-DD格式
  • collapsed:该任务的子任务在表格视图是否折叠

基本用法

[!warning]
圈内著名二刺螈Moy开发的Brutal Gum会导致右侧边栏显示不全无法滚动,注意不要用!!!!

[!NOTE] 如何打开Project Planner的插件界面?

  • 左侧功能区按钮:可右键点击以隐藏,也可长按拖拽调整视图按钮的顺序
  • 命令面板执行Project Planner: Open Project Planner命令,或直接选择想要打开的视图

[!NOTE] 如何创建计划
打开插件设置,点击第一个选项后的Add Project按钮,点击它即可创建计划
在库内也会同步生成一个名为Project Planner的文件夹,并在其下生成与该计划同名的子文件夹

[!NOTE] 如何创建任务
在每个视图的右上角,都会有一个Add Task按钮,点击它即可创建任务
计划文件夹里新建一个笔记文件,为其添加必须具有的笔记属性,UUID可通过在开发者模式(ctrl+shift+i调出)中运行crypto.randomUUID()命令或是于在线UUID创建器中快速创建

[!NOTE] 什么是实时更新?
由于计划任务本质上是 Obsidian 库内的特定笔记文件夹和文件,所以只要在插件设置中启用了Enable markdown sync选项,无论是在插件界面还是在笔记文件中的修改,都会实时同步到另一处,建议每次只打开一处进行编辑,以免发生冲突

[!NOTE] 如何在日记中快捷添加任务?
在插件设置中启用Enable daily note sync,在下面的Tag pattern中设置标签,并在Default project中选择一个计划
在任何一篇日记中添加一个任务列表项并跟上设置好的标签,例:- [ ] Finish quarterly report #planner
Project Planner插件会自动侦测并将该任务添加到选择好的计划
如果有想添加到其它计划中的任务,可以在标签后用/添加该计划名,例:- [ ] Book dentist appointment #planner/Personal

视图

信息面板(Task details)

用户可在所有视图中随时调出某任务的信息面板中,用户可以对任务的各项属性进行编辑,它显示在右侧边栏,也就是说它不会妨碍其它视图的显示

最上方的快捷操作按钮:

  • Mark as complete:将任务设置为完成/未完成状态

  • Copy link:复制任务链接

  • Task Title:可在此修改任务的名称

  • Description:点击Edit按钮可在空白栏中为任务添加介绍文字,支持 Markdown 语法

  • Status:在下拉菜单中为任务选择进展情况

  • Priority:在下拉菜单中为任务选择优先级

  • Tags:点击Add tags按钮,在下拉菜单中为任务选择预设的标签(仅限插件内部,与全局标签不是一回事)

  • Checklist:点击Add checklist item按钮,为任务添加子任务

  • Bucket:在下拉菜单中为任务分配储存桶,仅在看板视图中显示,若未指定,则任务将被分配到储存桶“Unassigned”中

  • Start Date & Due Date:为任务设置开始/截止日期

  • Duration & %Complete:此二值由插件根据Start Date & Due DateEffort自动计算,无法填写

  • Effort:为任务添加已用/剩余时间(单位:小时)

  • Cost:可在FixedHourly中做选择,如果选Fixed,则需要填Estimated(预算)Actual(实际开支);如果选Hourly,则只需要填每小时的开支,总开支会自动计算出来

  • Dependencies:为当前任务指定与其有依存关系的任务, [[#^310bd2|有关依存关系的介绍详见下文]]

  • Links & Attachments:为任务添加维基链接:[[]]格式的内部链接或外部链接

仪表盘(Dashboard)

仪表盘视图展示了计划任务的完成情况,用户可以轻易地总览关键数据,查看多项不同计划的进度,并通过快速访问卡片一键访问最重要的任务

仪表盘由一个或多个计划卡片组成,每个计划卡片以可视化的方式展示了该计划的进度条,其名下任务的进展情况、截止日期和优先级等信息,点击每张子卡片即可在浮窗中查看满足对应条件的任务

如要同时查看多个计划卡片以便进行对比,在左上角勾选Show all projects即可

表格(Grid)

在表格视图中,可以预览、排序、筛选、或批量编辑任务

可以点击右上角的Columns按钮唤出下拉菜单,自定义所需显示在表格列头的属性,可节约显示空间,在小屏上更简洁

可点击StatusPriority唤出下拉菜单,对这两种属性进行筛选,也可以在二者之后的空白栏中直接填入文本进行搜索

可长按行首或列头,对表格进行手动拖拽排序

可直接点击行首的复选框,快捷变更任务未完成/完成状态

对于包括标题、进展情况、优先级和日期等部分属性,用户可直接点击单元格进行编辑

可右键点击某行唤出右键菜单,对该任务进行编辑、删除或快速访问

右键点击任意一行唤出右键菜单,执行Make subtask命令,或是直接拖拽某行到另一行,可将该行任务降级为上一行任务的子任务,点击亲任务前的箭头,可折叠/展开子任务;对于子任务,在右键菜单中执行Promote subtask命令,可将其恢复到亲任务同一级别

看板(Board)

看板视图提供了类似于Microsoft planner的样式,在这里,除了计划任务之外,又多了一个以竖向看板显示的储存桶(bucket),需要说明的是,储存桶更多地是与计划相关,建议用它来区分领域,而进展情况(status)才是与任务强相关的笔记属性,用它来区分进度

储存桶之间可以通过拖拽调整顺序,也可以长按任务卡片在储存桶之间拖拽

可以随时创建、删除、排序或重命名储存桶,每个计划都可以自定义自己的储存桶

点击任务前的复选框可将其状态变更为已完成,已完成的任务会自动被归类到储存桶的已完成分区,与其它任务区别开来

时间线(Timeline)

时间线视图会在甘特图上以横条的方式展示任务,将持续时间、里程碑和日程安排等信息以可视化的方式展示出来

按右上方的按钮即可,时间线视图可以在日、周和月三种布局之间切换

时间线视图上的横条可以拖拽,整条拖拽可同时修改开始和截止日期,只拖拽左侧是修改开始时间,只拖拽右侧是修改截止日期

在左侧的任务列表中,长按列头,可以对任务进行排序,顺序的变化会同步反映到甘特图上

可在左上角的筛选菜单中筛选优先级进展情况

关系图表(Dependency Graph)

关系图表将彼此之间存在依存关系的任务以“节点-连线”的方式转化为可互动的网状图

  • 关系图表中的每个节点都代表着一个任务,其颜色和大小与进展状态优先度挂钩
  • 任务之间的依存关系由节点之间的直线箭头展现,已经结束 的依存关系由虚线表示,尚在进行中的由实线表示,依存关系会以缩写的形式展示在直线的中段

任务的信息面板中可以添加、修改和移除依存关系,不可创建循环的依存关系,四种依存关系如下表所示:

关系类型 在视图中的缩写 介绍
Finish-to-Start FS 除非任务A结束,否则任务 B无法开始
Start-to-Start SS 除非任务A开始,否则任务 B无法开始
Finish-to-Finish FF 除非任务A结束,否则任务 B无法结束
Start-to-Finish SF 除非任务A开始,否则任务 B无法结束

^310bd2

设置说明

  • Projects:点击右边的Add Project即可新建计划,在下方可管理已有计划,点击垃圾桶按钮删除
  • Cost Tracking-某计划:对某计划进行设置
    • Total Budget:在空白栏中填入的数字将被视为某计划的总预算,显示在仪表盘视图中
    • Default hourly rate
    • Currency Symbol:在空白栏中填入的货币符号将被视为预算所使用的币种
    • Default View:为该计划设置默认视图
    • Show completed tasks in Grid View:如启用,则将在表格视图中显示已经完成的任务
    • Open views in new tab:如启用,则在打开新视图时,将在新标签页中打开
  • Date display format:选择日期在插件界面中的显示格式,但插件内部的储存格式永远是YYYY-MM-DD
  • Ribbon icons visibility:选择是否在功能区中显示各视图的开启按钮
  • Enable markdown sync:如启用,则插件数据和任务笔记会通过笔记属性进行双向同步
  • Project base folder:空白栏中填入的文本将被视为存放计划的文件夹名称
  • Auto create task notes:如启用,则在插件界面添加或修改任务时,与之对应的笔记文件会同步动作
  • Sync on startup:如启用,则插件加载时会自动扫描库并同步任务笔记,如用户使用 OB 官方同步,则必须关闭以免发生冲突
  • Sync all tasks now:点击最右边的Sync now按钮以手动同步一切笔记文件
  • Auto-schedule dependent tasks:我看不懂自己看英文吧
  • Auto-calculate parent task fields from subtacks:如启用,则亲任务自动根据子任务的日期和完成率计算其数据
  • Enable daily note sync:如启用,则自动导入日记或其它 MD 文件中添加特定标签的任务
  • Tag pattern:在空白栏中填入的标签将用来识别任务,可以在标签后添加计划名将其自动归入某任务,例:#TagName/ProjectName
  • Scan folders:在空白栏中填入的文件夹名将被视为需要扫描的文件夹,多个文件夹用英文逗号分隔
  • Default project:在下拉菜单中选择一个计划,作为标签后未跟随计划名时默认分配的计划
  • Scan now:点击最右边的Scan now按钮以立刻扫描符合要求的任务并将其导入
  • Open dependency graph:点击右边的Open graph打开可交互的任务关系图表
  • Create task notes:点击右边的Create notes为当前计划中的所有任务各自创建笔记文件
  • Tags:点击右边的Add tag即可新建任务专属标签,在下方可管理已有标签,点击垃圾桶按钮删除
  • Statuses:点击右边的Add status即可新建进展情况,在下方可管理已有进展情况,点击垃圾桶按钮删除
  • Priorities:点击右边的Add priority即可新建优先级,在下方可管理已有优先级,点击垃圾桶按钮删除