GAMS modeのバグ

GAMS mode for EmacsGAMSのプログラムをEmacsで編集するためのEmacsのマクロを公開しています。

私はEmacs人間なので、テキストファイルを編集するような作業は基本的に全てEmacs上でおこないます。GAMSのプログラムを書くのも専用のIDEが不便だったのでEmacsでおこなっていたのですが、その作業をもっと効率的にしようと思い自分でマクロを作成しました。初めに書いたときには2,000行程度でしたが、それからあれこれ機能を追加していったため現在では12,000行くらいのマクロになりました。ただ、自分が欲しい機能の多くは初めの段階で実装してしまったので、ここ2,3年はバグを直すのがメインで新しい機能はほとんど加えていません。

バグの報告もほとんどないですが、最近一つバグを教えてくれた人がいたので、そのバグを直しました。バグを直すこと自体は非常に簡単ですぐに終わったのですが、バグの原因を調べるのにちょっと手間がかかりました。報告してくれた人は海外の人で、メールで連絡をくれたのですが、初めのメールではバグを再現する情報が全くなかったからです。簡単にこちらで再現する場合にはそれでいいのですが、同じバグがこちらで再現できないこともよくあります。今回も原因がさっぱりわかりませんでした。そういうときには、利用しているEmacsのバージョン、Emacsの設定、GAMS modeの設定、どのようなプログラムを書いているときにどんな動作になるのかというような情報がないとバグの原因はもちろん、それがバグなのかどうかさえ判断できません。それで、これこれこういう情報とバグが生じるサンプルのファイルを欲しいというような連絡をして、再びメールを送ってもらいました。サンプルのファイルを見たらバグの原因はすぐわかりました。

実は、その人はもう一つバグの報告をしてくれたのですが、それについても再現できるファイルをくださいと言ったところ、本人自身が再現できないとうことでした...さすがに報告者自身が再現できないバグは直しようがないです。