google_translate_diff icon indicating copy to clipboard operation
google_translate_diff copied to clipboard

Math::DomainError

Open tskogberg opened this issue 7 years ago • 3 comments

In production we've seen this happen:

The string: "2 st 25 öre 1949,1950.\r\n3 st 1 kr 1943.\r\n4 st 1 kr 1944" will generate an Math::DomainError. It comes from the punkt-segmenter gem and it's a known issue.

A possible fix/workaround for this is to use the fork harrisj/punkt-segmenter and use a trained tokenizer. A code doodle on how that could look can be found here: here.

tskogberg avatar Nov 20 '18 12:11 tskogberg

Code line to reproduce: GoogleTranslateDiff.translate("2 st 25 öre 1949,1950.\r\n3 st 1 kr 1943.\r\n4 st 1 kr 1944", from: "sv", to: "en")

tskogberg avatar Nov 20 '18 13:11 tskogberg

Quick and dirty fix for whomever end up here trying to find solution:

def translate(text:, from:, to:)
  GoogleTranslateDiff.translate(text, from: from, to: to)
rescue Math::DomainError
  GoogleTranslateDiff.api.translate(text, from: from, to: to).text
end

tskogberg avatar Nov 20 '18 13:11 tskogberg

@tskogberg Thank you! this is exactly what I looked for today)

nepalez avatar Jan 18 '19 16:01 nepalez