listings.styでRのスクリプトで関数を取り込んでいたら、表示がプロポーショナルになってくれない。
RjpWikiの利用例3からコピーして使っていたが、
\lstset{% ...略... columns=[l]{fullflexible}, ...略... }
このオプションで、コードの単語間のスペースを制御しているらしい。
気づかなかった。
fullflexibleだとコード内のほとんどの連続したスペースにマッチして、一定幅の空白に置換されるようだ。
if (n < 0) x = 1 else if (n >= 0) x = 2 else if (n >= 20) x = 3 else x = 4
これが
if (n < 0) x = 1 else if (n >= 0) x = 2 else if (n >= 20) x = 3 else x = 4
こんな感じに出力される。
fixedにするか、columnsを消すと等幅での表示になる。