Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

旧漢字正規化リストの充実と管理方法の改善、等 #199

Open
3 tasks
kamataryo opened this issue Jun 8, 2023 · 0 comments
Open
3 tasks
Labels
enhancement New feature or request good first issue Good for newcomers

Comments

@kamataryo
Copy link
Contributor

kamataryo commented Jun 8, 2023

細かいのですが、新・旧を配列かMapか何かしらの管理にしましょうか?今はそれぞれ一行になって、ちょっと長いよね。。

Originally posted by @keichan34 in #198 (review)

  • 旧漢字・異体字リストを外部からインポートするなどして、より網羅的に扱えるようにしたい

  • 旧漢字・異体字リストのリファクタリング。今は split した後の配列のインデックスをキーに新旧を突き合わせているが、オブジェクトなどを使うことで管理を容易にし、簡単に追加できるようにしたい。

    // JIS 第2水準 => 第1水準 及び 旧字体 => 新字体
    const JIS_OLD_KANJI = '亞,圍,壹,榮,驛,應,櫻,假,會,懷,覺,樂,陷,歡,氣,戲,據,挾,區,徑,溪,輕,藝,儉,圈,權,嚴,恆,國,齋,雜,蠶,殘,兒,實,釋,從,縱,敍,燒,條,剩,壤,釀,眞,盡,醉,髓,聲,竊,淺,錢,禪,爭,插,騷,屬,對,滯,擇,單,斷,癡,鑄,敕,鐵,傳,黨,鬪,屆,腦,廢,發,蠻,拂,邊,瓣,寶,沒,滿,藥,餘,樣,亂,兩,禮,靈,爐,灣,惡,醫,飮,營,圓,歐,奧,價,繪,擴,學,罐,勸,觀,歸,犧,擧,狹,驅,莖,經,繼,缺,劍,檢,顯,廣,鑛,碎,劑,參,慘,絲,辭,舍,壽,澁,肅,將,證,乘,疊,孃,觸,寢,圖,穗,樞,齊,攝,戰,潛,雙,莊,裝,藏,續,體,臺,澤,膽,彈,蟲,廳,鎭,點,燈,盜,獨,貳,霸,賣,髮,祕,佛,變,辯,豐,飜,默,與,譽,謠,覽,獵,勵,齡,勞,壓,爲,隱,衞,鹽,毆,穩,畫,壞,殼,嶽,卷,關,顏,僞,舊,峽,曉,勳,惠,螢,鷄,縣,險,獻,驗,效,號,濟,册,棧,贊,齒,濕,寫,收,獸,處,稱,奬,淨,繩,讓,囑,愼,粹,隨,數,靜,專,踐,纖,壯,搜,總,臟,墮,帶,瀧,擔,團,遲,晝,聽,遞,轉,當,稻,讀,惱,拜,麥,拔,濱,竝,辨,舖,襃,萬,譯,豫,搖,來,龍,壘,隸,戀,樓,鰺,鶯,蠣,攪,竈,灌,諫,頸,礦,蘂,靱,賤,壺,礪,檮,濤,邇,蠅,檜,儘,藪,籠,彌,麩'.split(
    /,/,
    )
    const JIS_NEW_KANJI = '亜,囲,壱,栄,駅,応,桜,仮,会,懐,覚,楽,陥,歓,気,戯,拠,挟,区,径,渓,軽,芸,倹,圏,権,厳,恒,国,斎,雑,蚕,残,児,実,釈,従,縦,叙,焼,条,剰,壌,醸,真,尽,酔,髄,声,窃,浅,銭,禅,争,挿,騒,属,対,滞,択,単,断,痴,鋳,勅,鉄,伝,党,闘,届,脳,廃,発,蛮,払,辺,弁,宝,没,満,薬,余,様,乱,両,礼,霊,炉,湾,悪,医,飲,営,円,欧,奥,価,絵,拡,学,缶,勧,観,帰,犠,挙,狭,駆,茎,経,継,欠,剣,検,顕,広,鉱,砕,剤,参,惨,糸,辞,舎,寿,渋,粛,将,証,乗,畳,嬢,触,寝,図,穂,枢,斉,摂,戦,潜,双,荘,装,蔵,続,体,台,沢,胆,弾,虫,庁,鎮,点,灯,盗,独,弐,覇,売,髪,秘,仏,変,弁,豊,翻,黙,与,誉,謡,覧,猟,励,齢,労,圧,為,隠,衛,塩,殴,穏,画,壊,殻,岳,巻,関,顔,偽,旧,峡,暁,勲,恵,蛍,鶏,県,険,献,験,効,号,済,冊,桟,賛,歯,湿,写,収,獣,処,称,奨,浄,縄,譲,嘱,慎,粋,随,数,静,専,践,繊,壮,捜,総,臓,堕,帯,滝,担,団,遅,昼,聴,逓,転,当,稲,読,悩,拝,麦,抜,浜,並,弁,舗,褒,万,訳,予,揺,来,竜,塁,隷,恋,楼,鯵,鴬,蛎,撹,竃,潅,諌,頚,砿,蕊,靭,賎,壷,砺,梼,涛,迩,蝿,桧,侭,薮,篭,弥,麸'.split(
    /,/,
    )

  • toRegexPattern 関数のリファクタリング。今は replace をチェーンするハードコーディングになっているが、 オブジェクトなどを使うことで管理を容易にし、今後簡単に追加できるようにしたい。

    // 以下なるべく文字数が多いものほど上にすること
    _str = _str
    .replace(/三栄町|四谷三栄町/g, '(三栄町|四谷三栄町)')
    .replace(/鬮野川|くじ野川|くじの川/g, '(鬮野川|くじ野川|くじの川)')
    .replace(/柿碕町|柿さき町/g, '(柿碕町|柿さき町)')
    .replace(/通り|とおり/g, '(通り|とおり)')
    .replace(/埠頭|ふ頭/g, '(埠頭|ふ頭)')
    .replace(/番町|番丁/g, '(番町|番丁)')
    .replace(/大冝|大宜/g, '(大冝|大宜)')
    .replace(/穝|さい/g, '(穝|さい)')
    .replace(/杁|えぶり/g, '(杁|えぶり)')
    .replace(/薭|稗|ひえ|ヒエ/g, '(薭|稗|ひえ|ヒエ)')
    .replace(/[之ノの]/g, '[之ノの]')
    .replace(/[ヶケが]/g, '[ヶケが]')
    .replace(/[ヵカか力]/g, '[ヵカか力]')
    .replace(/[ッツっつ]/g, '[ッツっつ]')
    .replace(/[ニ二]/g, '[ニ二]')
    .replace(/[ハ八]/g, '[ハ八]')
    .replace(/塚|塚/g, '(塚|塚)')
    .replace(/釜|竈/g, '(釜|竈)')
    .replace(/條|条/g, '(條|条)')
    .replace(/狛|拍/g, '(狛|拍)')
    .replace(/藪|薮/g, '(藪|薮)')
    .replace(/渕|淵/g, '(渕|淵)')
    .replace(/エ|ヱ|え/g, '(エ|ヱ|え)')
    .replace(/曾|曽/g, '(曾|曽)')
    .replace(/舟|船/g, '(舟|船)')
    .replace(/莵|菟/g, '(莵|菟)')
    .replace(/市|巿/g, '(市|巿)')

@kamataryo kamataryo changed the title 異体字の充実と管理方法の改善 異体字の充実と管理方法の改善、等 Jun 9, 2023
@kamataryo kamataryo changed the title 異体字の充実と管理方法の改善、等 旧漢字正規化リストの充実と管理方法の改善、等 Jun 9, 2023
@kamataryo kamataryo added good first issue Good for newcomers enhancement New feature or request labels Jun 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants
@kamataryo and others