diff options
Diffstat (limited to 'lib/syntax_suggest/core_ext.rb')
-rw-r--r-- | lib/syntax_suggest/core_ext.rb | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/syntax_suggest/core_ext.rb b/lib/syntax_suggest/core_ext.rb index 616a6ed983..59e13a149a 100644 --- a/lib/syntax_suggest/core_ext.rb +++ b/lib/syntax_suggest/core_ext.rb @@ -25,7 +25,16 @@ if SyntaxError.method_defined?(:detailed_message) require "syntax_suggest/api" unless defined?(SyntaxSuggest::DEFAULT_VALUE) message = super - file = path + + file = if respond_to?(:path) + path + elsif highlight + # This branch will be removed when the next Ruby 3.2 preview is released with + # support for SyntaxError#path + SyntaxSuggest::PathnameFromMessage.new(super(highlight: false, **kwargs)).call.name + else + SyntaxSuggest::PathnameFromMessage.new(message).call.name + end if file file = Pathname.new(file) |