2004年5月上旬の本草兎目の本草兎目です。
たまに18歳未満の方には勧めたくない内容を含む事があります。
傲岸不遜な発言とかもたまにしてます。適当にあしらうのが楽しいです。
Life with a Rose 本草兎目 来し方の本草兎目 「2004年5月上旬の本草兎目」
Mini Sapphire 2004/04/10 EXSLTにて、EXSLTなるものを知ったので早速使ってみようと思い立ちました。
ローカルの日付を利用するモジュール、これはとても便利そう。Xalan-JAVAも対応してるし。各関数の説明は拡張モジュール - Ft.Xml.Xslt.Exsltにあるのですが、実際の出力例をみながらでないとよく解らない私のために、以下2004年5月1日17時41分9秒の出力例。
| 関数 | 表示 |
|---|---|
| date-time() | 2004-05-01T17:41:09+09:00 |
| date:date() | 2004-05-01+09:00 |
| date:time() | 17:41:09+09:00+09:00 |
| date:year() | 2004 |
| date:leap-year() | true |
| date:month-in-year() | 4 |
| date:month-name() | 5月 |
| date:month-abbreviation() | 5 |
| date:week-in-year() | 18 |
| date:day-in-year() | 122 |
| date:day-in-month() | 1 |
| date:day-of-week-in-month() | 1 |
| date:day-in-week() | 7 |
| date:day-name() | 土曜日 |
| date:day-abbreviation() | 土 |
| date:hour-in-day() | 17 |
| date:minute-in-hour() | 41 |
| date:second-in-minute() | 9 |
で、date:month-name()とdate:day-name()とdate:day-abbreviation()の3つなんですけど、日本語で表示されちゃうのですよね。これを英語名で表示させる(言語を切り替える)やり方が解らなくて悩み中です。
EXSLTのEXSLT - date:day-nameによればThe result is an English day name
(month-nameも同じ)とあるのですが……。根本が解ってない事の露呈なのですが、とほほ。
この問題は解決しました。詳しくはEXSLTのdate関数に関する覚書(2) 言語を切り替えるを参照して下さい。
曜日が日本語で出力された方が嬉しいのが写真日記なので、早速これに利用してみました。
<xsl:value-of select="date:day-name(concat(substring(.,1,4),'-',substring(.,5,2),'-',substring(.,7,2)))"/>
date:day-name()の中にCCYY-MM-DDの形で曜日を出力したい日付を入れるだけ。
この記事のURLはhttp://tirukuru.jp/diary/archives/2004/05_1.html#t04aです。
風のない、蒸し暑い夜だった。
月が煌々と照らす村の道を、浪人が飄々と歩いていた。
水を汲みに表へ出た男が浪人に気づいた。額を伝う汗を拭ってから、目を凝らす。
浪人はこちらへ向って歩いてくる。少しずつ形がはっきりしてくる。何かぶつぶつと呟いているようだった。右手に風呂敷をぶら下げている。
井戸へ行くには浪人とすれ違わなければならない。何となく嫌な気がした。
浪人は更に近づいてきた。やはり何か呟いている。
男は目を合わさぬように浪人の右脇を通り過ぎようとした。
浪人は男に気づいて呟きを止めたようだった。
すれ違ったその刹那、男の膝のあたりから声がした。
「おい、返事はどうした」
ぎくりとして、男は下を見た。
浪人が右手にぶらさげていたものが揺れた。
緩く結ばれた風呂敷から人間の髪のようなものがはみ出ていた。
「ひっ」
思わず後ろを振り返った。こちらを向いた浪人の顔がすぐ間近にあった。
「……邪魔ばかりしおって」
浪人はそう呟いて風呂敷を乱暴に振った。そうして再び行く末を見やり、飄々と歩き去った。
この記事のURLはhttp://tirukuru.jp/diary/archives/2004/05_1.html#t05aです。
EXSLTのdate関数に関する覚書(1)で曜日名や月名が日本語で表示されてしまう、と書いた件について、北村さんが切り替え方をご教授してくださいました。
date:month-name()等の値を(Xalan-Javaにおいて)英語に変更する方法ですが、ざっと検索で探ってみたところjavaのオプションでjava -Duser.language=enとすると英語環境に切り替わるらしく、
java -Duser.language=en org.apache.xalan.xslt.Process [option]としてみると英語で出力できました
と云う事なのだそうです。
早速、うちのXalan-JAVAのバッチファイルを以下のようにしてから変換を行うと、曜日は英語で表示されました。
java -Duser.language=en org.apache.xalan.xslt.Process -in %1 -xsl %2 -out %3
つまり、これは元文書でどうにか出来る問題ではないので、このファイルの時は英語で、このファイルの時は日本語で、と云った切り替えはXSLT側では制御できないようです。
ただ、date関数の中にはdate:day-in-week()と云うものがあって、これは曜日を数字で出してくれる(日曜が1、土曜が7)ものなので、これを利用して変換をすると云ったやり方は(色々記述しないといけませんが)可能です。
月の方はdate:month-in-year()で同じように出来ます。
このdate:month-in-year()なんですが、EXSLTのdate関数に関する覚書(1)で示した出力例をご覧頂ければ解ると思うのですが、その月がその年の何番目か、を出すのではなくて、それまでに経過した月の数(1月なら0、12月なら11)を出すようなのです。EXSLT - date:month-in-yearによれば、returns the month of a date as a number
、とあるのですが……。例えばdate:day-in-year()では、当日も含めて数字が出てくるので、これはどう云う意味なのかな? とちょっと考えてみたり。念のためXalan-JAVAのClass ExsltDatetimeを見てみたのですが、同じような事しか書いてないし……。ひょっとして、これは常識なのでしょうか(汗 どの道、出力される値は一定なので以下略です。
この記事のURLはhttp://tirukuru.jp/diary/archives/2004/05_1.html#t05bです。
本気で「嫌がらせ」をしたいらしい彼らに対する抗議として、su.que.jpでは当分の間GeckoとOpera7.5を弾こうかと考え始めている。
どうしてそんなアホな主張
をする人たちと同じ土俵に立つのですか……。
suさんを幻滅させたのは、Geckoではなくて、Geckoユーザの一部の人ではないのですか。IEを投げ捨てさせたい人々が、実際にはIEユーザを投げ捨てているだけなのと、それは同じ事なのではと思うのですが。
この記事のURLはhttp://tirukuru.jp/diary/archives/2004/05_1.html#t08aです。
OSを入れて最初にインストールする10のアプリは何?と云う事で考えてみました。
因みにOSはWinXPであります。
最低限これだけはないと話にならんと云うもの。優先度の高い順に並べてみました。後はActivePerlやVixやPhotoshop6.0、Regnessem、PowerDVDなどもいるかな。あと大事な大事なB's Recorder、ソフトがどっか行ってしまって、最近泣いてます……(先日クリーンインストールした後、なくなってるのに気づいた……)。
ちなみに、結構クリーンインストールしがちなので、入れてるソフトはRabWiki / Softwareにまとめてたりします。
この記事のURLはhttp://tirukuru.jp/diary/archives/2004/05_1.html#t08bです。