////////////////////////////////////////////////// // YEAR.MAC by nyan // 秀丸マクロ // // カーソル位置の単語を読み取り、s31 なら 1956、H3 なら 1991 というふうに // 元号から西暦へ変換します。カーソルが単語の直後にあっても変換します。 // M 明治、T 大正、S 昭和、H 平成。半角と全角を混ぜないこと。 // 語頭が m, t, s, h 以外なら、西暦から元号への変換を試みます。 // 元年への変換はチェックしていないので御注意ください。 // うっかり不必要な所を処理してしまったら、元に戻るまで undo してください。 // selectword;tohankaku;toupper; $s=gettext(seltopx,seltopy,selendx,selendy); if($s==""||$s==" "){ left; selectword;tohankaku;toupper; $s=gettext(seltopx,seltopy,selendx,selendy); } selectword; delete; $nen=leftstr($s,1); #year=val(rightstr($s,strlen($s)-1)); if ($nen=="M") #year=#year+1867; else if ($nen=="T") #year=#year+1911; else if ($nen=="S") #year=#year+1925; else if ($nen=="H") #year=#year+1988; else goto reverse; insert str(#year); endmacro; reverse: #year=val($s); if(#year>1988) insert "H"+str(#year-1988); else if(#year>1925) insert "S"+str(#year-1925); else if(#year>1911) insert "T"+str(#year-1911); else if(#year>1867) insert "M"+str(#year-1867); else insert $s;