[Date Prev] [Date Index] [Date Next]
[Thread Prev] [Thread Index] [Thread Next]

[xyzzy:07294] one character move left when print-out



 XYZZYメーリングリストのみなさまはじめまして。空峰翼
(そらみねつばさ)と申します。
 XYZZYを半年ほど前に友人に紹介されてから、愛用させてい
ただいております。


 さて今回は、印刷時にちょっと困った事象が発生しておりまして
メールさせていただきました。


 xyzzyを利用していて、行番号付きでperlのソースコードを印刷
したのですが、ある特定の行だけ、先頭の1文字が数字のとなりに
来てしまう事象が発生しています。

 通常は、以下のように印刷されています(印刷したものだと思っ
てください、PCの画面上では異常はありません):

 1 #!/usr/bin/perl
 2 
 3 #スクリプト開始〜
 4 {
 5   $switch = 'off';
 6   @list = ('iti', 'ni', 'san', 'yon', 'go');
 7   foreach my $suuji (@list)
 8     {
 9       print $suuji . "\n";
10       if($suuji eq 'go')
11         {
12           $switch = 'on';
13         }
14       #おしまい?
15     }
16   exit;
17 }


 これが、なぜか、次のように印刷されてしまいます。


 1 #!/usr/bin/perl
 2 
 3 #スクリプト開始〜
 4 {
 5   $switch = 'off';
 6   @list = ('iti', 'ni', 'san', 'yon', 'go');
 7   foreach my $suuji (@list)
 8     {
 9p       rint $suuji . "\n";
10i       f($suuji eq 'go')
11         {
12           $switch = 'on';
13         }
14#       おしまい?
15     }
16   exit;
17 }


 印刷メニューのプレビューを見ると何も異常はないのに、実際の
印刷になると、ちょうど行頭から数えて7桁目の文字が、行番号の
数字の横に移動してしまいます。

 これは、いわゆるインデントの都合上できた半角スペース、6文
字がある場合のみなので、全部が全部移動するというわけではない
ようです。また、行番号を印刷しないようにすると、別段普通に印
刷されます。なので、当面、問題は回避できるのですが、なんとも
気持ち悪い現象なので、ご相談させていただきます。


 この現象を確認したxyzzyのバージョンは 0.2.2.202 です。実は
それ以前の 0.2.2.176 あたりから怪しかったのですが、バージョン
アップが頻繁なxyzzyのこと、改善されるだろうとタカをくくって
(仕事が忙しいのもあったのですが)放置してしまってました。


 印刷で使用しているドライバそのもの、もしくはドライバとの相
性?の問題の可能性もあるので、なんともわからない状況になって
おりますが、何か解決方法をご存知の方がいらっしゃいましたらご
教授のほど、お願い申し上げます。

 なお、使用プリンタはEPSON製のレーザプリンタの
LP−8400というものです。LANでネットワーク接続されて
います。

 それでは、失礼いたします。

2001/07/11 猫耳元帥 空峰翼

(まとめ)
・印刷時に、行番号の数字の横に1文字移動してしまう
・行頭から半角空白6文字がある場合のみ発生
・画面上・印刷プレビュー上は異常なし
・行番号を印刷しないようにしても異常なし
・確認したxyzzyのバージョンは 0.2.2.202
・使用プリンタはEPSON LASER LP-8400

----------
SORAMINE Tsubasa, The Marshal of NEKOMIMI
soramine@xxxxxxxxxxxx
http://www5.vc-net.ne.jp/~soramine/index.html

Index Home