diff --git a/lib/liquid/standardfilters.rb b/lib/liquid/standardfilters.rb index 9309cb4..aa2a3bc 100644 --- a/lib/liquid/standardfilters.rb +++ b/lib/liquid/standardfilters.rb @@ -43,7 +43,8 @@ module Liquid if input.nil? then return end l = length.to_i - truncate_string.length l = 0 if l < 0 - input.length > length.to_i ? input[0...l] + truncate_string : input + truncated = RUBY_VERSION[0,3] == "1.8" ? input.scan(/./mu)[0...l].to_s : input[0...l] + input.length > length.to_i ? truncated + truncate_string : input end def truncatewords(input, words = 15, truncate_string = "...")