2006年05月18日 木曜日

Posted on 2006年05月18日 (木) in articles • Tagged with VBA, PC, Equipment, XML, HTML

OutlookをRSS Readerに

メーラーのOutlook Expressではなく、PIMとしてOfficeの一角であるOutlookもVBAでプログラミングできるのであるが、いままでOutlookのVBAなんてウィルスを作成することくらいしかないんじゃないかと思っていたのである。そんなものいらんなと思っていたわけであるが、やっぱりマクロが使えると便利なので、設定に気を使って便利なものは使いましょう。

会社のPCへのソフトのインストール権限が無いことと、会社のサーバがどうもMicrosoft Exchange Serverで、会社内でスケジュールの公開とかもやっているっぽいので、デフォルト環境のOutlookを使う羽目になったのですが、Thunderbirdを使い込んだ後にOutlookを使って思うのは、_OutlookでRSS Readerが無いじゃない_というところ。まぁアドインとかを購入すればいいのだろうが、時間があったのと「OutlookをVBAでRSSリーダーにする」という記事があったので、VBAで書いてみることとした。codezine.jpにはアカウントを持っていないし、作る気も無いのでWebで公開されているソース片を元にいろいろ書き足してみた。自分で使うにはおおむね問題ない仕上がりにはなった。

ざっくり試したところRSS 0.9xとRSS 1.0では大体問題なくRSSを取得し、記事単位でメールにしてくれる。後の閲覧はメールと同じ。未読管理もOutlookにお任せできる。atomはXMLではなさそうな感じなので、別の枠組みが必要 …


Continue reading

2005年12月04日 日曜日

Posted on 2005年12月04日 (日) in articles • Tagged with Equipment, Excel, XML, Network, HTML

David Hawley, Raina Hawley / Excel Hacks—プロが教える究極のテクニック100選

最近Excelのスキルが凄くあがったなあと思ったので、道場破りでもと思って、本屋でこの本を_立ち読み_してみた。出てくる項目でしか判断してませんが、最後のXMLの項(これExcel2003の話だよなあ)を除けば、僕にとっては_ほぼすべてが既知_の本でした。O'ReillyのHacksシリーズは何冊か購入したけど内容のレベルにムラを感じるのではるが、この本ははっきりいって不要な本であるという結論ですかね。ランダムに結構な数をサンプリングしてみましたが、ほぼ既知の内容で読む価値無しという結論。ああっ、Excel依存症なのは僕のことなのかぁ・・・

ピボットテーブルとかピボットグラフとかソルバーとか言うものを使ったことが無いという人はExcel使いとしては初心者もいいところと思うので、Excelの初心者を卒業したいあたりの人にはまぁお勧めできるでしょうか。

そんなわけで、Excel依存症であることに気がついてしまった結果、全くブルーな気持ちでいっぱいです。この本を買ってやろうという予算は、ずっと買いそびれていた塩野七生さんの「ローマ人の物語」の1巻と2巻の購入資金に転用します。(実は3巻まで、図書館からかりて読んでいたので、未購入なのでした。7巻以降は別な理由で未購入ですが。と言っても、立ち読みレ …


Continue reading

2005年11月22日 火曜日

Posted on 2005年11月22日 (火) in articles • Tagged with Excel, Equipment, PowerPoint, XML, Emacs, VBA, Perl, Ruby, Network, PC, C++

なんでもかんでもExcel症候群

何でもかんでもPowerPoint症候群の弊害を日記で書いたのだが、それよりも世の中に広く広まっている病的な物と言えば、_なんでもかんでもExcel症候群_であろう。とにかく通常の表だけに飽きたらず、提出書類から報告書まで_何でもかんでもExcel_なのである。つまり「何でもかんでもExcel症候群」とはExcelだけですべての仕事が完結してしまう恐ろしい病気なのだ。

その病巣の由来を簡単に予想するとすれば、子供の頃に升目の入ったノートで漢字の書き取りをやらされ(つまりカーニングとかに無頓着になる)、読書感想文などの類は原稿用紙で書かされ、漢字は少ない文字数で情報量を詰め込めることからすっきりとした表が書きやすく、何でもかんでも_表にしないと気が済まない_という日本人の悲しい習性に由来する物であろうと思うのだ。

まぁUnixでEmacsしか使わないというのと似たような話ではあるのだが、典型的なEmacsユーザーが扱うのは汎用的なテキストファイルであり、Emacs LISPでがんがんプログラムを書く(設定ですらLISPを書かねばならないので、多少は誰でも書く物だ)人が多い用に思われる。Excelの場合は、XLS形式という特殊なフォーマット(最近のはXMLなのか?)を用い、適当なワークシート関数などを表層的に使いこなしている人が多く、Excelの基本 …


Continue reading

2005年08月27日 土曜日

Posted on 2005年08月27日 (土) in articles • Tagged with Equipment, XML, HTML, Perl, Ruby, Network, Scheme, PC, Physics, Flower, Mathematics

Lightweight Language Day (and Night)

今年もLightweight Languageの年に一度のお祭りであるLightweight Language Day (and Night)に参加してきました。チケットの発売に気がつかなかったので、何とか買えた昼間の部のみ参加。

今年の僕が感じた目玉のひとつ目は、GNU awk(gawk)のXML拡張であるxmlgawkであろうか。僕がgawkやnawkを使っていたのは学部の4年目のころで、あのころは日本語化パッチを当てたjgawkをメインに使っていた。(今にして思うとperlのプログラムも結構書いたけどawkほど使ってないな。) 気がつけば国際化されて、キーワードが増えてXML文書をSAXっぽく扱えるようだ。この拡張はgawkの先端開発版という位置づけで、コンパイルオプションで無効にできるそうだ。awkは行指向ツールとしてはperlやrubyより使いやすいところはあるので、まだ開発が行われていて進化が続いているのかと言う驚きとともに、昔師匠のawkの技でうんざりしてしまいやめてしまったawkであるが、再び遊んでみたいなあと思ったのである。(僕の師匠(指導教官ともいう)はawkとかPostScriptのプログラムをサクサクと・・・)

二つ目は全然追いかけてもいなかったけどPerl6周辺の話。昨年のLLでは北京オリンピック頃と言っていたPerl6であるが、この1年でPerl6のHaskellによる実装(Pugs)を行ったという天才が登場して、突如として開発が加速しているようだ。それにしても1ヶ月でHaskell …


Continue reading

2005年05月09日 月曜日

Posted on 2005年05月09日 (月) in articles • Tagged with Equipment, HTML, Ruby, XML, TeX

RSS配信開始

連休中いろいろがんばったおかげで、この日記のRSSを配信できるようにしました。多分今日の修正で所望の動作をするはず。広瀬さん作のmkdiary.rbのRSS生成パッケージrss.tar.gzを配布しますので、mkdiary.rbをご利用の方はつかってやってください。一応ruby-1.6系でもruby-1.8系でも動きます。(追加するパッケージはuconvもしくはrbuconvのみです。)

ドキュメントもあらかた書いたので、多分インストールできると思いますが、ようわからん人はご連絡ください。

Google自分の日記の名前で検索

Google自分の日記の名前で検索してみると、意外な方面の意外な記事にリンクが貼られていたりしてなかなか面白い。やっぱりGoogleで飛んでくるのだろうか?

ApacheのMIME型とcharset設定のメモ

忘れないようにメモ。RSSの配信に伴って、RSSのMIME型を text/xml ; charset=UTF-8とすることにした。(本来ならtext/xml+rss ; charset=UTF-8だろうけど) .htacessファイルに以下のように設定する。

AddType "text/xml ; charset=UTF-8" rss

XHTML 1.1でもこの辺の問題はあるので、非常に悩ましい。(text/xml+xhtmlとかtext/xml+rssとか言ったMIME型をちゃんとサポートしているものは少ないのです。)


2005年04月19日 火曜日

Posted on 2005年04月19日 (火) in articles • Tagged with XML, Mathematics, Equipment, HTML

いろいろ調べもの...

いろいろ調べもの。今はこんなことを調べている。

XHTMLファイルの解析 SAXやDOMを使わずに、もっと簡単な方法での特定要素の中身を取り出したい。(たとえばh3要素やa要素) プログラムコードのHTMLにおける引用の仕方 これまでpreでくくった中身をさらにcodeでくくっていたんだが、これはやっぱおかしい。もっと論理的に表現したい。 UTF-8でのファイルの保存について 1つはBOM(Byte Order Mark)を付けるべきか否か。本来UTF-8でのエンコードではエンディアン(卵を丸みがある方から食べるのが好きかのか、尖った方から食べるのが好きかとか言った区別だ)は関係ないはずなのだけど、Unicodeの規格を読むと署名として使っているらしい。BOMを付けるとおかしくなったり(たいていのエディタで付けてくれない)、無いとおかしかったり(IEは文字コードの自動認識が巧く行えない)するので、どうしたものか。2つ目は_変換表はどれが正しい?_ どれも同じ程度に微妙に違う。何を信じればいいのか... いずれにせよ全く何とかして欲しい。(それ以外はUTF-8の方が扱いやすいのよね。XMLの場合。) X-Windowでの漢字変換 うちの環境ではGnomeもKDEもデスクトップ環境としては使ってません。(鬱陶しいんだもの。) ウィンドウマネージャはFluxboxを使っている。適当なディスプレイマネージャ(kdmやwdm)でウィンド …


Continue reading

2005年04月18日 月曜日

Posted on 2005年04月18日 (月) in articles • Tagged with XML, HTML, Equipment, CSS

findメモ

この日記の記事(限りなくHTML4 Strictに近くて、ISO-2022JPで書かれているファイル)を諸般の事情により内容を再利用することを目的に、元の記事をを残しつつ、XHTML 1.0 Strict(UTF-8)に変換しようかと画策している。今回の見直しは結構大きめで、せっかくだからスタイルシートの指定も一気につもりつもりなのだ。

今日の努力で一日分の記事のファイル(index.html)について、上記の変換がshとsedとHTML Tidyでできるようになったのだが、変換したいファイルはyyyyが西暦年、mmが月、ddが日として

~/html/diary/yyyy/mm/dd/

と言うディレクトリに静的に入っている。個数を勘定(LS-lRしてindex.htmlを検索語にgrep書けて行数を数えただけ)してみたところ、1200個くらいのファイルがある。(足かけ5年分だとこのくらい?当然ディレクトリの個数がその程度ある。) さすがに手でやるのも気が遠いというか、そんなの人間のお仕事ではないので、再帰的にできないかなと思うわけだ。いったん1つのファイルを処理する適当に書いたシェルスクリプトはこんなかんじ。あんまり考えないで書いたので、動作の通りそのまんま。

```bash nikki2xhtml.sh

!/bin/sh

if [ -e \(1.orig ] ; then echo "既に処理済みです" else cp $1 $1.orig sed -e 's/www\.ymzk\.org\/~kentaro/www.dabesa.org/' \ -e 's/diary\/diary\.css/standard.css/' \ -e 's/ align=\"right\"/ class=\"d_footer\"/' \ -e 's/<code><pre>/<pre><code>/' \ -e 's/<\/pre><\/code>/<\/code><\/pre>/' $1.orig > ~/tmp/tmp1 iconv -f ISO-2022-JP -t EUC-JP ~/tmp/tmp1 > ~/tmp/tmp2 tidy -output ~/tmp/tmp3 -config ~/TidyConf.txt ~/tmp/tmp2 sed -e 's/EUC-JP/UTF-8/' \ -e 's …


Continue reading

2005年04月14日 木曜日

Posted on 2005年04月14日 (木) in articles • Tagged with XML, HTML, Equipment, TeX, Network, Emacs

今日は1日中XML/HTML周りの調査

サイト全体の見直しを考えていて、これまで積んできた日記を中心とするデータの再利用を行うため、XMLやXHTML周りの調査など。うちの日記は、僕が書く際になるべくHTML4 Strictになるように書いているので、扱いやすいデータだと思うのですが、任意に何個かのファイルに対してHTML Tidyをかけてみた。割とすんなりとXHTML1.0 Strictに変換できることが分かったので、これで処理してみることにする。ざっくりと使えそうなTidyの設定ファイルは以下のようなもの。

yaml TidyConf.txt add-xml-decl:true add-xml-space:false assume-xml-procins:false bare:false break-before-br:false clean:true drop-empty-paras:true drop-font-tags:true drop-proprietary-attributes:false enclose-block-text:false enclose-text:true escape-cdata:false fix-bad-comments:true fix-uri:true hide-comments:false hide-endtags:false indent-cdata:false input-xml:false join-classes:false join-styles:true logical-emphasis:true lower-literals:true ncr:true numeric-entities:false output-xhtml:true output-xml:false quote-ampersand:true quote-marks:true quote-nbsp:true replace-color:false show-body-only:false uppercase-attributes:false uppercase-tags:false word-2000:false split:true doctype:strict repeated-attributes:keep-last output-html:false indent:false indent-attributes:false literal-attributes:false markup:true wrap-asp:true wrap-attributes:false indent-spaces:2 tab-size:4 wrap:1000 wrap-jste:true wrap-php:true wrap-script-literals:false wrap-sections:true punctuation-wrap:false vertical-space:false show-errors:6 show-warnings:true ascii-chars:true input-encoding:shiftjis output-encoding:shiftjis output-bom:auto newline:CRLF fix-backslash:true force-output:false gnu-emacs:true quiet:false keep-time:true write-back:false tidy-mark:true accessibility-check:0


2004年08月08日 日曜日

Posted on 2004年08月08日 (日) in articles • Tagged with Equipment, HTML, XML, Scheme, Ruby, Perl, Excel, VBA

Lightweight Language Weekend 2日目

2日目の前半は最近はやりのblogな話題。僕は基本的に興味がないのだが一応お勉強のため... 大きなblogサイト(Livedoor Blog)やはてなダイアリーなど)の方が来ていたので、個人的には「(政府や各種圧力団体などから圧力がかかりそうな)非常にまずい記事の削除要請があった場合にどのように考えるかの立ち位置」を効きたかったのだが、LLには関係ないし、契約で乗り切れる話かもしれないし、あまりにダークなんで聞けなかった。聞いておけば良かったかな? LLの最も巨大な応用先であることは認めるが、blogだけでこんなに時間を取るんだったら他の話が聞きたかった。

Lightning Talkは詳細はあまり覚えてない。(なんせ半分くらいBitKeeperと話をしていたので。) 平内さんの「木のマッチ」では、Schemeを使用した木構造のデータに対して正規表現みたいなパターンマッチをする話。さくっとXML VallidatorがかけるあたりがSchemeのマクロらしい。久井さんの「Gauche-glによる、3次元図形言語」では、Gauche-GLとストリーム(SICP Chap3の後半)を使ったアニメーションによるプレゼンでGaucheではこんなこともできるのかと言うこともあってこれまた面白かった。

高橋さんの「日本Rubyの会設立」の話は要点とをついたインパクトのあるプレゼンで、こうあるべきかと思ったり... 早川さんの「LL侍」は最初は照れが見えたが、吹っ切れたあと …


Continue reading

2004年02月10日 火曜日

Posted on 2004年02月10日 (火) in articles • Tagged with Java, Equipment, XML, C++, TeX

Java 2 Platform, Standard Edition (J2SE) 1.5.0 Beta1

2月4日にSun MicrosystemsからJ2SE(Java 2 Platform, Standard Edition)の次期バージョンであるJ2SE 1.5.0 Beta1が公開された。JavaはまだJDK1.0のα版とかβ版とか言っていた頃の熱い時代に熱狂的に遊んでいたが、いろいろ熱が冷めるような事件があって、さらに諸般の理由があって_使わない/使えない言語_であった。いままでわりと保守的な更新を続けてきたJavaであるが、J2SE 1.5.0(コード名「Tiger」)では、Java2になったときと同じ程度、もしくはかつて例のない大きな改良が加えられることとなった。言語仕様に関わりそうなものは、ざっくり...

  • JSR-014: Add Generic Types To The Java Programming Language

Generic Types C++のtemplateに相当する機能。Collectionを使う時に値を取り出すのに_キャストの嵐_だったが、これのおかげでソースが保守しやすくなって嬉しい機能だ。無用な機能が多いC++の中で個人的には非常に重要で便利な機能だと思うのだが、Javaに無くて困っていたんだねぇ。 * JSR-201: Extending the Java Programming Language with Enumerations, Autoboxing, Enhanced for loops and Static Import

Enumerations C/C++で言うところのenum型の追加。具体的な内容はEffective Javaの中に書かれているTypesafe-Enumと同じもので、定数を表すためのクラスを使って、各定数はそのオブジェクトにしてしまうというもの。自分で完璧なクラスを書くのは大変(できないか...)なので、言語仕様で提供してくれるのは嬉しいかも。 Autoboxing/Unboxing PrimitiveとPrimitiveのwrapper class間の代入を=でできるようになる。(要は自 …


Continue reading