Sha256: 94ce7dcf2cea8270cc4b832142db0ebe9ff3602e64e64b71c7df603ec225fdbf

Contents?: true

Size: 364 Bytes

Versions: 13

Compression:

Stored size: 364 Bytes

Contents

description 'Handle interwiki links'

class Interwiki < Filter
  def configure(options)
    super
    @map = options[:map]
    @regexp = /href="\/?(#{@map.keys.join('|')}):([^"]+)"/
  end

  def filter(context, content)
    content.gsub!(@regexp) do
      %{href="#{escape_html @map[$1]}#{$2}"}
    end
    content
  end
end

Filter.register :interwiki, Interwiki

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
olelo-0.9.15 plugins/filters/interwiki.rb
olelo-0.9.14 plugins/filters/interwiki.rb
olelo-0.9.13 plugins/filters/interwiki.rb
olelo-0.9.12 plugins/filters/interwiki.rb
olelo-0.9.11 plugins/filters/interwiki.rb
olelo-0.9.10 plugins/filters/interwiki.rb
olelo-0.9.9 plugins/filters/interwiki.rb
olelo-0.9.8 plugins/filters/interwiki.rb
olelo-0.9.7 plugins/filters/interwiki.rb
olelo-0.9.6 plugins/filters/interwiki.rb
olelo-0.9.5 plugins/filters/interwiki.rb
olelo-0.9.4 plugins/filters/interwiki.rb
olelo-0.9.3 plugins/filters/interwiki.rb