% Variable *PRINT-LINES*
Variable *PRINT-LINES*
非負の整数か、nil
*print-lines*
の値がnil
ではないとき、
何かをプリティプリンターで印刷するときに
生成された出力の行数を制限します。
もし行数を越えて行こうとしたとき、
最後の行の終端に..
を印刷し、
続いて保留されていた全てのサフィックス(閉じる区切り記号)を印刷します。
(let ((*print-right-margin* 25) (*print-lines* 3))
(pprint '(progn (setq a 1 b 2 c 3 d 4))))
>> (PROGN (SETQ A 1
>> B 2
>> C 3 ..))
=> <no values>
なし。
..
の表記は、レベルの省略形として使われる...
とは意図的に違うものにしています。
よって二つの違った状況は視覚的に区別できます。
この表記は、省略された出力を後で読もうとしたときに、
Lispリーダーがエラーを通知する可能性を高めるために使用されます。
ただし、"この文字列は切り捨てられた... "
のように
文字列の中で切り捨てが発生した場合は、
後で問題の状況を検出することができないため、
そのようなエラーは通知されないことに注意してください。