新手问题 ActiveSupport 的 to_sentence 方法真的符合语法嘛?

ibachue · 2012年12月14日 · 最后由 hooopo 回复于 2012年12月14日 · 2059 次阅读
%w(cool fast awesome).to_sentence
# "cool, fast, and awesome" 

这个"cool, fast, and awesome"真的符合英语语法吗?应该是"cool, fast and awesome"吧,不久前刚刚收到我们 QA 的一个 Ticket 也是讲这个的,and 前不需要再加逗号吧。 当然目前可以用

%w(cool fast awesome).to_sentence :last_word_connector => ' and '
# "cool, fast and awesome"

的方法来解决这个问题,不过 to_sentence 的默认行为是不是该修改下?

看到了http://en.wikipedia.org/wiki/Serial_comma,感觉加逗号可能是解决二义性问题,不过似乎不合美国人习惯啊。

可以提交一个 patch 啊。

#2 楼 @zgm 这么做肯定是有原因的。如果知道原因,patch 无须我来提交,如果不知道原因,提交了也没用啊

刚刚在 Practical Vim 这本书上的第 xviii 页上看到那么一句话, 作者是这么写来着

dap     In sequence, press d, a, then p

所以这应该是他们的写作习惯吧

as 里很多都是为英语语法做的,我们用不了

需要 登录 后方可回复, 如果你还没有账号请 注册新账号