module Jekyll class HatenaIdTag < Liquid::Tag def initialize(tag_name, markup, tokens) super attrs = markup.strip.split @hatena_id = attrs.first @detail = attrs.last == "detail" end def render(context) result = "" if @detail result << "\"id:#{@hatena_id}\"" end result << "id:#{@hatena_id}" result end end end Liquid::Template.register_tag("id", Jekyll::HatenaIdTag)