From 3dc9484fc81db8f3c8ffd4ebb4bab042e66c6214 Mon Sep 17 00:00:00 2001 From: lonkaars Date: Fri, 14 Jul 2023 19:04:15 +0200 Subject: more improvements (failing tests down to 540) --- .gitignore | 1 + api/japanese.ts | 7 +-- api/word.ts | 5 +- db/makefile | 2 +- db/user/root.sql | 7 +-- test/reading/cases.ts | 128 +++++++++++++++++++++++++------------------------- util/japanese.ts | 3 +- util/string.ts | 2 +- 8 files changed, 81 insertions(+), 74 deletions(-) diff --git a/.gitignore b/.gitignore index e7cf3e7..a14425e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ *.bkp *.dtmp ext +yomikun diff --git a/api/japanese.ts b/api/japanese.ts index 4f176a9..bfb04b4 100644 --- a/api/japanese.ts +++ b/api/japanese.ts @@ -70,14 +70,15 @@ export default class Japanese { normalized: "", ruby: true, }; - var kana: boolean = this.writing[0].kanaOnly(); + var kanji: boolean = this.writing[0].kanjiOnly(true); for (var char of this.writing) { - if (char.kanaOnly() != kana) { + var kanjiNow = char.kanjiOnly(true); + if (kanjiNow != kanji) { tokens.push({ ...token }); token.writing = ""; } token.writing += char; - kana = char.kanaOnly(); + kanji = kanjiNow; } tokens.push(token); diff --git a/api/word.ts b/api/word.ts index e92bc19..ff07043 100644 --- a/api/word.ts +++ b/api/word.ts @@ -52,7 +52,7 @@ function irregularKuru(tags: TokenTags, conjugation: string): string { ].includes(tag as any)) return "こ" + conjugation; break; } - return "く" + conjugation; + return "くる"; } export default class Word extends APIBase { @@ -115,6 +115,9 @@ export default class Word extends APIBase { } furigana(format: JapaneseFormatter) { + // don't create furigana for filler/kana only terms + if (this.text.writing == this.text.reading) return this.text.writing; + return this.text.furigana(format); } diff --git a/db/makefile b/db/makefile index 3968ae7..88d4bba 100644 --- a/db/makefile +++ b/db/makefile @@ -32,7 +32,7 @@ dict/dict.sql: $(DEFAULT_DICTS) user/base.sql: user/reset.sql user/init.sql cat $^ > $@ -user/full.sql: user/base.sql # user/root.sql +user/full.sql: user/base.sql user/root.sql cat $^ > $@ %.sql: %.dict.sql $(DICT_TEMPLATE) diff --git a/db/user/root.sql b/db/user/root.sql index 70671ce..bbcb91e 100644 --- a/db/user/root.sql +++ b/db/user/root.sql @@ -1,6 +1,7 @@ -- default user_id = 0 = root (apply to everyone) insert into sort_overlay (expression, reading, sort) values - ('達','だち',-1), - ('の下に','のもとに',-1), - ('下に','しもに',-1); + ('~', 'にょろ', -1); + -- ('達', 'だち', -1), + -- ('の下に', 'のもとに', -1), + -- ('下に', 'しもに', -1); diff --git a/test/reading/cases.ts b/test/reading/cases.ts index 19221a9..4e0fff3 100644 --- a/test/reading/cases.ts +++ b/test/reading/cases.ts @@ -10,13 +10,13 @@ export default [ { input: "家の主をなめるなよ…", reading: "うちのあるじをなめるなよ…", - output: "[家](うち)の{主}(あるじ)をなめるなよ…", + output: "[家](うち)の[主](あるじ)をなめるなよ…", tags: [ "小林さんちのメイドラゴン" ] }, { input: "腕を揮え!俺を楽しませろ", reading: "うでをふるえ!おれをたのしませろ", - output: "[腕](うで)を{揮}(ふる)え![俺](おれ)を[楽](たの)しませろ", + output: "[腕](うで)を[揮](ふる)え![俺](おれ)を[楽](たの)しませろ", tags: [ "小林さんちのメイドラゴン" ] }, { @@ -64,7 +64,7 @@ export default [ { input: "上の階に一室貸してもらってるからそこで寛ごう", reading: "うえのかいにいっしつかしてもらってるからそこでくつろごう", - output: "[上](うえ)の[階](かい)に[一](いっ)[室](しつ)[貸](か)してもらってるからそこで{寛}(くつろ)ごう", + output: "[上](うえ)の[階](かい)に[一](いっ)[室](しつ)[貸](か)してもらってるからそこで[寛](くつろ)ごう", tags: [ "小林さんちのメイドラゴン" ] }, { @@ -76,7 +76,7 @@ export default [ { input: "私だってメイドとして小林さんのお役に立ってるんですよ!", reading: "わたしだってメイドとしてこばやしさんのおやくにたってるんですよ!", - output: "[私](わたし)だってメイドとして{小}(こ){林}(ばやし)さんのお[役](やく)に[立](た)ってるんですよ!", + output: "[私](わたし)だってメイドとして[小](こ)[林](ばやし)さんのお[役](やく)に[立](た)ってるんですよ!", tags: [ "小林さんちのメイドラゴン" ] }, { @@ -94,7 +94,7 @@ export default [ { input: "平野さんが看病してくれたから", reading: "ひらのさんがかんびょうしてくれたから", - output: "{平野}(ひらの)さんが[看病](かんびょう)してくれたから", + output: "[平野](ひらの)さんが[看病](かんびょう)してくれたから", tags: [ "平野と鍵浦" ] }, { @@ -118,13 +118,13 @@ export default [ { input: "ピーマン克服のために鍵浦も農家のボランティア参加する?", reading: "ピーマンこくふくのためにかぎうらものうかのボランティアさんかする?", - output: "ピーマン[克服](こくふく)のために{鍵浦}(かぎうら)も[農家](のうか)のボランティア[参加](さんか)する?", + output: "ピーマン[克服](こくふく)のために[鍵浦](かぎうら)も[農家](のうか)のボランティア[参加](さんか)する?", tags: [ "平野と鍵浦" ] }, { input: "平野さんの重荷になってるのかな…", reading: "ひらのさんのおもにになってるのかな…", - output: "{平野}(ひらの)さんの[重荷](おもに)になってるのかな…", + output: "[平野](ひらの)さんの[重荷](おもに)になってるのかな…", tags: [ "平野と鍵浦" ] }, { @@ -232,7 +232,7 @@ export default [ { input: "光っている印が神獣ヴァ・ルーダニアを制御する端末だ", reading: "ひかっているしるしがしんじゅうヴァ・ルーダニアをせいぎょするたんまつだ", - output: "[光](ひか)っている[印](しるし)が{神獣}(しんじゅう)ヴァ・ルーダニアを[制御](せいぎょ)する[端末](たんまつ)だ", + output: "[光](ひか)っている[印](しるし)が[神獣](しんじゅう)ヴァ・ルーダニアを[制御](せいぎょ)する[端末](たんまつ)だ", tags: [ "ゼルダの伝説", "ブレス・オブ・ザ・ワイルド" ] }, { @@ -388,25 +388,25 @@ export default [ { input: "腕組みをしながら不遜な笑みを浮かべる伊月に、土岐は顔を引きつらせた。", reading: "うでぐみをしながらふそんなえみをうかべるいつきに、ときはかおをひきつらせた。", - output: "[腕](うで)[組](ぐ)みをしながら[不遜](ふそん)な[笑](え)みを[浮](う)かべる{伊月}(いつき)に、{土岐}(とき)は[顔](かお)を[引](ひ)きつらせた。", + output: "[腕](うで)[組](ぐ)みをしながら[不遜](ふそん)な[笑](え)みを[浮](う)かべる[伊月](いつき)に、[土岐](とき)は[顔](かお)を[引](ひ)きつらせた。", tags: [ "妹さえいればいい。" ] }, { input: "疲れた声で土岐が訊ねる", reading: "つかれたこえでときがたずねる", - output: "[疲](つか)れた[声](こえ)で{土岐}(とき)が[訊](たず)ねる", + output: "[疲](つか)れた[声](こえ)で[土岐](とき)が[訊](たず)ねる", tags: [ "妹さえいればいい。" ] }, { input: "「もちろんだ」きっぱりと頷いた伊月に、土岐はさらに顔を引きつらせた。", reading: "「もちろんだ」きっぱりとうなずいたいつきに、ときはさらにかおをひきつらせた。", - output: "「もちろんだ」きっぱりと{頷}(うなず)いた{伊月}(いつき)に、{土岐}(とき)はさらに[顔](かお)を[引](ひ)きつらせた。", + output: "「もちろんだ」きっぱりと[頷](うなず)いた[伊月](いつき)に、[土岐](とき)はさらに[顔](かお)を[引](ひ)きつらせた。", tags: [ "妹さえいればいい。" ] }, { input: "土岐は原稿を中指でコツコツ叩きながら、", reading: "ときはげんこうをなかゆびでコツコツはたきながら、", - output: "{土岐}(とき)は[原稿](げんこう)を[中指](なかゆび)でコツコツ[叩](はた)きながら、", + output: "[土岐](とき)は[原稿](げんこう)を[中指](なかゆび)でコツコツ[叩](はた)きながら、", tags: [ "妹さえいればいい。" ] }, { @@ -700,13 +700,13 @@ export default [ { input: "もー飛は相変わらず淡白だなぁ", reading: "もーとびはあいかわらずたんぱくだなぁ", - output: "もー{飛}(とび)は[相変](あいか)わらず[淡白](たんぱく)だなぁ", + output: "もー[飛](とび)は[相変](あいか)わらず[淡白](たんぱく)だなぁ", tags: [ "虚の記憶" ] }, { input: "舞の千里眼は本人が忘却した記憶すら「視える」という", reading: "まいのせんりがんはほんにんがぼうきゃくしたきおくすら「みえる」という", - output: "{舞}(まい)の[千里眼](せんりがん)は[本人](ほんにん)が[忘却](ぼうきゃく)した[記憶](きおく)すら「[視](み)える」という", + output: "[舞](まい)の[千里眼](せんりがん)は[本人](ほんにん)が[忘却](ぼうきゃく)した[記憶](きおく)すら「[視](み)える」という", tags: [ "虚の記憶" ] }, { @@ -880,7 +880,7 @@ export default [ { input: "さよなら藤原さん、絶交よ", reading: "さよならふじわらさん、ぜっこうよ", - output: "さよなら{藤原}(ふじわら)さん、[絶交](ぜっこう)よ", + output: "さよなら[藤原](ふじわら)さん、[絶交](ぜっこう)よ", tags: [ "かぐや様は告らせたい", "他のアンキカード" ] }, { @@ -946,7 +946,7 @@ export default [ { input: "諒太が俺の知らん間に成長してく…", reading: "りょうたがおれのちらんあいだにせいちょうしてく…", - output: "{諒太}(りょうた)が[俺](おれ)の[知](ち)らん[間](あいだ)に[成長](せいちょう)してく…", + output: "[諒太](りょうた)が[俺](おれ)の[知](ち)らん[間](あいだ)に[成長](せいちょう)してく…", tags: [ "幼馴染じゃ我慢できない" ] }, { @@ -958,7 +958,7 @@ export default [ { input: "Q太が威嚇してる", reading: "Qたがいかくしてる", - output: "Q{太}(た)が[威嚇](いかく)してる", + output: "Q[太](た)が[威嚇](いかく)してる", tags: [ "他のアンキカード", "虚の記憶" ] }, { @@ -1018,7 +1018,7 @@ export default [ { input: "ああ四宮奇遇だな", reading: "ああしのみやきぐうだな", - output: "ああ{四宮}(しのみや)[奇遇](きぐう)だな", + output: "ああ[四宮](しのみや)[奇遇](きぐう)だな", tags: [ "かぐや様は告らせたい", "他のアンキカード" ] }, { @@ -1312,7 +1312,7 @@ export default [ { input: "宮野が漫画読めないって重症だろ", reading: "みやのがまんがよめないってじゅうしょうだろ", - output: "{宮野}(みやの)が[漫画](まんが)[読](よ)めないって[重症](じゅうしょう)だろ", + output: "[宮野](みやの)が[漫画](まんが)[読](よ)めないって[重症](じゅうしょう)だろ", tags: [ "他のアンキカード", "佐々木と宮野" ] }, { @@ -1456,7 +1456,7 @@ export default [ { input: "早川君のお見舞いには行った?", reading: "はやかわきみのおみまいにはおこなった?", - output: "{早川}(はやかわ)[君](きみ)のお[見舞](みま)いには[行](おこな)った?", + output: "[早川](はやかわ)[君](きみ)のお[見舞](みま)いには[行](おこな)った?", tags: [ "チェンソーマン" ] }, { @@ -1594,7 +1594,7 @@ export default [ { input: "吉田くん今日学校サボってるんだって", reading: "よしだくんきょうがっこうサボってるんだって", - output: "{吉田}(よしだ)くん[今日](きょう)[学校](がっこう)サボってるんだって", + output: "[吉田](よしだ)くん[今日](きょう)[学校](がっこう)サボってるんだって", tags: [ "チェンソーマン" ] }, { @@ -1738,7 +1738,7 @@ export default [ { input: "駿はオレの恩人なのさ", reading: "しゅんはオレのおんじんなのさ", - output: "{駿}(しゅん)はオレの[恩人](おんじん)なのさ", + output: "[駿](しゅん)はオレの[恩人](おんじん)なのさ", tags: [ "他のアンキカード", "海辺のエトランゼ" ] }, { @@ -1786,7 +1786,7 @@ export default [ { input: "いやいや落ち着け…オレ緒山真尋はエロゲを愛する孤高の自宅警備員、断じてこのような美少女ではない!", reading: "いやいやおちつけ…オレおやままひろはエロゲをあいするここうのじたくけいびいん、だんじてこのようなびしょうじょではない!", - output: "いやいや[落](お)ち[着](つ)け…オレ{緒}(お){山}(やま){真}(ま){尋}(ひろ)はエロゲを[愛](あい)する[孤高](ここう)の[自宅警備員](じたくけいびいん)、[断](だん)じてこのような[美少女](びしょうじょ)ではない!", + output: "いやいや[落](お)ち[着](つ)け…オレ[緒](お)[山](やま)[真](ま)[尋](ひろ)はエロゲを[愛](あい)する[孤高](ここう)の[自宅警備員](じたくけいびいん)、[断](だん)じてこのような[美少女](びしょうじょ)ではない!", tags: [ "お兄ちゃんはおしまい!" ] }, { @@ -2338,7 +2338,7 @@ export default [ { input: "当時の俺はこの柵の上を歩いて渡りきれると思ってたんだろうな", reading: "とうじのおれはこのさくのうえをあるいてわたりきれるとおもってたんだろうな", - output: "[当時](とうじ)の[俺](おれ)はこの{柵}(さく)の[上](うえ)を[歩](ある)いて[渡](わた)りきれると[思](おも)ってたんだろうな", + output: "[当時](とうじ)の[俺](おれ)はこの[柵](さく)の[上](うえ)を[歩](ある)いて[渡](わた)りきれると[思](おも)ってたんだろうな", tags: [ "君は夏のなか" ] }, { @@ -2584,7 +2584,7 @@ export default [ { input: "小林‼納期せまってんぞ‼", reading: "こばやし‼のうきせまってんぞ‼", - output: "{小林}(こばやし)‼[納期](のうき)せまってんぞ‼", + output: "[小林](こばやし)‼[納期](のうき)せまってんぞ‼", tags: [ "小林さんちのメイドラゴン" ] }, { @@ -2620,7 +2620,7 @@ export default [ { input: "滝谷君これやったの誰さ?すっげー綺麗なコード配列", reading: "たきやくんこれやったのだれさ?すっげーきれいなコードはいれつ", - output: "{滝谷}(たきや)[君](くん)これやったの[誰](だれ)さ?すっげー[綺麗](きれい)なコード[配列](はいれつ)", + output: "[滝谷](たきや)[君](くん)これやったの[誰](だれ)さ?すっげー[綺麗](きれい)なコード[配列](はいれつ)", tags: [ "小林さんちのメイドラゴン" ] }, { @@ -2686,7 +2686,7 @@ export default [ { input: "俺の両親が突然事故で亡くなった時もずっと傍にいてくれたのは唯だった", reading: "おれのりょうしんがとつぜんじこでなくなったときもずっとそばにいてくれたのはゆいだった", - output: "[俺](おれ)の[両親](りょうしん)が[突然](とつぜん)[事故](じこ)で[亡](な)くなった[時](とき)もずっと[傍](そば)にいてくれたのは{唯}(ゆい)だった", + output: "[俺](おれ)の[両親](りょうしん)が[突然](とつぜん)[事故](じこ)で[亡](な)くなった[時](とき)もずっと[傍](そば)にいてくれたのは[唯](ゆい)だった", tags: [ "他のアンキカード", "年下の男の子" ] }, { @@ -2800,7 +2800,7 @@ export default [ { input: "どうせなら地元の友達でも誘えば良かったな…いや。諒太は元気?とか訊かれそう", reading: "どうせならじもとのともだちでもさそえばよかったな…いや。りょうたはげんき?とかきかれそう", - output: "どうせなら[地元](じもと)の[友達](ともだち)でも[誘](さそ)えば[良](よ)かったな…いや。{諒太}(りょうた)は[元気](げんき)?とか[訊](き)かれそう", + output: "どうせなら[地元](じもと)の[友達](ともだち)でも[誘](さそ)えば[良](よ)かったな…いや。[諒太](りょうた)は[元気](げんき)?とか[訊](き)かれそう", tags: [ "幼馴染じゃ我慢できない" ] }, { @@ -3046,7 +3046,7 @@ export default [ { input: "そうすれば駿はずっといいにいられるわ", reading: "そうすればしゅんはずっといいにいられるわ", - output: "そうすれば{駿}(しゅん)はずっといいにいられるわ", + output: "そうすれば[駿](しゅん)はずっといいにいられるわ", tags: [ "他のアンキカード", "海辺のエトランゼ" ] }, { @@ -3154,7 +3154,7 @@ export default [ { input: "あの頃の四宮はなんというかまるで氷で出来ているかのような", reading: "あのころのしのみやはなんというかまるでこおりでできているかのような", - output: "あの[頃](ころ)の{四宮}(しのみや)はなんというかまるで[氷](こおり)で[出来](でき)ているかのような", + output: "あの[頃](ころ)の[四宮](しのみや)はなんというかまるで[氷](こおり)で[出来](でき)ているかのような", tags: [ "かぐや様は告らせたい", "他のアンキカード" ] }, { @@ -3166,7 +3166,7 @@ export default [ { input: "なんだ四宮のあの軽蔑しきった目は", reading: "なんだしのみやのあのけいべつしきっためは", - output: "なんだ{四宮}(しのみや)のあの[軽蔑](けいべつ)しきった[目](め)は", + output: "なんだ[四宮](しのみや)のあの[軽蔑](けいべつ)しきった[目](め)は", tags: [ "かぐや様は告らせたい", "他のアンキカード" ] }, { @@ -4570,7 +4570,7 @@ export default [ { input: "幸は恐怖心が麻痺してる?", reading: "さちはきょうふしんがまひしてる?", - output: "{幸}(さち)は[恐怖心](きょうふしん)が[麻痺](まひ)してる?", + output: "[幸](さち)は[恐怖心](きょうふしん)が[麻痺](まひ)してる?", tags: [ "幸色のワンルーム" ] }, { @@ -4594,7 +4594,7 @@ export default [ { input: "翔太はエルマ様の家に行く途中バッタリ会って一緒に行くって", reading: "しょうたはエルマさまのいえにいくとちゅうバッタリあっていっしょにいくって", - output: "{翔太}(しょうた)はエルマ[様](さま)の[家](いえ)に[行](い)く[途中](とちゅう)バッタリ[会](あ)って[一緒](いっしょ)に[行](い)くって", + output: "[翔太](しょうた)はエルマ[様](さま)の[家](いえ)に[行](い)く[途中](とちゅう)バッタリ[会](あ)って[一緒](いっしょ)に[行](い)くって", tags: [ "小林さんちのメイドラゴン" ] }, { @@ -4678,7 +4678,7 @@ export default [ { input: "ましてや俺が御崎にー…", reading: "ましてやおれがみさきにー…", - output: "ましてや[俺](おれ)が{御崎}(みさき)にー…", + output: "ましてや[俺](おれ)が[御崎](みさき)にー…", tags: [ "花のみぞ知る" ] }, { @@ -4702,7 +4702,7 @@ export default [ { input: "有川の友達から「有川は風邪で何日か欠席してる」って聞いた", reading: "ありかわのともだちから「ありかわはかぜでなんにちかけっせきしてる」ってきいた", - output: "{有川}(ありかわ)の[友達](ともだち)から「{有川}(ありかわ)は[風邪](かぜ)で[何日](なんにち)か[欠席](けっせき)してる」って[聞](き)いた", + output: "[有川](ありかわ)の[友達](ともだち)から「[有川](ありかわ)は[風邪](かぜ)で[何日](なんにち)か[欠席](けっせき)してる」って[聞](き)いた", tags: [ "花のみぞ知る" ] }, { @@ -4720,13 +4720,13 @@ export default [ { input: "川端聡と名乗った。その人は祖父の研究に携わっている生徒の一人だそうだ", reading: "かわばたさとしとなのった。そのひとはそふのけんきゅうにたずさわっているせいとのひとりだそうだ", - output: "{川端}(かわばた){聡}(さとし)と[名乗](なの)った。その[人](ひと)は[祖父](そふ)の[研究](けんきゅう)に[携](たずさ)わっている[生徒](せいと)の[一人](ひとり)だそうだ", + output: "[川端](かわばた)[聡](さとし)と[名乗](なの)った。その[人](ひと)は[祖父](そふ)の[研究](けんきゅう)に[携](たずさ)わっている[生徒](せいと)の[一人](ひとり)だそうだ", tags: [ "花のみぞ知る" ] }, { input: "詔太くん。また今度面白い野草の話でもしよう", reading: "しょうたくん。またこんどおもしろいのぐさのはなしでもしよう", - output: "{詔}(しょう){太}(た)くん。また[今度](こんど)[面白](おもしろ)い[野草](のぐさ)の[話](はなし)でもしよう", + output: "[詔](しょう)[太](た)くん。また[今度](こんど)[面白](おもしろ)い[野草](のぐさ)の[話](はなし)でもしよう", tags: [ "花のみぞ知る" ] }, { @@ -4744,13 +4744,13 @@ export default [ { input: "僕は三葉惣助の偽物だけど", reading: "ぼくはみつばそうすけのにせものだけど", - output: "[僕](ぼく)は{三葉}(みつば){惣助}(そうすけ)の[偽物](にせもの)だけど", + output: "[僕](ぼく)は[三葉](みつば)[惣助](そうすけ)の[偽物](にせもの)だけど", tags: [ "地縛少年花子くん" ] }, { input: "こんばんは!右手の握力35kg八尋寧々です!", reading: "こんばんは!みぎてのあくりょくさんじゅうごキログラムやしろねねです!", - output: "こんばんは![右手](みぎて)の[握力](あくりょく)[3](さんじゅう)[5](ご)[kg](キログラム){八尋}(やしろ){寧々}(ねね)です!", + output: "こんばんは![右手](みぎて)の[握力](あくりょく)[3](さんじゅう)[5](ご)[kg](キログラム)[八尋](やしろ)[寧々](ねね)です!", tags: [ "地縛少年花子くん" ] }, { @@ -4900,7 +4900,7 @@ export default [ { input: "…お兄さん、幸の小学生の頃の写真見たい…?見られていいの厳選して保存するね", reading: "…おにいさん、さちのしょうがくせいのころのしゃしんみたい…?みられていいのげんせんしてほぞんするね", - output: "…お[兄](にい)さん、{幸}(さち)の[小学生](しょうがくせい)の[頃](ころ)の[写真](しゃしん)[見](み)たい…?[見](み)られていいの[厳選](げんせん)して[保存](ほぞん)するね", + output: "…お[兄](にい)さん、[幸](さち)の[小学生](しょうがくせい)の[頃](ころ)の[写真](しゃしん)[見](み)たい…?[見](み)られていいの[厳選](げんせん)して[保存](ほぞん)するね", tags: [ "幸色のワンルーム" ] }, { @@ -5362,7 +5362,7 @@ export default [ { input: "あとから来た、誘拐犯に形切が不利になるような写真を取られ、二人は現場を後にしたらしい", reading: "あとからきた、ゆうかいはんにかたぎりがふりになるようなしゃしんをとられ、ふたりはげんばをあとにしたらしい", - output: "あとから[来](き)た、[誘拐犯](ゆうかいはん)に{形切}(かたぎり)が[不利](ふり)になるような[写真](しゃしん)を[取](と)られ、[二人](ふたり)は[現場](げんば)を[後](あと)にしたらしい", + output: "あとから[来](き)た、[誘拐犯](ゆうかいはん)に[形切](かたぎり)が[不利](ふり)になるような[写真](しゃしん)を[取](と)られ、[二人](ふたり)は[現場](げんば)を[後](あと)にしたらしい", tags: [ "幸色のワンルーム" ] }, { @@ -5374,7 +5374,7 @@ export default [ { input: "形切の件でも思ったけど✗✗✗のことを知れば知るほど彼女が起こす行動にはいまいち掴みどころがない…", reading: "かたぎりのけんでもおもったけど✗✗✗のことをしればしるほどかのじょがおこすこうどうにはいまいちつかみどころがない…", - output: "{形切}(かたぎり)の[件](けん)でも[思](おも)ったけど✗✗✗のことを[知](し)れば[知](し)るほど[彼女](かのじょ)が[起](お)こす[行動](こうどう)にはいまいち[掴](つか)みどころがない…", + output: "[形切](かたぎり)の[件](けん)でも[思](おも)ったけど✗✗✗のことを[知](し)れば[知](し)るほど[彼女](かのじょ)が[起](お)こす[行動](こうどう)にはいまいち[掴](つか)みどころがない…", tags: [ "幸色のワンルーム" ] }, { @@ -5554,7 +5554,7 @@ export default [ { input: "あと松葉瀬さんはなんでいつもそう喧嘩腰なんですか…", reading: "あとまつばせさんはなんでいつもそうけんかごしなんですか…", - output: "あと{松葉瀬}(まつばせ)さんはなんでいつもそう[喧嘩腰](けんかごし)なんですか…", + output: "あと[松葉瀬](まつばせ)さんはなんでいつもそう[喧嘩腰](けんかごし)なんですか…", tags: [ "幸色のワンルーム" ] }, { @@ -5584,7 +5584,7 @@ export default [ { input: "ポンコツ八代一人なら✗✗✗だけでも大丈夫だと思うし", reading: "ポンコツやしろひとりなら✗✗✗だけでもだいじょうぶだとおもうし", - output: "ポンコツ{八代}(やしろ)[一人](ひとり)なら✗✗✗だけでも[大丈夫](だいじょうぶ)だと[思](おも)うし", + output: "ポンコツ[八代](やしろ)[一人](ひとり)なら✗✗✗だけでも[大丈夫](だいじょうぶ)だと[思](おも)うし", tags: [ "幸色のワンルーム" ] }, { @@ -5710,13 +5710,13 @@ export default [ { input: "映画のタイトルは母親なのに一番魅力的だったのは優太だった", reading: "えいがのタイトルはははおやなのにいちばんみりょくてきだったのはゆうただった", - output: "[映画](えいが)のタイトルは[母親](ははおや)なのに[一番](いちばん)[魅力的](みりょくてき)だったのは{優太}(ゆうた)だった", + output: "[映画](えいが)のタイトルは[母親](ははおや)なのに[一番](いちばん)[魅力的](みりょくてき)だったのは[優太](ゆうた)だった", tags: [ "さよなら絵梨" ] }, { input: "優太はちっちゃい頃から何にでもファンタジーをひとつまみ入れちゃうんだよね", reading: "ゆうたはちっちゃいころからなんにでもファンタジーをひとつまみいれちゃうんだよね", - output: "{優太}(ゆうた)はちっちゃい[頃](ころ)から[何](なん)にでもファンタジーをひとつまみ[入](い)れちゃうんだよね", + output: "[優太](ゆうた)はちっちゃい[頃](ころ)から[何](なん)にでもファンタジーをひとつまみ[入](い)れちゃうんだよね", tags: [ "さよなら絵梨" ] }, { @@ -6358,7 +6358,7 @@ export default [ { input: "葵に蟲だらけの穴に落とされて", reading: "あおいにむしだらけのあなにおとされて", - output: "{葵}(あおい)に{蟲}(むし)だらけの[穴](あな)に[落](お)とされて", + output: "[葵](あおい)に[蟲](むし)だらけの[穴](あな)に[落](お)とされて", tags: [ "地縛少年花子くん" ] }, { @@ -6394,13 +6394,13 @@ export default [ { input: "六番さん笑わないし、素っ気ないし、そもそも葵を誘拐して洗脳(?)するしで", reading: "ろくばんさんわらわないし、そっけないし、そもそもあおいをゆうかいしてせんのう(?)するしで", - output: "[六番](ろくばん)さん[笑](わら)わないし、[素](そ)っ[気](け)ないし、そもそも{葵}(あおい)を[誘拐](ゆうかい)して[洗脳](せんのう)(?)するしで", + output: "[六番](ろくばん)さん[笑](わら)わないし、[素](そ)っ[気](け)ないし、そもそも[葵](あおい)を[誘拐](ゆうかい)して[洗脳](せんのう)(?)するしで", tags: [ "地縛少年花子くん" ] }, { input: "あの場所に足を踏み入れた時点で赤根さんはもう生者ではなくなっていたんだよ", reading: "あのばしょにあしをふみいれたじてんであかねさんはもうせいじゃではなくなっていたんだよ", - output: "あの[場所](ばしょ)に[足](あし)を[踏](ふ)み[入](い)れた[時点](じてん)で{赤根}(あかね)さんはもう[生者](せいじゃ)ではなくなっていたんだよ", + output: "あの[場所](ばしょ)に[足](あし)を[踏](ふ)み[入](い)れた[時点](じてん)で[赤根](あかね)さんはもう[生者](せいじゃ)ではなくなっていたんだよ", tags: [ "地縛少年花子くん" ] }, { @@ -6478,7 +6478,7 @@ export default [ { input: "真柴クーン!身長伸び悩む星川くんに背伸ばす秘訣教えてやってー!", reading: "ましばクーン!しんちょうのびなやむほしかわくんにせいのばすひけつおしえてやってー!", - output: "{真柴}(ましば)クーン![身長](しんちょう)[伸](の)び[悩](なや)む{星川}(ほしかわ)くんに[背](せい)[伸](の)ばす[秘訣](ひけつ)[教](おし)えてやってー!", + output: "[真柴](ましば)クーン![身長](しんちょう)[伸](の)び[悩](なや)む[星川](ほしかわ)くんに[背](せい)[伸](の)ばす[秘訣](ひけつ)[教](おし)えてやってー!", tags: [ "誰か夢だと言ってくれ" ] }, { @@ -6508,7 +6508,7 @@ export default [ { input: "星川に追試まで勉強教えてやってくれないか", reading: "ほしかわについしまでべんきょうおしえてやってくれないか", - output: "{星川}(ほしかわ)に[追試](ついし)まで[勉強](べんきょう)[教](おし)えてやってくれないか", + output: "[星川](ほしかわ)に[追試](ついし)まで[勉強](べんきょう)[教](おし)えてやってくれないか", tags: [ "誰か夢だと言ってくれ" ] }, { @@ -6556,7 +6556,7 @@ export default [ { input: "真柴も態度が前よりぎこちない気がするんだよな", reading: "ましばもたいどがまえよりぎこちないきがするんだよな", - output: "{真柴}(ましば)も[態度](たいど)が[前](まえ)よりぎこちない[気](き)がするんだよな", + output: "[真柴](ましば)も[態度](たいど)が[前](まえ)よりぎこちない[気](き)がするんだよな", tags: [ "誰か夢だと言ってくれ" ] }, { @@ -6664,7 +6664,7 @@ export default [ { input: "確かに樹の言う通り、うりゅくんって『真面目な優等生』なんだろうけど", reading: "たしかにいつきのいうとおり、うりゅくんって『まじめなゆうとうせい』なんだろうけど", - output: "[確](たし)かに{樹}(いつき)の[言](い)う[通](とお)り、うりゅくんって『[真面目](まじめ)な[優等生](ゆうとうせい)』なんだろうけど", + output: "[確](たし)かに[樹](いつき)の[言](い)う[通](とお)り、うりゅくんって『[真面目](まじめ)な[優等生](ゆうとうせい)』なんだろうけど", tags: [ "誰か夢だと言ってくれ" ] }, { @@ -6712,7 +6712,7 @@ export default [ { input: "平野さん〈雪〉だるまと俺だるま!", reading: "ひらのさん〈雪〉だるまとおれだるま!", - output: "{平野}(ひらの)さん〈雪〉だるまと[俺](おれ)だるま!", + output: "[平野](ひらの)さん〈雪〉だるまと[俺](おれ)だるま!", tags: [ "佐々木と宮野" ] }, { @@ -6910,7 +6910,7 @@ export default [ { input: "いま琥珀ちゃんに合うのはちょっと心境的にマズいというか変な扉が開きそうというか開けていいのかどうなのか", reading: "いまこはくちゃんにあうのはちょっとしんきょうてきにマズいというかへんなとびらがひらきそうというかあけていいのかどうなのか", - output: "いま{琥珀}(こはく)ちゃんに[合](あ)うのはちょっと[心境](しんきょう)[的](てき)にマズいというか[変](へん)な[扉](とびら)が[開](ひら)きそうというか[開](あ)けていいのかどうなのか", + output: "いま[琥珀](こはく)ちゃんに[合](あ)うのはちょっと[心境](しんきょう)[的](てき)にマズいというか[変](へん)な[扉](とびら)が[開](ひら)きそうというか[開](あ)けていいのかどうなのか", tags: [ "合コン行ったら女がいなかった話" ] }, { @@ -6976,7 +6976,7 @@ export default [ { input: "長瀞が煽るから… し 仕方なくやろうとしただけで…", reading: "ながとろがあおるから… し しかたなくやろうとしただけで…", - output: "{長瀞}(ながとろ)が[煽](あお)るから… し [仕方](しかた)なくやろうとしただけで…", + output: "[長瀞](ながとろ)が[煽](あお)るから… し [仕方](しかた)なくやろうとしただけで…", tags: [ "イジらないで、長瀞さん" ] }, { @@ -7216,7 +7216,7 @@ export default [ { input: "寝てる浅葱君でちょっとした撮影会を…", reading: "ねてるあさぎくんでちょっとしたさつえいかいを…", - output: "[寝](ね)てる{浅葱}(あさぎ)[君](くん)でちょっとした[撮影会](さつえいかい)を…", + output: "[寝](ね)てる[浅葱](あさぎ)[君](くん)でちょっとした[撮影会](さつえいかい)を…", tags: [ "合コンに行ったら女がいなかった話" ] }, { @@ -7282,7 +7282,7 @@ export default [ { input: "これ以上ワシを謀るなよ", reading: "これいじょうワシをたばかるなよ", - output: "これ[以上](いじょう)ワシを{謀}(たばか)るなよ", + output: "これ[以上](いじょう)ワシを[謀](たばか)るなよ", tags: [ "見える子ちゃん" ] }, { @@ -7306,7 +7306,7 @@ export default [ { input: "あの山を乗り越えた証…", reading: "あのやまをのりこえたあかし…", - output: "あの[山](やま)を[乗](の)り[越](こ)えた{証}(あかし)…", + output: "あの[山](やま)を[乗](の)り[越](こ)えた[証](あかし)…", tags: [ "見える子ちゃん" ] }, { @@ -7978,7 +7978,7 @@ export default [ { input: "シド王子は雷獣山の頂上にある。ミファー公園にいます。", reading: "シドおうじはらいじゅうざんのちょうじょうにある。ミファーこうえんにいます。", - output: "シド[王子](おうじ)は{雷獣}(らいじゅう)[山](ざん)の[頂上](ちょうじょう)にある。ミファー[公園](こうえん)にいます。", + output: "シド[王子](おうじ)は[雷獣](らいじゅう)[山](ざん)の[頂上](ちょうじょう)にある。ミファー[公園](こうえん)にいます。", tags: [ "ゼルダの伝説", "ティアーズ・オブ・ザ・キングダム" ] }, { @@ -8260,7 +8260,7 @@ export default [ { input: "赤竜山脈ですよね", reading: "せきりょうさんみゃくですよね", - output: "{赤竜}(せきりょう)[山脈](さんみゃく)ですよね", + output: "[赤竜](せきりょう)[山脈](さんみゃく)ですよね", tags: [ "無職転生:異世界行ったら本気だす" ] }, { @@ -8428,7 +8428,7 @@ export default [ { input: "これをこうやって8+5は13", reading: "これをこうやってはち足すごはじゅうさん", - output: "これをこうやって[8](はち){+}(足す)[5](ご)は[13](じゅうさん)", + output: "これをこうやって[8](はち)[+](足す)[5](ご)は[13](じゅうさん)", tags: [ "無職転生:異世界行ったら本気だす" ] }, { @@ -8458,7 +8458,7 @@ export default [ { input: "5−3+4で… 6枚", reading: "ご引くさんたすよんで… ろくまい", - output: "[5](ご){−}(引く)[3](さん)[+](たす)[4](よん)で… [6](ろく)[枚](まい)", + output: "[5](ご)[−](引く)[3](さん)[+](たす)[4](よん)で… [6](ろく)[枚](まい)", tags: [ "無職転生:異世界行ったら本気だす" ] }, { @@ -9202,7 +9202,7 @@ export default [ { input: "なら最初から虹夏ちゃんがデザインすればよかったのでは?とでも言いたげな目だね", reading: "ならさいしょからにじかちゃんがデザインすればよかったのでは?とでもいいたげなめだね", - output: "なら[最初](さいしょ)から{虹夏}(にじか)ちゃんがデザインすればよかったのでは?とでも[言](い)いたげな[目](め)だね", + output: "なら[最初](さいしょ)から[虹夏](にじか)ちゃんがデザインすればよかったのでは?とでも[言](い)いたげな[目](め)だね", tags: [ "ぼっち・ざ・ろっく!" ] }, { diff --git a/util/japanese.ts b/util/japanese.ts index 8814e11..d32714c 100644 --- a/util/japanese.ts +++ b/util/japanese.ts @@ -121,7 +121,8 @@ String.prototype.katakanaOnly = function(strict = false) { } String.prototype.kanjiOnly = function(strict = false) { - return stringOnly(this as string, (key, val) => { + let temp = this.replaceAll("々", "力"); // kanjiOnly should return true for kanji repeat mark as well + return stringOnly(temp, (key, val) => { if (key == UnicodeRange.JapaneseKanji) return StringOnlyReturnValue.TallyAdd; // count kanji characters else if (!strict && key.startsWith("any-")) diff --git a/util/string.ts b/util/string.ts index 4704d03..250a304 100644 --- a/util/string.ts +++ b/util/string.ts @@ -103,7 +103,7 @@ String.prototype.range = function() { } String.prototype.rangeTally = function() { - var tally = Object.keys(UnicodeRange).reduce((a: any,c) => (a[c] = 0, a), {}) as RangeTally; + var tally = Object.values(UnicodeRange).reduce((a: any,c) => (a[c] = 0, a), {}) as RangeTally; for (var char of this) tally[char.range()]++; return tally; }; -- cgit v1.2.3