使い方の質問のメールが来ていたのだが、即答できず。 今後、(万が一)同じ質問が来たら即回答できるようにメモ。
質問:
Word の VBA の
Selection.InsertDateTime DateTimeFormat:="dd/MM/yyyy", InsertAsField:= _ False, DateLanguage:=wdFrench, CalendarType:=wdCalendarWestern, _ InsertAsFullWidth:=False
は、Ruby Win32OLE だとどう書くか?
答:
require 'win32ole' wdFrench = 1036 wdCalendarWestern = 0 word = WIN32OLE.new('Word.Application') word.visible = true doc = word.documents.add word.selection.InsertDateTime({'DateTimeFormat'=>"dd/MM/yyyy", 'InsertAsField' => false, 'DateLanguage' => wdFrench, 'CalendarType' => wdCalendarWestern, 'InsertAsFullWidth' => false})
"word.selection" というのがポイント。
WordをRubyで扱うサンプルが手元になかった分、時間がかかってしまいました。
同じメールの質問で、VBA の With キーワードは使えるかというのがありました。 今のところ使えません。
確か、昔、そういう話をしたような気がして、調べてみたら [ruby-list:15518] からのスレッドがありました。
出張から帰って、会社の先輩の送別会二次会に参加。 みんなテンションが高くて、ついていくのに一苦労。 疲れた。
定数 VERSION と RELEASE_DATEとPLATFORMが無くなっている。
多分、
Thu Jan 22 08:08:50 2004 Yukihiro Matsumoto <matz@ruby-lang.org> * version.c (Init_version): remove obsolete constants VERSION etc. [ruby-dev:22643]
以降。
それぞれ、RUBY_VERSION、RUBY_RELEASE_DATE、RUBY_PLATFORM を使うように 自分の書いたスクリプトを修正。
ちなみに1.8.1でも、RUBY_VERSION、RUBY_RELEASE_DATE、RUBY_PLATFORMは使えます。
Rubyの話題に全然ついていっていないのがバレバレだな。
『三月は深き紅の淵を』と 対を成す本とくれば、無条件で「買い」でしょう。
文庫化されるのが早いなあと一瞬思ったのだけど、単行本が出版されてから二年以上経っていました。
この間、出張の帰りにキオスクで見かけた「迷路」かなんかそんなタイトルの恩田陸の本がありました。 そのときは結局、なんとなく買いませんでした。 タイトルも出版社も覚えてなかったので、書店で片っ端から探しました。 (←実物を見れば、ピンとくるので、ともかく探した。) 残念ながら、これだと思う本は見つかりませんでした。
結局『ドミノ』の勘違いだったのかと思ったのだけど、家に帰ってAmazonで調べたら、双葉文庫の 『MAZE』だったと判明しました。
問診票の自分の年齢を1つ間違える。
自分の年齢がわからなくなるほど耄碌はしていないと思う。多分。
誕生日が昨日だったので、1つ年を取ったことにまだ慣れていなかっただけだ。 (←それは、十分耄碌しているのではないか?) 別の用紙に誕生日を書いたときに、問診票の年齢を間違えていたことに気づいた。 (←自分の誕生日が過ぎたのかどうか、ちゃんと判断できるぐらいの能力は、まだ残っている。大丈夫だ。)
会社PCでもCD-ROMからブートできることを確認。 後輩は、FDDのケーブルを取り替えて、FDDも利用できるようにしていた。
今月末で退社される先輩の内輪だけの送別会。 本番の送別会当日は、出張が入ってしまい、参加できるかどうか微妙だったので、こういう場を設けてもらえて良かった。
会社で 「Javaって生産性が高い?」と聞かれたのだが、 「いや、それほど高いとは思えない。」と答えてしまった。
でも、どうしてそう思うんだろうか?
NullPointerException だとか、OutOfBoundsException だとかを目にする機会が多いような気がして仕方がない。 そういうコードを修正するのに時間がかかってしまい、結果的に生産性が下がってしまうようにも思う。
確かにコードの書き方(コードを書く人間)にも問題があるんだろうが、 そういう書き方ができにくいような仕組はないんだろうか。
あと、例外やtry catchを多用する傾向が強いために、わかりにくいコードが簡単にできてしまうような気がする。
そのあと、続けて「WEB系の開発で生産性が高い言語って何?」と聞かれたのだが、 結局、これと言った返事ができなかった。
会社だと、なんかダウンロードするのに時間がかかりそうだったので、自宅で1枚作ることにしました。
RIPの Bootable cd version (RIP-7.0.iso.bin) をダウンロード。
後は、CD-Rに書き込むだけ。
cdrecord -v speed=4 dev=0,0,0 RIP-7.0.iso.bin
試しに書き込んだPCをそのままリブート。 ちゃんとブートしました。 途中でkeymapをどうするか聞いてきます。 ちゃんとjp106も選択肢の中にあります。
mount すればハードディスクも中身も見えました。
1枚用意できたので、明日、会社でも試してみよう。
「Linkavailable: computer」も終わってたのか。
件のVine Linuxのパソコンだが、後輩が組み立てたものなのだが、FDDが使えない。 でもって、いざというときにちょっと困るかも知れないという話を後輩にした。 でも、今になって、KNOPPIXとかあるんだし、 別段気にしなくてもいいかと思うようにもなった。
CD-ROMドライブは普通に使えるから、 RIPのBootable cd version を1枚作っておくのがいいかも知れない。
先週の続き。
昼休みに、最もお手軽なbootパラメータを変える方法を試してみる。
boot: linux acpi=off boot: linux acpi=off apm=on boot: linux noapic
のどれでも起動できることを確認したところで、昼休みが終わった。今日はここまで。
「Linkavailable: Ruby,diary」が最終回を向かえ、 新番組「Ruby hotlinks 五月雨版」が始まったので ここのトップページも修正。
片手間に会社のパソコンにインストール。 Kernel 2.4 だと Kernel Panic で起動せず。 とりあえずKernel 2.2だと起動できることを確認。 今日は、ここで時間切れ。
とりあえず
どこかから、Vine Linux 2.6r3 を入手する。
カーネルアップグレード
Vine Linux 2.6 Tips を参考にして、bootパラメータを変える
あたりのことをそのうち試してみよう。
Vine Linux 2.6r3 をインストールしてカーネルアップグレードするのがいいかな。
しかし、会社でLinuxをインストールするようになるとは、感慨深いものがあります。
1.8.1の安定版と共にインストール。
erbもちゃんと動くようになってます。
$<.read
もアボートしません。
このページの更新もできました。 しばらくは、1.8系もインストールして、いざとなったら、1.8.1に戻れるようにして使っていきましょう。
このところずーっと、体調が悪かったり、仕事が忙しかったりで、他のことに時間が取れません。 ゆとりが無くなって余計にまずいんじゃないかと、ふと、 考える余裕すら無いような状況です。
そんな訳で、(多分すぐに対応されていたであろう)上記のアボートの件の確認も今日になってしまいました。
眠っていたら、新年を祝う花火の音で目が覚めた。
Ruby 1.9 に移行しなくては、このページを更新できない。
うう。なんかerbが落ちる。 どうやら
$<.read
がアボートするのが原因みたい。 まあ、開発版だから仕方ないか。
1.8.1に戻したら、parse error で htmlファイルが作れない。 結局、/usr/local/lib/ruby/site_rubyに古いerb.rbが残っていたのが原因だった。