AsciiDoc その2

前回のAsciiDocのエントリで概要を書いたから、なにかサンプルを試してみようかと思ったけれど、適当な長い文章を思いつかなかったので気になった部分の紹介でお茶を濁す :-P
それと、Asciidoctorのドキュメントをつらつら見ていたら、Differences from AsciiDocという項があって、想像してたよりもリストが長く、完全互換を目指しているのかと思っていたがそうでもないらしい。新しい要素を追加したり、非推奨な書式はもはや実装してなかったり。その結果、asciidocより25倍速いとか*1
ざっとUser Guideを読んだだけなので間違ってたら指摘してくれると助かります。


コマンド
AsciiDocの主なコマンドは、 asciidoca2x 。Asciidoctor の方は asciidoctor、それとRubyアプリケーションへの組み込みも重要な使い方。

asciidoc
AsciiDocをHTMLまたはDocBookに変換
a2x
AsciiDocを一旦DocBookへ変換し、そのままPDF, EPUB, DVI, PS, LaTeX, XHTML, man page, HTML Help, plain textなどへ変換。その際に、AsciiDoc特有の記法も処理する
asciidoctor
AsciiDocをHTMLまたはDocBookに変換

*1:どちらかというと、Firefox/IE/Chromeなんかのレンダリングエンジンが機能を競ってるのに近いかな?

続きを読む

ボタンで考えないといけないこと

アコーディオンのボタンはキーボードハック*1すればいいと思うんだけど、気になったのがボタンの同時押し。考えてみれば、そういうことを処理するプログラムを書いたことがない。
ちょっと調べてみるとハードウェアとかUSBのレベルではロールオーバーあるいはNキーロールオーバーというような呼称があるらしい。USBはデフォルトでは6キーの同時押しまでしか対応できないので、ゲーミングキーボードはそれ以上のキー同時押しに対応できるよういろいろ工夫してあるとかなんとか。まあ今回は6キーの同時押しができれば十分だと思うので、特に気にせず進めることにする*2
次にプログラムのレベルでは以前のエントリで試しに書いたコードは一つのキーしか受け付けないので同時押しができない。できればLinuxX Windowを使わないでできればいいんだけど、ずいぶん低レイヤの記述は見つけたが、この辺に取り組むのはもっと後かな。
PythonのライブラリだとpyhookWindows用、pykeyloggerは若干用途が違う上にやっぱりX Window必要、あとはこちらもX Windowが必要なpygamepygletかというところ。
さらに調べていくと、Minimixというツールがpygameを使って同時押しを実現している。(動画を載せてるブログ) これがとても参考になりそうなのでフォークして流用させてもらおうと思う。
このまま行くと、画面もないのにX Windowが内部で動いてる、とても馬鹿らしい実装のアコーディオンになるが、とりあえず動かしてから改めて考えてみたい。

*1:適当なUSBキーボードから基板を取り出して、ケーブルを伸ばして各ボタンに接続

*2:いつか、ものすごくうまくなったら困るかもしれない

続きを読む

ADコンバータを組み込むためにハンダ付けを練習したい


電子アコーディオン作るんならアナログ回路は欠かせないので、Getting Started with Raspberry Pi (Make: Projects)で説明されてたAdafruitのADコンバータを買った*1ら、ハンダ付けが必要なパーツだった。
ついにハンダ付けきちゃったかー。できればハンダ付けはもうしばらく後回しにしたかったんだけど、避けて通れるものでもないからしょうがない。
ハンダごてやハンダは、数年前にgootのX-2000Eキットを買っててこれでいいとして、いきなり本番に入ると壊したときが残念なので、練習したい。数キロ先には町工場が並んでるような土地柄なので、わりと近所に電子部品屋が見つかり、ST-80 ミニバイスと安いユニバーサル基板を買ってきた。秋葉原まで行かずにすんでラッキーだった。

*1:ついでにRaspberry Pi スキルバッジも買った :-P

続きを読む

AsciiDocは技術的な記事やマニュアル、本を書く際に必要なすべての構造的要素をサポートする

Markdownが1年生だとしたら、AciiDocは博士課程だ。
Wow! AsciiDoc is incredible!!

チュートリアルを書くのに最適な軽量マークアップ言語はなにか、広範囲(Markdown, Textile, reStructuredText, AsciiDoc)に渡って調査した。間違いなくAsciiDocが勝者だ。
AsciiDoc is the way forward

(どちらもDan Allen。このエントリのタイトルも。)


軽量マークアップ言語(lightweight markup language)なんてToDo管理ツールが乱立するのと同じように、みんなオレオレ言語作っててたいして機能的には変わらないだろうと思っていたんだけど、Dan AllenAsciiDocをべた褒めしてたので、興味が沸いて少々調べてみた。


今の印象を書くと、書式の仕様は他の軽量マークアップ言語に比べて膨大なものの、単純な書式だけで利用することもできるし、応用も効くから、テキストベースで使う分にはAsciiDocにしとくといいんじゃないかなと思う。まあ(はてな記法や社内のMarkdownみたいに)システムに紐づいてるとどうしようもないんだけど。


現在のサイトは http://asciidoc.org/ *1

*1:わりと最近このアドレスに移動したらしい

続きを読む

小ネタ:MS-Word書類をKindleへ送るややイレギュラーな方法

追記:


という指摘を頂いたので試してみたら問題なく表示できたので、この方法を使いましょう。Amazonのヘルプにも確かにDOCって書いてあった。どうしてもローカルでやりたい人は下の方法が考えられる、ということで。

続きを読む

Arquillian GuidesのTesting Java Persistence日本語版がマージされました


相変わらず愉快な誤訳や不愉快が誤訳があると思うので、指摘があったらお願いします。というか直接Pull Requestしてもいいと思います。だいたいの手順は昨年2月のエントリに書いてるのでこんな感じでやればいいんじゃないでしょうか。マージ済みのファイルはこちら

続きを読む

電子楽器を作ってみたいんだが

もう4年くらい前か、GAINERというのが一部で流行ってたので買ってみたけど、けっきょく使いこなせなかった。やりたかったことは、練習用のサイレントアコーディオン作成*1。バイオリンなどのメジャーな楽器はサイレント楽器が出ていて音をあまり出さずに練習できる。アコーディオンもローランドからVアコーディオンというシリーズが出てるけど、アコーディオン形が千差万別で、自分のとは合わない*2


*1:本番用となると難度がさらに跳ね上がるだろうな

*2:演奏は下手くそで何曲かゆっくり弾けるくらい。それもこれもサイレント楽器がないから!

続きを読む