10年ぶりでJavaのSwing

一週間缶詰めで Java + Swing の世界に戻ってコーディングの羽目になりました.写真の参考書は大村忠史氏のもの.実はこの本買うの3回目です(!?).最初は2006年ころこの前の版を買って開発、同僚に貸したらなんと無くしちゃってこの版で弁償してもらう.…

DITA-OT 4.2

やっぱり使うなら一番新しい「ヤツ」がいいんじゃないか?と思ってDITA-OT(DITA Open Tool Kit)を4.1.2から4.2に上げてみました. でもですね、こういうメジャーなバージョンアップの時はやっぱりいろいろ問題があるようです.私のプラグインのXSLTスタイ…

エンゲルスと資本論

1883年マルクスは病の床で亡くなりました.盟友エンゲルスには残された膨大な草稿から #資本論 第二部・第三部を編集する仕事が残されました.マルクスの字体は象形文字と呼ばれ彼にしか読みこなせなかったと言われます.腰痛持ちの #エンゲルス はソファー…

XT500生き返る

XT500 キャリーに乗せたところ「オゥ!出来てるよ、オイルシール交換した.やっぱり前のはちょっと緩かったみたい.バルブクリアランスも見といた.工場にあるからシャッター開けて持ってってくれ!」 携帯をかけたらバイク屋さんは昨日までにキッチリ仕上げ…

XT500の車検証をもらう

くだんのXT500はノーナンバーです.手元にあるのは、通関証と予備検査証のみ、予備検の有効期間が3か月なのでほったらかしにしておくとすべてはおじゃんになります.という訳で会社を半日休んで松本まで行って車検証を発行してもらって来ました.目的地は長…

XT500の車検証をもらう

くだんのXT500はノーナンバーです.手元にあるのは、通関証と予備検査証のみ、予備検の有効期間が3か月なのでほったらかしにしておくとすべてはおじゃんになります.という訳で会社を半日休んで松本まで行って車検証を発行してもらって来ました.目的地は長…

資本論第一巻読みました!

資本論は尼損から、不破さんの「『資本論』全3部を読む」はセットでヤフオクに出ていたのでそっちを落札して入手.でも途中で横道にそれて別の本(「日本共産党に対する干渉と内通の記録 ソ連共産党秘密文書から」)を読んでしまったので、ずいぶん時間がか…

XT500来たれども...

バカなのでドイツからXT500を個人輸入しました.1年かかってやっと自宅に到着、通関通って予備検査もなんとか通ってます.というか、XT500は日本では形式型番1E6なんですが、ヨーロッパ向けの車体だったので1U6です.この違いは大きく、日本のYAMAHAは主要…

重複したtopic/@idを拾い出す

DITAでオーサリングされる方ならだれでもtopic/@idはDTDでいうところのID属性だから、そのトピックの中でユニークじゃなければならないと教わります.ではmapやbookmapで多くのトピックを束ねる場合はどうなのでしょうか?マップに対応する文書全体でtopic/@…

自然の弁証法

未来に対する唯物論的確信.これはエンゲルスの「自然の弁証法 序論」の最終部分です.書かれたのは1875年とされています.日本ではまだ明治の始まり、自由民権運動が始まり、また西南戦争が起こる前になります.宇宙規模の未来への透徹したエンゲルスの考察…

やってはいけないDITA(その3)

やってはいけないDITAの3番名は「過剰なtopicの再利用」です.DITAを導入する時、書きたいことを細かな粒度のtopicに分割し、それをmapで束ねてパブリッシングするんですよ~!と必ず教わります.なので多くの人は素直に文書を細かなtopicに分割します.ここ…

やってはいけないDITA(その2)

やってはいけないDITAの2つ目です. PDFを埋め込んじゃう 以前ビックリしたことがあったのですがbookmap/frontmatterにいきなり次のようなtopicrefが登場していました. <topicref href="hajimeni.pdf" format="pdf"/> これは何を意図しているかというと、PDFの表紙や目次の前に、hajimeni.pdfで1ページを</topicref>…

やってはいけないDITA(その1)

DITA(Darwin Typing Architecture)の導入があちこちの組織・企業で行われています.もう今ではサブスクリプションばやりで、CMSも必要な機能だけ購入して必要な規模だけ使うので、昔は一番経営陣を納得させるのに苦労したCMS導入ってもはや問題にならない…

バイクは冬眠中です

バイクは冬眠中です.ビラ配り専用のセローも、去年買ったSRも.バッテリーを外したんですが、右は台湾YUASAのセローで左はSRのもの.セロー(225CC)はセルがあるので排気量の大きなSR(400CC)より大きい. SRはミニバイク並みですね.SRはキックオンリー…

DT250

今日配信された「Your alert YAMAHA - DT 250 : 1 new ad」のメールを見たらポーランドの人がリビルドしたDT250(1976年モデル)を出品していてビックリ.右クランクケースカバーは粉体塗装がしてあって、写真を撮っている人まで映りこんでいます.ここまで…

ヨーロッパのXT500

SRに乗って感じるんですが、低速で比較的高いギヤに入れてもトルクフルなエンジンがアクセルに「ドコドコドコ」ってついてゆくあの感じがたまりません.こんなオフ車があったら最高なのになと思います.それはやはりXT500です.実はほんの一時期SRの生みの親…

SR400を買いました.

実は昨年SRのファイナルエディションを買いました.地元のお店ではもう予約完売.グーバイクで見つけた群馬の原田モータースさんにお願いしてなんとか間に合いました.原田モータースさんにはわざわざ群馬より高速を乗り継いで納車に来ていただき感激です. …

C#の由来を知る

C#って実は食わず嫌いでずっと触ったことがありませんでした.しかしWeb関連のプロジェクトでWebSocketによるサーバーとの通信をやらなければならなくなりました.クライアント側は当たり前のようにJava Scriptになります.仮想的にサーバー側をWindows上で…

Webのトホホ(その1)

昨年来ずっとHTML(.php)ばかりやっていて、XSL-FOの世界はほとほと忘れてしまいました.それでもオープンソースで出しているリポジトリに、時たま障害報告や改善要望が寄せられるので、ちょこちょことメンテしています.さて今は仕事の主になってしまったX…

VB: 2次元配列を行の単位で処理する

XSLTとはまるで縁のないVisual Basicの話です.数年前会社が新しい社員を募集したとき、面接に参加したら、来ていた人は「Visual Basicできます」でした.「VBってC#やC++やっている人からするとディスられますよね?」って聞いたら「まあそういうこともあり…

XSLT 3.0への道(35) xsl:accumulatorでスタックを作る

「XMLの鬼門:処理命令」で、oXygenなどのエディタが生成する処理命令は通常のXSLTスタイルシートでは処理が難しいことを説明しました. ではこれを解決するのは何か?恥ずかしながら、以下のSaxonのドキュメントを見るまで知りませんでした. saxon:assign …

XMLの鬼門:処理命令

XMLを処理する上で普段めったにお目にかからないのが処理命令です. 普通オーサリングで意図的に処理命令を書く人はまずいらっしゃらないでしょう?ではどのような場面で処理命令は使われるのでしょうか? OxygenやXMetaLなんかのXMLエディタを使うとTrackin…

大型特殊免許

うちは農家ですので、耕起、代かき、田植えも無事終わり、除草剤も撒いて梅雨になれば一息です.代かきにつかうロータリーのハローをそろそろと思い点検にメーカーに出したところ、いきなり電話がかかってきて、 ~さんのロータリーは、全幅が180cmあります…

CCMSのプラットフォームとXSLTスタイルシート

今まで山ほどDITAのXSLTスタイルシートを書いてきましたが、その主なプラットフォームはWindowsでした.もちろんお客様の中にはCCMSを導入していない場合もありますが、導入している場合はそのプラットフォームはWindowsでした. つまり、手元のWindows 10で…

Conrefの先のxref

私は(自分としては)開発者のつもりでいて、実際に日本ではサポート業務はやらないんですが、USのサポートにDITA関連の質問が来てしまった場合、「オマエがやれ!」とお鉢がまわってくることがあります. 今回はそんな感じで常連になってしまったインドの会…

コードとはてな記法

昔はYahoo! ブログに書いていたので、コードのハイライトなんて夢のようでしたが、HatenaBlogでは「はてな記法」を使えば自動的にコードをハイライトしてくれます. なのですが、私の見た感じからするとちょっとXMLの表示はどぎつすぎます.もう少しVSCodeの…

XSLT 4.0 Proposal (3) Union Types

今回はUnion Typesの話題です.Union Typeつまり共用体という型というと昔のC言語のunionを思い出します.XMLではどうなのでしょうか?XMLでも共用体はXML Schemaで表すことができます.ある要素のコンテンツや属性が複数の型から成ることは十分ありえるので…

XSLT3.0への道(34) "=>" と" !" と高階関数でチャチャッとやってしまう.

普段Javaなんてめったに使わないのですが、たまたまコーディングをせざるを得なくなり、同業の女房の持っている本を見たら「Javaによる関数プログラミング」というのがあったので読んでみました. Java8になって追加されたメソッドを使い、コレクションをス…

XSLT 4.0 Proposal (2) Saxon 10.0が公開されました.

XSLT 4.0のプロポーザルが出たと思ったら、もうSaxon 10.0が出てしまいました.「もう」と書いたのは、10.0は単なるバグフィクッスのためのバージョンアップでなく、XSLT 4.0のプロポーザルに沿って実験的に盛り込んだ各種の機能があることです.sourceforge…

XSLT 4.0 Proposal:タプル

非常に複雑な処理を行うテンプレート、関数を作っていて、戻り値として複数の値を呼び出し側に返したいと考えたことはないでしょうか?私は大いにありました.これをXSLT 2.0まででやっていた時代には次のような方法がありました. テンポラリツリーを作って…