Googleカレンダーの予定をGmailに表示する方法のご紹介です。
利用には、FirefoxとGreasemonkeyが必須です。
表示方法は以下の通りです。
- Firefox Greasemonkeyスクリプト「Add Calendar Feed – GMail」をインストールします。
- 次に、Googleカレンダーのサイドバーのカレンダーリストから、表示したいカレンダーのプルダウンメニューを開き「カレンダーの設定」を選択し、設定画面を開きます。
「非公開 URL:」もしくは、「カレンダーのアドレス:」 の「XML」ボタンをクリックして、ポップアップ表示されるカレンダーアドレスをコピーします。
- Googleブックマーク(http://www.google.com/bookmarks/)にアクセスして、「ブックマークの追加をクリックします。
そこで、
「場所(URL)」にコピーしたアドレスを貼り付け、「ラベル」に「GMgcal」と入力します。(別のラベル名は利用できません!!)
入力したら、「ブックマークを追加」ボタンをクリックします。 -
Firefoxメニューバーの「ツール>Greasemonkey>ユーザースクリプトコマンド>Gmail Agenda Setup」を開きます。
最初の画面で、Googleブックマークで指定したラベル名「GMgcal」を入力します。次に表示させたい件数を指定します。
これで設定完了です。
注意!これでも表示されなかった方へ
筆者の場合もうまく表示されませんでした。そこで、Add Calendar Feed – GMail 窶錀 Userscripts.org のコメント欄を見てみると解決方法が紹介されていました。
TN have a look in the previous comments. For the script to work for me, I had to change line 219 to:
bmkURL = responseDetails.responseText.match(/\.\/url[^ \n\r”]+(?=.*id=”bkmk_href)/);
(adding a ” after id=)
Firefoxメニューバーの「ツール>Greasemonkey>ユーザースクリプトの管理」で「Add Calendar Feed – Gmail」を選択し、「編集」ボタンをクリックします。
スクリプトの219行目の「after id=」の後ろに「”」を付け加えて保存すればOKです。
また、このままだと、時間表示がGMT表示になってしまうので、ローカルタイムで表示するには、以下のように編集します。
ちーさんより情報提供(Thanks!)
早速ためしてみると、(私のFirefox環境では)下記の問題がありました。
・日時表示が9時間ほどずれている(GMT表示)
・イベントの表示範囲も、GMTを基準にしているGreaseMonkyスクリプトを見ると、タイムゾーンの扱いがちょっと・・・
関数 TSfromISO(…)で、複数の環境に対応したタイムゾーン処理をしているらしいのですが、私の理解を超えています。
とりあえず、「タイムゾーンの事は忘れて、ローカルタイムで使えればいい」
という思い切りで、下記の修正を加えてみました。function TSfromISO() の 667 行目付近:
修正前: TS = (offset == 0) ? TS.getTime() : TS.getTime() – (TS.getTimezoneOffset() * 60 * 1000) – (parseInt(gmtOffset) * 60 * 60 * 1000);
修正後: TS = TS.getTime();
うまく表示されましたか?筆者の場合はこれで成功しました。
Gmailに予定が表示されるのは、意外と便利なので、是非TRYしてみてください。
Thanks! Add Your Agenda To Your Gmail – TechLifeBlogged
関連ページ
ダウンロード
関連リンク
- Gmailにカレンダーの予定リストを表示する『GmailAgenda』
- GoogleサービスをカスタマイズするFirefox拡張機能・スクリプトのまとめ
- Googleカレンダーを使いこなすための16のTips
- Googleサービスに追加してほしい機能リスト(と暫定対応方法)
- GmailにGoogleカレンダーのイベント作成機能が追加
Comments
GmailでGoogle Calendar表示、とっても便利そうですね。
早速ためしてみると、(私のFirefox環境では)下記の問題がありました。
・日時表示が9時間ほどずれている(GMT表示)
・イベントの表示範囲も、GMTを基準にしている
GreaseMonkyスクリプトを見ると、タイムゾーンの扱いがちょっと・・・
関数 TSfromISO(…)で、複数の環境に対応したタイムゾーン処理をしているらしいのですが、私の理解を超えています。
とりあえず、「タイムゾーンの事は忘れて、ローカルタイムで使えればいい」
という思い切りで、下記の修正を加えてみました。
function TSfromISO() の 667 行目付近:
修正前: TS = (offset == 0) ? TS.getTime() : TS.getTime() – (TS.getTimezoneOffset() * 60 * 1000) – (parseInt(gmtOffset) * 60 * 60 * 1000);
修正後: TS = TS.getTime();
私のFirefox環境では、これでだいたい問題解決できたのですが・・・
皆様の所ではいかがでしょうか?
解決ありがとうございます。私も時間表示のくるいに気づかず掲載してしまって申し訳ありませんでした。時間のずれについては、情報提供もとのコメント欄でも話題になっていましたが、明確な対処法は記されていませんでした。
Add A Comment