FoldingText, 伪装成 markdown 编辑器的 outliner

2014-07-16 23:32:44 +08:00
 kinghenry
# FoldingText,伪装成markdown编辑器的outliner

想介绍一下foldingtext的使用体验,源于几个原因:

- 这是个很特别的工具,表面上看,是个plain text编辑器,而市面上支持markdown的editor多如牛毛,功能其实大同小异,实在不多这一个;但其实它是个效率工具,和支持opml的Omnioutliner、mindmap有共通之处
- foldingtext背后的开发者Hog Bay其实已经有十多年历史了,其实大部分时间是一个个人团队,后来扩充的多人团队,它们有一个更出名的产品,taskpaper。但商业方面,Hog Bay可以说很失败,最初又变成了一个人。这么一个不擅长商业化的开发者,但有非常独特和有潜力的产品,如果能得到潜在用户支持,也许可以更长命一点

## 界面

foldingtext的界面非常普通,唯一的特色的选择的字体看着还很舒服。但是,它的theme是可定制的。我选择了现成的[write room theme](http://support.foldingtext.com/t/theme-to-make-foldingtext-look-like-writeroom/105),非常适合长时间使用保护眼睛。码农可以自己折腾,我不是码农,不会玩,就用官方的了。

## plain text editor

### 作为一个纯文本编辑器,foldingtext其实功能算非常完善的了

- Markdown
- GitHub Flavored Markdown的一部分
- Fenced code blocks
- Syntax highlighting
- Task list
- MultiMarkdown的一部分
- Footnotes
- definition lists
- CriticMarkup
- HTML
- foldingtext自己独特的markup
- Mode
- Tag
- Property

基本上,该有的差不多都有了,各种markup标记,可以很方便的通过format菜单添加,大部分都有快捷键

### 基础的editor功能

- Format
- Select
- Move & Organize
- View
- Copy to HTML & Rich Text

具体看这篇[guide](http://velocityofrelease.wordpress.com/2014/06/13/foldingtext-2-概論/),一目了然,熟练之后,我觉得即使是基础编辑功能,也不输给任何其它markdown editor,象Move & Organize,操作起来的感觉非常象Omnioutliner,是后面会讲到的outline功能不可或缺的一部分

## Outliner,核心功能

我在foldingtext之前用过一些markdown工具,都没有能够让我对markdown语法感兴趣,markdown处理得再漂亮,那也不过是个写作工具而已,而我对写作没什么需求,我需要的是效率工具。对我来说,GTD、outliner是效率工具。

foldingtext文件.ft表面上是个纯文本,在程序背后是用树形结构进行组织的。这和其它的markdown editor完全不同。树状结构的每个结节叫node,文本中的任何一段都是一个node,对应一个url。

任何一个node,都可以设置tag,tag可以赋值。除了tag,还有一个东西是property,它和tag的区别是tag不能单独作为一个段落存在,但property,不过property主要是对开发mode有用。

### outliner基本操作

- Move & Organize
- Folding
- Focus

这部分功能是foldingtext的核心功能,很有意思,不过你要是用过omnifocus和omnilutliner,就会感觉很熟悉。只不过,omni家用了一个很复杂的界面来完成这些功能,foldingtext却是在一个纯文本上实现,设计非常独特,将复杂蕴于极简中,让人感觉很奇妙

## Extension (plugin, script, CLI), 等你来发掘的秘密武器

foldingtext虽然是一个人的项目,但复杂度却不低,但一个人的精力毕竟有限,所以它给了geek很大的自己DYI的空间。如果你不是geek(就象我),也没关系,因为有其它geek的分享。下面介绍一些有用的资源。

官方forum[extension wiki](http://support.foldingtext.com/t/extensions-wiki/121),我觉得比较有用的有以下几个:

### Plugins

foldingtext已经内置了一些plugins(其实就是自定义command),不过还有很多别人分享出来的可以自己加进去,比如这个
- [Collapse whole doc one more level, or expand whole doc one more level](http://support.foldingtext.com/t/collapse-whole-document-1-more-level-or-expand-whole-doc-1-more-level/339),这个plugins完善了outline的功能

### alpplescripts

- Opening & Saviing OPML outlines,这是一个叫Rob Trew的非常活跃的geek的分享,其实,官方forum上的extension大部分是他一个人的贡献。这位老兄以前的最爱是Omni家的产品,之前也是Omni官方forum上非常活跃的geek。这组script非常有用,foldingtext本身没有提供导入和导出OPML的功能,从此你可以在omnioutliner、mindmap、foldingtext之间协作无障碍
- [foldingtext url scheme](https://github.com/RobTrew/txtquery-tools/tree/master/ftdoc%20url%20scheme%20and%20FTCopyAsURL),这个很有用,用它可以实现foldingtext的跨文本wiki化
- [Alfred Workflow](http://support.foldingtext.com/t/alfred-workflow-creates-with-scripts-for-folding-text-v2/206),这组workflow集成了很多script,很有用

### CLI & shell scripts

为了让foldingtext具备跨文档操作的可能性,官方提供了CLI,给geek提供了一些更具想象力的空间,这东西暂时超出了我的能力,不过你可以从Rob Trew下面这个项目一窥它的潜力:
- [Querying grouping & sorting across several text files with the FoldingText Command Line Interface](http://support.foldingtext.com/t/querying-grouping-sorting-across-several-text-files-with-the-foldingtext-command-line-interface/369),它主要是用来实现perspectives功能(没错,就是Omnifocus的perspectives)

## Foldingtext的好基友

foldingtext作为一个纯文本工具,要将所有的功能都很流畅的完成,还是有点吃力。我经常配合以下的应用一齐使用:
- Marked2,这是foldingtext必备的好基友,因为foldingtext没有预览功能(其实我很反感双栏同时将预览一齐呈现的设计),导出的格式也极有限,marked2在这方面很好使
- keyboard Maestro,把foldingtext的一些常用script制作成KM的palette调入是既方便又美观
- alfred,其实和KM差不多,不过有别人制作好的workflow可用,何乐而不为
- dropzone3,当我要在ft里插入某个图片时,我就把图片通过dropzone3上传到dropbox的public folder返回一个url,非常方便
- evernote,我通过foldingtext完成的diary, work log,project,我都会用marked2输入为html文件,然后将这个文件用evernote打开存档
7810 次点击
所在节点    macOS
19 条回复
leopardwei
2014-07-16 23:41:41 +08:00
这篇文字,尽然要拷贝到 mou 里面看,hoho~~
kinghenry
2014-07-16 23:43:31 +08:00
## 我为什么喜欢foldingtext

很简单,当我需要Omnifocus/Omnioutliner的功能,但同时希望保持思维的连贯而不会被频繁转换工具打破思路时,我总会想起foldingtext,它是唯一的选择。
kid813
2014-07-17 00:21:06 +08:00
v2ex不支持MD的吗?虽然看完了全文,但是如果楼主能贴图就好了。
kinghenry
2014-07-17 07:57:50 +08:00
@kid813 功能太多,要贴图不知道要贴多少。你下一个随便折腾一下就了解了
skywalker
2014-07-17 10:47:48 +08:00
这家的产品很有Emacs orgmode的感觉啊……
Sivan
2014-07-17 11:07:04 +08:00
这个应用在 beta 版用过一阵,看似是 Markdown 编辑器,但实际是 Markdown 编辑、简单的 GTD、Outliner 工具的集大成者。核心的操作还是有点像 TaskPaper,跟 Mou、Ulysses 的应用场景还是有些区别。

后来放弃的原因是这样的应用,一但积累到一定数据,迁移成本会比较高。Ulysses、Mou 等写的东西为纯 Markdown 或者可以方便的转过去,改用 nvAlt 或者其他工具也很简单。但 Folding Text 如果处于一些原因不用了,内容基本就费了。当然也能是因为它的特色功能我在 OmniFocus 等更专注的应用里得到了使用。单拼 Markdown 编辑就没有什么优势了。
wangqj
2014-07-17 11:18:28 +08:00
@kinghenry 配合source han sans 字体,还可以实现在 ft2中的中文加粗显示
kinghenry
2014-07-17 11:20:10 +08:00
@Sivan 如果把GTD都依赖上面,是不太合适的,还需要power users分享更多更强有力的extension才会完善。

不过,我的使用场景一般是特定的project,某一段时间内的todo & log。它最擅长的地方是,你可以在一个文档里,把这个project的todo和各种需要记录下来的内容都放在一起,project完成后,很容易就存档保存。回头在翻阅时,对当时这个project的各方面一清二楚。这是其它工具做不到的,比如,你在omnifocus做一个项目的todo安排,在omnioutliner展开框架,然后在某个文档工具里做详细记录,完成后要把内容都放在一起存档,整个过程非常烦琐。

我现在用它最多的是用来做每日工作安排和实施,每天结束时存档到evernote里成为工作日记。效果比我原来依赖evernote和day one要好得多。
kinghenry
2014-07-17 11:22:35 +08:00
@wangqj 怎么加入这个字体?
orange0422
2014-07-17 11:26:11 +08:00
下了一个,启动之后一个白色窗口就卡住了,然后强退,删了
wangqj
2014-07-17 11:29:39 +08:00
@kinghenry
字体在: http://v2ex.com/t/122847#reply10

安装完之后,修改user.less

// To change the font uncomment the following line:
// Font overrides
@fontFamily: Source Han Sans CN;
@fontSize: .95rem;
@lineHeight: 2rem;

后面两行的参量请自行修改
wangqj
2014-07-17 11:38:04 +08:00


看看效果,注意红色线标注的地方
jsonline
2014-07-17 11:46:22 +08:00
打开后一直 loading,蛋疼
kinghenry
2014-07-17 12:02:09 +08:00
@orange0422 @jsonline 装过很多次,从没遇到这样的情况
jsonline
2014-07-17 12:06:25 +08:00
@kinghenry 翻墙后 OK。 不过太贵了, Workflowy 就是不错的替代品
kinghenry
2014-07-17 12:18:33 +08:00
@jsonline 这个价格的确是够贵的,我是等它2.0刚上架的时候半价入的。前一两个星期还有30% off。
kinghenry
2014-07-17 12:28:41 +08:00
不过我觉得,FT在20刀以下的价格还是很值得的。看各种写作工具高高在上的价格,其实FT主要是输在UI上,20刀以下的价格,相比它丰富的功能,还是很值得的。不过它的开发者真的不擅长商业运作,UI如果丰富一点,功能不要隐藏这么深,extension分享安装平台化,完全有可能成为一代神器。不过对于一个人的开发项目,做成这样已经相当不错了
kinghenry
2014-07-17 13:24:37 +08:00
刚看到一个新的extension:Math extension
http://support.foldingtext.com/t/problems-with-my-math-extension/375

就是增加了一个新的mode,使用起来的感觉跟calca一样。当然,calca的功能丰富很多。不过可以看出,只要开发extension,foldingtext就象变形金刚,可以变成很多种不同的工具。
kinghenry
2014-07-17 23:06:55 +08:00
@wangqj 搞不定adobe的工具,安装后似乎被还墙了,打开全局FQ也没成功。卸载还卸不完整。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/123024

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX