manファイルから普通のテキストファイルに変換

manファイルを整形した普通のテキストファイルが欲しかったんだけど、
ただリダイレクトすると制御用文字が残ったままになってしまう(バックスペースで前と同じ文字を出力して強調表示をしている)。

$ man ls > ls.txt
$ view ls.txt 
LS(1)                       NetBSD Reference Manual                      LS(1)
 
N^HNA^HAM^HME^HE
     l^Hls^Hs - list directory contents

S^HSY^HYN^HNO^HOP^HPS^HSI^HIS^HS
     l^Hls^Hs [-^H-A^HAC^HCF^HFL^HLR^HRS^HST^HTW^HWa^Hac^Hcd^Hdf^Hfg^Hgi^Hik^Hkl
^Hlm^Hmn^Hno^Hop^Hpq^Hqr^Hrs^Hst^Htu^Hux^Hx1^H1] [_^Hf_^Hi_^Hl_^He _^H._^H._^H.]
...

仕方ないから、以下の内容のファイルskipbsをでっちあげて、

#!/usr/bin/env ruby
# -*- ruby -*-

while ch = ARGF.getc
  if ch == 0x08 # backspace
    break unless ARGF.getc
    next
  end
  print ch.chr
end

次のように変換した。

$ man ls | ./skipbs > ls.txt

ここまでやった後で、manページをテキストファイルにすると文字化けしてしまうを発見してしまった。なぬー、colコマンドでできるだとー。

$ man ls | col -b > ls.txt

また無駄なものを作ってしまった。しかしroff関係はコマンドがいっぱいあってよくわからん。

はてなダイアリーへの要望

sectioncategoryモジュールで左サイドバーにカテゴリを表示しているんだけど、それぞれのカテゴリに何件項目が入っているか表示できるようにして欲しい。
人の日記でどのカテゴリがホットなのか知りたかったり、自分の日記の成長の様子を把握したかったりするので…‥ といいつつカテゴリの表示は検索を利用してるみたいなんで、実装するとなるとめんどそうな気もするなぁ。