用 TaskPaper 实现更好用的 WorkFlowy
0.
WorkFlowy 是个了不起的应用,我很喜欢,但用得久了,也发现了好些不顺手的地方。比如:
- 快捷键支持不足,操作需要大量依赖鼠标点按
- 各条目跳转不便,
⌘+;
组合容纳空间有限,不少跳转只能用鼠标滑动 - 移动笔记条目不便,长距离移动尤其如此
- 文本量一大,搜索有延迟
- 对复杂搜索支持不好
这些是突出的几点,其他细节也还有,比如行距、字号、边距等无法自定义,这几样是中文排版关键元素,都没法儿调整,用起来容易觉得这里那里差点意思。
1.
最近发现 TaskPaper 是个不错的替换办法,以上日常头疼问题,都能解决:
- TaskPaper 快捷键完善,基本上,鼠标能实现的,快捷键就能
- 自带 Go to Anything 功能,可一键跳转到其余 Project 级条目,也能一键将子项移到任意 Project
- TaskPaper 文件本质就是 txt 纯文本,稳定,搜索快,无延迟
- TaskPaper 支持丰富的高级搜索语法,此外,由于原文件是纯文本,也可在文本编辑器打开直接正则搜索
当然,字体、字号、边距、背景等,都可通过修改 TaskPaper 配置文件实现。我管这叫 TaskPaper-based WorkFlowy(Tp-WorkFlowy),效果:
得益于 TaskPaper 本身功能强大,既能在 UI 层级实现 WorkFlowy 体验,WorkFlowy 的标签补全、搜索过滤等功能也一并齐活。
而且,原生 WorkFlowy 中 Tag 没有专门图形界面归属,不好回顾管理,时间一长容易散乱,而 Tp-WorkFlowy 所有标签默认显示在边栏,平时可以收起标签、隐藏边栏,跟没有一样,需要的时候,一键即可展开,回顾整理方便,避免标签散成云形,动荡难用。
2.
实现原理:用 TaskPaper 的 note 来作正文文字。
UI 实现非常简单,TaskPaper 论坛有用户分享了 WorkFlowy 主题 配置代码,复制一份,在 TaskPaper 新建 StyleSheet 把主题换上就好了。
论坛主题效果:
不过,这仍是以 task 为中心的界面,而不是以我们需要的 note 为中心,所以还要在配置文件 WorkFlowy.less
修改部分代码:
item[data-type="note"] {
color: mix(@text-color, @background-color, 98%);
font-size: 15pt;
font-style: normal;
}
这是在论坛版 WorkFlowy 配置文件修改两点:
- 字色加深
- 单独设置字号
等于是把 note 当作正文文字用。
那,如果还需要原生 WorkFlowy 那样的行下 note 呢?无法完美实现,但可以通过修改 task 显示属性,曲线救国:
item[data-type="task"] {
color: mix(@text-color, @background-color, 60%);
font-size: 14;
font-style: normal;
font-weight: normal;
}
这样,就把原本的 TaskPaper 主角 task 给调淡字色、调小字号,拿来充当类似原 WorkFlowy 的 note。
此外,如果要调边距、让 Tp-WorkFlowy 全屏时文本居中,还需要在 Editor 部分补上 item-wrap
:
editor {
editor-wrap-to-column: 100;
item-wrap-to-column: 86;
//typewriter-scroll-percent: 25%;
}
如果需打字机滚动效果,还可以把最后一行的 //
注释掉。不过这三条属性在 TaskPaper 目前最新版(3.8.1)中似乎无法生效,所以如果需要这几个效果,可暂用 3.7.7 版。
另外,TaskPaper 默认无文字的空行前,不显示圆点(handle),所以如果想视觉更统一,可以把 item[empty]
属性也改一下:
item[empty] {
handle-color: @handle-color;
handle-border-color: @background-color;
}
这几条改完,基本就完事了。不过也有两个不足:
- 原生 WorkFlowy 中不会随条目一起折叠的 note 算缺失
- 移动端支持不足,比如 iOS 端,Editorial 和 Taskmator 可司查看,其余功能就不行了
3.
如果只是轻度使用,WorkFlowy 已经足够优秀——WorkFlowy 的简单与克制,本身就是种令人赞叹的强大。作为重度用户,多年使用后,我仍然觉得 WorkFlowy 了不起,但更喜欢订制版的 Tp-WorkFlowy。