Evernote から Joplin へ移行
遅まきながら Evernote から Joplin へ移行メモ
Upnote と最後まで迷いましたが、Upnoteは下記の要因で見送り
- ノートブック共有がない(ノート単位の共有あり)
- OCRがない
- 画像(1MB以上)の解像度が下げられる
Joplin について
- Markdown(MD)の傾向が強い → HTMLメインの設定あり
- アプリケーション(オープンソースで無料)とストレージが分離されていて、ストレージに Joplin Cloud の他 Dropbox や OneDrive (Google DriveはNG) や Joplin Server(自前サーバ) が利用可能
Joplinの収入は主に寄付と Joplin Cloudって事になります
※共有機能を利用するには Joplin Cloud か Joplin Server を要利用 - pdf内の検索 ※古い記事にはpdf検索が無い記載あり
テキストを含むpdfは OCR Service が文字列として検索対象、画像はOCRを有効にすれば認識だがOCRの問題点は含まれる - OCR機能(画像、pdf)は後から追加されており ※古い記事にはOCRが無い記載あり
PC版の設定から有効にできる(要PC - 同期クライアントに一つ以上PCがいればよい)
ただし! 日本語についてはOCR結果を見ると分かち書きになっていて、文字の間に全てスペースが入っている(何だよそれ)、なのでOCRテキストは「日 本 語」みたいにスペースを入れるとヒットしたりする → 利用しているライブラリ(tesseract)の影響 - 検索やOCR等、負荷の大きい作業はローカルで行われる、つまりインデックスのsqliteが存在する(スマホは負担有り?) → ストレージが自由なのはそういう事
- スマホで編集可能なのは実質MDノートのみ、HTMLノートは編集がタグ(爆)
- 複数ワードの検索で、ノートとリソースの横断検索を行ってくれない【下の方で説明】
Evernote(enex)からのインポート
(テストパターンを作って取り込んでみた結果)
enex からのインポートは「Markdown(MD)」と「HTML」の2パターン
MDの場合かなり書式が失われるため、一旦HTMLで取り込んでおいて、可能なものは HTML→MD 変換をあとからすればOK~ と思っていたが HTML→ MD変換はノートが新規作成となって作成日、更新日、共に変換した日時に変わってしまう
→ 面倒だけど一部のノートブックは enexファイルの名前(ノートブック名)を取り込み時に変更して、HTML形式とMD形式の両方で取り込み、それぞれ必要なのを残して統合しました
HTML形式で取り込んだノートは、上部に「MDへコンバートする?」みたいなバナーが出る
※HTML→MDすると、元のHTMLはゴミ箱に移動する
取り込み時は、無用なエラーや競合を避けるため
- OCRをオフ
- 同期を無効
- バックアップ(plugin)を停止
- 履歴を無効(OCRが終わるまでは無効にしておいた)
ただし同期はインポートしたノートを表示した時点で始まってしまうので、同期が完了するまで次のインポートは待つ
HTML形式インポート のなんだかな
- HTML形式では pdf のインラインプレビューが行われない(evernoteのスマホみたいな感じ) なので、pdf とコメントだけみたいなのは、取り込み後にMD変換
- 背景が白
アプリケーションのテーマをダークにしていると、ノート部分だけ白、CSSをいじってもダメでした、ライトテーマだと気づかないかも
マークダウンを表に出さない設定
デフォルトで「MDエディタ + プレビュー」になっています
これを「プレビュー」のみにすれば、「プレビュー」⇔「HTMLエディタ」となります
Enter は <p>、Shift + Enter は <br/> です(Evernote は <div>と<br/>)
設定のスタイルシートで
/* For styling the rendered Markdown */
p {
margin-block-start: 0.3em;
margin-block-end: 0em;
}
上記CSSでの Evernoteとの比較
ノートブック共有を使用する前提なので、この2つ
Evernoteでの容量が30GBを超えているため、Joplin Cloud の Basic(2GB)や Pro(30GB)では足りず、Team(50GB)となると年契約でも 6.69ユーロ=1,200円/月 となるため、VPSか自前サーバになるかと (Joplin Cloud のストレージ小さくないかい)
サーバ本体とストレージ諸々揃えたら、安いvpsでも変わらない計算に
ひとまず vpsを月契約で借りて試験運用(エンドツーエンド暗号をオンにして)
エンドツーエンド暗号しつつ、共有ノートブックを利用ってどうなんだろうと思っていたが、すべてのユーザーが暗号化を利用する必要がある(これは特に問題ではない)
そして、共有ユーザーの公開鍵を用いて暗号化する(復号化できるのはそのユーザーのみ)んだそうです
スマホの同期
容量にもよるけど、添付ファイルは「自動」(オンデマンドでダウンロード)にしておくべき
※全ての添付をダウンロードされたら容量的に厳しい(個人的に)
※全ての添付をダウンロードされたら容量的に厳しい(個人的に)
また、同期はアプリが全面かつスリープでない状態でないと同期しないっぽいので、Androidだとアプリを2画面分割にして、片方でJoplinを稼働させておくべし
移行後の同期
- データは、ノート 約36,000、リソース 約42,000、enexでのデータ量 約45GB
- エンドツーエンド暗号を有効化
→ ローカルの resources フォルダに .crypted というファイルがリソースファイルと共に作られる → 暗号化+リソースを全て取得する場合、リソース×2倍より少し大きい容量が必要となる - インポートしたPCからサーバへのアップロードは12時間程度で完了
- アップロード後のサーバ使用量は 70GBくらいになっていた
このデータ量には Joplin Server 本体も含んでいて、Joplin Webからユーザー使用量 を確認したら 46GBと元データ量(enexはリソースがbase64なので3割増)とそれほど変わらないっぽいが、サーバ容量は余裕を持って... - 他PCへの同期(添付ファイルのダウンロード=自動 なのでノートとインデックスのみ)に、4時間程度
- スマホへの同期、画面が開いてないと同期しないのか、ものすごく時間がかかる、その間にスマホで変更したノートは同期の最後に置かれるのか、ずっと同期されない
4日くらいかかって同期完了 - リソースがローカルに存在するPCでOCRをオンにする(CPU使用率高)、リソース数からの進み具合を計算すると10日くらいかかる計算
終盤になってOCRが進まない原因が判明、最後の数千件は一晩で終わりました
複数ワードでノートとリソース(添付ファイル)の横断検索を行ってくれない
個人的に Joplin最大の欠点ではないかと思う
下記のようなノート(薬局で買い物したレシートを添付)があった場合
タイトル: 2026-01-09 Joplin薬局リソース: レシート画像→OCR(牛乳, コーヒー豆, クッキー...)
下記の検索ワードで検索を行う
「Joplin薬局 牛乳」 → ヒットしない
「Joplin薬局」 → ノートが検索ヒット
「牛乳」 → リソースから検索ヒット
ノートとリソース(OCR含む)のテーブルが分離されていて、結合検索してないのが原因
いまさら可能にしようとすると、テーブル構造の変更か、クエリ側でバラバラになったテーブルを連結して検索する(大幅に検索時間が増える)など影響が大きいでしょう
コメント