memorandums

日々の生活で問題解決したこと、知ってよかったことなどを自分が思い出すために記録しています。

Notionを残しつつJoplinへ移行する

昨日、作業ログを以下に書きました。

やりたかったことは、NotionをやめてOSSのノートアプリであるJoplinへ移行しようとしたログでした。

今日も、夜からあれこれ試行錯誤しながら、どうすべきか考えていました。

色々なパターンを手探りで考えてみましたが、結果的には、Notionを残すこととしました

現在、公開されている手段やツールではEvernoteに戻すことはできません。あれこれやったところで、Markdownとしてのテキストは変換できても、ノートと画像や添付ファイルとのリンクが失われてしまいます。

無いとは思うのですが、万が一、添付ファイルが必要になったときに既に失われている可能性が高く、探すことが困難であると判断しました。

かといって、このままNotionを使っていると、Evernoteのようにいつか制限で使えなくなる可能性もあります。そこから脱却することを目指したプロジェクトがまさにJoplinのようです。

そこで、以下のようにすることにしました。

方針1 Notionのアカウントやノートは消さずに残しておく

Evernoteからインポートしたすべてのノートとその添付ファイルはNotionのノートとして読めます。Notionのサーチ機能がありますので、ノートの断片的な情報があれば、そのノートを探し出すことが容易にできます。

方針2 Notionのエクスポート機能(Markdownディレクトリ)でノートのテキストだけJoplinにインポートする

Notionのアカウントとノートはそのままにしておきますが、何か探したいときに、Notionにアクセスして探すのは面倒です。Notionアプリを各デバイスにいれておくのも無駄です。であれば、NotionのノートのテキストだけでもJoplinにインポートしておけば、検索して該当するノートを探し出すことができるはずです。画像や添付ファイルはそもそも検索対象ではないため、Joplinに移行できなくても問題ないはずですから。

細かくなりますが、Notionのノートをエクスポートするとノートタイトルのあとに32桁のID情報が付加されます。これをいちいち手で削除するのは面倒なので、以下のようなスクリプトを作りました。mdファイルのあるディレクトリにおいて ruby a.rb などと実行することで、ファイル名に付加されているID情報を削除することができます。また、ノートの添付ファイルはノートと同名のディレクトリに保存されますが、添付ファイルはインポートしないので削除しちゃいます。これも手動ですが。。。まぁ、いいでしょう。

Dir.glob("*").each do |e|

 a = e.split("\.")[0]

 if a.length > 32

   b = a.slice(0,a.length-33)

   if e.include?("\.md") then b = b + ".md" end

   File.rename e, b

 end

end

方針3 今後、ノートはJoplinで作成する

JoplinはPCだけでなくスマホアプリも提供されていますので、デバイス数を意識することなく使えます。ただ、ノートの保管場所にDropBoxを指定すると、DropBoxの台数制限(3台)がありますが、これはしかたがないでしょう。。。とりあえず、私の用途では、Mac2台とAndroid1台で同期できればいいので、DropBoxが方針変更しない限り行けそうに思います。

かれこれ2,3日やってきたことですが、いい結論が出たように思います。Notionから離脱したい方の参考になれば。。。と思います。