2006-07-28 [長年日記]
_ 最近もっともだなぁと思ったこと
- むしろ (サマータイム、実は好評? @ /.-j)
確かに夏は朝の涼しい時間に寝ていられる方が特に灼熱の都会に住んでいる人の健康にはよさげ。つか朝って結構涼しいよね。びっくりする。もう8月も目の前だってのに。
- 北海道式サマータイムを広めよう! (サマータイム、実は好評? @ /.-j)
偽サマータイムをサマータイムと読んでしまうことで本物の邪魔臭いサマータイムの浸透を妨げるというアイディアは秀逸だなと思った。
ピークシフトはいいと思うよぉ。土曜出勤すると妙に仕事がはかどるのと同じようなもんだと言えば身にしみて分かっちゃう人もそれなりにいるんじゃないかな。
何もこんなに遅れてサマータイムネタじゃなくたっていいじゃないか? これがピークシフトですよ!(嘘
_ awk のハマりどころ
awk と言っても gawk ね。あとは知らない。
- 文字列をついシングルクォーテーションで囲んで怒られる
- 「改行コード取らなきゃ」と思っちゃう
- 文字列をつい . で連結した気になって怒られる
gawk は Fink で入れた gawk 3.1.4 を使っている。3.1.x は gettext で国際化なんだよねー、gettext よく分からないんだよねーと思ってたんだけど、LANG をきっちり設定するかあるいは何も設定しなければなんかそれでオッケーっぽい。jXXX 関数はないけど別にいいや。*1
ところで gawk の 3.1 系統は TCP/IP が扱えたりかなり野心的で面白そうなのに、この日本語を扱う際の最初の一歩でつまづいてる人が多いような気がする。Windows の場合はこれをやる、Linux の場合はこれをチェックしろとかっていう最低限のノウハウがないまま「なんとなく国際化してるらしいけど今までと使い勝手違うからいやなんだよね」という層を作ってしまっているような。
2ch なんかでも gawk3.0.4+mb の方が 3.1.x よりウケはいい*2。でもメンテナはもうやる気ないわけですよ。本家が国際化してんだから無理に独自実装のマルチバイト化やる必要ないじゃんと。だったら 3.1.x についていくしかないと思うし、強力になってるんだから、どうせ使うなら 3.1.x 以降を使えた方が幸せになれると思う。
え、全部 Ruby か Python でいいじゃん? んー。なんかねぇ、使っちゃうんですよねぇ。使い続けるスクリプトを作るためには使わない方がいいと思うけど、フィルタとしてはやっぱ使いやすいのよね。
※ 凝り始めると結局 Ruby とかで書き換えちゃうんだけど。
gawk 3.1.xの国際対応は、そのままではWindowsではまともに動きません(ソースの修正が必要)。あと3.1.5で、LANG(つかLC_CTYPE)がマルチバイト文字環境のときの動作がjxxxx相当のものになります(逆にバイト単位のそれができない)。
Windows は相変わらず悩ましげですね。
jXXX関数は逆でしたか。細かい関数は使わなくなっちゃったのがバレバレですね。バイト単位という概念がなくなるのは ecmascript みたいですね。あれもどーも微妙なんだなぁ。