一键制作图片词典 MdxSourceBuilder

怎么只有目录里有的页面才能查到?怎么让每一页都能查到

自动生成的css 好像有问题

更新:忘了修改css文件名导致的,已解决

只要将下图光标处设置为0即可,代码不要处理。
image

有页码的就会出现,没有页码的就会跳过。可用excel快速生成所有页码。

生成了一份所有页码,结果查询结果重复了,不知道为什么
是不是dictionaryParts 和 multiLevelParts 这两个地方都设置了,就会重复?
不知道有没有办法不让它重复

所有正文页码:CGEL_EN_content.txt
image

正文分层页面:

将 CGEL_EN_content.txt 放在 anyMoreSources 的话,没有关键词的页面就会缺失

正文和附录可以同时分层吗?
下面是正文的分层设置:


如果也设置下附录的分层的话,应该怎么写?

let g:dictionaryParts = [
       \["cgel_en_app_title.txt", "CGEL_EN_App_", ".png", 3, 2, 0, 1],
       \["CGEL_EN_Pre_supl.txt", "CGEL_EN_Pre_", ".png", 0, 2, 0, 1],
       \["CGEL_EN_App_supl.txt", "CGEL_EN_App_", ".png", 0, 2, 0, 1],
       \]

cgel_en_app_title.txt 里包含附录里的关键词 + 分隔符 + 页码
CGEL_EN_App_supl.txt 里包含附录的所有页码

这样生成的mdx,附录部分有些页码是缺失的,如图:

但单独输入页码对应的词头,又是存在的,如图:

不知道什么原因

把两份文件简单合并为一即可(或许需要把关键词 + 分隔符 + 页码 改为 页码+ 分隔符 + 关键词,没仔细想过,你自己试试,好久没用了)。将所有页码放在最后,这样方便修订(前面部分都是关键词页面),而且不必担心页码重复的问题,程序会自动去重。

1 个赞

把附录和正文都统一当成正文不就可以了?

1 个赞

明白了。 :joy:

时隔一年半再做一些细节更新,其中1-2主要是融合、兼容了 @random 的一些优秀创意:

  1. 为nearestKeyword增加选项2:可以直接显示临近页最近的一个前后词条。
  2. 为navStyle增加选项3:有pages+keywords导航,但keyword仅简单@@@Link到相应page,从而让带有文字图层的图片词典减少冗余量。
  3. 增加参数 pageNavWidth:定义pages导航的页码数量——0-适合手机等窄屏幕,中间连续5个页码;1-适合电脑等大屏幕,中间连续7个页码
2 个赞

反馈一个问题:

词头是纯数字的时候,生成的源码里好像没有这个数字词头。

另外,这个不知道可以修改吗?

目前是跳转的关键词<a href="entry://笔名">笔名</a>

这样,如果后面对词头进行优化修改的话,这种关键词跳转就跳不过去了

如果直接跳转的页码链接<a href="entry://Oxford_0013">笔名</a> 这种的话,兼容性更好一些

后期优化修改了原始词头的话,不会导致这些导航关键词无法跳转

比如如果原始词头是“(网)笔名”,修改成了“网名@笔名” 这样点击原来的“(网)笔名”导航链接就找不到“(网)笔名”词头了

假设你有原始的源文件,修改词头后,程序重新输出时就会自动将所有相关链接修正的。

假设你没有原始的源文件,而是用mdx导出的,那么修改词头,就建议采用全文搜索替换所有相关位置。

有时候不方便在原始的源文件里修改词头,毕竟很多修改词头的方法都是以前基于MDX源码的方式 :joy:

若keyword是与页码位数一样的纯数字,那确实无法区分,肯定得做特殊处理,比如:
1、先在该数字添加独特的前/后缀名,待程序输出mdx源文件之后,再批量删除这个前/后缀即可。
2、如果这个纯数字keyword不需要显示到导航中,只要能查询即可,那么可以直接将该keyword添加到Link888,不用做其他任何处理。

应该用之前的这个选项就可以直接满足:

@ link (@链接)跳转用这种方式很好。

感觉也可以让关键词超链接跳转用这种方式,跳转page,而不是关键词本身。这样可以更灵活

1696436782750用同一版本的GVIM测试了两个文件,一个正常,一个总是出现内存不足的情况,换了64位的就正常,但又不能生成mdx文件,不知哪里出了问题。

换了个64位低版本的倒是正常了。

不知道能否加一个查看总目录的功能? :flushed:如下图:

  1. 通常图片词典中都有目录页,直接添加该目录到导航即可。如:

  1. 如果确实需要文字版可点击的目录,自己手动制作一个目录页作为独立词条,然后添加到自定义目录即可。如:

  1. MdxSourceBuilder 不同于 AutoMdxBuilder,AutoMdxBuilder有一定的机制识别什么是目录(来源是PDF的目录),但MdxSourceBuilder没有提供这样的机制来识别哪些词条是目录(来源是图片+词条,而非PDF),因此只能手工制作目录,但好处是灵活定制(按需增减或翻译等)。
1 个赞