Calibre は最も人気のあるオープンソースのローカル電子書籍管理プログラムでありながら、UTF-8 のファイルパスをサポートしていないことに驚きます。おそらくこれがオープンソースソフトウェアの特徴です。
以前、小众软件の記事で「Calibre のファイルパスを翻訳しないでください」というものを見ました(https://www.appinn.com/calibre-do-not-translate-my-file-paths/)。この記事では、[Cirn09/calibre-do-not-translate-my-path](https://github.com/Cirn09/calibre-do-not-translate-my-path) というプロジェクトを使用して、中国語のパスを使用しています。しかし、この記事は完璧ではなく、数日後には誤解を招くものとなりました(プロジェクトが更新されたため)。そのため、自分でチュートリアルを書くことにしました。
実際には、このプロジェクトの README.md も更新されていますので、それだけを見ることもできます。ただし、私はいくつかの問題に遭遇したので、参考になるかもしれません。
このプラグインを使用しても、デバイスにインポートされるファイルパスはまだ ASCII です。これは、一部の古い電子書籍リーダーが UTF-8 文字を含むパスを正しく処理できない可能性があるためです。
操作を開始する前に、念のためにライブラリをバックアップすることをお勧めします。
インストール#
適切なバージョンを選択#
まず、Releases ページで最新のバージョンを見つけます。このバージョンは Calibre のバージョンと一致するはずです。Calibre のバージョンがプラグインのバージョンより新しい場合は、数日待って作者が更新するのを待つか、自分で Calibre をダウングレードすることができます。
注意:作者は 5.14.0 と 6.11.0 のバージョンのプラグインを特別にパッケージ化しました。古いバージョンの macOS を使用しているためにこれらの Calibre のバージョンを使用する必要がある場合は、これらを使用できます。
要するに、「Calibre のバージョンとプラグインのバージョンが一致する」ということです。バージョンが一致しない場合、軽くて効果がないか、重くて Calibre が起動しない可能性があります。
ファイルの置き換え#
ダウンロード -> 解凍 -> Calibre の元のファイルを上書き
実際には、python-lib.bypy.frozen
ファイルを置き換えることになります。
注意:macOS の Finder で直接ドラッグアンドドロップすると、他のすべてのファイルが上書きされますので、このファイルのみをドラッグアンドドロップしてください。以下は README.md からの引用です:
- ダウンロードしたパッケージを解凍し、階層を進んで
python-lib.bypy.frozen
ファイルを見つけます。Finder
を開き、「アプリケーション」(/Applications)に移動し、「Calibre」を右クリックして「パッケージの内容を表示」を選択し、Contents/Frameworks/plugins
(完全なパスは/Applications/calibre.app/Contents/Frameworks/plugins
になります)に移動します。1. の手順でダウンロードしたパッケージのpython-lib.bypy.frozen
をコピーして上書きし、Finder
ウィンドウを閉じ、通常通りCalibre
を開きます。
新規ユーザーの場合、これで使用を開始できます!
既存のライブラリを変換する#
要するに、すべての本の名前を一度変更し、それから元に戻す必要があります。リフレッシュのような感じです😜
README.md からの引用:
- ライブラリを開き、Ctrl+A を押してすべての本を選択します。
- 右クリック - メタデータの編集 - バルクメタデータの編集 - "検索と置換" タブ
- 検索モード:正規表現、検索するフィールド:
title
、検索:$
、置換:__DELME__
- "適用" をクリックし、Calibre が完了するのを待ちます(クリックする前に、下部の置換プレビューを確認し、新しい書名が元の書名 +
__DELME__
になっていることを確認してください) - 検索モード:文字列一致、検索するフィールド:
title
、検索:__DELME__
、"置換する" は空のままにします( - "OK" をクリックし、Calibre が完了するのを待ちます(クリックする前に、下部の置換プレビューを確認し、新しい書名が元の書名に戻っていることを確認してください)
作業完了!