普段、自分紹介する時や自己紹介欄を書くときは、肩書きとして「フリーランスエンジニア」と名乗っている。それが、ここ最近ある人に私の肩書きを「フリーランスプログラマ兼ライター」と紹介され衝撃を受けた。
とはいえ、今年は単独で上梓したり、雑誌に寄稿したりで、コードを書く量より文章を書く量が圧倒的に多かったので、「そう思われていても仕方ないな」と苦笑した次第。ま、来年は今年より文章を書く量を減らします。その分コードを書く量を増やそうかと。
そんな感じで文章を書く機会がなにかと多い。ただ、そのような仕事のなかでいくつかの問題点が浮上してきた。それは、これら原稿の記述フォーマットの違い。
記述フォーマットの統一
普段のテキストはmarkdown形式とよばれる、簡易なフォーマット形式をつかって書いている(このblogエントリーもそう、WordPressにmarkdown形式でエントリーが書けるプラグインが多数あるので)これを使うことによって、リンクの指定や見出しなどのタグ付がHTMLより簡単に指定できる。
ただ、雑誌等に送る原稿は、markdown形式で書けるわけもく、出版社指定のフォーマットで執筆する必要がある。ちなみに、この手の出版社向けのタグフォーマットは、先頭に星印を入れるなど全角文字で指定することが多い。
私はこの手のフォーマットが覚えきれないので、タグが簡単に入力できるようEmacsのメジャーモードを出版社ごとに作成して、キー入力でタグ入力できるようにしていた。これなら、タグをおぼえる必要がない。
まあ今年はこんな感じで進めていたのだが、ただ、この方法だと原稿が他の形式に変換できないので、執筆中にも不便も多い(HTMLに変換して内容確認するとか)なので、次からは何か統一したフォーマットで記述して、最終的に各出版社指定のフォーマット変換する方式を取ろうかと思った。
じゃあ、その統一フォーマットの候補って何があるの?っことで、探してみた。 このような統一フォーマットに耐えうるもので、世界的に利用されているものは、だいたい以下の通りじゃないかと。
このなかで、出版に向いているのはreST。SPHINXを利用することで、reSTからHTML, PDFはもちろん、LaTeXやePubにも変換できてしまう。ただ、指定できる事が豊富な分、定義されているマークアップが多く、今回のような独自形式に変換するという用途で採用するには難しいという問題がある。
そこで、markdownやtextileという選択肢になる。どちらも実装されている機能は同じ程度で文法は異なる(機能だけでいうとreSTには劣る)そしてこれらの書式を生成/解析するためのライブラリも豊富にあるので、今回の目的である独自形式に変換するのがしやすい。 それと同じくらいに重要なのが、素のテキストがreSTに比べて書きやすいこと。またpandocを利用することで、HTML,PDF,ePubまで様々な形式に変換できるというメリットもある。
やっぱmarkdownに
結局は、慣れているmarkdownに落ち着きそう。今後はすべてのテキストはmarkdownで書いていく(あ、Wordファイルとかは別ね、あれはしかたない…) markdownを利用する前は、はてな形式(pukiwiki形式も同じ)で書いていたが、世界的な流れに沿った方がよかろうという事でmarkdown形式に移行したのが3年ほど前。やっぱ、流れに沿って自分を変化させていくと後々幸せになれるなあと実感した訳で。