Next: , Previous: , Up: カレンダーとダイアリー   [Contents][Index]


32.7 日の出と日の入りの時刻

特別なカレンダーコマンドにより、任意の日付にたいする日の出(sunrise)と日の入り(sunset)の時刻を、1、2分の範囲で調べることができます。

mouse-3 Sunrise/sunset
S

選択された日付の、日の出と日の入りの時刻を表示します(calendar-sunrise-sunset)。

M-x sunrise-sunset

今日の日の出と日の入りの時刻を表示します。

C-u M-x sunrise-sunset

指定した日付の日の出と日の入りの時刻を表示します。

M-x calendar-sunrise-sunset-month

選択された月の日の出と日の入りの時刻を表示します。

カレンダーからは、見たい日付にポイントを移動してSをタイプすると、エコーエリアに日の出と日の入りの時刻を、地方時間で表示します。日付をmouse-3でクリックし、表示されたメニューの‘Sunrise/sunset’を選択しても表示することができます。今日、または指定した日付にたいしてこの情報を表示するために、カレンダーの外からでも、コマンドM-x sunrise-sunsetが利用可能です。今日以外の日付を指定するには、年、月、日の入力を求めるC-u M-x sunrise-sunsetを使用してください。

C-u C-u M-x sunrise-sunsetにより、任意の地域の任意の日付にたいして、日の出と日の入りの時刻を表示できます。これは経度(longitude)、緯度(latitude)、調整済みグリニッジ平均時(Coordinated Universal Time)との分差、日付の入力を求め、その地域の、その日付の日の出と日の入りの時刻を表示します。

日の出と日の入りの時刻は地球上の位置に依存するので、これらのコマンドを使用する前に、Emacsに経度(latitude)、緯度(longitude)、地域名(location name)を指定する必要があります。以下は何をセットするかの例です:

(setq calendar-latitude 40.1)
(setq calendar-longitude -88.2)
(setq calendar-location-name "Urbana, IL")

calendar-latitudecalendar-longitudeには、小数点以下1位までの数値を使用します。

タイムゾーン(time zone)も、地方時間での日の入りと日の出の時刻に影響を与えます。Emacsは通常、タイムゾーンの情報をオペレーティングシステムから得ますが、その情報が間違っている場合(またはオペレーティングシステムがその情報を提供しない場合)、これらを自分でセットしなければなりません。以下は例です:

(setq calendar-time-zone -360)
(setq calendar-standard-time-zone-name "CST")
(setq calendar-daylight-time-zone-name "CDT")

calendar-time-zoneの値は地方標準時(local standard time)と、調整済みグリニッジ平均時(Coordinated Universal Time)、またはグリニッジ時(Greenwich time: GMT)との分差です。calendar-standard-time-zone-namecalendar-daylight-time-zone-nameの値は、あなたのタイムゾーンで使用される略語です。Emacsは、サマータイム(daylight saving time)で調整済みの、日の出と日の入りの時刻を表示します。サマータイムが決定される方法については、サマータイムを参照してください。

(‘"+0100"’のような)数値的タイムゾーンを表示したければ、これを(‘"CET"’のような)シンボルでなくnumericにセットしてください。

ユーザーとしては.emacsで、普段いる場所をカレンダーの位置変数にセットすると便利だと思うかもしれません。システム管理者としては、default.elで、すべてのユーザーにたいして、これらの変数をセットしたいと思うかもしれません。Emacs初期化ファイルを参照してください。