We were very inconsistent regarding these rules. Personally I prefer no empty lines around blocks, clases, etc... as recommended by the Ruby style guide [1], and they're the default values in rubocop, so those are the settings I'm applying. The exception is the `private` access modifier, since we were leaving empty lines around it most of the time. That's the default rubocop rule as well. Personally I don't have a strong preference about this one. [1] https://rubystyle.guide/#empty-lines-around-bodies
24 lines
833 B
Ruby
24 lines
833 B
Ruby
module RemoteTranslations::Microsoft::SentencesParser
|
|
def detect_split_position(text)
|
|
limit = RemoteTranslations::Microsoft::Client::CHARACTERS_LIMIT_PER_REQUEST
|
|
minimum_valid_index = text.size - limit
|
|
valid_point = text[minimum_valid_index..text.size].index(".")
|
|
valid_whitespace = text[minimum_valid_index..text.size].index(" ")
|
|
|
|
get_split_position(valid_point, valid_whitespace, minimum_valid_index)
|
|
end
|
|
|
|
def get_split_position(valid_point, valid_whitespace, minimum_valid_index)
|
|
split_position = minimum_valid_index
|
|
if valid_point.present? || valid_whitespace.present?
|
|
valid_position = valid_point.presence || valid_whitespace
|
|
split_position = split_position + valid_position
|
|
end
|
|
split_position
|
|
end
|
|
|
|
def characters_count(texts)
|
|
texts.map(&:size).reduce(:+)
|
|
end
|
|
end
|