cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

asciidoctor-extensions.rb (816B)


      1require 'asciidoctor'
      2require 'asciidoctor/extensions'
      3
      4module Perf
      5  module Documentation
      6    class LinkPerfProcessor < Asciidoctor::Extensions::InlineMacroProcessor
      7      use_dsl
      8
      9      named :chrome
     10
     11      def process(parent, target, attrs)
     12        if parent.document.basebackend? 'html'
     13          %(<a href="#{target}.html">#{target}(#{attrs[1]})</a>\n)
     14        elsif parent.document.basebackend? 'manpage'
     15          "#{target}(#{attrs[1]})"
     16        elsif parent.document.basebackend? 'docbook'
     17          "<citerefentry>\n" \
     18            "<refentrytitle>#{target}</refentrytitle>" \
     19            "<manvolnum>#{attrs[1]}</manvolnum>\n" \
     20          "</citerefentry>\n"
     21        end
     22      end
     23    end
     24  end
     25end
     26
     27Asciidoctor::Extensions.register do
     28  inline_macro Perf::Documentation::LinkPerfProcessor, :linkperf
     29end