home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1997 November / VPR9711A.ISO / VPR_DATA / Special / Koda202 / koda202.lzh / kodama / htmlink.mac < prev    next >
Text File  |  1997-08-06  |  9KB  |  266 lines

  1. //こだマクロ(HTML作成)
  2. //htmlink.mac
  3. //このマクロは「秀丸エディタ」用のマクロです。
  4. //97080613
  5.  
  6. imglk:
  7.     title "リンク、イメージ - こだマクロ";
  8.     #menu = getininum ( hidemarudir + "\\htmini.txt" , "Link" , "defnum" );
  9.     #i = 0;
  10.     while ( #menu + 1 > #i ) {
  11.         $top[#i] = getinistr ( hidemarudir + "\\htmini.txt" , "Link" , "def" + str ( #i ) );
  12.         $menu[#i] = leftstr ( $top[#i] , strstr ( $top[#i] , ":" ) );
  13.         $command[#i] = rightstr ( $top[#i] , strlen ( $top[#i] ) - strstr ( $top[#i] , ":" )  - 1 );
  14.         #i = #i + 1;
  15.     }
  16.     menuarray $menu, #menu + 1;
  17.     if ( result == 0 ) endmacro;
  18.     else if ( $command[result-1] == "ah" ) call ahref;
  19.     else if ( $command[result-1] == "img" ) call image;
  20.     else if ( $command[result-1] == "name" ) call aname;
  21.     else if ( $command[result-1] == "clip" ) call clipmap;
  22.     endmacro;
  23.  
  24. clipmap:
  25.     title "クリッカブルマップ - こだマクロ";
  26.     $mapmsg2 = "マップにつかうイメージに名前がついてますか?";
  27.     question $mapmsg2;
  28.     if ( result == no ){
  29.         call img;
  30.         backspace;
  31.         backspace;
  32.         $mapmsg1 = "マップでつかうイメージに名前を付けてください。";
  33.         $mapname = input ( $mapmsg1 );
  34.         $out = $out + " USEMAP=\"#" + $mapname + "\">" + "\n";
  35.     }
  36.  
  37.     $mapmsg3 = "マップに使うイメージの名前を指定してください。";
  38.     $mapname2 = input ( $mapmsg3 );
  39.     $out = $out + "<MAP NAME=\"" + $mapname2 + "\">" + "\n";
  40.  
  41. area:
  42.     title "領域 - こだマクロ";
  43.     $mapmsg4 = "領域の形状を指定してください。";
  44.     message $mapmsg4;
  45.     $keijyou1[0] = "(&Rect)四角";
  46.     $keijyou1[1] = "(&Circle)円";
  47.     $keijyou1[2] = "(&Polygon)多角形";
  48.     $keijyou1[3] = "(&Default)指定領域外";
  49.     $keijyou2[1] = "RECT";
  50.     $keijyou2[2] = "CIRCLE";
  51.     $keijyou2[3] = "POLYGON";
  52.     $keijyou2[4] = "DEFAULT";
  53.     menuarray $keijyou1,4;
  54.     #re = result;
  55.     $keijyou = $keijyou2[#re];
  56.     $mapmsg41 = "領域を示す座標を指定してください。";
  57.     $mapmsg42 = "イメージ左上隅を(0,0)にするピクセル値で始点と終点の";
  58.     $mapmsg43 = "2つに座標を,で区切ってx1,y1,x2,y2…の形で入力";
  59.     $mapmsg4 = $mapmsg41 + "\n" + $mapmsg42 + "\n" + $mapmsg43;
  60.     $zahyou = input ( $mapmsg4 );
  61.     call zenkaku $zahyou;
  62.     $zahyou = $$return;
  63.     $mapmsg51 = "リンクする先のURLを指定してください。";
  64.     $mapmsg52 = "(指定なし=どこにもリンクしない)";
  65.     $mapmsg5 = $mapmsg51 + "\n" + $mapmsg52;
  66.  
  67.     $ink = input ( $mapmsg5 );
  68.  
  69.     if ( $ink == "" ) $rinkusaki = " NOHREF";
  70.     else $rinkusaki = " HREF=\"" + $rinku + "\"";
  71.  
  72.     $out = $out + "<area shape=\"" + $keijyou + "\" coords=\"";
  73.     insert $zahyou + "\"" + $rinkusaki + ">" + "\n";
  74.  
  75.     question "指定領域をまだ指定しますか?";
  76.     if ( result == yes ) goto area;
  77.     else $out = $out + "</MAP>" + "\n";
  78.  
  79.     return;
  80.  
  81. image:
  82.     title "イメージのロード - こだマクロ";
  83.     call img;
  84.     insert $$return;
  85.     return;
  86.  
  87. img:
  88.     $imsg11 = "(SRC指定したイメージが大きくロードに時間がかかる時指定)";
  89.     $imsg12 = "(GraphicImageが表示できないブラウザの場合に表示)";
  90.  
  91.     $imsg[11] = "ロードするイメージファイルを指定";
  92.     $imsg[12] = "イメージの横幅をピクセル値または%値で指定";
  93.     $imsg[13] = "イメージの高さをピクセル値または%値で指定";
  94.     $imsg[14] = "イメージの外枠の幅をピクセル値で指定";
  95.     $imsg[15] = "イメージの左右に空ける空白をピクセル値で指定";
  96.     $imsg[16] = "イメージの上下に空ける空白をピクセル値で指定";
  97.     $imsg[17] = "先に表示されるイメージファイル" + $imsg11;
  98.     $imsg[18] = "イメージの代わりに表示するテキスト" + $imsg12;
  99.  
  100.     $imsrc = input ( $imsg[11] );
  101.     if ( $imsrc == "" ) {
  102.         $mes90 = "イメージファイルを指定してください。" + "\n";
  103.         $mes91 = "止めるなら、ESCキーをおし続けてマクロを終了させて";
  104.         $mes92 = "\n" + "ください。";
  105.         message $mes90 + $mes91 + $mes92;
  106.         goto img;
  107.     }
  108.  
  109.     $impos[0] = "イメージの最下部にテキストを表示(デフォルト)";
  110.     $impos[1] = "(&Top)イメージの最上部にテキストを表示";
  111.     $impos[2] = "(&Center)イメージの中央部にテキストを表示";
  112.     $impos[3] = "(&Right)イメージ左寄せ、右側に複数行のテキストを表示";
  113.     $impos[4] = "(&Left)イメージ右寄せ、左側に複数行のテキストを表示";
  114.  
  115.     $impos2[1] = "";
  116.     $impos2[2] = "top";
  117.     $impos2[3] = "center";
  118.     $impos2[4] = "right";
  119.     $impos2[5] = "left";
  120.  
  121.     menuarray $impos,5;
  122.     #re = result;
  123.     $imposi = $impos2[#re];
  124.  
  125.     $imwid = input ( $imsg[12] );
  126.     call zenkaku $imwid;
  127.     $imwid = $$return;
  128.     $imhei = input ( $imsg[13] );
  129.     call zenkaku $imhei;
  130.     $imhei = $$return;
  131.     $imbor = input ( $imsg[14] );
  132.     call zenkaku $imbor;
  133.     $imbor = $$return;
  134.     $imh = input ( $imsg[15] );
  135.     call zenkaku $imh;
  136.     $imh = $$return;
  137.     $imv = input ( $imsg[16] );
  138.     call zenkaku $imv;
  139.     $imv = $$return;
  140.     $imlow = input ( $imsg[17] );
  141.     $imalt = input ( $imsg[18] );
  142.  
  143.     $out="<IMG ";
  144.     if ( $imsrc == "" ) goto img;
  145.     $out = $out + "SRC=\"" + $imsrc +"\" ";
  146.     if ( $imwid == "" ) $out = $out + "";
  147.     else $out = $out + "WIDTH=\"" + $imwid + "\" ";
  148.     if ( $imposi == "" ) $out = $out + "";
  149.     else $out = $out + "ALIGN=\"" + $imposi + "\" ";
  150.     if ( $imhei == "" ) $out = $out + "";
  151.     else $out = $out + "HEIGHT=\"" + $imhei + "\" ";
  152.     if ( $imbor == "" ) $out = $out + "";
  153.     else $out = $out + "BORDER=\"" + $imbor + "\" ";
  154.     if ( $imh == "" ) $out = $out + "";
  155.     else $out = $out + "HSPACE=\"" + $imh + "\" ";
  156.     if ( $imv == "" ) $out = $out + "";
  157.     else $out = $out + "VSPACE=\"" + $imv + "\" ";
  158.     if ( $imlow == "" || $imlow == ".gif" ) $out = $out + "";
  159.     else $out = $out + "LOWSRC=\"" + $imlow + "\" ";
  160.     if ( $imalt == "" || $imalt == ".txt" ) $out = $out + "";
  161.     else $out = $out + "ALT=\"" + $imalt + "\" ";
  162.  
  163.     $out = $out + ">";
  164.  
  165.     return $out;
  166.  
  167. ahref:
  168.     $getline = "";
  169.     title "リンク先の指定 - こだマクロ";
  170.     #i = 0;
  171.     #menu = getininum ( hidemarudir + "\\htmini.txt" , "Link" , "ahrefnum" );
  172.     while ( #menu + 1 > #i ) {
  173.         $top[#i] = getinistr ( hidemarudir + "\\htmini.txt" , "Link" , "ahrefdef" + str ( #i ) );
  174.         $menu[#i] = leftstr ( $top[#i] , strstr ( $top[#i] , ";" ) );
  175.         $command[#i] = rightstr ( $top[#i] , strlen ( $top[#i] ) - strstr ( $top[#i] , ";" )  - 1 );
  176.         #i = #i + 1;
  177.     }
  178.     menuarray $menu, #menu + 1;
  179.     #re = result-1;
  180.     if ( result == 0 ) endmacro;
  181.     title $menu[#re];
  182.     if ( strstr ( $top[#re] , "画像" ) != -1 ) {
  183.         call img;
  184.         $getline = $$return;
  185.         question "テキストをいれますか?";
  186.         if ( result == no ) {
  187.             #notext = 1;
  188.         }
  189.     }
  190.     writeinistr hidemarudir + "\\htmini.txt" , "Line" , "message", "2";
  191.     getcliphist 1;
  192.     call ahref3 0;
  193.     $linkfor = $$return;
  194.     if ( strstr ( $linkfor , "mailto:" ) == -1 ) {
  195.         #menu = getininum ( hidemarudir + "\\htmini.txt" , "Link" , "targetnum" );
  196.         #i = 0;
  197.         while ( #menu + 1 > #i ) {
  198.             $top[#i] = getinistr ( hidemarudir + "\\htmini.txt" , "Link" , "targetdef" + str ( #i ) );
  199.             $menu[#i] = leftstr ( $top[#i] , strstr ( $top[#i] , ":" ) );
  200.             $command[#i] = rightstr ( $top[#i] , strlen ( $top[#i] ) - strstr ( $top[#i] , ":" )  - 1 );
  201.             #i = #i + 1;
  202.         }
  203.         title "ターゲットについて - こだマクロ";
  204.         menuarray $menu, #menu + 1;
  205.         if ( $command[result-1] == "指定" ) {
  206.             $command[result-1] = input ( "ターゲットの名前を入れてください。" );
  207.         }
  208.         if ( $command[result-1] != "" ) $target = " TARGET=\"" + $command[result-1] +"\"";
  209.     }
  210.     writeinistr hidemarudir + "\\htmini.txt" , "Line" , "message", "0";
  211.     if ( #notext != 1 ) {
  212.         title "リンクするテキストの内容について";
  213.         call ahref3 2;
  214.         $getline = $getline + $$return;
  215.     }
  216.     if ( strstr ( $getline , "mailto:" ) != -1 ) $getline = rightstr ( $getline , strlen ( $getline ) - 7 );
  217.     inputpos getinistr ( hidemarudir + "\\htmini.txt" , "Line" , "messagex" );
  218.     insert "<A HREF=\"" + $linkfor + "\"" + $target + ">" +  $getline + "</A>";
  219.     writeininum hidemarudir + "\\htmini.txt" , "Link" , "ah2def" , 0;
  220.     return;
  221.  
  222. aname:
  223.     title "アンカー名の指定 - こだマクロ";
  224.     $aname = input ( "アンカー名を入れてください。" , "name" );
  225.     inputpos getinistr ( hidemarudir + "\\htmini.txt" , "Line" ,"message" + getinistr ( hidemarudir + "\\htmini.txt" , "Line" , "message" ) );
  226.     insert "<A NAME=\"" + $aname + "\"></A>";
  227.     return;
  228.  
  229. zenkaku:
  230.     writeinistr hidemarudir + "\\htmini.txt" , "Zenkaku" , "line" , $$1;
  231.     execmacro getinistr ( hidemarudir + "\\htmini.txt" , "Topmenu" , "macropath" ) + "htmzen.mac";
  232.     $out = getinistr ( hidemarudir + "\\htmini.txt" , "Zenkaku" , "line" );
  233.     writeinistr hidemarudir + "\\htmini.txt" , "Zenkaku" , "line" ,0;
  234.     return $out;
  235.  
  236. line:
  237.     $line = "";
  238.     execmacro getinistr ( hidemarudir + "\\htmini.txt" , "Topmenu" , "macropath" ) + "kodaline.mac";
  239.     #line = getininum ( hidemarudir + "\\htmini.txt" , "Line" , "line" );
  240.     #i = 0;
  241.     while ( #line > #i ){
  242.         $line = $line + getinistr ( hidemarudir + "\\htmini.txt" , "Line" , str ( #i ) ) + "\n";
  243.         writeinistr hidemarudir + "\\htmini.txt" , "Line" , str ( #i ) , 0;
  244.         #i = #i + 1;
  245.     }
  246.     $line = leftstr ( $line , strlen ( $line ) - 1 );
  247.     return $line;
  248.  
  249. ahref3:
  250.     #i = 0;
  251.     while ( 2 + ##1 > #i + ##1 ) {
  252.         $top[#i] = getinistr ( hidemarudir + "\\htmini.txt" , "Link" , "ah2def" + str ( #i + ##1 ) );
  253.         #i = #i + 1;
  254.     }
  255.     menuarray $top, 2;
  256.     if ( result == 0 ) endmacro;
  257.     else if ( $top[result-1] == "これから入力する" ) $ah3 = input ( "指定してください" , $command[#re] );
  258.     else {
  259.         call line;
  260.         if ( $command[#re] == "mailto:" && #mail == 0) $ah4 = $command[#re];
  261.         else $ah4 = "";
  262.         $ah3 = $ah4 + $$return;
  263.         #mail = 1;
  264.     }
  265.     return $ah3;
  266.