彩りの大地 Laboratory /和暦×西暦変換コンバータ

ぺぇじへっどらいん

和暦×西暦変換コンバータ

Now Loading... Now Loading...
Javascriptを読み込んでいます。OFFの場合はこのままです。

Now Loading... Now Loading...
Javascriptを読み込んでいます。OFFの場合はこのままです。

その通り、和暦×西暦のコンバータ。
旧版は西暦1989年のように、昭和64年と平成元年とがまたがっている場合は新年号のほうで表示される仕様だったが、 新仕様ではマスタにエンドイヤーまで設定されており、しかも処理的に旧年号と新年号が両方出力されるようになっている。

計算ボタンがないが、入力フォームからフォーカス(入力可能状態)が外れるたびに計算されるようにしているため、 何もないところなど適当なところをクリックすればいいと思う。もちろん、セレクトボックスも値チェンジすることで再計算発動。
さらにどうでもいいが、和暦に”元”年と入れても”1”年と認識する。

そのうえで棚上げになっていた以下の問題を解決。
配列の縛りに関係なくマスタを作成
流石に今時某IEのように配列30までしか扱えないなんていうブラウザなんかないと思うので問答無用で大量の配列マスタを作成。
それにより、待望の(?)明治以前の元号についてもようやく搭載。
その結果、無事に飛鳥時代のデータまで搭載完了! やりスギィ!
和暦「天平感宝」が出力されない問題
従来版は「天平感宝」は西暦年をまたがない1年未満(3か月)の暦であるため、 年をまたがずに改元している年は改元後の「天平勝宝」が優先され「天平感宝」はスルーされる仕様だった。
新バージョンではエンドイヤー設定により、西暦749年を入力すると「天平感宝」「天平勝宝」の両方が表示されるようになっている。
なお、他にも2か月・7か月の1年未満和暦もあるが、いずれも年をまたいでいる。
時代区分を超越する「慶長(西暦1596~1615年)」などの年数計算問題
元号が判断できても時代区分がわからないと不便だなーと思い時代区分も併記しようと考えていた。
しかしその場合、時代区分+元号とがセットになっている都合、 例えば安土桃山時代の慶長と江戸時代の慶長とが別々にカウントされるようになってしまい、慶長の年数表記がおかしくなる。
イレギュラーな処理も考えたが、配列数が膨大になることと他の問題も棚上げになっている都合で頓挫。
新バージョンではその処理にも対応し、別途真のスタート西暦年の値を追加することでクリアーしている。
南北朝問題
歴史を習っている人ならだいたいの人が知る難問。南朝と北朝とで偉い人が定めた和暦が異なるため、つまり和暦が並立登場することとなる。
従来版は西暦年の値1つに対して和暦年1つしか出力できないという仕様からイレギュラーな処理をする関数を追加しなければならない。
そしてそのめんどくささゆえに結局棚上げ案件に。
新バージョンでは内部処理の分岐条件に、南北朝期間の場合の処理を何とか追加。そんなに大掛かりな工事ではなかったw
とまあ、そんなこんなで難局を乗り切って現在に至るということである。

なお、歴史上では年号制定後の大化以降で2度ほど無年号期間が発生している(655~685、687~700)。
ここではこのコンバータ独自の動作となるが、この際、その初期年である655年は無年号期元年と記載しカウントしている。
また、686年は朱鳥 元年だが、その手前の685年が無年号期 31年、そして687年からは無年号期の続きの32年目からカウントするようにしている。

ちなみに……流石にそもそも論の問題には対応していません。
・明治以前は太陽暦ではなく、太陰暦を使用していた問題。
このコンバータではあくまで太陽暦基準であるため、太陰暦については考慮の対象外です。悪しからず。。。

リファクタリングについてはもちろんPowered by Geminiさんです。
元号と西暦年の暗算変換の件は流石にもういらんやろ。

和暦というか時代区分については諸説あるため、一応そのあたりも掬い取っている。

・飛鳥~奈良時代
遷都を始めようとしている(?)694年からを奈良時代とする説もある。
最大最小をとって694~710年を飛鳥~奈良時代と表示する。

・奈良~平安時代
同じく、最大最小をとって784~794年を奈良~平安時代と表示する。

・平安~鎌倉時代
あろうことか、鎌倉幕府が明確にいつ開いたのかわかっていない。
そのため、各地に守護・地頭をおけるようになった1185年、支配権を得た1183年、実際に将軍になった1192年の3つの説がある。
無論、最大最小をとって1183~1192年を平安~鎌倉時代と表示する。
なお、鎌倉時代は続いた期間の割には改元回数が多いことで有名(?)。
基本的には災害や争乱などが発生したりすると改元するようだが、 それだけに異常な現象が見舞われた時代でもあったということである(モンゴル帝国にも2回襲われたしね)。

・鎌倉時代・北朝/幕府側と南朝/正統
南北朝時代の始まりに当たるねじれ状態。有り体に言うと鎌倉幕府の強権発動による影響。

・建武の新政~南北朝時代
元弘 4年に建武に改元したことで始まる天皇による政治期間(1334年に元弘 4年が表示されるのは一応このため)。
以降、朝廷側(天皇/南朝)と室町幕府側(北朝)とでねじれにねじれた時代が続く(南北朝時代)。
これにより、南朝側と北朝側とで別々の元号が使われるようになる。これだから政治ってやつは。

・室町時代(南北朝統一後)
明徳2年(1392年)に朝廷側(天皇/南朝)が折れて室町幕府側(北朝)側に歩み寄ることで日本が統一することになる時代。
室町幕府による安定した政治がしばらく続くのは1467年頃まで。

・室町時代(応仁の乱以後)
ということで1467年は応仁元年の出来事(つまり応仁の乱)で世が乱れ、幕府の力が弱まりつつあるその予兆。
この時期を境に戦国時代とする説もあるため、このような記載にしている。

・室町時代(戦国時代)
幕府の力が弱まったことで戦国時代といったら戦国大名たちが台頭し始める1493年からという説もある。
つまり確定的に戦国時代ということでこの記載に。

・安土桃山時代
織田さんの台頭。子孫がまさかフィギュアスケートをやっているとは彼も思いもしないだろう。
いや……でも所謂”ハイカラ”な人なので思いもしなくてもその手に造詣が深そうでもおかしくない気がしないでもないな。
安土桃山時代における戦国時代の終焉は秀吉の天下統一だろう(1590年)。

・江戸時代以降
こっから先は特に言うまでもないよね。