<2015/06/08 変更>
もともと、~その2~として公開していた記事ですが、順序を見直し、その3に変更しました。
前回は、Toodledo文法で表記されている各属性をTodoist表記に書き換えました。
今回は、ToodledoのタスクをTodoistへ取り込みやすい順番に並び替えます。
4. タスクを整列させる
親タスクとサブタスクの並びを再現する
Toodledoでサブタスクを使っている方は、サブタスク群の並び順と親タスクとの紐付けが重要になってきます。
この工程では、上記を実現するための仕込みを行います。
id,parent,orderの意味
これから書く手順通りに作業すれば、親タスクとサブタスクをキレイに並べられるのですが、一応、前提情報の共有をしておきます。
▼サブタスクのリストからid,parent,orderの部分だけ抜粋しました。

それぞれの意味は以下となります。
- id:各タスクに振り分けられた個別の番号
- parent:サブタスクの親タスクのid
- order:サブタスクの並び順
「なるほど。なら、1.parent、2.orderの優先順位で並び替えをすれば、キレイに並ぶわけだな」と思ったあなた。
そう簡単には行きません。
▼これが上図の親タスクですが、なんとparentの欄は0になってるのです!

よって、上記の並び替え方法ではサブタスクは順序良く並びますが、親タスクが置いてけぼりになってしまうのです。
親タスクのidをparentへコピーする
さぁ、本線に戻って、親タスクの置いてけぼりを回避するための作業に入ります。
▼parent列のフィルターで、「0」(=親タスク)を抽出します。

▼抽出した親タスクのid列の先頭行以外をすべて選択し、選択した右下角を

▼右のparent列にドラッグしてidをコピーします。

まとめたい属性を第一優先にして、親&サブタスクを整列させる
ここから、親タスクとサブタスクを順番通りに並び替えますが、並び替えの基準にTodoistのプロジェクトに合った属性を入れておきましょう。
そうすることにより、インポートするプロジェクトが複数ある場合、切り分けがラクになります。
わたしの場合は、TodoistのプロジェクトをToodledoのフォルダと同じような構成にしているので、ここではフォルダ別にタスクを並び替えます。
▼parentの「0」抽出を解除してから、「データ」⇒「並び替えとフィルター」⇒「並び替え」を選択します。

▼「レベルの追加」を2回押して、キーを3つにします。

▼1.folder、2.parent、3.orederの優先順位を作成し、「OK」を押します。

フォルダ以外の属性でタスクをまとめたい方は、folderの部分をその属性に変えれば良いだけです。
▼これで、親タスクを含めた正しいサブタスクの並びが再現できます。

不要な列を消す
並び替えが終わったら、不要な列を消していきましょう。
Todoistに移植できる属性は以下となるので、それ以外の列を消します。
- title2(タスク名)
- tag
- 前回、duedateとrepeat合体させた列
- priority
- note
まとめ
今回で、タスクをキレイに並び替え、Todoistにインポートする属性のみにすることができました。
次回は、このデータをTodoistインポートデータのプログラム文法に変換します。
全5回へのリンクを以下のページにまとめました。
よろしければ、ご活用ください。