Class DCModelThumbnail
In: dcmodel-tools/dcmodel-thum.rb
Parent: Object

DCModelThumbnail

 ¡Ödcmodel ¤ª³¨ÉÁ¤­¥µ¥à¥Í¥¤¥ë HTML ºîÀ®¥¹¥¯¥ê¥×¥È¡×¤ÎºîÀ®ÍѤΥ¯¥é¥¹

Methods

Constants

COPYRIGHT = "GFD Dennou Club"   CopyRight
INFO_DELIMITER = ":"   ¹àÌܤζèÀÚ¤êʸ»ú
INFO_MULTI_START = "{"   ¾ðÊó¥Õ¥¡¥¤¥ë¤Ë¤ª¤±¤ë¡¢Ê£¿ô¹Ô¤Î³«»Ïʸ»ú
INFO_MULTI_STOP = "}"   ¾ðÊó¥Õ¥¡¥¤¥ë¤Ë¤ª¤±¤ë¡¢Ê£¿ô¹Ô¤Î½ªÎ»
GATE_USER_SHOW = "/usr/local/bin/gate-user-show"   SIGEN ¥Õ¥¡¥¤¥ëºîÀ®»þ¤Î¾ðÊó¤òÆÀ¤ë¤¿¤á¤Î gate ¥³¥Þ¥ó¥É
PUB_BIN_URL = "http://www.gfd-dennou.org/library/dcmodel/bin/dcmodel-thum.rb"   ¸ø³«ËÜÂÎÃÖ¤­¾ì
PUB_DOC_URL = "http://www.gfd-dennou.org/library/dcmodel/doc/dcmodel-tools/dcmodel-thum-rdoc"   ¸ø³«¥É¥­¥å¥á¥ó¥È¤Î URL
PUB_SAMPLE_URL = "http://www.gfd-dennou.org/library/dcmodel/doc/dcmodel-tools/dcmodel-thum-sample"   ¸ø³«¥µ¥ó¥×¥ë¤Î URL
CVS_HOST = "www.gfd-dennou.org"   CVSHOST
CVS_ROOT = "/GFD_Dennou_Club/ftp/arch/dcmodel/cvsroot"   CVSROOT
CVS_PROJECT = "dcmodel-tools"   CVS ¤Î¥×¥í¥¸¥§¥¯¥È̾
VER = "$Revision: 1.31 $ : $Date: 2007/05/22 05:13:14 $"   ¥Ð¡¼¥¸¥ç¥ó¥Ê¥ó¥Ð¡¼ (CVS ¤Ë¤è¤ê¼«Æ°´ÉÍý)

Attributes

blankfig  [RW]  ¥Õ¥¡¥¤¥ë̾¤ÎÈóɽ¼¨¤Î¥Õ¥é¥°
convert_cmd  [RW]  convert ¥³¥Þ¥ó¥É¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó. ¤³¤Î¸å¤í¤Ë²èÁü¥µ¥¤¥º¤¬ 200x150 ¤Î¤è¤¦¤Ê·Á¼°¤Ç»ØÄꤵ¤ì¤ë.
convert_overwrite  [RW]  convert ¥³¥Þ¥ó¥É¤¬¼Â¹Ô¤µ¤ì¤ëºÝ, ´û¤Ë½ÐÎÏÀè¤Î¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¾ì¹ç¤Ë ¾å½ñ¤­¤¹¤ë¤¿¤á¤Î¥Õ¥é¥°. ¤³¤ì¤¬ false ¤Î¾ì¹ç, ½ÐÎÏÀè¤Î¥Õ¥¡¥¤¥ë¤¬ ¸ºß¤·, ³î¤Ä¸µ¤Î¥Õ¥¡¥¤¥ë¤è¤ê¤â¿·¤·¤¤¾ì¹ç¤ÏÊÑ´¹¤ò¹Ô¤ï¤Ê¤¤.
copyright  [RW]  copyright
css  [RW]  ¥¹¥¿¥¤¥ë¥·¡¼¥È¥Õ¥¡¥¤¥ë
ext_list  [RW]  ²èÁü¥Õ¥¡¥¤¥ë¤È¤·¤ÆÇ§¼±¤¹¤ë³ÈÄ¥»Ò
figdir  [RW]  ³¨¤Î¤¢¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Î̾Á°¡£É¬¤ºÂ¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
figtable_num  [RW]  ²£¤Ë¤Ê¤é¤Ù¤ë¥Õ¥¡¥¤¥ë¿ô
footer  [RW]  ¥Õ¥Ã¥¿¡¼¤È¤·¤Æ½ñ¤­½Ð¤¹¥á¥Ã¥»¡¼¥¸¡£¥µ¥à¥Í¥¤¥ë¤ÎÉôʬ¤è¤ê¤â²¼¤Ë½ÐÎϤµ¤ì¤ë¡£ ¤³¤ÎÊÑ¿ô¼«ÂÎ¤Ï Array ¥ª¥Ö¥¸¥§¥¯¥È¤Ç¡¢¤½¤ÎÆâÉô¤Ë String ¥ª¥Ö¥¸¥§¥¯¥È¤¬ ³ÊǼ¤µ¤ì¤ë¡£
gate_user_show  [RW]  SIGEN ¥Õ¥¡¥¤¥ëºîÀ®»þ¤Î¾ðÊó¤òÆÀ¤ë¤¿¤á¤Î gate ¥³¥Þ¥ó¥É
headlimit  [RW]  headlimit ¤ËÅö¤Æ¤Ï¤Þ¤é¤Ê¤¤¤â¤Î¤Ï²èÁü¤È¤·¤Æ¤Ï̵»ë¤µ¤ì¡¢ Åö¤Æ¤Ï¤Þ¤ë¤â¤Î¤Ï¡Ö¾ðÊó¥Õ¥¡¥¤¥ë¡×¤Ë¤ª¤¤¤Æ¡¢ÀÜÆ¬Éôʬ headlimit ¤¬ ¾Êά²Äǽ¤Ë¤Ê¤ë¡£
html_author  [RW]  html ¤ÎºîÀ®¼Ô¾ðÊó (¥Ç¥Õ¥©¥ë¥È¤Ï¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È̾¤¬¼«Æ°¼èÆÀ¤µ¤ì¤ë)
img_height  [RW]  ²èÁü¥Õ¥¡¥¤¥ë¥µ¥¤¥º (¹â¤µ)
img_width  [RW]  ²èÁü¥Õ¥¡¥¤¥ë¥µ¥¤¥º (Éý)
index  [RW]  ºîÀ®¤µ¤ì¤ë¥µ¥à¥Í¥¤¥ë¤Î¥Õ¥¡¥¤¥ë̾ (³ÈÄ¥»Ò½ü¤¯)
index_ext  [RW]  ºîÀ®¤µ¤ì¤ë¥µ¥à¥Í¥¤¥ë¤Î³ÈÄ¥»Ò̾
infofile  [RW]  ¡Ö¾ðÊó¥Õ¥¡¥¤¥ë (infofile)¡×¤Î¥Õ¥¡¥¤¥ë̾
message  [RW]  ËÜÂΤ˽ñ¤­½Ð¤¹¥á¥Ã¥»¡¼¥¸¡£¥µ¥à¥Í¥¤¥ë¤ÎÉôʬ¤è¤ê¤â¾å¤Ë½ÐÎϤµ¤ì¤ë¡£ ¤³¤ÎÊÑ¿ô¼«ÂÎ¤Ï Array ¥ª¥Ö¥¸¥§¥¯¥È¤Ç¡¢¤½¤ÎÆâÉô¤Ë String ¥ª¥Ö¥¸¥§¥¯¥È¤¬ ³ÊǼ¤µ¤ì¤ë¡£
mksigen  [RW]  SIGEN ¥Õ¥¡¥¤¥ë¤òºî¤é¤Ê¤¤¾ì¹ç¤Ï false ¤Ë¥»¥Ã¥È¤¹¤ë
norobots  [RW]  HTML ¤Î¥í¥Ü¥Ã¥È¸¡º÷¤ò¶Ø»ß¤¹¤ë
pub_doc_url  [R]  ¸ø³«¥É¥­¥å¥á¥ó¥È¤Î URL
pub_sample_url  [R]  ¸ø³«¥µ¥ó¥×¥ë¤Î URL
rd2_path  [RW]  rd2 ¥³¥Þ¥ó¥É¤Ø¤Î¥Ñ¥¹
rd2htmlextlib  [RW]  rd2-ext-lib ¤Ø¤Î¥é¥¤¥Ö¥é¥ê¤Ø¤Î¥Ñ¥¹
self_name  [R]  ¼Â¹Ô¥Õ¥¡¥¤¥ë¤Î basename
style  [RW]  ¥¹¥¿¥¤¥ë¥·¡¼¥È¤òľÀÜÀßÄꤹ¤ë¤¿¤á¤Î¤â¤Î (css ¥Õ¥¡¥¤¥ë¤Ë½ñ¤­¹þ¤à¾ðÊó¤òľÀÜ»ØÄê¤Ç¤­¤ë)
sub_rb_name  [R]  ¥µ¥ó¥×¥ë ruby ¥¹¥¯¥ê¥×¥È̾
thumbnaildir  [RW]  ¥µ¥à¥Í¥¤¥ë²èÁü¤òÃÖ¤¯¥Ç¥£¥ì¥¯¥È¥ê̾¡£¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¤«¤é "#{@thumbaildir}" ¤Î¾ì½ê¤Ë»ØÄꤵ¤ì¤ë.
thumbnailpage  [RW]  ¥µ¥à¥Í¥¤¥ë²èÁü²½¤¹¤ë¸µ²èÁü¤Î¥Ú¡¼¥¸ÈÖ¹æ
thumbnailtail  [RW]  ¥µ¥à¥Í¥¤¥ë²èÁü¤ÎºÇ¸åÉô̾. ¥µ¥à¥Í¥¤¥ë²èÁü̾¤Ï¸µ²èÁü¤Î³ÈÄ¥»Ò¤ÈÃÖ´¹¤µ¤ì¤¿Ì¾Á°¤Ë¤Ê¤ë.
title  [RW]  html ¥Ø¥Ã¥À¤Î¥¿¥¤¥È¥ë
tmp  [RW]  ¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ëÃÖ¤­¾ì (UNIX ·Ï¤Ê¤é¤ÐÊѤ¨¤ëɬÍפʤ·)
version  [R]  ¥Ð¡¼¥¸¥ç¥ó

Public Class methods

¤³¤ì¤ò¸Æ¤Ö¤³¤È¤Ç¡¢ºÇÄã¸ÂɬÍפʾðÊó¤¬À¸À®¤µ¤ì¤ë¡£ ºÇ½ªÅª¤Ë¤Ï DCModelThumbnail.create ¥á¥½¥Ã¥É¤ò¸Æ¤Ö¤³¤È¤Ç ¥Õ¥¡¥¤¥ë¤¬ºîÀ®¤µ¤ì¤ë¡£

[Source]

     # File dcmodel-tools/dcmodel-thum.rb, line 474
474:   def initialize()
475:     #
476:     # version
477:     #
478:     @version = VER
479: 
480:     #
481:     # copyright
482:     #
483:     @copyright = COPYRIGHT
484: 
485:     # ¸ø³«¥É¥­¥å¥á¥ó¥È¤Î URL
486:     @pub_doc_url = PUB_DOC_URL
487: 
488:     # ¸ø³«¥µ¥ó¥×¥ë¤Î URL
489:     @pub_sample_url = PUB_SAMPLE_URL
490: 
491:     # dcmodel-thum.rb ¼«¿È¤Î̾Á°
492:     # @self_name   = File.basename($0.to_s)
493:     @self_name   = "dcmodel-thum.rb"
494: 
495:     # ¥µ¥ó¥×¥ë ruby ¥¹¥¯¥ê¥×¥È̾
496:     @sub_rb_name = "#{File.basename($0, ".*")}" + "-make.rb"
497: 
498:     # html ¤ÎÃÖ¤­¾ì¡¦¥Õ¥¡¥¤¥ë̾¡¦³ÈÄ¥»Ò¡£¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¤«¤é
499:     #
500:     #    "#{@index}#{index_ext}" 
501:     #
502:     #¤ËÃÖ¤«¤ì¤ë¡£
503:     @index     = "../sample_thum"
504:     @index_ext = ".htm"
505: 
506:     # ³¨¤Î¤¢¤ë¥Ç¥£¥ì¥¯¥È¥ê̾¡£¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¤«¤é 
507:     # "#{@figdir}" ¤Î¾ì½ê¤òõºº¤¹¤ë¡£
508:     @figdir = "../figdir"
509: 
510:     # ¥µ¥à¥Í¥¤¥ë²èÁü¤òÃÖ¤¯¥Ç¥£¥ì¥¯¥È¥ê̾¡£¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¤«¤é 
511:     # "#{@thumbaildir}" ¤Î¾ì½ê¤Ë»ØÄꤵ¤ì¤ë.
512:     @thumbnaildir = "../thumbdir"
513: 
514:     # ¥µ¥à¥Í¥¤¥ë²èÁü¤ÎºÇ¸åÉô̾. 
515:     # ¥µ¥à¥Í¥¤¥ë²èÁü̾¤Ï¸µ²èÁü¤Î³ÈÄ¥»Ò¤ÈÃÖ´¹¤µ¤ì¤¿Ì¾Á°¤Ë¤Ê¤ë. 
516:     @thumbnailtail = "_thumb.png"
517: 
518:     # ¥µ¥à¥Í¥¤¥ë²èÁü²½¤¹¤ë¸µ²èÁü¤Î¥Ú¡¼¥¸ÈÖ¹æ
519:     @thumbnailpage = "1"
520: 
521:     # convert ¥³¥Þ¥ó¥É¤ª¤è¤Ó¥ª¥×¥·¥ç¥ó¡£¤³¤Î¸å¤í¤Ë²èÁü¥µ¥¤¥º¤¬ 200x150
522:     # ¤Î¤è¤¦¤Ê·Á¼°¤Ç»ØÄꤵ¤ì¤ë¡£
523:     @convert_cmd = "convert -depth 8 -geometry"
524: 
525:     # convert ¥³¥Þ¥ó¥É¤¬¼Â¹Ô¤µ¤ì¤ëºÝ, ´û¤Ë½ÐÎÏÀè¤Î¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¾ì¹ç¤Ë
526:     # ¾å½ñ¤­¤¹¤ë¤¿¤á¤Î¥Õ¥é¥°. ¤³¤ì¤¬ false ¤Î¾ì¹ç, ½ÐÎÏÀè¤Î¥Õ¥¡¥¤¥ë¤¬
527:     # ¸ºß¤·, ³î¤Ä¸µ¤Î¥Õ¥¡¥¤¥ë¤è¤ê¤â¿·¤·¤¤¾ì¹ç¤ÏÊÑ´¹¤ò¹Ô¤ï¤Ê¤¤.
528:     @convert_overwrite = false
529: 
530:     # ¾ðÊó¥Õ¥¡¥¤¥ë, $PWD/${infofile}
531:     @infofile = File.basename(@index).chomp.strip + ".txt"
532: 
533:     # ²èÁü¥Õ¥¡¥¤¥ë¤È¤·¤ÆÇ§¼±¤¹¤ë³ÈÄ¥»Ò
534:     @ext_list = ["gif", "png", "jpg", "jpeg"]
535: 
536:     # ÀÜÆ¬»ÒÀ©¸Â @headlimit = "figure_head"¡£
537:     # ¤³¤ì¤Ë¤è¤ê¡¢@headlimit ¤ËÅö¤Æ¤Ï¤Þ¤é¤Ê¤¤¤â¤Î¤Ï̵»ë¤µ¤ì¤ë
538:     @headlimit = ""
539: 
540:     # ¥Õ¥¡¥¤¥ë̾¤ÎÈóɽ¼¨¤Î¥Õ¥é¥°
541:     @blankfig = false
542: 
543:     # ¥¹¥¿¥¤¥ë¥·¡¼¥È¥Õ¥¡¥¤¥ë
544: #    @css    = "../dcmodel.css"  # for morikawa (I'm sorry...)
545:     @css    = "/GFD_Dennou_Club/ftp/arch/dcmodel/htmltools/dcmodel.css"
546: 
547:     # ¥¹¥¿¥¤¥ë¥·¡¼¥È¤òľÀÜÀßÄꤹ¤ë¤¿¤á¤Î¤â¤Î
548:     # (css ¥Õ¥¡¥¤¥ë¤Ë½ñ¤­¹þ¤à¾ðÊó¤òľÀÜ»ØÄê¤Ç¤­¤ë)
549:     @style = nil
550: 
551:     # rd2 ¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹
552:     @rd2_path = "/usr/bin/rd2"
553: 
554:     # rd2-ext-lib ¤Ø¤Î¥é¥¤¥Ö¥é¥ê¤Î¥Ñ¥¹
555: #    @rd2htmlextlib = ".."       # for morikawa (I'm sorry...)
556:     @rd2htmlextlib = "/GFD_Dennou_Club/ftp/arch/dcmodel/lib/ruby/1.8"
557: 
558:     # SIGEN ¥Õ¥¡¥¤¥ëºîÀ®»þ¤Î¾ðÊó¤òÆÀ¤ë¤¿¤á¤Î gate ¥³¥Þ¥ó¥É
559:     @gate_user_show = GATE_USER_SHOW
560: 
561:     # ¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ëÃÖ¤­¾ì (UNIX ·Ï¤Ê¤é¤ÐÊѤ¨¤ëɬÍפʤ·)
562:     @tmp     = "/tmp"
563: 
564:     # SIGEN ¥Õ¥¡¥¤¥ë¤òºî¤é¤Ê¤¤¾ì¹ç¤Ï false ¤Ë¥»¥Ã¥È¤¹¤ë
565:     @mksigen = true
566: 
567:     # HTML ¤Î¥í¥Ü¥Ã¥È¸¡º÷¤ò¶Ø»ß¤¹¤ë¾ì¹ç¤Ë¤Ï true ¤Ë¥»¥Ã¥È¤¹¤ë
568:     @norobots = false
569: 
570:     # ²èÁü¥Õ¥¡¥¤¥ë¥µ¥¤¥º
571:     @img_width  = 200
572:     @img_height = 150
573: 
574:     # ²£¤Ë¤Ê¤é¤Ù¤ë¥Õ¥¡¥¤¥ë¿ô
575:     @figtable_num = 3
576: 
577:     # NAME, HREF ¥¿¥°Æâ¤Î¥é¥Ù¥ë¥Ê¥ó¥Ð¡¼
578:     @label_num = 0
579: 
580:     # ¥é¥Ù¥ë¥Ê¥ó¥Ð¡¼¤ÈÂбþ¤¹¤ë¥Ø¥Ã¥Àʸ»úÎó¤Î¥Ï¥Ã¥·¥å
581:     @label_num_header_hash = {}
582: 
583:     # html ¤ÎºîÀ®¼Ô¾ðÊó (¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È̾)
584:     @html_author = username_from_gid
585: 
586:     # html ¥Ø¥Ã¥À¥¿¥¤¥È¥ë
587:     @title  = "dcmodel-thum : ¼Â¸³·ë²Ì¥µ¥à¥Í¥¤¥ë´Ê°×ºîÀ®¥¹¥¯¥ê¥×¥È"
588: 
589:     # ¥Õ¥Ã¥¿¡¼ (¥µ¥à¥Í¥¤¥ë¤ÎÉôʬ¤è¤ê¤â²¼¤Ë¥á¥Ã¥»¡¼¥¸)
590:     # »ØÄêÊýË¡¤Ï message ¤ÈƱÍͤǤ¹¡£
591:     @footer = Array.new
592: 
593:     # ËÜÂÎ (¥µ¥à¥Í¥¤¥ë¤ÎÉôʬ¤è¤ê¤â¾å¤Ë¥á¥Ã¥»¡¼¥¸)
594:     @message = Array.new
595:     @message << "=begin\n[((<\303\317\265\345\316\256\302\316\305\305\307\276\266\346\263\332\311\364|URL:http://www.gfd-dennou.org>))]\n[((<dcmodel|URL:http://www.gfd-dennou.org/library/dcmodel>)) |\n((<dcmodel-tools|URL:http://www.gfd-dennou.org/library/dcmodel/doc/dcmodel-tools/SIGEN.htm>))]\n[((<\#{@self_name}|URL:\#{PUB_DOC_URL}>))]\n\n= \#{@title}\n\n* ((<\263\265\315\327\241\246\315\370\315\321\241\246\306\260\272\356\264\304\266\255\244\316\263\265\300\342>))\n* ((<\245\320\241\274\245\270\245\347\245\363 1.1 (\245\252\245\352\245\270\245\312\245\353\244\344\244\336\244\300\315\263\245\304\241\274\245\353) \244\253\244\351\244\316\273\305\315\315\312\321\271\271>))\n* ((<\315\370\315\321\244\316\274\352\260\372\244\255>))\n* ((<\262\350\301\374\244\316\315\321\260\325>))\n* ((<\#{@self_name} \244\316\315\321\260\325>))\n* ((<\244\310\244\352\244\242\244\250\244\272\274\302\271\324>))\n* ((<\273\322\245\271\245\257\245\352\245\327\245\310\244\316\274\302\271\324>))\n* ((<\244\307\244\255\244\277\244\342\244\316\244\362\270\253\244\306\244\337\244\353>))\n* ((<\245\271\245\257\245\352\245\327\245\310\244\316\312\324\275\270 (\306\376\314\347\312\324)>))\n* ((<\272\306\305\331\274\302\271\324>))\n* ((<\241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\316\312\324\275\270 (\306\376\314\347\312\324)>))\n* ((<\244\342\244\246\260\354\305\331\274\302\271\324>))\n* ((<\245\271\245\257\245\352\245\327\245\310\244\316\312\324\275\270 (\261\376\315\321\312\324)>))\n* ((<\241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\316\312\324\275\270 (\261\376\315\321\312\324)>))\n\n\n== \263\265\315\327\241\246\315\370\315\321\241\246\306\260\272\356\264\304\266\255\244\316\263\265\300\342\n\n((<\#{@self_name} \244\316 rdoc \245\336\245\313\245\345\245\242\245\353|URL:\#{PUB_DOC_URL}>))\n\nOverview \244\310 Operation Environment \244\310 Usage \244\362\244\265\244\351\244\303\244\310\306\311\244\363\244\300\244\351\314\341\244\303\244\306\244\255\244\306\244\315\241\243\n\n\244\312\244\252\241\242\260\312\262\274\244\316 URL \244\313\244\317\244\263\244\316\275\320\316\317\267\353\262\314\244\310\306\261\305\371\244\316\244\342\244\316\244\254\303\326\244\244\244\306\244\242\244\353\244\317\244\272\244\307\244\271\241\243\n\n((<\#{@self_name} \244\316 \245\265\245\363\245\327\245\353|URL:\#{PUB_SAMPLE_URL}>))\n\n== \245\320\241\274\245\270\245\347\245\363 1.1 (\245\252\245\352\245\270\245\312\245\353\244\344\244\336\244\300\315\263\245\304\241\274\245\353) \244\253\244\351\244\316\273\305\315\315\312\321\271\271\n\n\244\263\244\263\244\317\241\242\245\320\241\274\245\270\245\347\245\363 1.2 \260\312\271\337\244\253\244\351\315\370\315\321\244\267\244\306\244\244\244\353\277\315\244\313\244\317\311\324\315\327\244\307\244\271\241\243\n\245\320\241\274\245\270\245\347\245\363 1.1 \244\316\245\252\245\352\245\270\245\312\245\353\244\316\244\344\244\336\244\300\315\263\245\304\241\274\245\353\244\253\244\351\315\370\315\321\244\267\244\306\244\244\244\353\n\312\375\244\317\241\242\260\312\262\274\244\316\312\321\271\271\305\300\244\313\244\264\303\355\260\325\244\257\244\300\244\265\244\244\241\243\n\n* \241\326\276\360\312\363\245\325\245\241\245\244\245\353 (infofile)\241\327\244\316\275\361\274\260\n* \262\350\301\374\314\276\244\313\263\310\304\245\273\322\244\362\262\303\244\250\244\353\244\350\244\246\244\313\244\312\244\303\244\277\n* 1.1 \244\307\244\317 <\262\350\301\374\314\276> : <\245\263\245\341\245\363\245\310> \244\300\244\303\244\277\244\254\241\242\n\270\275\272\337\244\317 <\262\350\301\374\314\276> : <\275\244\276\376\273\322> : <\245\263\245\341\245\363\245\310> \244\313\244\312\244\303\244\306\244\244\244\353\241\243\n* pathname.rb \244\362\315\370\315\321\244\271\244\353\244\277\244\341\241\242ruby 1.8 \244\362\315\370\315\321\244\271\244\353\244\253\241\2421.6 \244\312\244\351\244\320\n\274\302\271\324\244\316\272\335\244\313 RUBYLIB \244\316\245\321\245\271\244\254\304\314\244\303\244\277\244\310\244\263\244\355\244\313 pathname.rb \244\254\311\254\315\327\n\244\307\244\242\244\353\241\243\n\n\n== \315\370\315\321\244\316\274\352\260\372\244\255\n\n=== \#{@self_name} \244\316\306\376\274\352\244\316\312\375\313\241\n\n((<\#{@self_name} \245\271\245\257\245\352\245\327\245\310\313\334\302\316|URL:\#{PUB_BIN_URL}>)) \244\362\245\300\245\246\245\363\245\355\241\274\245\311\n\244\267\244\306\244\257\244\300\244\265\244\244\241\243\244\342\244\267\244\257\244\317 cvsroot \244\362\244\342\244\303\244\306\244\244\244\353 \#{CVS_HOST} \244\313\245\355\245\260\245\244\245\363\244\254\n\262\304\307\275\244\307\244\242\244\354\244\320\241\242cvs \244\253\244\351\244\342\304\276\300\334\274\350\306\300\244\254\262\304\307\275\244\307\244\271\241\243\n\n$ CVS_RSH=ssh; export CVS_RSH\n$ cvs -d :ext:\#{CVS_HOST}:\#{CVS_ROOT} checkout \#{CVS_PROJECT}\n\n\264\373\244\313 \#{CVS_HOST} \244\313\245\355\245\260\245\244\245\363\244\267\244\277\276\365\302\326\244\307\244\242\244\354\244\320\241\242\260\312\262\274\244\316\245\263\245\336\245\363\245\311\244\316\244\337\244\307\n\274\350\306\300\262\304\307\275\244\307\244\271\241\243\n\n$ cvs -d \#{CVS_ROOT} checkout \#{CVS_PROJECT}\n\n\n== \262\350\301\374\244\316\315\321\260\325\n\n\245\265\245\340\245\315\245\244\245\353\262\275\244\267\244\350\244\246\244\310\244\271\244\353\262\350\301\374\244\362 (({\#{File.basename(@figdir)} })) \244\310\244\244\244\246\n\245\307\245\243\245\354\245\257\245\310\245\352\244\313\303\326\244\244\244\306\244\257\244\300\244\265\244\244\241\243\270\275\272\337\241\242\262\350\301\374\244\310\244\267\244\306\307\247\274\261\244\265\244\354\244\353\244\316\244\317\241\242\n(({ \#{@ext_list.join(\", \")}, \#{@ext_list.join(\", \").swapcase} }))\n\244\307\244\271\241\243\245\242\245\313\245\341\241\274\245\267\245\347\245\363 gif \244\313\244\342\260\354\261\376\302\320\261\376\244\267\244\306\244\244\244\336\244\271\244\254, \245\265\245\340\245\315\245\244\245\353\262\275\244\271\244\353\n\245\332\241\274\245\270\310\326\271\346\244\317\301\264\262\350\301\374\266\246\304\314\244\313\244\267\244\253\300\337\304\352\244\307\244\255\244\336\244\273\244\363.\n\n\302\276\244\316\267\301\274\260\244\316\262\350\301\374\244\362\307\247\274\261\244\265\244\273\244\277\244\244\276\354\271\347\244\317 ((<\245\271\245\257\245\352\245\327\245\310\244\316\312\324\275\270 (\306\376\314\347\312\324)>))\n\244\362\273\262\276\310\244\267\244\306\244\257\244\300\244\265\244\244\241\243\244\310\244\352\244\242\244\250\244\272\241\242\n\244\336\244\272\244\317 (({\#{File.basename(@figdir)} })) \244\362\272\356\300\256\244\267\244\306\262\274\244\265\244\244\241\243\n\n== \#{@self_name} \244\316\315\321\260\325\n\n((<\#{@self_name} \244\316\306\376\274\352\244\316\312\375\313\241>)) \244\307\274\350\306\300\244\267\244\277 \#{@self_name} \244\317\n(({ thum-src })) \244\310\244\244\244\246\245\307\245\243\245\354\245\257\245\310\245\352\244\362\272\356\244\303\244\306\244\275\244\263\244\313\303\326\244\244\244\306\262\274\244\265\244\244\241\243\n\267\353\262\314\305\252\244\313\241\242\260\312\262\274\244\316\244\350\244\246\244\312\271\275\300\256\244\313\244\312\244\303\244\306\244\244\244\353\244\310\316\311\244\244\244\307\244\271\241\243\n\n./\#{File.basename(@figdir)}/*****.jpg\n*****.gif\n./thum-src/dcmodel-thum.rb\n\n\n== \244\310\244\352\244\242\244\250\244\272\274\302\271\324\n\n(({ thum-src })) \244\330\260\334\306\260\244\267\241\242\#{@self_name} \244\362\274\302\271\324\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\n$ cd thum-src\n$ ruby \#{@self_name}\n\n\244\271\244\353\244\310\241\242\#{@sub_rb_name} \244\310\244\244\244\246\274\302\271\324\245\271\245\257\245\352\245\327\245\310\244\254\272\356\300\256\244\265\244\354\244\353\n\244\317\244\272\244\307\244\271\241\243\n\n== \273\322\245\271\245\257\245\352\245\327\245\310\244\316\274\302\271\324\n\n\272\243\305\331\244\317 \#{@sub_rb_name} \244\362\274\302\271\324\244\267\244\336\244\271\241\243\n\n$ ruby \#{@sub_rb_name}\n\n\244\271\244\353\244\310\241\242(({ \#{@index}\#{@index_ext} }))\244\310\244\244\244\246\245\325\245\241\245\244\245\353\244\254\272\356\300\256\244\265\244\354\244\336\244\271\241\243\n\244\263\244\354\244\254\245\265\245\340\245\315\245\244\245\353\244\316 HTML \244\307\244\271\241\243\n\n\n== \244\307\244\255\244\277\244\342\244\316\244\362\270\253\244\306\244\337\244\353\n\n(({ \#{@index}\#{@index_ext} })) \244\362\245\326\245\351\245\246\245\266\244\307\270\253\244\306\244\337\244\306\244\257\244\300\244\265\244\244\241\243\n\244\263\244\316\245\332\241\274\245\270\244\310\306\261\315\315\244\316\245\341\245\303\245\273\241\274\245\270\244\254\275\361\244\253\244\354\244\277\245\332\241\274\245\270\244\254\275\320\316\317\244\265\244\354\244\306\244\244\244\353\n\244\317\244\272\244\307\244\271\241\243\n\n\#{File.basename(@figdir)} \244\313\262\350\301\374\244\362\244\252\244\244\244\306\244\242\244\303\244\277\276\354\271\347\241\242\244\275\244\354\244\351\244\254\n\262\274\244\313\245\265\245\340\245\315\245\244\245\353\262\275\244\265\244\354\244\306\244\244\244\353\244\317\244\272\244\307\244\271\241\243\n\n\n== \245\271\245\257\245\352\245\327\245\310\244\316\312\324\275\270 (\306\376\314\347\312\324)\n\n\244\263\244\316\244\336\244\336\244\307\244\317\273\310\244\250\244\312\244\244\244\316\244\307\241\242(({ \#{@sub_rb_name} })) \244\362\312\324\275\270\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\244\336\244\272\241\242\244\263\244\263\244\313\265\255\275\322\244\265\244\354\244\353\245\263\245\341\245\363\245\310\244\362\272\357\275\374\244\267\244\336\244\267\244\347\244\246\241\243\n\n\260\312\262\274\244\316\311\364\312\254\260\312\271\337\244\362\301\264\244\306\276\303\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\nthumb.message   << <<-Message\n=begin\n[((<\303\317\265\345\316\256\302\316\305\305\307\276\266\346\263\332\311\364|URL:http://www.gfd-dennou.org>))]\n[((<dcmodel|URL:http://www.gfd-dennou.org/library/dcmodel>)) |\n:\n:\n\n\274\241\244\313\241\242\272\356\300\256\244\265\244\354\244\353 HTML \245\325\245\241\245\244\245\353\244\316\314\276\301\260\244\362\264\365\313\276\244\316\244\342\244\316\244\313\312\321\271\271\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\262\274\265\255\244\316\244\350\244\246\244\313 infofile \244\362\300\337\304\352\244\267\244\306\244\252\244\257\244\310\241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327(\270\345\275\322) \244\316\n\314\276\301\260\244\342\260\354\275\357\244\313\312\321\271\271\244\265\244\354\244\306\312\330\315\370\244\307\244\271\241\243\n\nthumb.index     = \"../result\"\nthumb.infofile  = \"\\\\\\#\\\\\\{File.basename(thumb.index)\\\\\\}.txt\"\n\n\262\350\301\374\244\310\244\267\244\306\307\247\274\261\244\267\244\277\244\244\263\310\304\245\273\322\244\362\301\375\244\344\244\267\244\277\244\244\276\354\271\347\244\317\260\312\262\274\244\316\244\350\244\246\244\313\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\nthumb.ext_list.push(\"bmp\")\n\n\262\350\301\374\245\325\245\241\245\244\245\353\314\276\244\254\304\271\244\257\241\242\245\325\245\241\245\244\245\353\314\276\244\316\306\254\244\316\311\364\312\254\244\362\274\350\244\352\275\374\244\244\244\306\311\275\274\250\244\267\244\277\244\244\241\242\n\244\336\244\277\244\317\245\325\245\241\245\244\245\353\314\276\244\316\306\254\244\307\275\320\316\317\244\271\244\353\245\325\245\241\245\244\245\353\244\316\301\252\302\362\244\362\271\324\244\244\244\277\244\244\276\354\271\347\244\317\n\260\312\262\274\244\316\244\350\244\246\244\313\300\337\304\352\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\nthumb.headlimit = \"exp_name_\"\n\n\262\350\301\374\245\325\245\241\245\244\245\353\314\276\244\362 HTML \244\313\311\275\274\250\244\267\244\277\244\257\244\312\244\244\276\354\271\347\244\317\260\312\262\274\244\316\244\350\244\246\244\313\300\337\304\352\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\270\304\312\314\305\252\244\313\245\325\245\241\245\244\245\353\314\276\244\362\310\363\311\275\274\250\244\313\244\267\244\277\244\244\276\354\271\347\244\317\n((<\241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\316\312\324\275\270 (\261\376\315\321\312\324)>)) \244\316 ((<\245\325\245\241\245\244\245\353\314\276\310\363\311\275\274\250>))\n\244\362\273\262\276\310\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\nthumb.blankfig = true\n\n\262\350\301\374\244\316\275\304\262\243\245\265\245\244\245\272\244\344\241\242\245\265\245\340\245\315\245\244\245\353\244\307\262\243\244\313\311\275\274\250\244\271\244\353\262\350\301\374\244\316\277\364\244\317\260\312\262\274\244\316\244\350\244\246\244\313\n\300\337\304\352\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\nthumb.img_width  = 200\nthumb.img_height = 150\nthumb.figtable_num = 3\n\n\274\253\306\260\300\270\300\256\244\265\244\354\244\353\245\265\245\340\245\315\245\244\245\353\262\350\301\374\244\316\303\326\244\255\276\354\244\310\262\350\301\374\244\316\314\276\301\260\244\316\272\307\270\345\311\364\244\362\n\274\241\244\316\244\350\244\246\244\313\273\330\304\352\244\267\244\306\262\274\244\265\244\244.\n\nthumb.thumbnaildir  = \"../thumb\"    # \245\265\245\340\245\315\245\244\245\353\262\350\301\374\244\362\303\326\244\257\245\307\245\243\245\354\245\257\245\310\245\352\314\276\nthumb.thumbnailtail = \"_thumb.png\"  # \245\265\245\340\245\315\245\244\245\353\262\350\301\374\244\316\263\310\304\245\273\322\314\276\n\n\245\242\245\313\245\341\241\274\245\267\245\347\245\363 gif \305\371\312\243\277\364\245\332\241\274\245\270\244\362\302\253\244\315\244\277\262\350\301\374\244\313\302\320\244\267\244\306\244\317\245\265\245\340\245\315\245\244\245\353\262\275\244\271\244\353\n\245\332\241\274\245\270\310\326\271\346\244\362 1 \244\350\244\352\302\347\244\255\244\244\303\315\244\313\300\337\304\352\244\307\244\255\244\336\244\271.\n\nthumb.thumbnailpage = \"50\"      # \245\265\245\340\245\315\245\244\245\353\262\350\301\374\262\275\244\271\244\353\270\265\262\350\301\374\244\316\245\332\241\274\245\270\310\326\271\346\n\n\245\271\245\277\245\244\245\353\245\267\241\274\245\310\244\313\275\361\244\255\271\376\244\340\300\337\304\352\244\362\303\261\302\316\244\307\244\342\273\330\304\352\262\304\307\275\244\307\244\271\241\243\n\316\343\244\250\244\320\241\242\245\352\245\363\245\257\244\313\264\330\244\271\244\353\306\260\272\356\244\362\300\337\304\352\244\271\244\353\244\313\244\317\260\312\262\274\244\316\244\350\244\246\244\313\244\267\244\336\244\271\241\243\n\nthumb.style = <<-STYLE\na:link { color:#269900; }\na:visited { color:#269900; }\na:hover { color:#99FF33; }\nSTYLE\n\n\270\265\241\271\244\316 (({ thumb.title ... })) \244\316\271\324\244\362\316\343\244\250\244\320\260\312\262\274\244\316\244\350\244\246\244\313\275\361\244\255\264\271\244\250\241\242\n\245\277\245\244\245\310\245\353\244\362\300\337\304\352\244\267\244\306\244\257\244\300\244\265\244\244\241\243(\244\263\244\354\244\317 HTML \244\316 head \245\277\245\260\306\342\244\316\ntitle \245\277\245\260\244\313\300\337\304\352\244\265\244\354\244\336\244\271 )\n\nthumb.title     = \"\274\302\270\263\267\353\262\314\"\n\n\244\301\244\347\244\246\244\311\244\263\244\316\245\301\245\345\241\274\245\310\245\352\245\242\245\353\244\254\272\356\300\256\244\265\244\354\244\353\276\354\275\352\244\313\275\361\244\255\275\320\244\271\241\242\n\245\341\245\303\245\273\241\274\245\270\244\362\300\337\304\352\244\267\244\306\244\257\244\300\244\265\244\244\241\243\244\263\244\263\244\313\275\361\244\255\271\376\244\340\306\342\315\306\244\254\244\275\244\316\244\336\244\336\nHTML \244\310\244\267\244\306\275\320\316\317\244\265\244\354\244\353\244\316\244\307\241\242HTML \245\277\245\260\244\342\275\361\244\255\271\376\244\363\244\307\244\257\244\300\244\265\244\244\241\243\n\n((* \303\355\260\325\241\252\241\252 *)) message \244\313\302\345\306\376\244\271\244\353\244\310\244\255\244\316\265\255\271\346\244\317\311\254\244\272 \241\326=\241\327\n\244\307\244\317\244\312\244\257\241\242\241\326<<\241\327\244\313\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\nthumb.message   << <<-MSG\n<h1>\274\302\270\263\267\353\262\314</h1>\n\n<p>\n\260\312\262\274\244\317\274\302\270\263\267\353\262\314\244\362\260\354\315\367\244\267\244\277\244\342\244\316\244\307\244\242\244\353\n</p>\n\n<h2>\274\302\270\263\300\337\304\352</h2>\n\n<ul>\n<li>\262\362\301\374\305\331       : T42L20\n<li>\273\376\264\326\245\271\245\306\245\303\245\327 : 30 s\n</ul>\n:\n:\nMSG\n\n\245\265\245\340\245\315\245\244\245\353\311\364\312\254\244\316\262\274\244\313\245\341\245\303\245\273\241\274\245\270\244\362\265\255\275\322\244\267\244\277\244\244\276\354\271\347\244\317\241\242\260\312\262\274\244\316\244\350\244\246\244\313\n\300\337\304\352\244\267\244\336\244\267\244\347\244\246\241\243\275\361\244\255\312\375\244\317\276\345\265\255\244\316 message \244\310\306\261\315\315\244\307\244\271\241\243\n\nthumb.footer  << <<-MSG\n=begin\n== \273\262\271\315\273\361\316\301\n\n* \303\317\265\345\316\256\302\316\305\305\307\276\266\346\263\332\311\364 dcmodel \245\327\245\355\245\270\245\247\245\257\245\310.\n((<URL:http://www.gfd-dennou.org/library/dcmodel>)),\n\303\317\265\345\316\256\302\316\305\305\307\276\266\346\263\332\311\364.\n\n=end\nMSG\n\n\n== \272\306\305\331\274\302\271\324\n\n\272\306\305\331 \#{@sub_rb_name} \244\362\274\302\271\324\244\267\244\336\244\271\241\243\n\n$ ruby \#{@sub_rb_name}\n\n\244\271\244\353\244\310\241\242\276\345\265\255\244\316\265\255\275\322\244\254\310\277\261\307\244\265\244\354\244\277 (({ \#{@index}\#{@index_ext} })) \244\254\n\272\356\300\256\244\265\244\354\244\336\244\271\241\243\245\326\245\351\245\246\245\266\244\307\263\316\307\247\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\n\244\277\244\300\244\267\241\242\244\263\244\354\244\300\244\261\244\307\244\317\241\242\245\265\245\340\245\315\245\244\245\353\306\342\244\316\245\263\245\341\245\363\245\310\244\362\312\324\275\270\244\307\244\255\244\312\244\244\244\316\244\307\241\242\n\260\312\262\274\244\316 ((<\241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\316\312\324\275\270 (\306\376\314\347\312\324)>)) \244\362\273\262\276\310\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\n\n== \241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\316\312\324\275\270 (\306\376\314\347\312\324)\n\n\#{@sub_rb_name} \244\362\274\302\271\324\244\267\244\277\245\307\245\243\245\354\245\257\245\310\245\352\244\313\244\317\276\345\265\255\244\307\300\337\304\352\244\267\244\277\ninfofile \244\313\302\320\261\376\244\267\244\277\245\325\245\241\245\244\245\353\244\254\272\356\300\256\244\265\244\354\244\353\244\317\244\272\244\307\244\271\241\243\n\nthumb.infofile  = \"\\\\\\#\\\\\\{File.basename(thumb.index)\\\\\\}.txt\"\n\n\244\263\244\316\245\325\245\241\245\244\245\353\244\362\312\324\275\270\244\271\244\353\244\263\244\310\244\307\241\242\245\265\245\340\245\315\245\244\245\353\306\342\244\313\245\263\245\341\245\363\245\310\244\362\265\255\275\322\244\307\244\255\244\336\244\271\241\243\n\n\244\336\244\272\303\346\277\310\244\362\270\253\244\306\244\337\244\306\244\257\244\300\244\265\244\244\241\243\n\nfig1.png::\nfig2.gif::\nfig3.jpg::\nfig3.png::\n\n\244\263\244\354\244\317\241\242\260\312\262\274\244\316\244\350\244\246\244\312\245\325\245\251\241\274\245\336\245\303\245\310\244\313\244\312\244\303\244\306\244\244\244\336\244\271\241\243\n\n<\262\350\301\374\314\276> : <\275\244\276\376\273\322> : <\245\263\245\341\245\363\245\310>\n\n<\275\244\276\376\273\322> \244\313\264\330\244\267\244\306\244\317 ((<\241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\316\312\324\275\270 (\261\376\315\321\312\324)>))\n\244\362\273\262\276\310\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\n\n=== \262\350\301\374\244\316\275\347\275\370\244\316\306\376\244\354\302\330\244\250\n\n\245\265\245\340\245\315\245\244\245\353\244\313\244\317\241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\313\275\361\244\255\271\376\244\336\244\354\244\277\275\347\244\313\275\361\244\255\275\320\244\265\244\354\244\336\244\271\241\243\n\306\376\244\354\302\330\244\250\244\277\244\244\273\376\244\313\244\317\271\324\244\264\244\310\244\275\244\316\260\314\303\326\244\362\306\376\244\354\302\330\244\250\244\306\244\257\244\300\244\265\244\244\241\243\n\nfig2.gif::\nfig3.jpg::\nfig3.png::\nfig1.png::\n\n=== \245\263\245\341\245\363\245\310\311\325\244\261\n\n\245\263\245\341\245\363\245\310\244\362\244\304\244\261\244\277\244\244\244\310\244\255\244\313\244\317\241\242\260\312\262\274\244\316\244\350\244\246\244\313\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\nfig1.png:: 1 \262\363\314\334\244\316\274\302\270\263\nfig2.gif:: 2 \262\363\314\334\244\316\274\302\270\263\nfig3.jpg:: 3 \262\363\314\334\244\316\274\302\270\263 (jpg \262\350\301\374)\nfig3.png:: 3 \262\363\314\334\244\316\274\302\270\263 (png \262\350\301\374)\n\nHTML \245\277\245\260\244\317\244\275\244\316\244\336\244\336\307\247\274\261\244\265\244\354\244\353\244\316\244\307\241\242\260\312\262\274\244\316\244\350\244\246\244\313\275\361\244\255\271\376\244\340\244\263\244\310\244\254\n\262\304\307\275\244\307\244\271\241\243\n\nfig1.png:: <hr> 1 \262\363\314\334\244\316\274\302\270\263 <br> \274\272\307\324 <hr>\n\n\n=== \245\263\245\341\245\363\245\310\245\242\245\246\245\310\n\n\245\263\245\341\245\363\245\310\245\242\245\246\245\310\244\267\244\277\244\244\276\354\271\347\244\317\271\324\306\254\244\313 \241\326#\241\327\244\362\275\361\244\255\271\376\244\337\244\336\244\271\241\243\n\n# fig2.gif:: 2 \262\363\314\334\244\316\274\302\270\263\n\n\n=== \245\351\245\331\245\353\n\n\262\350\301\374\244\307\244\317\244\312\244\257\241\242\245\263\245\341\245\363\245\310\244\316\244\337\244\362\275\361\244\255\271\376\244\337\244\277\244\244\244\310\244\255\244\317\241\242<\262\350\301\374\314\276> \244\313\n\241\326label\241\327\244\310\265\255\275\322\244\267\244\336\244\271\241\243\n\nlabel:: <hr><table><tr><td>\274\302\270\263\300\337\304\352 2</td><td>\245\321\245\351\245\341\241\274\245\277 3</td></tr></table>\n\n=== \245\271\245\332\241\274\245\271\n\n\260\354\244\304\312\254\310\364\244\320\244\267\244\306\311\275\274\250\244\267\244\277\244\244\273\376\244\317\260\312\262\274\244\316\244\350\244\246\244\313 <\262\350\301\374\314\276> \244\316\311\364\312\254\244\313\262\277\244\342\275\361\244\253\244\312\244\244\244\307\n\262\274\244\265\244\244\241\243\n\n\241\241::\n\n\n== \244\342\244\246\260\354\305\331\274\302\271\324\n\n\272\306\305\331 \#{@sub_rb_name} \244\362\274\302\271\324\244\267\244\336\244\271\241\243\n\n$ ruby \#{@sub_rb_name}\n\n\244\271\244\353\244\310\241\242\276\345\265\255\244\316\265\255\275\322\244\254\310\277\261\307\244\265\244\354\244\277 (({ \#{@index}\#{@index_ext} })) \244\254\n\272\356\300\256\244\265\244\354\244\336\244\271\241\243\245\326\245\351\245\246\245\266\244\307\263\316\307\247\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\n\n== \245\271\245\257\245\352\245\327\245\310\244\316\312\324\275\270 (\261\376\315\321\312\324)\n\n((<\245\271\245\257\245\352\245\327\245\310\244\316\312\324\275\270 (\306\376\314\347\312\324)>)) \244\316\261\376\315\321\310\307\244\307\244\271\241\243\n\n((<\#{@self_name} \244\316 rdoc \245\336\245\313\245\345\245\242\245\353|URL:\#{PUB_DOC_URL}>))\n\244\316 DCModelThumbnail \245\257\245\351\245\271\244\316 Attribute \244\313\300\337\304\352\244\307\244\255\244\353\301\264\244\306\244\316\303\315\n\244\316\276\360\312\363\244\254\244\242\244\353\244\316\244\307\241\242\276\334\244\267\244\257\244\317\244\275\244\301\244\351\244\362\273\262\276\310\244\257\244\300\244\265\244\244\241\243\n\n=== \305\305\307\276\245\265\241\274\245\320\260\312\263\260\244\307\273\310\244\246\244\277\244\341\244\313\n\n\305\305\307\276\245\265\241\274\245\320\260\312\263\260\244\307\244\316\315\370\315\321\244\362\271\315\244\250\244\353\276\354\271\347\244\313\244\317\241\242\262\274\265\255\244\316\300\337\304\352\244\342\312\324\275\270\244\271\244\353\n\311\254\315\327\244\254\244\242\244\353\244\253\244\342\244\267\244\354\244\336\244\273\244\363\241\243\n\n\245\263\245\324\241\274\245\351\245\244\245\310\n\nthumb.copyright = \"GFD Dennou Club\"\n\n\245\271\245\277\245\244\245\353\245\267\241\274\245\310\n\nthumb.css       = \"/GFD_Dennou_Club/ftp/arch/dcmodel/htmltools/dcmodel.css\"\n\nrd2 \245\263\245\336\245\363\245\311\244\330\244\316\245\321\245\271 (\244\263\244\354\244\317\241\242\262\274\265\255\244\307\276\322\262\360\244\271\244\353 RD \244\310\244\244\244\246\275\361\313\241\244\307\n\275\361\244\257\311\254\315\327\244\254\314\265\244\261\244\354\244\320\241\242\300\337\304\352\244\316\311\254\315\327\244\317\244\242\244\352\244\336\244\273\244\363)\n\nthumb.rd2_path  = \"/usr/bin/rd2\"\n\nrd2html-ext-lib \244\316\300\337\304\352 (\244\263\244\354\244\342\241\242\262\274\265\255\244\307\276\322\262\360\244\271\244\353 RD \244\310\244\244\244\246\275\361\313\241\244\307\n\275\361\244\257\311\254\315\327\244\254\314\265\244\261\244\354\244\320\241\242\300\337\304\352\244\316\311\254\315\327\244\317\244\242\244\352\244\336\244\273\244\363)\n\nthumb.rd2htmlextlib = \"/GFD_Dennou_Club/ftp/arch/dcmodel/lib\"\n\n\n=== RD \244\362\273\310\244\244\244\277\244\244\277\315\244\316\244\277\244\341\244\313\n\n\303\346\244\313\244\317\241\242\241\326RD\n((-\nRD (Ruby Documents) \244\344 rdtool \244\313\264\330\244\267\244\306\244\317\241\242\n((<RD\273\366\273\317\244\341|URL:http://www.rubyist.net/~rubikitch/computer/rd-intro/>))\n\244\344\n((<RAA - rdtool|URL:http://raa.ruby-lang.org/project/rdtool/>))\n\244\362\273\262\276\310\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n-))\n\244\307\275\361\244\255\244\277\244\244\241\252\241\252  HTML \244\307\244\312\244\363\244\253\275\361\244\255\244\277\244\257\244\312\244\244\241\252\241\252\241\327\244\310\244\244\244\246\n\244\357\244\254\244\336\244\336\244\317\312\375\244\342\244\244\244\353\244\253\244\342\244\267\244\354\244\336\244\273\244\363\241\243(\244\263\244\354\244\362\275\361\244\244\244\306\244\244\244\353\273\344\244\254\300\265\244\313\244\275\244\246\244\307\244\271\241\243\n\244\275\244\316\244\277\244\341\244\313\244\263\244\316\245\304\241\274\245\353\244\362\262\376\316\311\244\267\244\277\244\310\270\300\244\303\244\306\244\342\262\341\270\300\244\307\244\317\244\242\244\352\244\336\244\273\244\363\241\304)\241\243\n\n\244\275\244\246\244\244\244\246\312\375\244\317\241\242\245\341\245\303\245\273\241\274\245\270\244\316\300\337\304\352\244\316\272\335\244\313\241\242\306\254\244\313 \241\326=begin\241\327\241\242\260\354\310\326\272\307\270\345\244\313\n\241\326=end\241\327\244\310\265\255\275\322\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\nthumb.message   << <<-MSG\n=begin\n= \274\302\270\263\267\353\262\314\n\n\260\312\262\274\244\317\274\302\270\263\267\353\262\314\244\362\260\354\315\367\244\267\244\277\244\342\244\316\244\307\244\242\244\353\n\n== \274\302\270\263\300\337\304\352\n\n* \262\362\301\374\305\331       : T42L20\n* \273\376\264\326\245\271\245\306\245\303\245\327 : 30 s\n:\n:\n=end\nMSG\n\n\244\271\244\353\244\310\241\242\244\263\244\316\276\360\312\363\244\362 rdtool \244\307 HTML \262\275\244\267\244\277\244\342\244\316\244\362\245\265\245\340\245\315\245\244\245\353\244\316\245\325\245\241\245\244\245\353\244\313\n\313\344\244\341\271\376\244\337\244\336\244\271\241\243\n\n=== RT \244\362\273\310\244\244\244\277\244\244\277\315\244\316\244\277\244\341\244\313 (\314\244\274\302\301\365)\n\n((* \303\355\260\325\241\247 *)) \244\263\244\316\265\241\307\275\244\317\244\336\244\300\245\320\241\274\245\270\245\347\245\363 \#{VER} \244\307\244\317\301\310\244\337\271\376\244\336\244\354\244\306\244\244\244\336\244\273\244\363\241\243\n\n\302\276\244\313\244\342\241\242\241\326RT\n((-\n((<RT|URL:http://www.rubyist.net/~rubikitch/computer/rt/>))\n\244\362\273\262\276\310\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n-))\n\244\307\275\361\244\244\244\306\244\337\244\277\244\244\241\252\241\252\241\327\244\310\244\244\244\246\312\375\244\342\244\244\244\353\244\253\244\342\244\267\244\354\244\336\244\273\244\363\241\243\n\n\244\275\244\246\244\244\244\246\312\375\244\317\241\242\245\341\245\303\245\273\241\274\245\270\244\316\300\337\304\352\244\316\272\335\244\313\241\242\306\254\244\313 \241\326=begin RT\241\327\241\242\260\354\310\326\272\307\270\345\244\313\n\241\326=end\241\327\244\310\265\255\275\322\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\nthumb.message   << <<-MSG\n=begin RT\ncaption = \311\275\245\306\245\271\245\310\n\n, \277\315\264\326, == , \270\244 , ==\n||  , \303\313  , \275\367 ,\245\252\245\271,\245\341\245\271\n\nx  , 1.0 , 2.0, 1.1, 1.2\ny  , 0.4 , 0.5, 0.3, 0.1\n\n=end\nMSG\n\n\244\271\244\353\244\310\241\242\244\263\244\316\276\360\312\363\244\362 rttool \244\307 HTML \262\275\244\267\244\277\244\342\244\316\244\362\245\265\245\340\245\315\245\244\245\353\244\316\245\325\245\241\245\244\245\353\244\313\n\313\344\244\341\271\376\244\337\244\336\244\271\241\243\n\n\n=== SIGEN \245\325\245\241\245\244\245\353\300\270\300\256\244\316\245\263\245\363\245\310\245\355\241\274\245\353\n\n\245\307\245\325\245\251\245\353\245\310\244\307\244\317\245\265\245\340\245\315\245\244\245\353\245\325\245\241\245\244\245\353\244\316\272\356\300\256\244\310\306\261\273\376\244\313 SIGEN \245\325\245\241\245\244\245\353\n<http://www.gfd-dennou.org/library/cc-env/mksigen/desc.htm> \244\362\n\272\356\300\256\244\267\244\336\244\271\244\254\241\242\311\324\315\327\244\307\244\242\244\353\276\354\271\347\244\317 mksigen \244\362 false \244\313\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\nthumb.mksigen = false\n\n\n=== \245\355\245\334\245\303\245\310\270\241\272\367\244\316\266\330\273\337\n\n\300\270\300\256\244\271\244\353\245\265\245\340\245\315\245\244\245\353\244\362\245\355\245\334\245\303\245\310\270\241\272\367\244\267\244\306\315\337\244\267\244\257\244\312\244\244\276\354\271\347\244\313\244\317\nnorobots \244\362 true \244\313\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\nthumb.norobots = true\n\n=== \245\265\245\340\245\315\245\244\245\353\262\350\301\374\312\321\264\271\245\304\241\274\245\353\244\316\312\321\271\271\n\n\245\307\245\325\245\251\245\353\245\310\244\307\245\265\245\340\245\315\245\244\245\353\244\362\312\321\264\271\244\271\244\353\245\263\245\336\245\363\245\311\244\252\244\350\244\323\245\252\245\327\245\267\245\347\245\363\244\317\n\260\312\262\274\244\316\304\314\244\352\244\307\244\271\241\243\n\n\#{@convert_cmd}\n\n\244\263\244\354\244\362\312\321\264\271\244\267\244\277\244\244\276\354\271\347\244\313\244\317\260\312\262\274\244\316\244\350\244\246\244\313\300\337\304\352\244\362\271\324\244\303\244\306\244\257\244\300\244\265\244\244\241\243\n\244\277\244\300\244\267\241\242\266\365\307\362\244\316\276\354\271\347\244\344\245\267\245\271\245\306\245\340\244\313\302\270\272\337\244\267\244\312\244\244\245\263\245\336\245\363\245\311\244\254\300\337\304\352\244\265\244\354\244\306\244\244\244\353\n\276\354\271\347\244\313\244\317\245\250\245\351\241\274\244\362\312\326\244\267\244\336\244\271\241\243\n\nthumb.convert_cmd = \"mogrify -geometry\"\n\n\245\307\245\325\245\251\245\353\245\310\244\307\244\317\264\373\244\313\275\320\316\317\300\350\244\313\245\325\245\241\245\244\245\353\244\254\302\270\272\337\244\267\241\242\263\356\244\304\270\265\244\316\245\325\245\241\245\244\245\353\244\350\244\352\244\342\n\277\267\244\267\244\244\276\354\271\347\241\242\273\376\264\326\244\316\303\273\275\314\244\316\244\277\244\341\241\242\262\350\301\374\245\325\245\241\245\244\245\353\244\316\312\321\264\271\244\362\271\324\244\244\244\336\244\273\244\363\241\243\n\244\342\244\267\244\342\313\350\262\363\311\254\244\272\245\325\245\241\245\244\245\353\244\316\312\321\264\271\244\362\271\324\244\244\244\277\244\244\276\354\271\347\244\317\260\312\262\274\244\316\244\350\244\246\244\313\300\337\304\352\244\267\244\306\244\257\244\300\244\265\244\244\241\243\n\nthumb.convert_overwrite = true\n\n\n== \241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\316\312\324\275\270 (\261\376\315\321\312\324)\n\n((<\241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\316\312\324\275\270 (\306\376\314\347\312\324)>)) \244\316\261\376\315\321\310\307\244\307\244\271\241\243\n\n=== \261\246\264\363\244\273\241\246\272\270\264\363\244\273\n\n<\275\244\276\376\273\322>\244\313 \">\" \244\362\275\361\244\255\271\376\244\340\244\310\261\246\264\363\244\273\244\313\241\242\"<\" \244\362\275\361\244\255\271\376\244\340\244\310\272\270\264\363\244\273\244\313\244\312\244\352\244\336\244\271\241\243\n\nfig1.png:>: \261\246\264\363\244\273\244\300\244\350\nfig2.gif:<: \272\270\264\363\244\273\244\300\244\350\nfig3.jpg:: \245\307\245\325\245\251\245\353\245\310\244\317\277\277\244\363\303\346\264\363\244\273\244\300\244\350\n\n\n=== \312\243\277\364\271\324\306\376\316\317\n\n<\275\244\276\376\273\322>\244\313 \"m\" \244\362\275\361\244\255\271\376\244\340\244\263\244\310\244\307\312\243\277\364\271\324\306\376\316\317\244\254\262\304\307\275\244\307\244\271\241\243\n\244\312\244\252\241\242\276\345\265\255\244\316 ((<\261\246\264\363\244\273\241\246\272\270\264\363\244\273>)) \244\310\312\273\315\321\244\271\244\353\276\354\271\347\244\313\244\317\245\253\245\363\245\336 \",\" \244\307\n\266\350\300\332\244\352\244\336\244\271\241\243\306\342\315\306\274\253\302\316\244\317 \"{\" \244\310 \"}\" \244\307\244\257\244\257\244\352\244\336\244\271\241\243\n\nfig1.png:m:{\n<p>\n\312\243\277\364\271\324\306\376\316\317\244\362\271\324\244\246\244\350\241\243\n\244\263\244\246\244\244\244\246\244\263\244\310\244\307\244\255\244\353\244\350\241\243\n\312\330\315\370\244\300\244\315\241\274\241\243\245\306\241\274\245\326\245\353\244\342\275\361\244\255\244\344\244\271\244\244\244\315\241\243\n</p>\n}\nfig2.gif:>,m:{\n<ul>\n<li> \312\273\315\321\244\271\244\353\244\313\244\317\244\263\244\246\244\271\244\353\244\350\241\243\n</ul>\n}\n\n=== \245\325\245\241\245\244\245\353\314\276\310\363\311\275\274\250\n\n<\275\244\276\376\273\322>\244\313 \"b\" \244\362\275\361\244\255\271\376\244\340\244\263\244\310\244\307\245\325\245\241\245\244\245\353\314\276\244\316\311\275\274\250\244\362\315\336\300\251\244\267\244\336\244\271\241\243\n\nfig1.png:b: \245\325\245\241\245\244\245\353\314\276\311\275\274\250\244\254\315\336\300\251\244\265\244\354\244\336\244\271\n\n\301\264\244\306\244\316\245\325\245\241\245\244\245\353\314\276\244\362\260\354\263\347\244\307\315\336\300\251\244\271\244\353\312\375\313\241\244\317 ((<\245\271\245\257\245\352\245\327\245\310\244\316\312\324\275\270 (\306\376\314\347\312\324)>))\n\244\362\273\262\276\310\244\267\244\306\244\257\244\300\244\265\244\244\241\243(\302\260\300\255 blankfig \244\362 true \244\313\300\337\304\352\244\267\244\336\244\271)\241\243\n\n\n=== RD \244\362\273\310\244\244\244\277\244\244\277\315\244\316\244\277\244\341\244\313\n\n<\275\244\276\376\273\322>\244\313 \"rd\" \244\362\275\361\244\255\271\376\244\340\244\263\244\310\244\307\241\242\312\270\273\372\316\363\244\317 RD \244\310\244\267\244\306\262\362\274\341\244\265\244\354\241\242\nrdtool \244\307 HTML \244\313\312\321\264\271\244\265\244\354\244\336\244\271\241\243RD \244\307\245\332\241\274\245\270\306\342\245\352\245\363\245\257\244\362\272\356\300\256\244\271\244\353\n\265\255\313\241\244\342\315\370\315\321\262\304\307\275\244\307\241\242\313\334\312\270\244\344\245\325\245\303\245\277\241\242\245\265\245\340\245\315\245\244\245\353\306\342\244\316\245\330\245\303\245\300\244\313\245\352\245\363\245\257\244\362\n\305\275\244\353\244\263\244\310\244\342\244\307\244\255\244\336\244\271\241\243(\316\343 ((<\245\330\245\303\245\3001>))\241\242((<\245\330\245\303\245\3002>)) )\n\nfig1.png:m,rd:{\n((<\244\352\244\363\244\257|URL:./>)) \244\317\244\263\244\363\244\312\264\266\244\270\244\307\275\361\244\261\244\353\244\350\241\243\n* \245\352\245\271\245\310\244\342\n* \264\312\303\261\nRD \245\351\245\331\245\353\244\362\273\310\315\321\244\267\244\277\245\332\241\274\245\270\306\342\245\352\245\363\245\257\244\317\n((<RD \244\362\273\310\244\244\244\277\244\244\277\315\244\316\244\277\244\341\244\313>)) \244\316\244\350\244\246\244\313\265\255\275\322\244\271\244\354\244\320 OK \244\307\244\271\241\243\n}\n\n\n=== RT \244\362\273\310\244\244\244\277\244\244\277\315\244\316\244\277\244\341\244\313 (\314\244\274\302\301\365)\n\n((* \303\355\260\325\241\247 *)) \244\263\244\316\265\241\307\275\244\317\244\336\244\300\245\320\241\274\245\270\245\347\245\363 \#{VER} \244\307\244\317\301\310\244\337\271\376\244\336\244\354\244\306\244\244\244\336\244\273\244\363\241\243\n\n<\275\244\276\376\273\322>\244\313 \"rt\" \244\362\275\361\244\255\271\376\244\340\244\263\244\310\244\307\241\242\312\270\273\372\316\363\244\317 RT \244\310\244\267\244\306\262\362\274\341\244\265\244\354\241\242\nrttool \244\307 HTML \244\313\312\321\264\271\244\265\244\354\244\336\244\271\241\243\n\nfig1.png:m,rt:{\ncaption = \311\275\245\306\245\271\245\310\n\n, \277\315\264\326, == , \270\244 , ==\n||  , \303\313  , \275\367 ,\245\252\245\271,\245\341\245\271\n\nx  , 1.0 , 2.0, 1.1, 1.2\ny  , 0.4 , 0.5, 0.3, 0.1\n}\n\n\n=== \241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\253\244\351\245\277\245\244\245\310\245\353\244\316\300\337\304\352\n\n((<\245\271\245\257\245\352\245\327\245\310\244\316\312\324\275\270 (\306\376\314\347\312\324)>)) \244\307\245\277\245\244\245\310\245\353\244\316\300\337\304\352\244\313\264\330\244\267\244\306\n\265\255\275\322\244\267\244\336\244\267\244\277\244\254\241\242\241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\253\244\351\244\316\300\337\304\352\244\342\262\304\307\275\244\307\244\271\241\243\n<\262\350\301\374\314\276> \244\313 title \244\310\265\255\275\322\244\267 <\245\263\245\341\245\363\245\310> \244\313\245\277\245\244\245\310\245\353\244\362\275\361\244\255\271\376\244\363\244\307\244\257\244\300\244\265\244\244\241\243\n\ntitle:: \274\302\270\263\300\337\304\352 \302\266\244\316\306\365\n\n((<\245\271\245\257\245\352\245\327\245\310\244\316\312\324\275\270 (\306\376\314\347\312\324)>)) \244\317\276\345\275\361\244\255\244\265\244\354\244\336\244\271\241\243\n\n\n=== \241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\253\244\351\313\334\312\270\245\341\245\303\245\273\241\274\245\270\244\316\304\311\262\303\n\n((<\245\271\245\257\245\352\245\327\245\310\244\316\312\324\275\270 (\306\376\314\347\312\324)>)) \244\307\313\334\312\270\245\341\245\303\245\273\241\274\245\270\244\316\300\337\304\352\244\313\264\330\244\267\244\306\n\265\255\275\322\244\267\244\336\244\267\244\277\244\254\241\242\241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\253\244\351\304\311\262\303\244\342\262\304\307\275\244\307\244\271\241\243\n<\262\350\301\374\314\276> \244\313 message \244\310\265\255\275\322\244\267\241\242\313\334\312\270\245\341\245\303\245\273\241\274\245\270\244\362\275\361\244\255\271\376\244\363\244\307\244\257\244\300\244\265\244\244\241\243\n\nmessage:m,rd:{\n= \245\265\245\363\245\327\245\353\244\300\241\274\n\n== \314\334\274\241\244\307\244\271\n\n=== \244\265\244\351\244\313\314\334\274\241\244\307\244\271\n\n((<\244\333\244\262|URL:thum/sample_thum.txt>))\n}\nmessage:m:{\n<b>HTML</b> \244\307\244\271\244\254\262\277\244\253\314\344\302\352\244\307\244\342\241\251\n<ul>\n<li>\244\301\244\244\244\265\244\312\n<li>\245\306\241\274\245\326\245\353\244\362\n<li>\272\356\244\303\244\306\n<li>\244\337\244\277\244\350\242\366\n</ul>\n<hr>\n}\n\n=== \241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\253\244\351\245\325\245\303\245\277\241\274\245\341\245\303\245\273\241\274\245\270\244\316\304\311\262\303\n\n((<\245\271\245\257\245\352\245\327\245\310\244\316\312\324\275\270 (\306\376\314\347\312\324)>)) \244\307\245\325\245\303\245\277\241\274\245\341\245\303\245\273\241\274\245\270\244\316\300\337\304\352\244\313\264\330\244\267\244\306\n\265\255\275\322\244\267\244\336\244\267\244\277\244\254\241\242\241\326\276\360\312\363\245\325\245\241\245\244\245\353\241\327\244\253\244\351\304\311\262\303\244\342\262\304\307\275\244\307\244\271\241\243\n<\262\350\301\374\314\276> \244\313 footer \244\310\265\255\275\322\244\267\241\242\245\325\245\303\245\277\241\274\245\341\245\303\245\273\241\274\245\270\244\362\275\361\244\255\271\376\244\363\244\307\244\257\244\300\244\265\244\244\241\243\n\nfooter:m,rd:{\n== \245\325\245\303\245\277\241\274\244\307\244\271\n\273\262\271\315\312\270\270\245\244\310\244\253\275\361\244\255\271\376\244\340\244\316\244\313\312\330\315\370\244\253\244\342\244\267\244\354\244\336\244\273\244\363\241\243\n}\n\n=end\n"
596:     debug(@message)
597:   end

Public Instance methods

HTML ¥Õ¥¡¥¤¥ë¤ÎºÇ½ªÅª¤ÊºîÀ®¥á¥½¥Ã¥É¡£ºÇ¸å¤Ë¤³¤Î¥á¥½¥Ã¥É¤ò¸Æ¤Ö¤³¤È¤Ç ºî¶È¤¬´°Î»¤¹¤ë¡£

overwrite ¤Ë false ¤òÍ¿¤¨¤ë¤È¡¢¾å½ñ¤­¤ò¶Ø»ß¤¹¤ë¡£

quiet ¤ò true ¤Ë¤¹¤ë¤È¥¨¥é¡¼¤ò½ü¤¯Á´¤Æ¤Î¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Ê¤¯¤Ê¤ë¡£

verbose ¤ò true ¤Ë¤¹¤ë¤Èºî¶È¤Î¿ÊĽ¾õ¶·¤¬¥á¥Ã¥»¡¼¥¸¤È¤·¤Æ½ÐÎϤµ¤ì¤ë¡£

err ¤ò true ¤Ë¤·¤¿¾ì¹ç¡¢°Õ¿Þ¤·¤Ê¤¤Æ°ºî¤¬µ¯¤­¤¿¾ì¹ç¤Ë¤¹¤°¤Ë ¥¨¥é¡¼¤òµ¯¤³¤¹¡£

[Source]

      # File dcmodel-tools/dcmodel-thum.rb, line 1196
1196:   def create(overwrite=true, quiet=nil, verbose=true, err=true)
1197: 
1198:     #
1199:     # ¥µ¥à¥Í¥¤¥ë¥Õ¥¡¥¤¥ë̾
1200:     #
1201:     index_file_name = @index.chomp.strip  +
1202:                       @index_ext.chomp.strip
1203: 
1204:     #
1205:     # ¸µ¥Õ¥¡¥¤¥ëºï½ü (overwrite ¤¬ nil ¤Î¾ì¹ç¤Ï¥¨¥é¡¼)
1206:     #
1207:     if File.exist?(index_file_name)
1208:       if overwrite then
1209:         File.delete(index_file_name)
1210:       else
1211:         raise ArgumentError, "\n\n  Error : \"#{index_file_name}\" exist already.\n\n"
1212:       end
1213:     end
1214: 
1215: 
1216:     #
1217:     # infofile ¤ÎºîÀ® (´û¤Ë¸ºß¤¹¤ë¾ì¹ç¤Ï¤½¤Î¤Þ¤Þ)¡£
1218:     # DCModelThumbnail.info_make ¥á¥½¥Ã¥É¤ò¸Æ¤Ö
1219:     #
1220:     status = info_make(@figdir, @infofile, @ext_list,
1221:                        @headlimit, nil, nil,
1222:                        true, err)
1223:     if verbose then
1224:       if /create/ =~ status
1225:         $stdout.print "  Message : Infofile \"#{@infofile}\" is created.\n"
1226:       elsif /exist/ =~ status
1227:         $stdout.print "  Message : Infofile \"#{@infofile}\" is already exist.\n"
1228:       end
1229:     end
1230: 
1231:     #
1232:     # @message ¤¬ Array ¥ª¥Ö¥¸¥§¥¯¥È°Ê³°¤Î¾ì¹ç¤Ï¥¨¥é¡¼¤òÊÖ¤¹¡£
1233:     #
1234:     if !@message.instance_of?(Array) then
1235:       warn_or_err(
1236:                   "\"message\" must be Array Object. " +
1237:                   "Please \"message = Array.new\" initially.\n", 
1238:                   true, nil, ArgumentError)
1239:     end
1240: 
1241:     #
1242:     # infofile ¤«¤é¾ðÊó¤Î¼èÆÀ¡£
1243:     # DCModelThumbnail.info_get ¥á¥½¥Ã¥É¤ò¸Æ¤Ö¡£
1244:     #
1245:     $stdout.print "  Message : Get information from \"#{@infofile}\".... " if verbose
1246:     info_list = info_get(@infofile, @headlimit, nil, quiet, err)
1247:     #
1248:     # infofile ¤«¤é¤Î¾ðÊó¤Î¤¦¤Á¡¢²èÁü¥Õ¥¡¥¤¥ë̾¤ò "title" ¤Ë¤·¤Æ¤¤¤ë
1249:     # ¤â¤Î¤Ë´Ø¤·¤Æ @title ¤Ë¾å½ñ¤­¤·¤Æ¡¢info_list ¤«¤é½ü¤¯¡£
1250:     #
1251:     # infofile ¤«¤é¤Î¾ðÊó¤Î¤¦¤Á¡¢²èÁü¥Õ¥¡¥¤¥ë̾¤ò "message" ¤Ë¤·¤Æ¤¤¤ë
1252:     # ¤â¤Î¤Ë´Ø¤·¤Æ @message ¤ËÄɲ䷤ơ¢info_list ¤«¤é½ü¤¯¡£
1253:     #
1254:     info_list_buff = Array.new
1255:     info_list.each{ |info_part|
1256:       if /title/ =~ info_part['fig_name']
1257:         @title = info_part['comment']
1258:       elsif /message/ =~ info_part['fig_name']
1259:         # ¥Õ¥©¡¼¥Þ¥Ã¥È¤Î¾ðÊó¤ò¼õ¤±¤Æ¡¢"=begin" Åù¤ÎÊä´°
1260:         if /rd/ =~ info_part['format'] then
1261:           mess_body  = "=begin\n"
1262:           mess_body << info_part['comment']
1263:           mess_body << "\n=end\n"
1264:         elsif /rt/ =~ info_part['format'] then
1265:           mess_body  = "=begin RT\n"
1266:           mess_body << info_part['comment']
1267:           mess_body << "\n=end\n"
1268:         else
1269:           mess_body = info_part['comment']
1270:         end
1271: 
1272:         @message << mess_body
1273: 
1274:       elsif /footer/ =~ info_part['fig_name']
1275:         # ¥Õ¥©¡¼¥Þ¥Ã¥È¤Î¾ðÊó¤ò¼õ¤±¤Æ¡¢"=begin" Åù¤ÎÊä´°
1276:         if /rd/ =~ info_part['format'] then
1277:           foot_body  = "=begin\n"
1278:           foot_body << info_part['comment']
1279:           foot_body << "\n=end\n"
1280:         elsif /rt/ =~ info_part['format'] then
1281:           foot_body  = "=begin RT\n"
1282:           foot_body << info_part['comment']
1283:           foot_body << "\n=end\n"
1284:         else
1285:           foot_body = info_part['comment']
1286:         end
1287: 
1288:         @footer << foot_body
1289: 
1290:       # ¥µ¥à¥Í¥¤¥ë¤Ë½ñ¤­¹þ¤à¾ðÊó (¤³¤ì¤¬ËÜÌ¿)
1291:       else
1292:         info_list_buff << info_part
1293:       end
1294:     }
1295:     info_list = Array.new
1296:     info_list << info_list_buff
1297:     info_list.flatten!          # ÇÛÎó¤ÎÊ¿³ê²½ (1¼¡¸µÇÛÎó²½)
1298: 
1299:     $stdout.print "  done.\n" if verbose
1300: 
1301: 
1302:     # @convert_cmd ¤¬Â¸ºß¤¹¤ë¤«¤É¤¦¤«¥Á¥§¥Ã¥¯
1303:     $stdout.print "  Message : Check converter command .... " if verbose
1304:     convert_cmd_no_opt = @convert_cmd.strip.gsub(/\s+.*/, '')
1305:     convert_cmd_check1 = convert_cmd_no_opt + " -help &> /dev/null"
1306:     convert_cmd_check2 = convert_cmd_no_opt + " --help &> /dev/null"
1307:     raise ArgumentError, "\n\n  Error : \"#{convert_cmd_no_opt}\": command not found.\n\n" \
1308:        if !system(convert_cmd_check1) && !system(convert_cmd_check2)
1309:     $stdout.print "  done.\n" if verbose
1310: 
1311:     # ¥µ¥à¥Í¥¤¥ë²èÁüÃÖ¤­¾ì¤ÎºîÀ®
1312:     raise IOError, "\n\n  Error: Existing #{@thumbnaildir} is not a directory.\n\n" \
1313:        if File.exists?(@thumbnaildir) && ! File.stat(@thumbnaildir).directory?
1314:     Dir.mkdir(@thumbnaildir) unless File.exists?(@thumbnaildir)
1315: 
1316:     # ¥µ¥à¥Í¥¤¥ë²èÁü¤ÎºîÀ®
1317:     $stdout.print "  Message : Create small images for thumbnail ....\n" if verbose
1318:     info_list.each_index{ |i|
1319:       thumbnail_name = info_list[i]['fig_name'].sub(/\.\w+$/, @thumbnailtail)
1320:       fig_name = info_list[i]['fig_name']
1321:       $stdout.print "    [#{i + 1}/#{info_list.size}]: " if verbose
1322:       if info_list[i]['fig_name_nohead'].strip.chomp == "label" ||
1323:           info_list[i]['fig_name_nohead'].strip.chomp == "message" ||
1324:           info_list[i]['fig_name_nohead'].strip.chomp == "title" ||
1325:           info_list[i]['fig_name_nohead'].strip.chomp.empty?
1326:         $stdout.print "Skip: No image file.\n" if verbose
1327:       elsif !@convert_overwrite && \
1328:           File.exists?("#{@thumbnaildir}/#{thumbnail_name}") && \
1329:           File.mtime("#{@thumbnaildir}/#{thumbnail_name}") > \
1330:           File.mtime("#{@figdir}/#{fig_name}")
1331:         $stdout.print "Skip: \"#{@thumbnaildir}/#{thumbnail_name}\" is already exist, and newer than \"#{@figdir}/#{fig_name}\"\n" if verbose
1332:       else
1333:         cmd = "#{@convert_cmd} #{@img_width.to_s}x#{@img_height.to_s} '#{@figdir}/#{fig_name}[#{@thumbnailpage}]' '#{@thumbnaildir}/#{thumbnail_name}'"
1334:         $stdout.print cmd if verbose
1335:         $stdout.print "\n" if verbose
1336:         raise "\n\n  Error : \"#{cmd}\": failed.\n\n" if !system(cmd)
1337:       end
1338:       info_list[i]['thumbnail_name']=thumbnail_name
1339:     }
1340: 
1341:     #
1342:     # @message ¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤ò²òÀϤ·¡¢HTML ¤ËÊÑ´¹¤¹¤ë¡£
1343:     #
1344:     html_message = Array.new
1345:     @message.each{ |mess|
1346:       format = format_parser(mess)
1347: 
1348:       if /rd/ =~ format then
1349:         html_buff = rd2html(mess, true)
1350:       elsif /rt/ =~ format then
1351:         html_buff = rd2html(mess, true)
1352:       else
1353:         html_buff = mess
1354:       end
1355: 
1356:       html_message << html_buff if html_buff
1357:       debug(html_message)
1358:     }
1359:     debug(html_message)
1360: 
1361: 
1362:     #
1363:     # @footer ¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤ò²òÀϤ·¡¢HTML ¤ËÊÑ´¹¤¹¤ë¡£
1364:     #
1365:     footer_mess = Array.new
1366:     @footer.each{ |mess|
1367:       format = format_parser(mess)
1368: 
1369:       if /rd/ =~ format then
1370:         html_buff = rd2html(mess, true)
1371:       elsif /rt/ =~ format then
1372:         html_buff = rd2html(mess, true)
1373:       else
1374:         html_buff = mess
1375:       end
1376: 
1377:       footer_mess << html_buff if html_buff
1378:       debug(footer_mess)
1379:     }
1380:     debug(footer_mess)
1381:     if !footer_mess.empty?
1382:       footer_mess.unshift "\n<hr size=\"1\">\n"
1383:     end
1384: 
1385:     # ½é´ü²½
1386:     html_entire = ""
1387: 
1388:     # HTML ¥Ø¥Ã¥ÀÉôʬ
1389:     $stdout.print "  Message : Generate HTML Header...." if verbose
1390:     html_entire << html_header 
1391:     $stdout.print "  done.\n" if verbose
1392: 
1393:     # ËÜʸ
1394:     $stdout.print "  Message : Insert body messages...." if verbose
1395:     html_message.each { |message|
1396:       html_entire << message
1397:     }
1398:     $stdout.print "  done.\n" if verbose
1399: 
1400:     # ¥µ¥à¥Í¥¤¥ëÉôʬ
1401:     $stdout.print "  Message : Generate Thumbnail Lists...." if verbose
1402:     html_entire << html_thum(info_list, quiet, true)
1403:     $stdout.print "  done.\n" if verbose
1404: 
1405:     # ¥Õ¥Ã¥¿¥á¥Ã¥»¡¼¥¸Éôʬ
1406:     $stdout.print "  Message : Insert footer messages...." if verbose
1407:     footer_mess.each { |message|
1408:       html_entire << message
1409:     }
1410:     $stdout.print "  done.\n" if verbose
1411: 
1412:     # HTML ¥Õ¥Ã¥¿Éôʬ
1413:     $stdout.print "  Message : Generate HTML Footer...." if verbose
1414:     html_entire << html_footer
1415:     $stdout.print "  done.\n" if verbose
1416: 
1417:     # ¥Ø¥Ã¥À, ¥µ¥à¥Í¥¤¥ë, ¥Õ¥Ã¥¿´Ö¤Î¥Ï¥¤¥Ñ¡¼¥ê¥ó¥¯¤òÍ­¸ú¤Ë¤¹¤ë.
1418:     $stdout.print "  Message : Cross hyperlinks between header and thumbnail and footer .... " if verbose
1419:     html_entire = relabel(html_entire)
1420:     $stdout.print "  done.\n" if verbose
1421: 
1422:     # ¥Õ¥¡¥¤¥ë¤Î½ñ¤­¤À¤·
1423:     $stdout.print "  Message : Output to \"#{index_file_name}\"...." if verbose
1424:     ifile = open(index_file_name, "w")
1425:     ifile.print html_entire
1426:     ifile.close
1427:     $stdout.print "  Successfull. \n" if verbose
1428: 
1429:     # ºÇ¸å¤Þ¤Ç¤¦¤Þ¤¯¤¤¤Ã¤¿¤é¡¢SIGEN ¥Õ¥¡¥¤¥ë¤âºîÀ®¤¹¤ë¡£
1430:     if @mksigen then
1431:       mksigen_file = index_file_name.chomp.strip + ".SIGEN"
1432:       mksigen_thumbdir = @thumbnaildir + ".SIGEN"
1433:       mksigen_thumbdir_title = @title || ""
1434:       mksigen_thumbdir_title << " ¥µ¥à¥Í¥¤¥ë²èÁüÃÖ¤­¾ì¥Ç¥£¥ì¥¯¥È¥ê"
1435:       mksigen_src  = relative_str("#{$0}"  , mksigen_file)
1436:       mksigen_info = relative_str(@infofile, mksigen_file)
1437: 
1438:       mksigen_desc = "relative:\#{mksigen_src} \244\310\nrelative:\#{mksigen_info}\n\244\313\244\350\244\352\274\253\306\260\300\270\300\256\n"
1439: 
1440:       mksigen_note = "\244\263\244\316 SIGEN \245\325\245\241\245\244\245\353\274\253\302\316\244\342\nrelative:\#{mksigen_src}\n\244\253\244\351\244\316\274\253\306\260\300\270\300\256\244\307\244\242\244\353\n"
1441: 
1442:       $stdout.print "  Message : Create \"#{mksigen_file}\"...." if verbose
1443:       mksigen_write(mksigen_file, @title, nil,
1444:                     nil, "¼«Æ°À¸À®",
1445:                     mksigen_desc, mksigen_note)
1446:       mksigen_write(mksigen_thumbdir, mksigen_thumbdir_title, nil,
1447:                     nil, "¼«Æ°À¸À®",
1448:                     mksigen_desc, mksigen_note) if File.exists?(@thumbnaildir) 
1449:       $stdout.print "  Successfull. \n" if verbose
1450:     end
1451: 
1452:   end

¥µ¥ó¥×¥ë¥¹¥¯¥ê¥×¥È½ÐÎÏÍѤΥ᥽¥Ã¥É¡£ ¤³¤Î DCModelThumbnail ¥¯¥é¥¹¤Ë°Í¸¤¹¤ë¥µ¥ó¥×¥ë¥¹¥¯¥ê¥×¥È¤ò °ú¿ô filename ¤È¤¤¤¦Ì¾Á°¤Ç½ÐÎϤ¹¤ë¡£¼ÂºÝ¤Ë¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë ¤òÊÔ½¸¡¦¼Â¹Ô¤¹¤ë¤³¤È¤Ç¥µ¥à¥Í¥¤¥ë¤¬ºîÀ®¤µ¤ì¤ëÀ£Ë¡¤Ç¤¢¤ë¡£

[Source]

      # File dcmodel-tools/dcmodel-thum.rb, line 1470
1470:   def create_sample_rb(filename)
1471:     if !(str_and_notspace?(filename)) then
1472:       return warn_or_err("filename is invalid.\n",
1473:                          true, nil, ArgumentError)
1474:     end
1475:     
1476:     rb_file_body = "#!/usr/bin/env ruby1.8\n#\n#= dcmodel thumbnail generate ruby script\n#\n#  Editor :: \#{username_from_uid}\n#  Version:: \#{Time.now.strftime(\"%Y/%m/%d %H:%M:%S\")}\n#\n#== Overview\n#\n#This file is generate by following ruby script automatically.\n#\n#      \#{File.expand_path($0.to_s)}\n#      version \"\#{VER}\"\n#\n#Please edit this file according to your purpose.\n#\n#== Usage\n#\n#Please check following sample page and reference manual.\n#\n#  \#{PUB_SAMPLE_URL}\n#  \#{PUB_DOC_URL}\n#\n##################################################\n\nrequire \"\#{File.expand_path($0.to_s)}\"\n\n######################################################\n# DCModelThumbnail \244\316\245\244\245\363\245\271\245\277\245\363\245\271\244\362\272\356\300\256 (\311\254\277\334)\nthumb = DCModelThumbnail.new\n\n# \245\265\245\340\245\315\245\244\245\353\274\302\271\324\245\263\245\336\245\363\245\311 (\311\254\277\334)\241\243\272\307\270\345\244\313\274\302\271\324\244\271\244\353\244\263\244\310\nEND{\nthumb.create\n}\n\n#thumb.copyright = \"\#{@copyright}\"\n# \245\263\245\324\241\274\245\351\245\244\245\310\n\nthumb.index     = \"\#{@index}\"\n# \272\356\300\256\244\265\244\354\244\353\245\265\245\340\245\315\245\244\245\353\244\316\245\325\245\241\245\244\245\353\314\276 (\263\310\304\245\273\322\275\374\244\257)\n\n#thumb.index_ext = \"\#{@index_ext}\"\n# \272\356\300\256\244\265\244\354\244\353\245\265\245\340\245\315\245\244\245\353\244\316\263\310\304\245\273\322\314\276\n\nthumb.infofile  = \"\\#\\{File.basename(thumb.index)\\}.txt\"\n# \241\326\276\360\312\363\245\325\245\241\245\244\245\353 (infofile)\241\327\244\316\245\325\245\241\245\244\245\353\314\276\n\n#thumb.ext_list.push(\"bmp\")\n# \262\350\301\374\245\325\245\241\245\244\245\353\244\310\244\267\244\306\307\247\274\261\244\265\244\273\244\277\244\244\263\310\304\245\273\322\244\316\n# \304\311\262\303\241\243\245\307\245\325\245\251\245\353\245\310\244\307\244\317\n# \#{@ext_list.join(\", \")},\n# \#{@ext_list.join(\", \").swapcase}\n# \244\254\307\247\274\261\244\265\244\354\244\353\241\243\n\n#thumb.headlimit = \"headlimit_\"\n# headlimit \244\313\305\366\244\306\244\317\244\336\244\351\244\312\244\244\244\342\244\316\244\317\262\350\301\374\244\310\n# \244\267\244\306\244\317\314\265\273\353\244\265\244\354\241\242\305\366\244\306\244\317\244\336\244\353\244\342\244\316\244\317\241\326\276\360\312\363\n# \245\325\245\241\245\244\245\353\241\327\244\313\244\252\244\244\244\306\241\242\300\334\306\254\311\364\312\254 headlimit\n# \244\362\276\312\316\254\244\267\244\306\273\330\304\352\244\271\244\353\244\263\244\310\244\254\262\304\307\275\244\310\244\312\244\353\241\243\n\n#thumb.blankfig = true\n# \262\350\301\374\245\325\245\241\245\244\245\353\314\276\244\362\311\275\274\250\244\267\244\312\244\244\n\n#thumb.figdir    = \"\#{@figdir}\"\n# \263\250\244\316\244\242\244\353\245\307\245\243\245\354\245\257\245\310\245\352\244\316\314\276\301\260\241\243\n# \311\254\244\272\302\270\272\337\244\267\244\306\244\244\244\312\244\261\244\354\244\320\244\312\244\351\244\312\244\244\241\243\n\n#thumb.thumbnaildir    = \"\#{@thumbnaildir}\"\n# \245\265\245\340\245\315\245\244\245\353\262\350\301\374\244\362\303\326\244\257\245\307\245\243\245\354\245\257\245\310\245\352\244\316\314\276\301\260\n\n#thumb.thumbnailtail    = \"\#{@thumbnailtail}\"\n# \245\265\245\340\245\315\245\244\245\353\262\350\301\374\244\316\263\310\304\245\273\322\314\276\n\n#thumb.thumbnailpage = \"1\"\n# \245\265\245\340\245\315\245\244\245\353\262\350\301\374\262\275\244\271\244\353\270\265\262\350\301\374\244\316\245\332\241\274\245\270\310\326\271\346\n\n#thumb.convert_cmd = \"\#{@convert_cmd}\"\n# convert \245\263\245\336\245\363\245\311\244\252\244\350\244\323\245\252\245\327\245\267\245\347\245\363\241\243\244\263\244\316\n# \270\345\244\355\244\313\262\350\301\374\245\265\245\244\245\272\244\254 200x150 \244\316\244\350\244\246\244\312\267\301\n# \274\260\244\307\273\330\304\352\244\265\244\354\244\353\241\243\n\n#thumb.convert_overwrite = \#{@convert_overwrite}\n# convert \245\263\245\336\245\363\245\311\244\254\274\302\271\324\244\265\244\354\244\353\272\335\241\242\264\373\244\313\275\320\n# \316\317\300\350\244\316\245\325\245\241\245\244\245\353\244\254\244\242\244\353\276\354\271\347\244\313\276\345\275\361\244\255\244\271\244\353\244\277\n# \244\341\244\316\245\325\245\351\245\260\241\243\244\263\244\354\244\254 false \244\316\276\354\271\347\241\242\275\320\316\317\n# \300\350\244\316\245\325\245\241\245\244\245\353\244\254\302\270\272\337\244\267\241\242\263\356\244\304\270\265\244\316\245\325\245\241\245\244\245\353\n# \244\350\244\352\244\342\277\267\244\267\244\244\276\354\271\347\244\317\312\321\264\271\244\362\271\324\244\357\244\312\244\244\241\243\n\n#thumb.css       = \"\#{@css}\"\n# \245\271\245\277\245\244\245\353\245\267\241\274\245\310\245\325\245\241\245\244\245\353\n\n#thumb.rd2_path  = \"\#{@rd2_path}\"\n# rd2 \245\263\245\336\245\363\245\311\244\330\244\316\245\321\245\271\n\n#thumb.rd2htmlextlib = \"\#{@rd2htmlextlib}\"\n# rd2-ext-lib \244\330\244\316\245\351\245\244\245\326\245\351\245\352\244\330\244\316\245\321\245\271\n\n#thumb.mksigen = false\n# SIGEN \245\325\245\241\245\244\245\353\244\362\272\356\244\351\244\312\244\244\276\354\271\347\244\317 false\n# \244\313\245\273\245\303\245\310\244\271\244\353\n\n#thumb.norobots = true\n# HTML \244\316\245\355\245\334\245\303\245\310\270\241\272\367\244\362\266\330\273\337\244\271\244\353\276\354\271\347\244\313\244\317\n# true \244\313\245\273\245\303\245\310\244\271\244\353\n\n#thumb.img_width  = \#{@img_width}\n# \262\350\301\374\245\325\245\241\245\244\245\353\245\265\245\244\245\272 (\311\375)\n\n#thumb.img_height = \#{@img_height}\n# \262\350\301\374\245\325\245\241\245\244\245\353\245\265\245\244\245\272 (\271\342\244\265)\n\n#thumb.figtable_num = \#{@figtable_num}\n# \262\243\244\313\244\312\244\351\244\331\244\353\245\325\245\241\245\244\245\353\277\364\n\n#thumb.style = <<-STYLE\n#  a:link { color:#269900; }\n#  a:visited { color:#269900; }\n#  a:hover { color:#99FF33; }\n#STYLE\n# \245\271\245\277\245\244\245\353\245\267\241\274\245\310\244\362\304\276\300\334\300\337\304\352\244\271\244\353\244\277\244\341\244\316\244\342\244\316\n# (css \245\325\245\241\245\244\245\353\244\313\275\361\244\255\271\376\244\340\276\360\312\363\244\362\304\276\300\334\273\330\304\352\n# \244\307\244\255\244\353)\n\n#thumb.html_author  = \"\#{@html_author}\"\n# html \244\316\272\356\300\256\274\324\276\360\312\363 (\245\307\245\325\245\251\245\353\245\310\244\317\245\346\241\274\245\266\n# \245\242\245\253\245\246\245\363\245\310\314\276\244\254\274\253\306\260\274\350\306\300\244\265\244\354\244\353)\n\nthumb.title     = \"\#{@title}\"\n# html \245\330\245\303\245\300\244\316\245\277\245\244\245\310\245\353\n\n# \313\334\302\316\244\313\275\361\244\255\275\320\244\271\245\341\245\303\245\273\241\274\245\270\241\243\245\265\245\340\245\315\245\244\245\353\244\316\n# \311\364\312\254\244\350\244\352\244\342\276\345\244\313\275\320\316\317\244\265\244\354\244\353\241\243\244\263\244\316\312\321\277\364\274\253\302\316\n# \244\317 Array \245\252\245\326\245\270\245\247\245\257\245\310\244\307\241\242\244\275\244\316\306\342\311\364\244\313\n# String \245\252\245\326\245\270\245\247\245\257\245\310\244\254\263\312\307\274\244\265\244\354\244\353\241\243\n\n# \245\325\245\303\245\277\241\274\245\341\245\303\245\273\241\274\245\270\241\243\n# \"=\" \244\307\244\317\244\312\244\257\241\242\"<<\" \244\307\302\345\306\376\244\271\244\353\244\263\244\310\244\313\303\355\260\325\241\252\241\252\nthumb.footer    = Array.new\n#thumb.footer    << <<-Footer\n# \#{@footer.join(\"\\n\\n\")}\n#Footer\n\n# \245\341\245\303\245\273\241\274\245\270\241\243\n# \"=\" \244\307\244\317\244\312\244\257\241\242\"<<\" \244\307\302\345\306\376\244\271\244\353\244\263\244\310\244\313\303\355\260\325\241\252\241\252\nthumb.message   = Array.new\nthumb.message   << <<-Message\n\#{@message.join(\"\\n\\n\")}\nMessage\n\n"
1477: 
1478:     #
1479:     # ¥Õ¥¡¥¤¥ë¤ÎºîÀ®
1480:     #
1481:     ifile = open(filename, "w")
1482:     ifile.print "#{rb_file_body}"
1483:     ifile.close
1484: 
1485:     #
1486:     # ¥Ñ¡¼¥ß¥Ã¥·¥ç¥ó¤ÎÀßÄê
1487:     #
1488:     File.chmod(0755, filename)
1489: 
1490:   end

mes ¤ÇÍ¿¤¨¤é¤ì¤ëËÜʸ¤Î¹ÔƬ¤ò²òÀϤ·¡¢¤½¤ÎËÜʸ¤¬ HTML ¤Ç¤¢¤ë¤«¡¢ RD ¤Ç¤¢¤ë¤«¡¢RT ¤Ç¤¢¤ë¤Î¤«¤òȽÊ̤¹¤ë¡£¸½ºß¡¢°Ê²¼¤Î¤è¤¦¤ËȽÄꤷ¤Æ¤¤¤ë¡£

  • ¹ÔƬʸ»ú¤¬¡Ö=begin¡×¡¢¡Ö=begin RD¡×¡¢¡Ö=begin rd¡×
    • RD ¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç¤¢¤ë¤ÈȽÊÌ
  • ¹ÔƬʸ»ú¤¬¡Ö=begin RT¡×¡¢¡Ö=begin rt¡×
    • RT ¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç¤¢¤ë¤ÈȽÊÌ
  • ¾åµ­°Ê³°
    • HTML ¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç¤¢¤ë¤ÈȽÊÌ

ÊÖ¤êÃÍ¤Ï "html", "rd", "rt" ¤Î¤¤¤Å¤ì¤«¤Ç¤¢¤ë¡£¤Ê¤ª¡¢body ¤Ë String ¥ª¥Ö¥¸¥§¥¯¥È°Ê³°¡¢¤â¤·¤¯¤Ï´°Á´¤Ë¶õÇò¤Î¤ß¤¬Æþ¤Ã¤Æ¤¤¤ë¾ì¹ç¡¢ nil ¤òÊÖ¤¹¡£

[Source]

      # File dcmodel-tools/dcmodel-thum.rb, line 2392
2392:   def format_parser(body=nil)
2393:     debug(body)
2394:     if !(str_and_notspace?(body)) then
2395:       return warn_or_err("\"body\" is not String Object.\n")
2396:     end
2397: 
2398:     Kconv::toeuc(body)
2399:     body_parts = body.split("\n")
2400: 
2401:     body_parts.each{ |line|
2402:       next unless /\w+/e =~ line.chomp.strip
2403:       if /=begin\s+(rt)/ie =~ line.chomp.strip
2404:         return "rt"
2405:       elsif /=begin/ie =~ line.chomp.strip
2406:         return "rd"
2407:       elsif /=begin\s+(rd)/ie =~ line.chomp.strip
2408:         return "rd"
2409:       else
2410:         return "html"
2411:       end
2412:     }
2413:     return nil
2414:   end

¥Õ¥Ã¥¿¡¼ºîÀ®Íѥ᥽¥Ã¥É¡£ÁêÅö¤¹¤ëʸ»úÎó¤òÊÖ¤¹¡£ DCModelThumbnail.html_header ¤ÇÆÀ¤é¤ì¤ëʸ»úÎó¤Ç»Ï¤Þ¤ë HTML ¤ò ÊĤ¸¤ë¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤ë¡£

[Source]

      # File dcmodel-tools/dcmodel-thum.rb, line 2341
2341:   def html_footer()
2342:     # @index ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¸«¤¿¡¢À¸À®¥¹¥¯¥ê¥×¥È¤ÎÁêÂÐŪ¤Ê°ÌÃÖ
2343:     generator = relative_str("#{$0}", @index)
2344: 
2345:     # @index ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¸«¤¿¡¢¾ðÊó¥Õ¥¡¥¤¥ë¤ÎÁêÂÐŪ¤Ê°ÌÃÖ
2346:     infofile  = relative_str(@infofile, @index)
2347: 
2348:     #
2349:     # ¥Õ¥Ã¥¿¡¼¤È¤·¤Æ½ñ¤­½Ð¤·
2350:     #
2351:     html_footer = "<hr size=\"1\">\n<center>\n<small>\nThis page is generated by <a href=\\\"\#{generator}\\\">\#{generator}</a>\nand <a href=\\\"\#{infofile}\\\">\#{infofile}</a>\n(\#{Time.now.strftime(\"%Y/%m/%d %H:%M:%S\")} \#{username_from_uid})<br>\n\#{@self_name}\n[<a href=\"\#{PUB_BIN_URL}\">Script</a> |\n<a href=\"\#{PUB_DOC_URL}\">Doc</a> | <a href=\"\#{PUB_SAMPLE_URL}\">Sample</a>]\nis provided by\n<a href=\"http://www.gfd-dennou.org/library/dcmodel\">dcmodel project</a>\nin\n<a href=\"http://www.gfd-dennou.org\">GFD Dennou Club</a> <br>\nCopyright &copy; \#{@copyright} \#{Time.now.strftime(\"%Y\")}\n</small>\n</center>\n</body>\n</html>\n"
2352:     return html_footer
2353:   end

HTML ¤Î¥Ø¥Ã¥ÀÉôʬ¤ÎºîÀ®¥á¥½¥Ã¥É¡£ÁêÅö¤¹¤ëʸ»úÎó¤òÊÖ¤¹¡£ ºîÀ®¤·¤¿ HTML ¤Ï DCModelThumbnail.html_footer ¤ÇÆÀ¤é¤ì¤ëʸ»úÎó¤Ç ÊĤ¸¤é¤ì¤ë¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤ë¡£

[Source]

      # File dcmodel-tools/dcmodel-thum.rb, line 2074
2074:   def html_header()
2075:     # @index ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¸«¤¿¡¢À¸À®¥¹¥¯¥ê¥×¥È¤ÎÁêÂÐŪ¤Ê°ÌÃÖ
2076:     generator = relative_str("#{$0}", @index)
2077: 
2078:     # @index ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¸«¤¿¡¢css ¤ÎÁêÂÐŪ¤Ê°ÌÃÖ
2079:     css       = relative_str(@css, @index)
2080: 
2081:     # @norobots ¤¬ ture ¤Ç¤¢¤ì¤Ð¡¢meta ¥¿¥°¤Ë½ñ¤­¹þ¤ß¡£
2082:     if @norobots then
2083:       robots = "<meta name=\"robots\" content=\"noindex,nofollow\" />\n<meta name=\"robots\" content=\"noarchive\" />\n"
2084:     end
2085: 
2086:     # @style ¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¤â¤Î¤¬¤¢¤ì¤Ð¡¢¤½¤ì¤â½ñ¤­¹þ¤ß¡£
2087:     if str_and_notspace?(@style) then
2088:       style = "<style type=\"text/css\">\n<!--\n\#{@style}\n-->\n</style>\n"
2089:     else
2090:       style = ""
2091:     end
2092: 
2093:     #
2094:     # ¥Ø¥Ã¥ÀÁ´ÂΤÎÀ¸À®
2095:     #
2096:     header = "<?xml version=\"1.0\" encoding=\"euc-jp\" ?>\n<!DOCTYPE html\nPUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"\n\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html lang=\"ja\" xmlns=\"http://www.w3.org/1999/xhtml\">\n<head>\n<title>\#{@title}</title>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=x-euc-jp\" />\n<meta name=\"Author\" content=\"\#{@html_author}\" />\n\#{robots}\n<meta name=\"generator\" content=\"\#{generator}\" />\n<link href=\"\#{css}\" type=\"text/css\" rel=\"stylesheet\" />\n\#{style}\n</head>\n<body>\n"
2097:     return header
2098:   end

HTML ¤Î¥µ¥à¥Í¥¤¥ëÉôʬ (²èÁü¤Î¿ô¤Ë±þ¤¸¤Æ·«¤êÊÖ¤¹Éôʬ) ¤òºîÀ®¤¹¤ë¥á¥½¥Ã¥É¡£ ÁêÅö¤¹¤ëʸ»úÎó¤òÊÖ¤¹¡£info_list ¤Ë¤Ï DCModelThumbnail.info_get ¤Ç ¼èÆÀ¤