nDiki : LaTeX
Related term
2005年11月21日 (月)
■ 定型書式で内容を記述していくのに便利な形式は?

今要求仕様書を LaTeX で書いている。 要求と仕様の組をまとめて longtable で記述しているのだが、 LaTeX らしい繁雑さがあってちょっと効率が悪い。 マクロを定義すればある程度書きやすくなると思うが、それでもそこそこまでな気がする。
文書の中にレコードの並びが書けて、レコードの並びの中に文章が書きやすいそんなフォーマットはないものかなぁ。
- LaTeX + マクロ
- 整形は綺麗。
- 記述が繁雑になりがち。\マクロ名とか {} とか。
- DocBook
- 仕様デカスギ
- 以前使ってみたことがあるが、手で書くのにはしんどい。
- XML
- 構造的な情報の表現には良いのだが、手で書くのはしんどい。開きタグも閉じタグも。
- 普通の章節や、マークアップのルールを考えなければならない(定義するか借りてくるか)。
- LaTeX等へのコンバータを書く必要あり。
- YAML
- レコードの並びだけだったら良いが、文書の他の要素を一緒に書くのには適さない。
- ある程度の構造やボリュームがあると、思ったほど手書きしやすくない。
- YAML Perl モジュールで痛い目にあっている。
Wiki に慣れきっている自分にとっては Wiki 文法のような感じで記述できて、一部に定型レコードの並びが書けて、そこの整形ルールだけ定義してあげれば LaTeX に変換できるとかそういった感じがのものが欲しい。 定型レコードの部分は RFC822 のヘッダみたいな感じで良くで、値の部分に長めの文章を複数行で書けるものがいい。
構造化テキスト用フォーマット、あるいはWiki フォーマットをアレンジするのがいいかもしれないな。 このあたりのフォーマットは、ソーステキストのままでも充分読み易いことを意識して定義されているので書くのは楽。
- reStructuredText
- Markdown
- reStructuredText よりもソーステキストが読み易いらしい。
- Perl
- HTMLへの変換しかない。
- WiKicker (Wiki)
- かなり書き慣れている。
- レコードの並びの書き方を考える必要あり。
- 複数行にまたがる処理を書くのが面倒。
- 自分で書いているシステムなので中身は何でも知っている。
- マイナー。
レコード部分とは関係ないけれど reStructuredText や Markdown の「アンダーラインのあるテキストを見出しとする」っていうのはいいな。 普段メールやプレーンテキストでちょっと文書を打つときに使っているスタイルと一緒だ。
要求仕様書用に使うかどうかは別として、要チェック。
- reStructuredText いいんじゃない? (2005-11-22)
- 早速 reStructuredText から LaTeX へのコンバータを書く (2005-11-24)
- 私的10大ニュース2005 [ comp ] (2005-12-31)
- Docutils は自分にとっての Python キラーアプリかも (2005-12-01)
- Rubric でプライベート SBS を立てるも 0.140 では日本語に不具合 (2006-07-22)
2005年11月22日 (火)
■ reStructuredText いいんじゃない?

昨日の続きであるが、reStructuredText がライトなドキュメント書きにはいいんじゃないかという感蝕を得た。
基本的にプレーンテキストのままで充分見られるので、そのままメールに貼りつけられる。
今までは文書を作成する際、メールで草稿をやりとりしたのち内容が固まったら LaTeX のコマンドでマークアップしてコンパイルしてPDF化していた。 これだとちょっと手間であるのだが、最初から reStructuredText 形式で書いていれば、そのまま rst2latex で LaTeX に落とせる。
また必要に応じて rst2html で HTMLに変換してWebサイトに置いておくこともできる。
これらで満足できない場合は Python のコードをいじって変更ということになるが、Python が駄目でも rst2xml でXMLに変換してしまえば他の言語でも reStructuredText のパーサを書かなくても(XMLの処理系を使って)コンバータを書くことができるの比較的楽である。
しかも欲しかったレコードの表現用にフィールドリストというシンタックスがあるではないか。
いいじゃん。
ということで早速今日から使うことにした。
Debian GNU/Linux sid にある Docutils 0.3.9 ではいわゆる全角文字も文字幅を1として扱かう。 このためテーブルなど桁揃えを用いる書式の部分がこのままだと不便である。 画面上では2文字分幅があっても1文字として数えられるため Docutils が通るようにするためには余計な空白などを入れて文字数を調整しなければならないが、そうすると今度は見た目的にずれるので可読性がかなり落ちてしまう。
この問題のためにMatsumoto,Tadashi氏がパッチ
を作成されているので、これを適用。
これでばっちり。
- 定型書式で内容を記述していくのに便利な形式は? (2005-11-21)
- 私的10大ニュース2005 [ comp ] (2005-12-31)
- Docutils は自分にとっての Python キラーアプリかも (2005-12-01)
- Twitter ベイジアンフィルタプロキシ (2007-12-29)
- Impressive - PDF ファイルでプレゼンテーション (2009-02-19)
2005年11月24日 (木)
■ 早速 reStructuredText から LaTeX へのコンバータを書く

要求仕様書を書くのに reStructuredText を使ってみることにしる。 reStructuredText の文法の上で、あるルールに従って書いた特定のセクションやフィールドリストを要求レコードや要求仕様レコードとし、自前でコンバータを書いて LaTeX へ変換する形。
まずは最初のアイデア通り rst2xml で XML に変換してから、Perl スクリプトで読み込んで処理することにする。
Perl 側の処理は XML::LibXML で (何となく XML::DOM より好き)。 しかし毎度ながら DOM 面倒くさい。 とりあえず、今必要な要素のみ変換コードを書く。 reStructuredText を XML へ変換した時の DTD があるので、おいおいこれを見ながらきちんと埋めていかねば。
最低限のものができて、早速コンバート。
これで生 LaTeX で書くより随分楽になった。よし。
- 定型書式で内容を記述していくのに便利な形式は? (2005-11-21)
- Docutils は自分にとっての Python キラーアプリかも (2005-12-01)
- JavaScript でのプログラミングやっぱり面倒くさい (2006-07-23)
- Twitter ベイジアンフィルタプロキシ (2007-12-29)
- reStructuredText いいんじゃない? (2005-11-22)
2005年12月1日 (木)
■ Docutils は自分にとっての Python キラーアプリかも

先日 reStructuredText ベースの要求仕様書ファイルから、LaTeX への変換プログラムを Perl で作成した。rst2xml で変換した XML 文書経由で。
欲しいところだけまずは実装して使ったんだけれど、この先使っていくには細かいところを組んでいく必要がある。やっぱりフルスクラッチするのは面倒だな。
本来は Docutils 用の Writer を作成するのが王道。
しかし Python なんだよね。以前に何度か覚えておこうと思ったんだけれど動機付けが弱かったのかいつも途中でフェードアウト。 しかし今回は明確な目的があるので、もりもりやりそう。
まずは既存の docutils.writers.latex2e.py あたりをコピーしていじって遊んでみるかな。 自分の場合この方法が一番覚えるのが早い。 小学生の時に最初にBASICをいじった時も、既存のゲームのパラメータとか改造から入ったし。
さて、その latex2e.py であるが「documentclass がオプションや設定ファイルで変更できるものの、標準の LaTeX2e 用のもののどれかしか駄目」だったりなど、普通に使うにもちょっといじる必要がありそう(jsbook とか使いたいし)。
一旦自分好みの LaTeX2e Writer を作ってから、それを拡張する形で特定文書毎の Writer を作るのがよさそうだ。
- 定型書式で内容を記述していくのに便利な形式は? (2005-11-21)
- Docutils の reStructuredText から LaTeX ... (2005-12-07)
- 早速 reStructuredText から LaTeX へのコンバータを書く (2005-11-24)
- reStructuredText いいんじゃない? (2005-11-22)
- SCons は GNU Autotools のかわりになるか (2005-04-20)
2005年12月7日 (水)
■ Docutils の reStructuredText から LaTeX への Writer は継承しづらい

この間やっつけでPerl で コンバータをちょっと書いたのだが、やはりここは正攻法で Docutils の Writer として書いておきたい。
Docutils に含まれている LaTeX2e Writer (docutils.writers.latex2e) のクラスを継承してカスタマイズ版を作ればいいかなと着手。 この Writer の生成する TeX ファイルがちょっと好みではないので、継承して自分好みの Writer を書いた上で、それを継承してドメイン毎の Writer を書く事にする。
Python でコードを書いたことはほとんどないのだがそれほど迷う点はない。 素直な言語なのかな。$ とか @ が出てこないのはちょっと寂しい。ブロックをインデントで示すので「閉じ」がなく、ちょっと「スースー」する。 わかる? この気持ち。
Docutils はパースした結果 DOM ライクなツリーができて、これに対して visit / depart 式の visitor を使って処理をしていけるようになっている。 そのあたりはフレームワークがあるし、典型的なパターンなので楽ではある。
ただし、docutils.writers.latex2e のクラスが継承されることを意識されている感じがしないので、メソッドをコピーして書き換えてオーバーライドといった事が必要になる箇所が思ったよりあるのがちょっと気になる。 今後バージョンアップした時に内部も変わる可能性があるだろうし、最終的にはごっそり Writer を作ってしまう方が良さそうだ。
- Docutils は自分にとっての Python キラーアプリかも (2005-12-01)
- reStructuredText いいんじゃない? (2005-11-22)
- SCons は GNU Autotools のかわりになるか (2005-04-20)
- 早速 reStructuredText から LaTeX へのコンバータを書く (2005-11-24)
- 定型書式で内容を記述していくのに便利な形式は? (2005-11-21)
2005年12月15日 (木)
■ 結局自分も MOLESKINE に行き着くのか

仕事やプライベートでの、Life Hacks だったり Tips だったりするようなものを持ち歩いていつでも参照できるようにしたいなと思った。 たとえば、「名言」だとか「問題解決手順」とか「会議の進め方」とかもろもろ。
PC 上の Wiki も悪くないが、PCを使えない時/使いたくない時もある。Palm ではというと、便利なところもあるがやはり1画面における情報量等の面で閲覧性が良くない。
そうするとやっぱり紙か。 12月から使い始めたほぼ日手帳という手もあるが、こちらはメモ的なものを雑多に書いていきたいから、自分の場合ちょっと共存しにくい。
TeX で組版して A6 ぐらいに印刷して閉じるという手もあるが、「閉じる方法」「(最初の段階での)手書きによる新しい情報蓄積」「追記」という点でどうもいいアイデアが思い浮かばない。
そうするとやはり丈夫な手帳に「手書き」「ある程度整理されたら TeX で組版して貼り付け」「手書きで追記したら、適宜 TeX ソースにフィードバックにして重ね貼り/新ページへ貼り」というのがいいのかな。
そういった用途には、やはり MOLESKINE?
MOLESKINE には手を出さないと思っていたのだが、やはり「自分もここへやってくるのか」。
1冊目は Squared Notebook の Pocket。 サイズは約9cm x 14cm。
何かをプリントして貼るとすると 7cm x 12cm ぐらいがいいのだろうか。 まずは、LaTeX のトンボとマージンの設定いろいろ試行錯誤して、良さそうなレイアウトを検討。
@ ギャバンダイナミック
フライヤーにあったアヴァンギャルドという語が目にとびこんできた。
「アバンギャルド」と聞くと「ギャバンダイナミック」と言う必殺技が頭の中でグルグルするのは自分だけだろうか?
[ 製品レポート ]
- A6 方眼ノート比較 (2006-01-06)
- 2008年夏の GTD 運用ツール (2008-07-23)
- DELFONICS の Rollbahn Memo を GTD ツールに投入 (2006-03-27)
- MOLESKINE でマニュアル作成 (2005-12-16)
- 方眼手帳と方眼ミーティングメモ (2005-11-27)
2005年12月16日 (金)
■ MOLESKINE でマニュアル作成

まずはミーティングの進め方などのポイントを LaTeX 打ちして 7 x 12cm 9pt トンボ有りの jsarticle でA4用紙にプリントアウト。
カッターで1枚1枚ちまちまとカットして、MOLESKINE の左側のページへ貼っていく。右側は手書きで追記するように開けておいた。
サイズ的には 縦横もう 5mm ぐらい広げても良かったかな。
会社で変な黒い手帳を開いていたら、それを見ているとお思い下さい。 きっと心の中で何か企んでいるはずです。
- 2008年夏の GTD 運用ツール (2008-07-23)
- フィルムスキャンできるインクジェットプリンタ PIXUS MP980 (2008-11-03)
- 結局自分も MOLESKINE に行き着くのか (2005-12-15)
- ステーショナリーに手を出した - 私的10大ニュース2005 [ misc ] (2005-12-31)
- 方眼手帳と方眼ミーティングメモ (2005-11-27)
2005年12月19日 (月)
■ LaTeX で用語集ページを作りたかったけど

ミッションドキュメントに用語集をつけてみようかと鼻息を荒くしたが、うまくいかなくてしょんぼり。
glossary.sty v 2.24 も試してみたがどうも思ったようにいかないなぁ。
とりあえず索引だけでもつけておく。
- ISP から Outbound Port25 Blocking を行うとの... (2006-05-23)
- MOLESKINE でマニュアル作成 (2005-12-16)
- 今日のさえずり - 「ちびたれ」って何だよ。スゲー気になる! (2008-03-24)
- OP25B 回避のために PortForwarder で port fow... (2006-10-01)
- 自然に計画するためのモデル(GTD) と High-Performance OS (2006-07-09)
2006年6月26日 (月)
■ ニコカレ オフィス編

オフィスでも早速ニコニコカレンダーを始めてみた。
家でやるのと違いオフィスでは大勢で貼って俯瞰したいので、それにあったカレンダーが必要だ。 Web 検索でフリーのカレンダー PDF や、カレンダー作成ソフトウェアを探してみるもなかなかこれだというのが見つからず。
「LaTeX で作るかなぁ、しかし面倒だなぁ」と思いながらさらに探したところ、NTT中国電話帳株式会社のサイトのダイアリーダウンロードページにあった週間カレンダーのデザインが良さそげなのでこれにしてみた。
まずはこれで始めてみることにしよう(そのうち、誰かが専用のカレンダーを作ってくれるのを期待しつつ)。
今日はハッピーな人なし。
- 今日のさえずり - 待受画面が巨大仏像写真なのでビビった (2009-11-06)
- Evernote 使用開始 (2009-03-03)
- Xperia のために FOMA 端末の電話帳を Google 連絡先に (2010-02-26)
- Joel on Software - 必読書 (2008-08-14)
- Web広告に興味を持つ (2000-10-01)
2008年3月24日 (月)
■ 今日のさえずり - 「ちびたれ」って何だよ。スゲー気になる!

- 07:47 久しぶりに pdumpfs 実行。前回12月9日か。バックアップさぼりすぎ。
- 09:03 終了しろ、pdumpfs! (出勤前に)
- 09:13 pdumpfs 終了した。sync 待ち。
- 09:26 いつまでも外付け HDD にアクセスし続けていると思ったら、updatedb が動いてた。
- 11:48 会社のメールアドレスで Google アカウント作った。
- 12:41 地震? L:東京都千代田区東神田3-1-2
- 13:14 会社用 Google アカウントの Google カレンダーを週末を表示「いいえ」に設定。
- 16:18 SafeBoot File Encryptor で暗号化されたファイルをもらった。.exe。
- 16:54 「ちびたれ」って何だよ。スゲー気になる!
- 17:59 Microsoft にあわせて「[ファイル] メニュー」のように書いてみたら、LaTeX だとちょっと面倒。\item の直後とか。
- 19:55 アトレカード新しいのに切り替えた。インフォメーションのお姉ちゃん肌荒れてた。[mb]
- 今日のさえずり - PuTTY って「パティ」なのか (2008-09-11)
- 今日のさえずり - わくわくしないのでやめとく (2010-02-17)
- 今日のさえずり - イトーヨーカドーのポイント付加が削られる (2008-04-05)
- 今日のさえずり - 年間 36500 tweets 相当か (2009-11-13)
- クラッシュは突然に - DAR の使用を再検討 (2009-01-06)
■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザイン ビックカメラProcess Time: 0.029079s / load averages: 0.28, 0.30, 0.24
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)






◇ Twitter やってます。この記事が気にいったらぜひ twitter.com/Naney の follower になってください。