2004年5月上旬の本草兎目

この文書に関するご案内

2004年5月上旬の本草兎目の本草兎目です。

たまに18歳未満の方には勧めたくない内容を含む事があります。

傲岸不遜な発言とかもたまにしてます。適当にあしらうのが楽しいです。

関連ページ
このファイルのURL
http://tirukuru.jp/diary/archives/2004/05_1.html

2004年05月04日

EXSLTのdate関数に関する覚書(1)

category

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つなんですけど、日本語で表示されちゃうのですよね。これを英語名で表示させる(言語を切り替える)やり方が解らなくて悩み中です。

EXSLTEXSLT - 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です。

2004年05月05日

生首侍 一

category

風のない、蒸し暑い夜だった。

月が煌々と照らす村の道を、浪人が飄々と歩いていた。

水を汲みに表へ出た男が浪人に気づいた。額を伝う汗を拭ってから、目を凝らす。

浪人はこちらへ向って歩いてくる。少しずつ形がはっきりしてくる。何かぶつぶつと呟いているようだった。右手に風呂敷をぶら下げている。

井戸へ行くには浪人とすれ違わなければならない。何となく嫌な気がした。

浪人は更に近づいてきた。やはり何か呟いている。

男は目を合わさぬように浪人の右脇を通り過ぎようとした。

浪人は男に気づいて呟きを止めたようだった。

すれ違ったその刹那、男の膝のあたりから声がした。

「おい、返事はどうした」

ぎくりとして、男は下を見た。

浪人が右手にぶらさげていたものが揺れた。

緩く結ばれた風呂敷から人間の髪のようなものがはみ出ていた。

「ひっ」

思わず後ろを振り返った。こちらを向いた浪人の顔がすぐ間近にあった。

「……邪魔ばかりしおって」

浪人はそう呟いて風呂敷を乱暴に振った。そうして再び行く末を見やり、飄々と歩き去った。

この記事のURLはhttp://tirukuru.jp/diary/archives/2004/05_1.html#t05aです。

EXSLTのdate関数に関する覚書(2)  言語を切り替える

category

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です。

2004年05月08日

悪いのはIEを利用する閲覧者じゃないだろう

category

Current Statusより。

本気で「嫌がらせ」をしたいらしい彼らに対する抗議として、su.que.jpでは当分の間GeckoとOpera7.5を弾こうかと考え始めている。

どうしてそんなアホな主張をする人たちと同じ土俵に立つのですか……。

suさんを幻滅させたのは、Geckoではなくて、Geckoユーザの一部の人ではないのですか。IEを投げ捨てさせたい人々が、実際にはIEユーザを投げ捨てているだけなのと、それは同じ事なのではと思うのですが。

この記事のURLはhttp://tirukuru.jp/diary/archives/2004/05_1.html#t08aです。

OSを入れて最初にインストールする10のアプリ

category

OSを入れて最初にインストールする10のアプリは何?と云う事で考えてみました。

因みにOSはWinXPであります。

  1. Norton Personal Firewall(もっともうちはまだ2002ですが)
  2. Norton AntiVirus(こちらも2002……)
  3. Becky!
  4. OPERA
  5. Xalan-JAVA
  6. FFFTP
  7. xyzzy
  8. 2xExplorer
  9. nrLaunch
  10. CLCL

最低限これだけはないと話にならんと云うもの。優先度の高い順に並べてみました。後はActivePerlVixやPhotoshop6.0、RegnessemPowerDVDなどもいるかな。あと大事な大事なB's Recorder、ソフトがどっか行ってしまって、最近泣いてます……(先日クリーンインストールした後、なくなってるのに気づいた……)。

ちなみに、結構クリーンインストールしがちなので、入れてるソフトはRabWiki / Softwareにまとめてたりします。

この記事のURLはhttp://tirukuru.jp/diary/archives/2004/05_1.html#t08bです。