Ruby 编程中拼写错误的救星:did_you_mean gem

jopen 10年前

经常我会在Ruby开发中遇到拼写错类名或方法名的时候,程序报错,但我不知道只是拼写错误,我会反复的咕噜:

“太奇怪了,看起来完全没问题呀…”

经常我会在这种事情上浪费大量的时间,而原因可能只是一个字符写错了。我痛恨这种事情。

这就是为什么我开发出 did_you_mean gem。使用它,每当你遇到NoMethodErrorNameError 时,它会自动的寻找出你真正想调用的正确方法,并告诉你。

gem 'did_you_mean', group: [:development, :test]

那么,当年拼写错了 ActiveSupport 里的 Hash#with_indifferent_access 后,会发生什么事情呢?:

hash.with_inddiferent_access  # => NoMethodError: undefined method `with_inddiferent_access' for {}:Hash  #  #     Did you mean? #with_indifferent_access  #

看到了吧!现在,你只需要拷贝/粘贴 ‘did_you_mean’ 提示的正确名字,程序就不会有错了。

did_you_mean gem 会自动的把它推测出的信息显示在错误信息中。也就是说,“Did you mean?” gem 会在任何地方为你服务。下面是一个很典型的例子,是我在一个真实项目中它给出的错误提示:

Ruby 编程中拼写错误的救星:did_you_mean gem

你可以在GitHub的项目主页中找到更多的例子: yuki24/did_you_mean

赶快使用 did_you_mean gem 吧,不再为拼写错误发愁。Ruby将会读懂你的思想。

本文转载自: 外刊IT评论 http://www.vaikan.com/