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.



428
429
430
# File 'lib/rabbit/parser/wiki/output.rb', line 428

def initialize(output)
  @output = output
end

Instance Method Details

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



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

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



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

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



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

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

#emacs(source, mode_line = nil) ⇒ Object



505
506
507
508
# File 'lib/rabbit/parser/wiki/output.rb', line 505

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

#enscript(lang, source) ⇒ Object



453
454
455
456
457
458
459
460
# File 'lib/rabbit/parser/wiki/output.rb', line 453

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



432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
# File 'lib/rabbit/parser/wiki/output.rb', line 432

def image(source, props={})
  if props[:align].to_s == "right"
    body = @output.current_body
    if body["background-image"]
      raise ParseError,
            _("multiple {{image, 'XXX.png', :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



462
463
464
465
466
467
468
469
# File 'lib/rabbit/parser/wiki/output.rb', line 462

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



472
473
474
475
476
477
478
479
# File 'lib/rabbit/parser/wiki/output.rb', line 472

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



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

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