[2003/01/06] Nishimura Hiromi
● 説明AmMode プログラムで任意フォルダーの同期(更新されているファイルだけのコピー)を追加してみました。プログラムはここ(SyncFolder.dmg)にあります。
● インストール方法このプログラムは MacOS X に標準でバンドルされている rsync を利用し任意フォルダどうしの、更新されているファイルだけをコピーするものです。バックアップに利用して下さい(自己責任でお願いします)。
● 実行インストールは少々面倒なので注意して下さい。まずダウンロードしたファイルを展開して下さいすると下記の2つのファイルがあります。
![]()
SyncFolder.rtf が AmMode プログラムで SyncFolderReadMe.rtfd が説明文です。どんなプログラムか興味があるなら SyncFolder.rtf をダブルクリックしテキストエディタで開いてみて下さい。あまりにも単純なプログラムなので驚くかもしれません。
さてこの2つのファイルを diary/mcPreferences/Command/AmMode のフォルダーに保存して下さい。更に同フォルダーにある mainMenu.rtf をダブルクリックし下記命令を追加して下さい。
com$ = "cal_buildAmModeObject(\"AmMode/SyncFolder.rtf\");";
cal_setAmModeSheetMenuButton(7,"rSync",com$);mainMenu.rtf の一番最後に各加えても結構です。これでインストールは終了です CalendarMemo を再起動して下さい。
● 問題点メニューボタンの
をクリックするとシートがあらわれ
というボタンがあるはずです。これをクリックして下さい。すると下記のようなボタンがあらわれます。これがフォルダ同期用のシートです。
![]()
同期したいフォルダをファインダから
に drag & drop して下さい。また同期先のフォルダーを
に srag & drop します。後は矢印ボタンをクリックすると矢印の方向へバックアップします。
● 注意このプログラムではフォルダー同期が終了するまで他の処理ができません。でも
とするとバックグラウンド(?)で処理するのでフォルダ同期中に別の作業が可能です。ただしフォルダ同期処理がいつ終了したか分からないという欠点があります。
パッケージファイル(?)の場合、例えば rtfd ファイルでは見掛はファイルなのですが実は単なるフォルダーです。 rsync はパッケージとフォルダーの区別をしないので同じファイルがあった場合にはパッケージそのものを更新するのではなく内容を更新します。そのため添付ファイルが更新されていると古い添付ファイルもそのままに残ります。これは rsync に与えるオプションによるものです。現在のオプションは -rlptuz になっているのでこれを希望のものに変更して下さい。
● 最後にこの機能はあくまでもサンプルです。利用には十分注意して下さい。また自己責任でお願いいたします。
たぶんソースの SyncFolder.rtf を見るとあまりにも単純なプログラムなので驚くと思います。実際、私はファイルのバックアップ方法は知りません、という UNIX には便利なコマンドが沢山あるのでわざわざ自分で作る気はありません。 AmMode は単にグラフィカルなインターフェースを提供しているだけです。だからこんなプログラムは貴方にも簡単に作れます。
以上