web-dev-qa-db-ja.com

TomboyNotesの同期の問題

コンピュータを再フォーマットし、フレッシュインストールをバックアップのおてんば娘のメモと同期しようとすると、同期エラーが発生します。詳細をクリックすると、パネルは空になります。私は何百ものメモを持っていますが、そのうちのいくつかは重要なので、これを修正する必要があります。

いくつかの同期の失敗の結果として、バックアップディレクトリ構造が破損している可能性があります。これは次のようになります。

tomboy notes / 0 
               |-0
               | |-0
               |-1
               |-2
               |-3
               |-4
               |-etc.

番号は22まで続きます。各ディレクトリには、少なくとも1つの.noteファイルとmanifest.xmlファイルがあります。

また、この構造が修復できないほど混乱している場合、データを手動で回復する方法はありますか?それとも、他のメモを取るプログラムに移植してから、移植して戻すのでしょうか。

1
torvum

これらのフォルダにはすべてメモが含まれていますが、特定のメモのバージョンが異なる場合があります。したがって、通常、フォルダー番号0には最大数のノート(初期バージョン)が含まれ、番号の大きいフォルダーにはより新しいバージョンが含まれます(フォルダー番号が大きいほど新しいバージョンに対応します)。

正しく自動復元するには、誰かが~/.config/tomboy/ディレクトリのコピー、または少なくともその場所からのmanifest.xmlも必要だと思います(ディレクトリ構造 ここ も参照してください)。

復元時に、履歴全体ではなく、すべてのメモの最新バージョンのみが必要であると判断した場合は、次のpythonコード:

import os
from collections import defaultdict
from shutil import copy2 as copy

input_dir = 'your/backup/dir/'
output_dir = '~/.local/share/tomboy/'
notes = defaultdict(list)
for root, dirs, files in os.walk(input_dir):
    for f in files:
        if f.endswith('.note'):
            notes[f] += [root]
print("Total number of notes: %d" % len(notes))
for k,v in notes.items():
    newest_version = os.path.join(sorted(v, reverse=True)[0], k)
    copy(os.path.join(input_dir, newest_version), output_dir)

これが誰かを助けることを願っています。

P.S.同期モデルは部分的にカバーされています ここ

1
Yury Kirienko