MdxSourceBuilder上手記錄

VimWei/MdxSourceBuilder: 一键制作mdx图片词典

這是一個小白的學習記錄貼,希望能幫助同好快速上手。感謝@vim的工作!

最簡單的運行方式就是用 “ Tips: 使用更便捷快速的命令” 處提到的簡單命令。

用 Vim 打开 MdxSourceBuilder.vim,新建文档 `:new` ,输入命令 `:so MdxSourceBuilder.vim`

甚至输入 `:so mdx` 之后,按Tab键即可自动补全命令 `:so MdxSourceBuilder.vim`

这个新方法的逻辑,其实是利用Vim首次打开一个文件时,会将该文件所在目录设置为Vim当前工作目录。

也可以使用系统命令 `:cd` 来更换Vim的工作目录,如 `:cd d:\火星词典`

若您使用附带的 `_vimrc` ,还可以直接使用自定义的命令 `:CD` 将Vim的工作目录切换为当前文件所在目录。

找到MdxSourceBuilder.vim,然後用Emeditor打開,就可以開始設置所需項目。

頁碼製作可以用Emeditor的“插入編號”快速完成。

下面具體學習一下需要設置的地方。

  1. 可自定義項目:

" 拟输出的mdx源文件名称
let s:mdxSourceFileName = “詞典名稱.txt”

" CSS名称,其具体定义请查阅 MdxSourceBuilderCSS.vim
let g:CSSName = “css名稱.css”

" 词条/图片名等的页码位数,默认为4,支持3及以上
let g:pageNumDigit = 例如0001就是四位數

" 词典模块及其配置信息,格式如下:
" [dictionaryPart, picNamePrefix, picFormat,
" \sourceStyle, navStyle, locationPercent, nearestKeyword],
let g:dictionaryParts = [
[“Cover.txt”, “MarsDictCover_”, “.png”, 0, 1, 0, 1],
[“Prefix.txt”, “MarsDictPrefix_”, “.png”, 0, 1, 0, 1],
[“Body.txt”, “MarsDict_”, “.png”, 2, 2, 1, 1],
[“Appendix.txt”, “MarsDictAppendix_”, “.png”, 0, 1, 0, 1],
[“Pinyin.txt”, “MarsDict_”, “.png”, 2, 0, 0, 0],
]
這些txt文件名指的詞條txt文件名,之所以要分這麼多模塊是因為詞典的不同部分的詞條頁碼編號方式不同。之所以不會互相干擾是因為圖像的前綴不同。

詞條格式參照:
" sourceStyle:定义兼容的词条格式(MdxSourceBuilderCore.Vim)
" - 0:'一行页码 + 多行关键词(每行一个关键词)'的标准词条格式,跳转至页码
" - 1:'一个页码 + 多个中文单字符的关键词’的压缩词条格式,跳转至页码
" - 2:'页码 + 分隔符 + 单个中或英关键词’的啰嗦行格式,跳转至页码

這裡需要注意的是,常見的詞典是以 詞條→頁碼 為格式的(阿措 0001),意味著多個詞條對應同一個頁碼,而MdxSourceBuilder的詞條格式前兩種都是 頁碼→詞條(0001 阿措) 。

不過可以看到,編號為“2”的詞條就是這種常的格式,參考火星词典.Pinyin.txt
0001 a
0001 a1
0002 a2
0002 a3
0002 a4
0002 a5

不過還是希望Vim兄能針對普通格式再添加一個格式,不知有沒有現成的轉化方式把
0001 阿措
0001 阿对
0001 阿侯
0001 阿买
0001 阿蛮

轉化為

0001
阿措
阿对
阿侯
阿买
阿蛮

  1. 導航
    MdxSourceBuilder的特色之一是強大的導航功能。只要記住導航的編號越大,導航信息越是豐富即可。

  2. mdd製作
    " 自动打包图片等资源到mdd
    " 打包设为1,不打包则设为0 【設置為自動打包更方便,但在修改了圖像數據之後要更新mdx的時候,應該改為0】
    let s:autoMddPack = 1
    " 图片等资源相对于词典所在的目录
    let s:imageFolder = “即位於MdxSourceBuilder.vim同級的圖像文件夾名稱,一般新建一個image文件夾即可”

4 其他

" - 999:固定项目,源文件为标准的mdx源格式,无需进一步处理,直接使用
" - 其他: 定制化项目,自定义词条样式及处理程序

這幾條似乎還未完成?沒有找到案例。


快捷制作工具包
! MdxSourceBuilder.rar (208 字节)
000 词条文件模板.txt (464 字节)
00 固定链接导航模板.txt (460 字节)

1 Like

这里有一堆真实案例,只要熟悉vim脚本,具体类型大家随便定义,我是定义了几种常见的,具体在制作词典时,按需随意添加:

https://forum.freemdict.com/tag/mdxsourcebuilder

图像的前缀可以相同。“前缀_页码_后缀”,这三者的合计只要不重复即可。

将一个文档分成几个部分,是为了方便批量整理词条,不混淆。

可以考虑,这两天升级一下。

分隔符既可以四个及以上的空格,也可以是tab

sourcestyle 2 就是干这个事情的。我将后一种称为标准词条格式,而1-2等其他类型都会自动将它们先转为标准词条格式,再进一步后续处理。

感谢答复!期待更新!