このサイトではアフィリエイト広告を利用しています

DropboxでのCatMemoNote同期エラー

このページの内容(クリックで記事までスキップ)

ブログ作成の大事な友達 「 Catmemonote 」

こうやってブログを作っていくことを決めた時に、どうやって記事を作っていけばいいのかと調べていた。
そこでおすすめとされていたのが「 Catmemonote 」と呼ばれるソフト。

公式サイトはこちら
http://www.cc9.ne.jp/~pappara/catmemonote.html

 最新のバージョンは2.2なんだけど、開発が2014年の8月で止まってしまっている。
とても使いやすいから開発が止まってしまったのはとても残念なんだけど、今でも使いやすいので愛用させてもらっている。

使うようになった理由としては、

・シンプルなメモ帳ファイルである
・テキストファイルとしてフォルダ分けされて保存される。
・フォルダ内のテキストデータをツリー形式で表示でき管理しやすい。
・自動で保存されるので間違って閉じてしまってもデータが残っている。
・基本はテキストに保存されているのでソフトを消してもデータは消えない。
・インストール不要のソフト。単独で動く
・単独で動くソフトのため、USBに入れても使える。
・単独で動くソフトのため、Dropboxなどのクラウドに入れても使える。
・エディターのカラーを選べるため、黒背景の白文字という使い方ができる。

その他にも便利な機能が様々で、とても気に入っている。
特に、USBやDropboxに入れても使えるというのが助かる。

自宅のデスクトップで使っていてても、本体ソフトとデータをDropboxに入れてあれば仕事場のパソコンや自分のノートPCでも使うことができるのだ。
Windowsソフトであるので、iphoneなどでは同期できなくて使えないのが残念。
そのあたりはGoogleドキュメントなどを併用することでカバーしている。

同じようなテキストエディターとして愛用しているのが「 TeraPad 」
こちらからダウンロードできます
https://tera-net.com/dl/tpad/tpad109.exe
↑直接ダウンロードリンクのためクリックしたらダウンロードされるので注意。

そんな気に入っている「 Catmemonote 」なんだけど実は困った不具合がある。

Dropboxでの同期時にエラーが頻発

「 Catmemonote 」の既知の不具合にあるのが、同期時にエラーが起こりデータが消失するというもの。
実際にはテキストデータが消失しているのではなく、「 Catmemonote 」に保存されている
「メモ帳の管理データ」が消失してしまうことで「 Catmemonote 」で作ったテキストデータが見えなくなる。

データ自体はフォルダ分けされて保存されているので消えることはないので安心なんだが、管理できないということは次に開こうと思った時にテキストデータを「 Catmemonote 」に認識させるところから始めなくてはいけないということだ。

復元は簡単なんだが、それが頻発するとなると使い勝手が悪いので使わなくなってしまうだろう。
「 Dropbox 」などのクラウドに保存することがないのであればこういった不具合はほとんど起こらない。
というか私自身は起こったことが一度もない。

パソコン1台にいれておき、そこでしか使用しないのであれば管理データ(システムデータ)が消えることがないので申し分ない。

では、なぜ「 Dropbox 」に入れた時にシステムデータが消えてしまうのだろうか?

system.iniの「 Dropbox 」での同期不全による弊害が原因?

その問題が「 Dropbox 」にあるのか「 Catmemonote 」にあるのかわからないので調べてみた。
結論から言うと「 Dropbox 」の同期の問題が「 Catmemonote 」に影響していることが原因かと思う。
思うだけであり確実な結論ではないので断定はできないのでそこはご理解ください。
そうではなさそうという状況証拠も存在するので一概に言えない。
結果からすると未だに原因不明だ。

「 Dropbox 」のエラーの可能性として「同期できない場合」という「 Dropbox 」の注意書きがある。
https://www.dropbox.com/ja/help/syncing-uploads/files-not-syncing

こちらの「Windows で使用できないファイル名」の項目に「無視されるファイルの種類」というのがあるのだが、一つ問題が。
次のようなサイズの小さいシステム ファイルは Dropbox で同期されない場合があります。
とある。

「 Catmemonote 」のシステムデータは「System.ini」というデータで保管される。
この中にフォルダのタブ名や並び方、テキストデータの配置などが記録されており、「 Catmemonote 」本体がこのシステムデータを読み込んで、フォルダやテキストを設定された位置に配置するのが単純なソフトの仕組みであるようだ。

つまりこの「System.ini」が壊れていたり、存在していない場合は新たに「System.ini」が作られることになり「 Catmemonote 」本体自身はまっさらな状態にあると認識されてしまうのだ。

「System.ini」のデータ自身は「 Dropbox 」が指定するような「小さいシステムファイル」にあたるほどの「小さい」には該当しないように思える。

設定ファイルなので数十キロバイトはあるので簡単に書いたテキストデータよりかは大きい。
しかし、システムファイルとしては小さいと「 Dropbox 」で認識されて同期に時間がかかったり、そもそも同期されたりされなかったりということが起こっているのかもしれない。

常に同期が行われず「 Catmemonote 」が使えなくなるのではなく、なんらかのタイミングで使ってソフトを閉じた時に保存されていない、もしくは同期されていないということが起きるようである。

設定が初期化してしまう原因などについても、他のサイトで議論されていたりするので正直原因が何かははっきりしていないのも現状だ。
対応策として、「 Catmemonote 」開発側でもシステムデータを自動バックアップで作成されるような仕組みに変えている。
それでもバックアップファイルや新しいファイルごと消えてなくなってしまうところを見ると、「.ini」の拡張子ファイルは同期できたりできなかったりしてしまうという「 Dropbox 」の不具合があるのかもしれない。

ただ、すべての「.ini」に起きる不具合かというとそうでもない。
IDMというパスワード管理ソフトも「 Dropbox 」で使っているのだが、それのシステムデータが損失してしまったことはないのだ。

それらを考えると、「 Catmemonote 」を閉じた時に上書きされる「System.ini」がうまく「 Dropbox 」にアップロードされなかったか保存されなかったことにより次に開いたときに読み込む「System.ini」が存在しないということになるのだろう。

対応策として「System.ini」だけを定期的にバックアップするという方法がある。
また、「 Catmemonote 」を起動した時に、デフォルトに戻ってしまっていることを確認したら、「 Catmemonote 」を閉じる前に本体ソフトの入っているフォルダ内の「System_new.ini」というファイルを違う場所に保存しておくことで容易に復元することができる。

この「System_new.ini」は「 Catmemonote 」本体と同じフォルダの中に「System.ini」が存在しない時、つまり初めて使った時などに自動で作成されるファイルである。
作成された後、「 Catmemonote 」を閉じると、その時点での状況を「System.ini」として記録する。
つまり、「System.ini」が存在しない場合に自動で作成されるのが「System_new.ini」で、それが残っているということは前回ソフトを終了した時に「System_new.ini」の形式で保存されたまま「System.ini」にならなかったということ。
もしくは「 Dropbox 」に「System_new.ini」の状態でアップロードされ、その後の「System.ini」が同期されないまま終了してしまった。
ということが考えられる。

今回不具合が出るかと保存したりしてみたが、不具合は検証できなかった。
パソコンの「 Dropbox 」フォルダの内容とアップロードされている「 Dropbox 」の内容は即座に同期していて問題なかった。
問題解決に至らなかった・・・

「 Catmemonote 」データの復元方法

救済処置として「 Catmemonote 」のシステムデータが消えてしまっていた時の復元方法。


1.起動したらデフォルトに戻っていたらソフトを閉じてはいけない!
  ソフトを閉じた時にシステムデータが上書きされるので閉じる前に前回のシステムデータを確保しておく必要がある。
2.「 Catmemonote 」本体のあるフォルダを開く。
3.その中にある、「System_new.ini」をデスクトップなどに避難させる。
4.「 Catmemonote 」を閉じてみる。「System_new.ini」が自動的に「System.ini」として保存されたのを確認する。
  「System.ini」として保存された時点で「System_new.ini」は消えて「System.ini」が上書きされる。
5.デスクトップ等に退避させた「System_new.ini」を「System.ini」に名前を変える。
6.「 Catmemonote 」フォルダにある「System.ini」をデスクトップの「System.ini」で上書き保存
  (デスクトップの「System.ini」は残したままコピーで上書きを)
7.「 Catmemonote 」本体を起動してデータが復元されていることを確認。問題なく使用可能。

万一、「 Catmemonote 」を閉じてしまって「System.ini」を上書きしてしまい復元できない場合。

1.「 Catmemonote 」本体のあるフォルダを開く。
2.そこにはフォルダ分けされたテキストデータが残っているはず。
  フォルダ→「 Catmemonote 」でのタブ
  フォルダ内のテキスト → 「 Catmemonote 」で作ったテキストデータ
  なのでそれを「 Catmemonote 」に戻すだけ。
3.「 Catmemonote 」を起動する。
4.自分で作ったテキストデータのフォルダを選択し、ドラッグアンドドロップで「 Catmemonote 」に重ねる
5.データ読み込み完了

この方法だと、タブとテキストデータは戻るが、ツリー形式に入れ子にした情報が戻らないので注意。

かんたんに言うたが、これが「 Catmemonote 」でのテキストデータの復元方法だ。
Dropboxでの同期が常にうまいこといくのであればこんな復元の手間はないのになと思わせてくれる。

そんな不具合ありのめんどくさい「 Catmemonote 」だが、それでもずっと使い続けている。
他にこういったソフトがあるのかもしれないが知らない。ってかたぶんあるんだろうな。
だが、最初に話したメリットが大きいと考えているので、多少の不具合があろうと個人として「 Catmemonote 」が気に入っているのだ。

開発が終わってしまったので、この不具合が修正されることはないのだろうがどうにかできないかと今でも模索中だ。
だいぶ長くなってしまったし、結局解決できないんかーいってな落ちになってしまったが、この情報が誰かの何かの役に立つことを願っている。

1 個のコメント

  • 解決法は「system.ini」の中の[System]セクションの「IniSafeWriting」キーを 0にする・・これだけで共有のトラブルは起こりません。

  • コメントを残す

    メールアドレスが公開されることはありません。 が付いている欄は必須項目です

    このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください