跳转到主要内容

将国外(目前为Nozbe)的数据导入RememberTheMilk

项目描述

注意:此模块已被淘汰,以支持mekk.rtm。您可以使用它导入Nozbe导出数据,但所有未来的开发都将发生在mekk.rtm中(其中也包含Nozbe导入)。

请参阅mekk.rtm文档。

mekk.rtmimport负责将数据导入RememberTheMilk。目前,它处理导入来自Nozbe的导出数据,我保留了更通用的名称,以防我在未来编写其他导入器。

先决条件

mekk.rtmimport使用RtmAPI包装库。我不得不稍作修改,0.3.2版本可能会失败。我希望我的补丁被接受,但在新版本发布之前,您必须使用我的RtmAPI分支(使用获取源链接下载.zip文件,解压后,通过python setup.py install安装)。

从Nozbe到RememberTheMilk

从Nozbe导出数据

准备Nozbe数据的.json导出。有关详细信息,请参阅mekk.nozbe,但通常您只需要

nozbetool export --user=MyNozbeName --json=mynozbedata.json

将数据导入RememberTheMilk

首先进行测试运行

rtmimport --nozbe-json=mynozbedata.json --verbose --dry-run

(它不会存储任何内容,只是打印出要执行的操作)并验证是否一切正常。

然后进行实际导入

rtmimport --nozbe-json=mynozbedata.json --verbose

(或者如果您不想跟踪进度,则可以省略–verbose,但我建议您保留它)

注意:导入可能需要一些时间。在我的大列表和不太好的网络情况下,它运行了近一个小时。

数据是如何转换的

Nozbe项目以RememberTheMilk列表的形式保存。

Nozbe上下文被转换为RememberTheMilk标签。《@》被添加到它们的名字前,并将非字母数字字符替换为短横线(例如,《My home/kitchen》变为《@My-home-kitchen》)。

下一步行动被标记为《Next》。

操作被保存为任务。名称、截止日期、重复、估算成本和完成状态都保存。

在重复的情况下,使用RTM every模式(所以Nozbe上标记为每周重复的任务,RTM将每年生成52次,无论用户是否完成)。如果您更喜欢替代方法(每次上一个完成时生成新的实例),请在导入后编辑任务,修补代码(将《every》替换为《after》),或向我请求命令行标志)。

由于注释绑定在Nozbe上的项目,并在RememberTheMilk上的任务,我通过创建名为“保存此注释”的人工任务(每个适当的项目的列表都有一个)并将注释绑定到这些任务来保存注释。这必须之后使用RTM界面处理,以确保这些任务立即标记为到期。这些任务也被标记为《Note》。

限制

仅复制主要上下文,其他上下文丢失。我不知道如何从Nozbe获取它们(如果有人知道如何修补mekk.nozbe以获取所有上下文,我可以轻松扩展此导入器以处理所有这些上下文)。

根本不复制上传。我不知道如何从Nozbe导出它们,也无法在之后处理它们(RTM没有上传)。

在RememberTheMilk上不可用操作名称格式化,所以如果您使用了如《Visit “the website”:http://google.com》之类的结构,它们将原样显示。

共享信息(=关于委派给其他用户的信息)丢失。我没有使用此功能,因此不知道底层数据看起来像什么。

某些上下文可能可以转换为位置而不是标签,但我不知道如何决定哪种方式。

问题和解决方案

如果导入过程被中断,重新运行它将产生重复任务(没有重复检查,这将非常昂贵)。解决此问题的最佳方法是打开文本编辑器中的.json文件(在备份副本之后)并简单地剪切已保存的所有操作(它们按顺序保存,因此只需定位在过程中断之前保存的最后一条操作并剪切到此操作之前的所有操作)。

源代码、错误、修补程序

开发在BitBucket上跟踪

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定要选择哪个,请了解更多关于安装包的信息。

源分布

mekk.rtmimport-0.1.3.tar.gz (8.0 kB 查看哈希值)

源代码

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面