*** ../otfbeta/mkjvf	2010-03-27 08:18:50.000000000 +0900
--- mymkjvf	2011-07-09 08:18:38.000000000 +0900
***************
*** 22,33 ****
--- 22,38 ----
  	$jis2004=0;
  	$minute_option=0;
  	$alt_kana_true=0;
+         $dash_boxd=0;
+ 	$kakko_kanakakko=0;
+ 	$de_upper_right=0;
  	$ruby_hira_code=0x356F;
  	$ruby_kata_code=0x3751;
  	$exp_hira_code_h=0x6F63;
  	$exp_kata_code_h=0x313D;
  	$exp_hira_code_v=0x325a;
  	$exp_kata_code_v=0x3434;
+         $dashcode_h=0x2821;     #BOX DRAWINGS LIGHT HORIZONTAL
+         $dashcode_v=0x2822;     #BOX DRAWINGS LIGHT VERTICAL;
  	$ruby_font_map=2;
  	$exp_font_map=2;
  	@yoko_tfm_binary=(0x00, 0x0B, 0x00, 0x01, 0x00, 0x1B, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x14, 0x7B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xEB, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00);
***************
*** 43,49 ****
  }
  sub proc_arg {
  	if ($#ARGV == -1) {&print_help;}
! 	GetOptions(\@ARGV, ['^-b', \$baseline_shift, 1], ['^-m', \$minute_option, 0], ['^-cm', \$cid_minute, 0], ['^-cp', \$comma_period, 0], ['^-SJIS', \$sjis, 0], ['^-scale', \$scale, 1], ['^-notfm', \$without_tfm, 1], ['^-expert', \$expert, 0], ['^-ruby', \$ruby, 0], ['^-sage', \$burasage, 0], ['^-jp04', \$jis2004, 0],  ['^-h(e|el|elp)?', \$help, 0], ['^-(.+)', \$unknown, 0]);
  	if ($unknown == 1){
  		print "mkjvf: Unknown options!\n";
  		&print_help;
--- 48,54 ----
  }
  sub proc_arg {
  	if ($#ARGV == -1) {&print_help;}
! 	GetOptions(\@ARGV, ['^-b', \$baseline_shift, 1], ['^-m', \$minute_option, 0], ['^-cm', \$cid_minute, 0], ['^-cp', \$comma_period, 0], ['^-SJIS', \$sjis, 0], ['^-scale', \$scale, 1], ['^-notfm', \$without_tfm, 1], ['^-expert', \$expert, 0], ['^-ruby', \$ruby, 0], ['^-sage', \$burasage, 0], ['^-jp04', \$jis2004, 0],  ['^-h(e|el|elp)?', \$help, 0], ['^-cd', \$dash_boxd, 0], ['^-ck', \$kakko_kanakakko, 0], ['^-cDE', \$de_upper_right, 0], ['^-(.+)', \$unknown, 0]);
  	if ($unknown == 1){
  		print "mkjvf: Unknown options!\n";
  		&print_help;
***************
*** 291,296 ****
--- 296,304 ----
  	print "   -jp04           make a font mapped JIS X 0213:2004 glyphs\n";
  	print "   -SJIS           make shift jis mapped vf (experimental)\n";
  	print "   -scale <0--1>   make kokana vf\n";
+ 	print "   -cd             translate em dash to box drawings\n";
+ 	print "   -ck             translate kakko to kana kakko\n";
+ 	print "   -cDE            translate DE to upper right DAKUTEN\n";
  	print "   -help           print this message\n";
  	exit;
  }
***************
*** 443,448 ****
--- 451,461 ----
  			print  OVP "      (SELECTFONT D 2)\n";
  		}
  	}
+ 	if ((0x2156 <= $jiscode && $jiscode <= 0x2159) && $kakko_kanakakko==1){#Kakko KanaKakko (OoKagi)
+ 		if($kana_font ne ""){
+ 			print  OVP "      (SELECTFONT D 2)\n";
+ 		}
+         }
  	if ($cid_minute == 1){#cid_minute
  		if ($jiscode == 0x2148 || $jiscode == 0x2149){#double quatation->double minute
  			print  OVP "      (SELECTFONT D 4)\n";
***************
*** 512,517 ****
--- 525,537 ----
  		printf OVP "      (SETCHAR H %X)\n",$odorijicode;
  	} elsif (($jiscode== 0x2124 || $jiscode== 0x2125) && $comma_period == 1){
  		printf OVP "      (SETCHAR H %X)\n",$char_code-2;
+ 	} elsif ($jiscode== 0x213D && $dash_boxd==1){#EM DASH
+ 		if ($direction eq "y"){
+ 			$dashcode= $dashcode_h;
+ 		}else{
+ 			$dashcode= $dashcode_v;
+ 		}
+ 		printf OVP "      (SETCHAR H %X)\n",$dashcode;
  	}else {
  		printf OVP "      (SETCHAR H %X)\n",$char_code;
  	}
***************
*** 547,553 ****
  	}
  	&baseline_shift;
  	&scaled_shift;
! 	printf OVP "      (SETCHAR H %X)\n",$char_code;
  	print  OVP "      )\n";
  	print  OVP "   )\n";
  }
--- 567,588 ----
  	}
  	&baseline_shift;
  	&scaled_shift;
! 	if ($de_upper_right == 1 && $jiscode == 0x2447){
! 	    if ($direction eq "y"){
! 		print  OVP "      (SETCHAR H 2446)\n";
! 		print  OVP "      (MOVERIGHT R -0.250000)\n";
! 		print  OVP "      (SELECTFONT D 1)\n";
! 		print  OVP "      (SETCHAR H 212B)\n";
! 	    }else{
! 		print  OVP "      (SETCHAR H 2446)\n";
! 		print  OVP "      (MOVERIGHT R -1.000000)\n";
! 		print  OVP "      (MOVEDOWN R -0.750000)\n";
! 		print  OVP "      (SELECTFONT D 1)\n";
! 		print  OVP "      (SETCHAR H 212B)\n";
! 	    }
! 	}else{	    
! 	    printf OVP "      (SETCHAR H %X)\n",$char_code;
! 	}
  	print  OVP "      )\n";
  	print  OVP "   )\n";
  }
