旺文社国語辞典第十一版

I have aquired the original data for 旺文社国語辞典第十一版 through the official apk. It looks like this data can be converted to clear text with ebdump. Also included is a list of gaiji with their unicode equivalent, all written by hand. (thank you very much shoui520)

I’m not experienced enough to convert it myself so I’m hoping a more experienced user could convert this to a beautifully formatted mdict dictionary.

Thank you very much to shoui520 and irhello from learnjapanese.moe for providing me with the original data.

P.S.: I’m not sure which category/tag to give this post because I can’t read chinese.

Machine translation:
我通过官方apk获取了旺文社国语辞典第十一版的原始数据。看起来这些数据可以用ebdump转换为清晰的文本。此外,还包括了一份与unicode对应的外文字典清单,都是手写的。(非常感谢shoui520)

我没有足够的经验来自己转换,所以我希望更有经验的用户能将其转换为格式优美的mdict词典。

非常感谢来自learnjapanese.moe的shoui520和irhello为我提供的原始数据。

P.S.: 我不知道该给这个帖子归入哪个类别/标签,因为我不懂中文。

UPDATE

2022/10/31

I have done a complete text dump of the logovista dictionary using ebdump. I have also extracted all the images with their original file names. Furthermore, I have generated a gaijimap file that converts gaiji codes to unicode codes using a built in tool in EBWin.

The dumped file contains a bunch of codes that actually represent html elements like this:
[1120:38E]<1F09><0010>【絶<1F0E>△<1F0F>巓】<1F0A>
In this case you can see that <1F0E> and <1F0F> most likely correspond to <sup> and </sup>. Each element needs to be rebuilt using regex replacements using the android app as a reference point.

I was able to bypass the android app protection using an android emulator and lucky patcher.

我已经使用ebdump完成了logovista字典的完整文本转储。我还提取了所有带有原始文件名的图像。此外,我还生成了一个gaijimap文件,使用EBWin中的内置工具将gaiji代码转换为unicode代码。

转储文件包含一堆代码,这些代码实际上表示如下html元素:
[1120:38E]<1F09><0010>【絶<1F0E>△<1F0F>巓】<1F0A>
在这种情况下,您可以看到<1F0E><1F0F>很可能对应于<sup></sup>。需要使用android应用程序作为参考点,使用regex替换来重建每个元素。

我能够使用安卓模拟器和lucky patcher绕过安卓应用保护。

11 个赞

@hua this might be worthwhile if you are interested in Japanese :smiley:

3 个赞

Thank you.
The data can be opened in EBWin.

3 个赞

Do you think it can be possible to have an mdict conversion?

1 个赞

This is awesome work done! Could you please take a look at this ancient Japanese dictionary (PC ver.) I posted long ago?

I’m incompetent to extract data on my own so wondering if you could help. I’m more than willing to do a Mdict compilation with extracted data

I’m not particularly skilled in data extraction. Like I said in the original post, I’m in contact with the people that extracted the original data, and they provided it to me.

That being said, I hope someone will be able to extract your dict. There’s very few 古語辞典 out there (from what I know a single one, 学研 全訳古語辞典 in epwing form and rebranded on weblio) so it’s surely valuable.

2 个赞

Was someone able to convert this? I saw some work in progress screenshots in telegram then nothing was shared.
有人能转换这个吗?我在telegram上看到了一些工作进展的截图,然后就没有再分享了。

4 个赞

实际上并不是一个"<>"就对应html里的一个标签,如下面这个词条:

<1F09><0001><1F41><0160><1FE2><0001>うま・れる【生〔ま〕れる・産〔ま〕れる】<1FE3>うま・れる<1F61><1F0A>
<1F09><0010>【生〔ま〕れる・産〔ま〕れる】<1F0A>
<1F09><0100>(自下一)<B938>レ・レ・レル・レル・レレ・レロ(レヨ)<B939><1F0A>
<1F09><0102><B123><1F04> <1F05>子や卵が母の胎内から出る。また、卵がかえる。<1F0A>
<1F09><0104><1FE0><0000>「<1FE1>弟が―<1FE0><0000>」<1FE1><1F0A>
<1F09><0104><1FE0><0000>「<1FE1>北海道に―<1FE0><0000>」<1FE1><1F0A>
<1F09><0102><B124><1F04> <1F05>[生]物事やある状態が新たにできる。<1F0A>
<1F09><0104><1FE0><0000>「<1FE1>新記録が―<1FE0><0000>」<1FE1><1F0A>
<1F09><0104><1FE0><0000>「<1FE1>疑惑が―<1FE0><0000>」<1FE1><1F0A>
<1F09><0108><B238>う・む(五) <B237>うま・る(下二)<1F0A>
<1F09><0129><B249><1F04><1F05><B24A><caption><1F10>類語<1F11></caption><1F0A>
<1F09><0129><1F04><1F05><tr><td>人</td><td>誕生する・出生する・出来る・生まれ落ちる・呱呱<B647>ここ<B648>の声を上げる・産声<B647>うぶごえ<B648>を上げる・母親の腹を痛める</td></tr><1F0A>
<1F09><0129><1F04><1F05><tr><td>聖人</td><td>生誕する・降誕する</td></tr><1F0A>
<1F09><0129><1F04><1F05><tr><td>哺乳類</td><td>誕生する・出来る</td></tr><1F0A>
<1F09><0129><1F04><1F05><tr><td>卵生のもの</td><td>誕生する・出来る・かえる</td></tr><1F0A>
<1F09><0129><1F04><1F05><tr><td>害となるもの</td><td>発生する・湧<B647>わ<B648>く</td></tr><1F0A>
<1F09><0129><1F04><1F05><tr><td>組織</td><td>誕生する・出来る・結成される・呱呱の声を上げる・産声を上げる</td></tr><1F0A>
<1F09><9999><1FE2><0007>00005987<1FE3><1F0A>

可以看到,每个部分前都是换行并以<1F09>开始,<1F0A>结束的,那这两个就可以分别理解成<p></p>
另外,从第十一行开始的表格,可以看到<tr><td>用的还是html的原字。

每行的第二个标签,后面并没有对应的用来闭合的标签,如:
<1F09><0010>【生〔ま〕れる・産〔ま〕れる】<1F0A>
那第二个“标签”就可以理解成“class=0010”,并且第二个是最重要的,用来标明元素的类型,以下是我整理的一些:

<0001>:标题
<0002>:和歌标题
<0003>:字标题
<0004>:专有名词标题
<0005>:专有名词子标题(不单独成条)
<0006>:子标题(不单独成条)
<0007>:子项目(不单独成条)
<0008>:五十音标题

<0010>:副汉字标题(0010-0016实际都不显示)
<0011>:专有名词副汉字标题
<0012>:专有名词子汉字标题
<0013>:子汉字标题
<0014>:人名汉字子汉字标题
<0015>:普通汉字副汉字标题
<0016>:标◇汉字副汉字标题
<0017>:旧字副汉字标题(显示)
<0022>:汉字音读
<0023>:汉字训读
<0024>:汉字训读(暂时不太清楚两者区别)
<0028>:历史假名
<0100>:释义前内容
<0102>:释义
<0104>:例句
<0107>:反义
<0117>:难读
<0118>:人名音
<0119>:和歌
<0129>:表格
<0108>:其它词类
<9999>:编号

除此之外,还有一些比较明显的特征,比如单独成条的词头(非子项目)开头两个标签后都会接<1F41><0160><1FE2><0001>,而其它的标签通常是成对闭合的,比如<B647><B648>代表片假名,<B938><B939>代表用小字体显示的动词变形等等,<B123>等对应外字表内的外字。那刚才那个词条的开头就大致可以翻译成这样:

<p class="标题">
    <title>うま・れる【生〔ま〕れる・産〔ま〕れる】
        <pronun>うま・れる</pronun>
    </title>
</p>
<p class="汉">【生〔ま〕れる・産〔ま〕れる】</p>
<p class="释义前">(自下一)
    <transform>レ・レ・レル・レル・レレ・レロ(レヨ)</transform>
</p>
<p class="释义">①<space> </space>子や卵が母の胎内から出る。また、卵がかえる。
</p>

诸如此类。

楼主说telegram上有人有一些进展,但我回看聊天记录发现那个人把聊天记录都删了,大概是不愿意分享吧 :goutou:

5 个赞

我基本上把mdx的转制弄完了(虽然还差个别的标签和外字没有转换),在做完CSS后我会单独发一个帖的
I almost finished the mdx (although there are still few tags and gaijis that have not been transformed), and I will have a separate post when I’m completed the CSS.

目前的进展:
Current progress:

8 个赞

我记录了我到目前为止转换所用到的所有正则表达式(除了给惯用语添加词头的部分,忘了写了):
I’ve writed all the regex I’ve used for the transform (except the part adding headwords to idioms):

正则
1.添加词头

<1F09><(000[12348])>(<1F41><0160><1FE2><0001>)(.*)<1FE3>(.*)<1F61><1F0A>
替换:</>\n\3\n<span class="\1">\3<kana>\4</kana></span>

2.将字母开头条目(文件末尾)单独提取出来后:

(^.*<1FE2><0001>)(.*?)(<1FE3>)
替换:\2\n\1\2\3

(</>\n)(.*?)<....>
多次替换:\1\2

然后放回原文件末尾

3.调整词头:
(</>\n)(.*?)<1F0E>.<1F0F>
多次替换:\1\2

(</>\n)(.*?)<B947>(.+?)<B948>
(</>\n)(.*?)<1F04>(.+?)<1F05>
(</>\n)(.*?)<B249>(.+?)<B24A>
分别多次替换:\1\2\3

随后逐一排查:</>\n.*<
替换外字:
<B226>	蔲
<B227>	𧘱
<B533>	麬
<B77B>	靠
<B666>	廴
<B66C>	蟒
<B324>	鰧
<B33E>	鱲
<B73A>	赳
<B73F>	響
<B741>	鞏
<B650>	靭
<B73D>	馭
<B752>	倥
<B372>	蠁

4.替换外字:

外字序号(替换到外字字体):
<B15B>	<gaiji>砿</gaiji>
<B15C>	<gaiji>鋼</gaiji>
<B15D>	<gaiji>閤</gaiji>
<B15E>	<gaiji>降</gaiji>

用方框括上的字:
<B232>	<rect>春</rect>
<B233>	<rect>夏</rect>
<B234>	<rect>秋</rect>
<B235>	<rect>冬</rect>
<B236>	<rect>新年</rect>
<B237>	<rect>文</rect>
<B238>	<rect>他</rect>
<B239>	<rect>自</rect>
<B23A>	<rect>可能</rect>
<B23B>	<rect>ちがい</rect>

其它符号:
<B248>	⟷

4.替换标签:
^<1F09><(....)>
替换:<span class="\1">
<1F0A>
替换:</span>
<1F0E>
替换:<sup>
<1F0F>
替换:</sup>

(">)(.*?)<1F04> <1F05>
替换:\1<order>\2</order>

(">)(.+?)<1F04> ((.*?)<1F05>
替换:\1<order>\2</order>\3

<1F04>((*?)<1F05>
替换:\1

<1F04>()*?)<1F05>
替换:\1

<B647>(.+?)<B648>
替换:<furigana>\1</furigana>

<B93A>(.+?)<B93B>
替换:<foreign>\1</foreign>

<1FE0><0000>(.+?)<1FE1>
替换:<b>\1</b>

<1FE0><0001>(.+?)<1FE1>
替换:<i>\1</i>

<B946>(.+?)<B948>
替换:<formula>\1</formula>

<B938>(.+?)<B939>
替换:<katsuyou>\1</katsuyou>

">(.+?)<1F04> <1F05>
替换:"><order>\1</order>

<1F42>(.+?)(<.*?)1F62>
替换:<a href="entry://\1">\1\2/a>

<1FE2><0001>(.*?)<1FE3>
替换:<ttl>\1</ttl>

<1F04>
替换:<xmp>
<1F05>
替换:</xmp>

6.继续调整词头,加词头索引,链接CSS:
(</>\n.*?)‐
重复替换:\1

(</>\n.*?)・(.*?【)
替换:\1\2

(</>\n[^【]+?)・([^【]+?\n)
替换:\1\2

</>\n(.*)(【)(.*)(】)
替换:</>\n\1\n@@@LINK=\1\2\3\4\n</>\n\3\n@@@LINK=\1\2\3\4\n</>\n\1\2\3\4

(</>\n)([^【]+?)・([^【]+?)(\n@@@.*\n)
替换:\1\2\4\1\3\4

(</>\n)([^【]+?)〔(.+)〕([^【]+?)(\n@@@.*\n)
替换:\1\2\4\5\1\2\3\4\5

</>\n(.*)(【)(.*)(】)\n(@@@.*)\n
替换:</>\n\1\n\5\n</>\n\3\n\5\n

(</>\n.*\n)<s
替换:\1<link rel="stylesheet" href="OBS.css" media="all"/></head><body>\n<s

n>(\n</>)
替换:n></body>\1

7.替换属性名称(属性名称是数字时无法对其应用css样式)
"0001	"title
"0002	"title 和歌
"0003	"title 汉字
"0004	"title 专有
"0005	"title sub 专有
"0006	"title sub 标题
"0007	"title sub 项目
"0008	"title 五十音
"9999	"编号
"0010	"kanji
"0011	"kanji 专有
"0012	"kanji sub 专有
"0013	"kanji sub
"0014	"kanji 单字人名
"0015	"kanji 单字
"0016	"kanji 单字非常用
"0017	"kanji 旧字
"0018	"kanji 单字人名2
"0019	"kanji 单字外字
"0020	"kanji_level
"0021	"pronunc 音读 1
"0022	"pronunc 音读 2
"0023	"pronunc 训读 1
"0024	"pronunc 训读 2
"0025	"foreign
"0026	"foreign sub
"0027	"foreign 专有
"0028	"historical_kana
"0029	"historical_kana 专有
"0030	"historical_kana 单字
"0031	"historical_kana sub
"0032	"historical_kana sub 专有
"0033	"modern_kana
"0034	"modern_kana sub
"0100	"exp 0
"0101	"exp 1
"0102	"exp 2
"0103	"exp 3
"0104	"exam
"0105	"反义
"0106	"季语
"0107	"参见
"0108	"变形
"0109	"惯用
"0110	"用法
"0111	"语源
"0112	"参考
"0113	"历史
"0114	"类语
"0115	"外来
"0116	"复合
"0117	"难读
"0118	"人名
"0119	"和歌
"0120	"和歌作者
"0121	"和歌释义
"0122	"区别表现
"0123	"区分标题
"0124	"区分内容
"0125	"表现内容
"0126	"中心义
"0127	"exp 五十音
"0128	"使用区分
"0129	"表格
"0200	"笔顺
"0201	"图像
"1001	"title 英文缩写
"1002	"foreign 全文
"1101	"exp 英文缩写
"1102	"exam 英文缩写
"9999	"编号
<B641>	<rect><red>使い分け</red></rect>
<B63F>	<rect><red>ちがい</red></rect>
<B63C>	<rect><red>表現</red></rect>

8.其他修正:
修正表格结构:
(<span class="表格">.*?)</span>
替换:\1
(^<span class="[^表].*\n)<span class="表格">
替换:\1<table>
(^<span class="表格">.*?)(\n<span class="[^表])
替换:\1</table>\2
^<span class="表格">
替换为空白
7 个赞

外字基本集中在部首部分,一个一个过很费劲,我只替换了一部分:



有些需要外字但是没有外字的图的,从其他词典里借图:

至于老子这个字形,在本词典自带的字体上显示是正确的:


还有比如这个蚜,也是在自带字体上正确:

3 个赞

那个括号电子版确实是显示上没做区分,但是数据上是有区分的:
image
普通的词汇前面是0010,专有名词前面是0011;


前面有0004的是专有名词,0001是普通的,0002是汉字释义,0003是和歌
也许我可以改一下? :goutou:

2 个赞