Module: Jekyll::Filters

### Home Classes Methods

### In Files

- lib/jekyll/filters.rb

### Methods

- #array_to_sentence_string
- #cgi_escape
- #date_to_long_string
- #date_to_rfc822
- #date_to_string
- #date_to_xmlschema
- #markdownify
- #number_of_words
- #textilize
- #uri_escape
- #xml_escape

### Files

- LICENSE

### Class/Module Index

Quicksearch

- Jekyll
- Jekyll::Command
- Jekyll::Commands
- Jekyll::Commands::Build
- Jekyll::Commands::Doctor
- Jekyll::Commands::New
- Jekyll::Commands::Serve
- Jekyll::Configuration
- Jekyll::Converter
- Jekyll::Converters
- Jekyll::Converters::Identity
- Jekyll::Converters::Markdown
- Jekyll::Converters::Markdown::KramdownParser
- Jekyll::Converters::Markdown::MarukuParser
- Jekyll::Converters::Markdown::RDiscountParser
- Jekyll::Converters::Markdown::RedcarpetParser
- Jekyll::Converters::Markdown::RedcarpetParser::CommonMethods
- Jekyll::Converters::Markdown::RedcarpetParser::WithPygments
- Jekyll::Converters::Markdown::RedcarpetParser::WithoutPygments
- Jekyll::Converters::Textile
- Jekyll::Convertible
- Jekyll::Deprecator
- Jekyll::Draft
- Jekyll::Excerpt
- Jekyll::FatalException
- Jekyll::Filters
- Jekyll::Generator
- Jekyll::Generators
- Jekyll::Generators::Pagination
- Jekyll::GistTag
- Jekyll::Layout
- Jekyll::Page
- Jekyll::Pager
- Jekyll::Plugin
- Jekyll::Post
- Jekyll::RelatedPosts
- Jekyll::Site
- Jekyll::Site::Cleaner
- Jekyll::StaticFile
- Jekyll::Stevenson
- Jekyll::Tags
- Jekyll::Tags::HighlightBlock
- Jekyll::Tags::IncludeTag
- Jekyll::Tags::PostComparer
- Jekyll::Tags::PostUrl
- Jekyll::URL
- Date
- Enumerable
- Hash
- Object

No matching classes.

# Jekyll::Filters

### Public Instance Methods

array_to_sentence_string(array) click to toggle source

Join an array of things into a string by separating with commes and the word "and" for the last one.

array - The Array of Strings to join.

Examples

    array_to_sentence_string(["apples", "oranges", "grapes"])
    # => "apples, oranges, and grapes"

Returns the formatted String.

    # File lib/jekyll/filters.rb, line 137
    def array_to_sentence_string(array)
      connector = "and"
      case array.length
      when 0
        ""
      when 1
        array[0].to_s
      when 2
        "#{array[0]} #{connector} #{array[1]}"
      else
        "#{array[0...-1].join(', ')}, #{connector} #{array[-1]}"
      end
    end

cgi_escape(input) click to toggle source

CGI escape a string for use in a URL. Replaces any special characters with appropriate %XX replacements.

input - The String to escape.

Examples

    cgi_escape('foo,bar;baz?')
    # => "foo%2Cbar%3Bbaz%3F"

Returns the escaped String.

    # File lib/jekyll/filters.rb, line 99
    def cgi_escape(input)
      CGI::escape(input)
    end

date_to_long_string(date) click to toggle source

Format a date in long format e.g. "27 January 2011".

date - The Time to format.

Returns the formatted String.

    # File lib/jekyll/filters.rb, line 41
    def date_to_long_string(date)
      time(date).strftime("%d %B %Y")
    end

date_to_rfc822(date) click to toggle source

Format a date according to RFC-822

date - The Time to format.

Examples

    date_to_rfc822(Time.now)
    # => "Sun, 24 Apr 2011 12:34:46 +0000"

Returns the formatted String.

    # File lib/jekyll/filters.rb, line 69
    def date_to_rfc822(date)
      time(date).rfc822
    end

date_to_string(date) click to toggle source

Format a date in short format e.g. "27 Jan 2011".

date - the Time to format.

Returns the formatting String.

    # File lib/jekyll/filters.rb, line 32
    def date_to_string(date)
      time(date).strftime("%d %b %Y")
    end

date_to_xmlschema(date) click to toggle source

Format a date for use in XML.

date - The Time to format.

Examples

    date_to_xmlschema(Time.now)
    # => "2011-04-24T20:34:46+08:00"

Returns the formatted String.

    # File lib/jekyll/filters.rb, line 55
    def date_to_xmlschema(date)
      time(date).xmlschema
    end

markdownify(input) click to toggle source

Convert a Markdown string into HTML output.

input - The Markdown String to convert.

Returns the HTML formatted String.

    # File lib/jekyll/filters.rb, line 21
    def markdownify(input)
      site = @context.registers[:site]
      converter = site.getConverterImpl(Jekyll::Converters::Markdown)
      converter.convert(input)
    end

number_of_words(input) click to toggle source

Count the number of words in the input string.

input - The String on which to operate.

Returns the Integer word count.

    # File lib/jekyll/filters.rb, line 122
    def number_of_words(input)
      input.split.length
    end

textilize(input) click to toggle source

Convert a Textile string into HTML output.

input - The Textile String to convert.

Returns the HTML formatted String.

    # File lib/jekyll/filters.rb, line 10
    def textilize(input)
      site = @context.registers[:site]
      converter = site.getConverterImpl(Jekyll::Converters::Textile)
      converter.convert(input)
    end

uri_escape(input) click to toggle source

URI escape a string.

input - The String to escape.

Examples

    uri_escape('foo, bar \\baz?')
    # => "foo,%20bar%20%5Cbaz?"

Returns the escaped String.

    # File lib/jekyll/filters.rb, line 113
    def uri_escape(input)
      URI.escape(input)
    end

xml_escape(input) click to toggle source

XML escape a string for use. Replaces any special characters with appropriate HTML entity replacements.

input - The String to escape.

Examples

    xml_escape('foo "bar" <baz>')
    # => "foo &quot;bar&quot; &lt;baz&gt;"

Returns the escaped String.

    # File lib/jekyll/filters.rb, line 84
    def xml_escape(input)
      CGI.escapeHTML(input)
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.