😎

【bugs.ruby Advent Calender 2025】エラー情報に列番号を追加する提案【25日目】

に公開

bugs.ruby Advent Calender 2025 25日目の記事です。

これはなに

今年1年間通してみてきた bugs.ruby のチケットの中から気になったものを1つずつ取り上げていく Advent Calender です。
取り上げるチケットは基本的にこのブログで取り上げたものになります。
記事のまとめは ここを参照 してください。

[Feature #21105] Improve Ruby Stack Trace to Include Exact Error Position (Column Number)

Ruby で何かしらエラーが発生したら以下のように ファイル名:行番号

class Example
  def self.foo
    nil.some_method_call
  end

  def self.run
    foo
  end
end

Example.run
__END__
output:
test.rb:3:in 'Example.foo': undefined method 'some_method_call' for nil (NoMethodError)

    nil.some_method_call
       ^^^^^^^^^^^^^^^^^
	from test.rb:7:in 'Example.run'
	from test.rb:11:in '<main>'

このチケットでは ファイル名 行番号 に食わせて 列情報 も追加する提案になります。
モチベーションとしては1行が長い場合にどこでエラーになったのか分かりづらいケースがあるので列情報を追加することでよりわかりやすくする、みたいな提案になります。

この辺のモチベーションはわかるんですよね〜〜〜〜。
単純にエディタでどこでエラーになったのかハイライトしたい、みたいなときにも利用できそうな情報ですね。
と、いいつついまは error_highlight で結構リッチなハイライトをしてくれるのでそれでカバーできそうではあるんですよね。

エラーメッセージ関連は最近ちょいちょい手が入っているのでわたしもいろいろとやってみたいんですよねえ。

関連

GitHubで編集を提案

Discussion