ダメ人間オンライン

あまり信用しないほうがいい技術メモとか備忘録とかその他雑記

markdown2impress.plでついでにpdfも出したらええやん

タイトルはオリジナルリスペクトです。

markdownで書いた文章をimpress.jsに対応したHTMLに変換するmarkdown2impress.plというイカしたものがありますが、ついでにpdf化できたりしたら嬉しいんじゃないかと思ってやってみました。ほらslideshareとかにuploadできるし。

markdown2impress.plをforkしてちょっと付け足しただけ。

The output to pdf was enabled · 5126469 · dameninngenn/markdown2impress · GitHub

PDF化にPDF::WebKit(Moose入っちゃう)を使ってるんですがwkhtmltopdfを使えるようにしとかないとダメです。

homebrewでもwkhtmltopdfをインストールできるんですが、Qtにパッチを当てたりしないと機能面的にだいぶ弱いみたいです。実際homebrewで入れたものを使ってみましたがcssのpage-break-afterがきかなくてうまいこと改ページできませんでした。

wkhtmltopdfのダウンロードページにはパッチ当てたQtがセットで入ってるやつあるとのことでそれ使いました。
自分はMacだったのでwkhtmltopdf.dmgをダウンロードして開いてアプリケーションに放り込んでシンボリックリンク貼って使うようにした。

% ln -s /Applications/wkhtmltopdf.app/Contents/MacOS/wkhtmltopdf /usr/local/bin/wkhtmltopdf

これで準備はokでpdf出すにはmarkdown2impress.plに--outputpdfオプション付けて実行すれば出ます。オプション付けなければpdf出さずにいつも通りです。

% markdown2impress.pl --outputpdf README.md

試しにREADME.mdをpdfにしてみたらこんな感じ。

特にpdfにする必要がなければgithub pagesとかに置いたほうがやっぱりcoolですね。

curlでプログレスメーターの出力を止めたかった

curlのプログレスメーターの出力を止めるには -s オプションつければいいけどこれだとエラーまで表示されなくなってしまう。

そんな時は -s(小文字) とセットで -S(大文字) をつけるとエラーだけは出てくれる。知らなかった。

cURL - How To Use (マニュアルページ日本語訳)

StarmanとStarlet

StarmanStarletの違いよく知らなかったので調べてみたら2年ぐらい前にsugyanも同じ疑問を持ってたようでまとまってた。

StarmanとStarletの差異 - Togetter

"いまだに"からさらに2年遅れのダメ人間です。こんにちは。

Plackのwikiのとこにまとまってた。
Standalone HTTP servers · plack/Plack Wiki · GitHub

Starletは--min-reqs-per-childと--max-reqs-per-childで再起動間隔のランダム化もできるみたい。
Webアプリケーションの無停止稼働

ブログ移転した

移転前のブログはレンタルサーバー借りたらついでに使えるって感じのブログだったんですが、レンタルサーバーやめて全部vpsのほうに持ってこうと思ったのでブログ移しました。

ドメイン変わってしまうのは残念やけどそれは仕方ないので割り切る。

で、せっかくなので独自ドメイン使えるようにはてなproにした。