りんごが好きなのでぃす

Macを中心に、たま〜にiPhoneやiPadなどの話題も届けていたら今年で26年目を迎えてました

【Macの豆】第45回:カレンダー.appのイベント名を一括編集する方法

 

f:id:kjx130:20161011143833p:plain

macOS標準のカレンダー.appに登録済みのイベントに対して、そのイベント名を一気に編集(変換)したいと思ったことはないですか?

例えば「打ち合わせ」というイベント名でいくつも登録済みだけど、後からこれらを「ミーティング」という名前に変更したくなった、とか。

f:id:kjx130:20180504171805j:plain

この打ち合わせというイベントが数件しか登録されていないなら、ひとつひとつ地道に修正すれば済む話ですが、これが例えば5年分100件以上も登録されているなんてことになるとひとつずつ修正していくなんてゴメン被りたい話ですよね(^-^;

そんなとき、Finderのファイル名一括変換機能のように……

カレンダーでも選択した(複数の)イベントに対して「打ち合わせ」を「ミーティング」に置き換える

という機能が備わっていると助かるのですが、残念ながらありません。

ただ、カレンダー.appにはそのような機能は備わっていないものの、その方法が無いわけではないので以下にその手順を記します。

(´-`).。oO(画像が多いので長文気味です、ご容赦ください)

念のためバックアップ

まずは万が一に備えてカレンダー.appに記録してあるイベントのバックアップを取っておきます。

バックアップを取るための項目は以下の通り。

f:id:kjx130:20180504103746j:plain

ファイル>書き出す>カレンダーをアーカイブ…

これを選択すると以下のような保存ダイアログが出るので分かりやすい場所(デスクトップなど)に保存しておきます:

f:id:kjx130:20180504104159j:plain

拡張子は "icbu"、ファイル名はそのままでOK

(´-`).。oO(ちなみにicbuとか ical backup のこと、icalはカレンダー.appの旧称)

一括変更(編集)手順

ここから先の作業はカレンダー.appの他にテキスト編集ソフトも使います。

macOS標準のテキストエディタでも構いませんし、Jeditなど他社のテキストエディタでもOKです("ics" ファイルを開けるテキストエディタならなんでも良い)

作業の流れは以下のようになります:

  1. カレンダー.appから任意のカレンダーを書き出す(icsファイル)
  2. 書き出したicsファイルをテキストエディタで開く
  3. テキストの置き換えを行う
  4. 書き換えたicsファイルをカレンダー.appで読み込む

つまりテキストエディタのテキスト置換機能を使って必要な箇所のテキストの置き換えを行う、ということです。

1)icsファイルの書き出し

編集したいイベントで使用しているカレンダー(の種類)を選択します。例えば編集したい文言の「打ち合わせ」のイベントが『自宅』のカレンダーを使っているならこの『自宅』を選択します。

f:id:kjx130:20180504105211j:plain

選択したらファイルメニューから[書き出す>書き出す…]を選び、デスクトップなど分かりやすい場所に保存します(この例では "自宅.ics" として保存されます)

2)icsファイルをテキストエディタで開く

書き出したicsファイルを右クリックすると、そのファイルを開けるアプリケーションが表示されるので、ここからテキスト編集できるソフトを選択します。

f:id:kjx130:20180504110013j:plain

例えばmacOS標準のテキストエディットで開いてみるとこんな感じ:

f:id:kjx130:20180504110040j:plain

これを編集(置換)します。

3)テキストの置き換え

以下、macOS標準のテキストエディットを使った場合で話を進めますが、他のテキストエディタを使う場合でもやることは同じです。

最初に検索・置換機能を呼び出します。

f:id:kjx130:20180504110531j:plain

編集>検索>検索と置換…

するとファイルウインドウの上部に検索置換欄が表示されるので、ここに検索語句と置換語句を入力し、複数の対象を一気に置き換えるなら[すべて]ボタンをクリックします(例:打ち合わせ を ミーティング に置き換え)

f:id:kjx130:20180504110815j:plain

【ポイントと注意】

イベント名(SUMMARY)の置換を行う際、例えばイベントに併記したメモの内容などSUMMARY以外の箇所にも検索対象としてヒットしてしまう場合があります。

例)メモ欄に「打ち合わせの後で飲み会」と書いてある場合など

この辺の確認を怠ると想定外の項目での置換が発生してしまうので、その恐れがある場合はあえて「SUMMARY:打ち合わせ」を「SUMMARY:ミーティング」に置き換えるというような検索置換に使う文言の工夫をしてください。

 

以上の置換が終わったらファイルを保存します。

4)置き換え後のファイルを読み込む

カレンダー.appへのファイルの読み込みは以下から:

f:id:kjx130:20180504111553j:plain

ファイル>読み込む…

これを選ぶとファイル選択ウインドウが開くので、先ほど書き換えを行ったファイル(例:自宅.ics)を選択します。

f:id:kjx130:20180504114453j:plain

ファイルの読み込みを実行すると登録先を尋ねるダイアログが現れます。

今回の場合はテキストの置き換えを行った、つまり置き換え前のカレンダーと差し替えたいだけなので置き換え前のカレンダーと同じカレンダーを選択します。

f:id:kjx130:20180504113244j:plain

今回は"自宅"カレンダーのテキスト置換をしたので、登録先も"自宅"を選ぶ


[OK]をクリックすると数秒で読み込みが終わるので、あとは思い通りにテキストの置き換えが出来ているか確認すればOKです。

もし失敗しているようなら、冒頭で書き出したバックアップファイルを使って作業する前の状態に戻して、改めて置換作業を行ってください。

無事に置き換えが出来たようならバックアップ用に書き出したファイル(icbu)も、今回の作業に使ったファイル(ics)も捨ててしまって構いません。

最後に注意事項

今回はカレンダー.appに登録済みの『イベント名』を一括変更することを目的としています。この方法を応用すればイベント名(SUMMARY)以外も一括置換できるであろうことは容易に想像できると思いますが、よほど知識と自信が備わっていない限り手を出すことはお勧めしません。

どうしてもやりたい場合はくれぐれも自己責任でお願いします。

また、今回のイベント名の一括変更(編集)についても手順の紹介はしましたが実施に際しては自己責任でお願いします。