Sha256: e32448bd54fa34e54b510f2b040772435cc4d501a19e7c387d0c4d91417810a9
Contents?: true
Size: 1.42 KB
Versions: 23
Compression:
Stored size: 1.42 KB
Contents
# encoding: utf-8 module Nanoc::Helpers # Contains several useful text-related helper functions. module Text # Returns an excerpt for the given string. HTML tags are ignored, so if # you don't want them to turn up, they should be stripped from the string # before passing it to the excerpt function. # # @param [String] string The string for which to build an excerpt # # @option params [Number] length (25) The maximum number of characters # this excerpt can contain, including the omission. # # @option params [String] omission ("...") The string to append to the # excerpt when the excerpt is shorter than the original string # # @return [String] The excerpt of the given string def excerptize(string, params={}) # Initialize params params[:length] ||= 25 params[:omission] ||= '...' # Get excerpt length = params[:length] - params[:omission].length length = 0 if length < 0 (string.length > params[:length] ? string[0...length] + params[:omission] : string) end # Strips all HTML tags out of the given string. # # @param [String] string The string from which to strip all HTML # # @return [String] The given string with all HTML stripped def strip_html(string) # FIXME will need something more sophisticated than this, because it sucks string.gsub(/<[^>]*(>+|\s*\z)/m, '').strip end end end
Version data entries
23 entries across 23 versions & 1 rubygems
Version | Path |
---|---|
nanoc-3.3.2 | lib/nanoc/helpers/text.rb |
nanoc-3.3.1 | lib/nanoc/helpers/text.rb |
nanoc-3.3.0 | lib/nanoc/helpers/text.rb |