章立てせずにだらだら長い文章を書くことを抑制するために、指定した文字数を超える連続する段落がある場合警告する機能を搭載した。Arrayであるので、マークアップではなくPureDocクラスで面倒をみることにした。end基本的な値の取得も面倒を見るようになった。制限文字数はユーザーが@par_length_lumitを設定する。設定しなければ機能しない。インデントHTMLでの出力を基本としてきたため、いままで改行すら入れていなかったが、ちょっとひどいのでインデントも入れることにした。spaceを含めタグで始まる行をインデントする。このため、ネストしているものはこのインデント処理が複数呼ばれることになり、うまく処理できる。codeなどについては触らないようにできる。改行については各エレメントのフォーマッタで面倒をみる。いっても、大半はstdメタメソッドで作られているので触るところは少ない。stringifyメソッドによってインデント処理とともにString化も行う。これにより、各エレメントは必ず文字列を返す、という仕様に統一された(これまでは文字列または配列を返していたが、Array#to_sが変更された現在、その仕様は不適切となった)。ちなみに、stringifyに渡されてくる時点では文字列か配列かが確定できないので、これを処理して一旦文字列にしたあと(改行処理もする)、String#each_lineでインデントしてから、配列をまた文字列にしている。アルゴリズムとして効率はよくないが、開発を優先した。ちなみに、インデントは@indent_spacesにセットするか、もしくは$puredoc_indent_spaces環境変数にセットすることでコントロールできる。デフォルトはタブ文字ひとつである。これに伴って、要素はインラインかどうかを判定するためのキーワード引数が追加された。