kiyoka.2008_03_31 RSSPLAIN

Related pages: !kiyoka.blog.list !kiyoka.blog.2008_03
555555555555555555555555555555
5

[OldType][開発メモ] 更新時刻情報のサポート(1)

5

タイムスタンプコマンド #(timestamp UTC) の実装方法

5
わかったこと
5

svnは時刻をUTC(標準時)で返す。(ここで使っているsubversionサーバはCodeRepos)

5

コミット情報を調べるコマンド

5
 svn --xml info '../edit/Test.ot' > info.xml
5

info.xmlのコミット情報部分。実際にコミットしたのは日本時間の2008-03-31 21:56ごろ。

5
<commit
5
   revision="8569">
5
<author>kiyoka</author>
5
<date>2008-03-31T12:56:20.155602Z</date>
5
</commit>
5

 

5
どう実装する?
5
OldTypeのバッチ処理で行うコミット時間はUTCを秒数で *.sexp のS式の中に保存する。
5
!RecentChangesには #(timestamp UTC秒数) という行を埋めこむ。
5
oldtype.kahuaで #(timestamp UTC秒数) をOSの返すタイムゾーンで表示する。
5

 

5
Gaucheで現在時刻を取得する方法
5
srfi-19を使う
5
(use srfi-19)
5
time-utc型
5
> (current-time)
5
#<time-utc 1206973544.480890000>
5
date型
5
> (time-utc->date (current-time))
5
#<date 2008/03/31 23:26:22.595112000 (32400)>
5
時刻を表示してみる
5
> (date->string (time-utc->date (current-time)) "~c")
5
"Mon Mar 31 23:32:41+0900 2008"