Class: Rabbit::Parser::Wiki::RabbitOutput::BlockPlugin

Inherits:
Object
  • Object
show all
Includes:
Element, GetText
Defined in:
lib/rabbit/parser/wiki/output.rb

Constant Summary

Constants included from GetText

GetText::DOMAIN

Instance Method Summary collapse

Methods included from GetText

included

Constructor Details

#initialize(output) ⇒ BlockPlugin

Returns a new instance of BlockPlugin.



455
456
457
# File 'lib/rabbit/parser/wiki/output.rb', line 455

def initialize(output)
  @output = output
end

Instance Method Details

#aafigure(source, props = {}) ⇒ Object



509
510
511
512
513
514
515
516
# File 'lib/rabbit/parser/wiki/output.rb', line 509

def aafigure(source, props={})
  args = [@output.canvas, source]
  Ext::Image.make_image_from_file(*args) do |src_file_path|
    props = Utils.stringify_hash_key(props)
    args = [src_file_path, props, @output.canvas]
    [Ext::AAFigure.make_image(*args), props]
  end
end

#blockdiag(source, props = {}) ⇒ Object



518
519
520
521
522
523
524
525
# File 'lib/rabbit/parser/wiki/output.rb', line 518

def blockdiag(source, props={})
  args = [@output.canvas, source]
  Ext::Image.make_image_from_file(*args) do |src_file_path|
    props = Utils.stringify_hash_key(props)
    args = [src_file_path, props, @output.canvas]
    [Ext::BlockDiag.make_image(*args), props]
  end
end

#coderay(lang, source) ⇒ Object



527
528
529
530
# File 'lib/rabbit/parser/wiki/output.rb', line 527

def coderay(lang, source)
  logger = @output.canvas.logger
  Ext::CodeRay.highlight(lang, source, logger)
end

#emacs(source, mode_line = nil) ⇒ Object



532
533
534
535
# File 'lib/rabbit/parser/wiki/output.rb', line 532

def emacs(source, mode_line=nil)
  logger = @output.canvas.logger
  Ext::Emacs.highlight(source, logger, mode_line)
end

#enscript(lang, source) ⇒ Object



480
481
482
483
484
485
486
487
# File 'lib/rabbit/parser/wiki/output.rb', line 480

def enscript(lang, source)
  logger = @output.canvas.logger
  if Ext::Enscript.check_availability(lang, logger)
    Ext::Enscript.highlight(lang, source, logger)
  else
    nil
  end
end

#image(source, props = {}) ⇒ Object Also known as: img



459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
# File 'lib/rabbit/parser/wiki/output.rb', line 459

def image(source, props={})
  if props[:align].to_s == "right"
    body = @output.current_body
    if body["background-image"]
      raise ParseError,
            _("multiple {{image(..., :align => :right)}} " + \
              "isn't supported.")
    end
    body["background-image"] = source
    props.each do |name, value|
      name = name.to_s.gsub(/_/, "-")
      value = value.to_s if name == "align"
      body["background-image-#{name}"] = value
    end
    :no_element
  else
    Ext::Image.make_image(@output.canvas, source, props)
  end
end

#LaTeX(source, props = {}) ⇒ Object Also known as: latex



489
490
491
492
493
494
495
496
# File 'lib/rabbit/parser/wiki/output.rb', line 489

def LaTeX(source, props={})
  args = [@output.canvas, source]
  Ext::Image.make_image_from_file(*args) do |src_file_path|
    props = Utils.stringify_hash_key(props)
    args = [src_file_path, props, @output.canvas]
    [Ext::TeX.make_image_by_LaTeX(*args), props]
  end
end

#mimeTeX(source, props = {}) ⇒ Object Also known as: mimetex



499
500
501
502
503
504
505
506
# File 'lib/rabbit/parser/wiki/output.rb', line 499

def mimeTeX(source, props={})
  args = [@output.canvas, source]
  Ext::Image.make_image_from_file(*args) do |src_file_path|
    props = Utils.stringify_hash_key(props)
    args = [src_file_path, props, @output.canvas]
    [Ext::TeX.make_image_by_mimeTeX(*args), props]
  end
end

#tag(name, value = nil) ⇒ Object



537
538
539
540
541
542
543
# File 'lib/rabbit/parser/wiki/output.rb', line 537

def tag(name, value=nil)
  if value
    CustomTag.new(name, @output.text(value))
  else
    CustomTag.new(name)
  end
end