查看: 4120|回复: 98
打印 上一主题 下一主题

[工具] 一键制作图片词典 MdxSourceBuilder

[复制链接]
  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    73

    主题

    1552

    回帖

    9万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    96973

    QQ 章笑傲江湖章灌水大神章推广专家

    跳转到指定楼层
    1
    发表于 2020-8-12 16:46:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    本帖最后由 VimVim 于 2020-8-17 12:48 编辑

    # 发布地址

    https://github.com/VimWei/MdxSourceBuilder

    一键制作图片词典:原始词条==> 标准化词条==> mdx源文件 ==> mdx词典文件

    # 动图演示



    更多视频演示: https://www.bilibili.com/video/BV1Ki4y1g74X/

    # 缘起

    图片词典的制作规范与开源工具
    https://www.pdawiki.com/forum/thread-40857-1-1.html







    评分

    3

    查看全部评分

    本帖被以下淘专辑推荐:

  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    73

    主题

    1552

    回帖

    9万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    96973

    QQ 章笑傲江湖章灌水大神章推广专家

    推荐
     楼主| 发表于 2020-8-12 17:12:25 | 只看该作者
    本帖最后由 VimVim 于 2020-8-14 11:29 编辑

    # MdxSourceBuilder

    一键制作图片词典:原始词条==> 标准化词条==> mdx源文件 ==> mdx词典文件


    ## 背景

    ### 需求背景

    时常遇到一些好资料,怎奈只有纸质版或扫描版之类,希望将这些资料转换为可以检索的mdx词典,既方便使用,也提高利用率。

    但是,常常在辛苦整理好词条(这是纯苦力活)之后,使用过往技术方案实现的成品却不够理想,不理想之处有两大方面:

    * 导航不理想,极大降低了用户的使用体验
    * 制作修订过程复杂,极大干扰了制作者的热情

    这完全可以通过工具来解决。

    ### 程序设计背景

    本来我只是提出痛点,希望有高人能出手解决,怎奈高人大都不屑于处理。

    本非码农,可鉴于实在痛的厉害,只好自己用三脚猫功夫倒腾了人生第一个具有完整功能的程序。在此之前,从来没用过list、dict之类的,连这个github发布,都是现学现卖,还望高人不要耻笑,多提点才是。若有高人能够弄个更好的程序或是python版的或是GUI版的,那大家就有福了,我这纯粹抛砖引玉。

    非码农的好处,或许是可以有更好的用户视角:既考虑词典终端用户的使用体验,也考虑普通的词典制作者的使用体验。虽不能解决所有问题,但至少已能解决我自己的大部分诉求,希望也能解决众多mdx词典用户的些许痛点。

    ## 解决方案

    基本思路: 1.原始词条==> 2.标准化词条==> 3.mdx源文件 ==> 4.mdx词典文件

    1. 原始词条:鉴于资料的多样性,原始词条的获取方式也是多种多样,有OCR来的,有手工输入的,也有从其他人的资料转编译来的,也有是因为制作人的喜好或用的工具不同,导致原始词条的格式完全不同。这个特点造就了解决方案必须:(1)兼容多样性,将最常见的词条样式纳入进来;(2)开放性,用户可以根据需要自定义更多个性化的原始词条样式。

        目前,本程序已经实现了对三种原始词条样式的兼容,用户也可以根据需要自定义添加。

    2. 标准化词条:若能将多样化的原始词条转化为标准化的词条,那么后续就可以标准化处理了。因此如何定义标准化词条就变得很重要,它是实现后续程序的基础。

        目前,本程序已经提出了一个1.0版的最基本词条标准:一行页码,之后跟随多行关键词,每行一个关键词,如此往复。之所以说1.0版仅仅是最基本的标准,是因为这个标准还未能兼容如分栏、多层级词条等更复杂的情形,这些都有待后续有高人继续升级完善。

    3. mdx源文件:这个txt文件与其他技术方案的最大区别是——包含了足够优良的页面导航、关键词导航以及用户自由定义的导航信息,极大提升用户对图片词典的使用体验。图片导航如何设计仁者见仁智者见智,因此,解决方案必须:(1)足够优良,不能太简陋,能用机器实现的定位,就不要浪费肉眼定位、繁琐操作定位等人类的精力;(2)兼容多样性,将最常见的导航样式纳入进来,比如封面附录等无需关键词导航、正文等需要关键词导航、拼音等则无需导航直接转链接到现有页面即可;(3)开放性,用户可以根据需要自定义CSS样式,或者添加更多个性化的导航样式。

        目前,本程序已经实现了三种导航样式,满足一本常见词典的基本需求,同时本程序会输出配套的精细CSS,方便用户个性化定制,此外用户也可以自由添加、改造导航样式。

    4. mdx词典文件:这个步骤是可选项,但一步到位可以极大提升用户的体验,更重要的是使用这个工具可以实现跨平台制作mdx词典了,不必局限于Windows,Linux、Mac统统不在话下。当然要说明的是,这一环节用到了另一个开源工具, https://github.com/liuyug/mdict-utils ,功劳统统属于他!

    ## 程序文件及安装

    根本谈不上安装,因为整个程序就是3个Vim脚本文件而已,下载后,直接将这些脚本文件放在与词条文件同一个目录即可。

    * MdxSourceBuilder.vim  这是入口文件:上半部分是配置文件,需要用户定义词典参数;下半部分是主程序,通常无需理会
    * MdxSourceBuilderCore.vim  这是主程序调用的程序,仅当需要高级定制时修改,通常无需理会
    * MdxSourceBuilderCSS.vim  这是CSS文件,样式文件可以在这里定义,通常无需理会

    其他文件,都是附带的Readme、动图演示、参考资料、案例词典之类,可以忽略。

    ## 体验案例“火星词典”

    为展示程序的特点,特制作了“火星词典”,供观摩使用。

    * 案例词条文件:以"火星词典"开头的所有.txt和.html文件,其中body.part1、body.part2、Pinyin三个文件展示了不同的词条格式
    * 程序及词典配置文件:以"MdxSourceBuilder"开头的所有.vim文件,其中MdxSourceBuilder.vim已经包含了案例词典的配置信息

    案例使用:打开Vim,输入命令 `:bro so`,找到MdxSourceBuilder.vim,打开,结束。

    * 你会看到,仅仅使用上述一个命令,就会输出3个成品文件:MarsDict.css,火星词典.txt,火星词典.mdx
    * 你若没有复现上述效果,也别着急,可能是vim、python和mdict-utils没有安装配置好,继续往下看说明文件即可解决
    * 之后你只要照猫画虎,即可制作自己的图片词典了

    ## 使用说明

    ### 极简使用说明

    打开Vim,输入命令 `:bro so`,找到MdxSourceBuilder.vim,打开,结束。

    ### 概要使用说明

    1. 按格式要求准备好词条文件
    2. 使用任意文本编辑器配置好 MdxSourceBuilder.vim 中的词典参数
    3. 打开Vim,输入命令 `:bro so`,找到MdxSourceBuilder.vim,打开,结束。

    ### 详细使用说明

    * 直接打开查阅 MdxSourceBuilder.vim,其中“使用方法”及“词典参数配置”两个部分自带详细使用说明。
    * 若想深度定制,把所有以"MdxSourceBuilder"开头的.vim文件看一遍就知道怎么处理了,即使不懂VimL语言,看注释也能猜个差不离。

    ### Tips: 使用更便捷快速的命令

    * 若觉得如下步骤还要寻找MdxSourceBuilder.vim,有些麻烦

    打开Vim,输入命令 `:bro so`,找到MdxSourceBuilder.vim,打开,结束。

    * 那么建议使用如下更快的方法(自动寻址):

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

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

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

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

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


    ### 相关FAQ

    1. 关于Vim的使用:号称编辑器之神,要想完全掌握确实有难度,但本程序要用到的Vim知识则少的可怜,不必顾虑。

    * Q: vim出现乱码
    * A: 请将`_vimrc`文件复制到`$HOME`目录下,Windows下即是`c:\Users\YourName\`

         其中必备行是 set encoding=utf-8,其他可选,用于提升Vim使用体验

    2. 关于mdict-utils的使用:除了打包,还有很多其他解包、读取等功能,大家可以尽情挖掘改造。

    ## 社区讨论与反馈

    * Github: https://github.com/VimWei/MdxSourceBuilder
    * 讨论社区: https://www.pdawiki.com/forum/thread-41287-1-1.html

    ## LICENSE

    [GPLv3](https://www.gnu.org/licenses/gpl-3.0.en.html)

  • TA的每日心情
    无聊
    2022-7-21 15:56
  • 签到天数: 216 天

    [LV.7]常住居民III

    25

    主题

    646

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    16738
    推荐
    发表于 2020-8-13 18:22:09 | 只看该作者
    本帖最后由 wjl 于 2020-8-13 18:49 编辑
    VimVim 发表于 2020-8-13 12:25
    进一步更新程序。解决Vim乱码以及满足常见的Vim用户需求。

    请将 _vimrc 文件复制到 $HOME 目录下,Window ...

    请问Vim能否实现以下更改呀?方便的话,能否帮忙写一下vim的更改实现方法,现在我只会逐行手动更改,没法实现全文件批量修改
    查找含有<div class="HW_L_C" style="margin-top:(.*?)">的所有行,然后将同一行中的所有margin-top:44.43%中的数字减去<div class="HW_L_C" style="margin-top:后面的数字,保留两位小数

    <a name="2313_L1" href="entry://qualify on"><div class="HW_L" style="margin-top:44.43%"></div></a><a name="2313_L2" href="entry://qualify oneself"><div class="HW_L_C" style="margin-top:52.42%"></div></a><a name="2313_L3" href="entry://qualify to do sth"><div class="HW_L" style="margin-top:68.5%"></div></a><a name="2313_L4" href="entry://qualify with"><div class="HW_L" style="margin-top:81.82%"></div></a><a name="2313_L5" href="entry://quality control"><div class="HW_L" style="margin-top:97.95%"></div></a><a name="2313_L6" href="entry://quality, the"><div class="HW_L" style="margin-top:111.37%"></div></a><a name="2313_L7" href="entry://quamdiuse bene gesserit"><div class="HW_L" style="margin-top:124.73%"></div></a><a name="2313_L8" href="entry://quand meme"><div class="HW_L" style="margin-top:130.2%"></div></a><a name="2313_L9" href="entry://Quanti est Sapere"><div class="HW_L" style="margin-top:135.1%"></div></a>


    点评

    不要在这个MdxSourceBuilder帖子里回复这个内容了,楼歪了。  发表于 2020-8-13 19:41
    你得发我两个文件:一个是原文件(多来几行真实的案例),一个是你希望实现的目标描述。 这个帖子案例不好,这是只有一行还是好多行?看不清  发表于 2020-8-13 19:40
    当然可以  发表于 2020-8-13 18:33
  • TA的每日心情
    开心
    昨天 13:08
  • 签到天数: 1853 天

    [LV.Master]伴坛终老

    40

    主题

    4276

    回帖

    6万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    67170
    4
    发表于 2020-8-12 17:21:01 | 只看该作者
    我是起哄的。:) 目测这个利器要火!工欲善其事,必先利其器!猜测K大是会加1000米还是10000米,以鼓励此类原创型工具,以及由此衍生出的各种词典大作。
  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    73

    主题

    1552

    回帖

    9万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    96973

    QQ 章笑傲江湖章灌水大神章推广专家

    5
     楼主| 发表于 2020-8-12 17:33:03 | 只看该作者
    RickVincent 发表于 2020-8-12 17:21
    我是起哄的。:) 目测这个利器要火!工欲善其事,必先利其器!猜测K大是会加1000米还是10000米,以鼓励此类 ...

    感谢支持。

    若能有这样的工具,我想目前的图片词典将发生极大的变化:

    1、新的图片词典制作将非常容易,基本人人皆可上手,而且生成的质量都还很不错,这些将促进新词典的产生。
    2、对于已有的图片词典,非常容易转换为新标准下的导航,且实现个性化处理,这将极大提升词典的使用体验。
  • TA的每日心情
    开心
    2018-8-8 03:13
  • 签到天数: 1 天

    [LV.1]初来乍到

    254

    主题

    4264

    回帖

    7万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    79050

    小蜜蜂章笑傲江湖章灌水大神章QQ 章

    QQ
    6
    发表于 2020-8-12 18:00:30 | 只看该作者

    VimVim 兄,相當棒的工具,創意十足,漂亮
  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    73

    主题

    1552

    回帖

    9万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    96973

    QQ 章笑傲江湖章灌水大神章推广专家

    7
     楼主| 发表于 2020-8-12 18:52:06 | 只看该作者
    喬治兄 发表于 2020-8-12 18:00
    VimVim 兄,相當棒的工具,創意十足,漂亮

    其实,很大一部分是借鉴自你最初的创意(页面导航和关键字导航),我只是将其拼接在一起,使其更加开放(开源、可融入更多工具链)、兼容(多种词条格式及容错)和扩展(高度自定义、跨平台)。
  • TA的每日心情
    开心
    2018-8-8 03:13
  • 签到天数: 1 天

    [LV.1]初来乍到

    254

    主题

    4264

    回帖

    7万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    79050

    小蜜蜂章笑傲江湖章灌水大神章QQ 章

    QQ
    8
    发表于 2020-8-12 19:06:40 | 只看该作者
    VimVim 发表于 2020-8-12 18:52
    其实,很大一部分是借鉴自你最初的创意(页面导航和关键字导航),我只是将其拼接在一起,使其更加开放( ...

    VimVim兄,太客气了,自從有VBA都用VBA生成,導航其實也可以弄,只是很懶的再搞了...,小弟對於粗配的要求沒有太高,只要排序正確就算及格了,哈!哈哈哈哈哈!
  • TA的每日心情
    无聊
    2022-7-21 15:56
  • 签到天数: 216 天

    [LV.7]常住居民III

    25

    主题

    646

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    16738
    9
    发表于 2020-8-12 19:30:49 | 只看该作者
    多谢分享制作工具,不过Vim对于大多数人学习难度有点高吧。
  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    73

    主题

    1552

    回帖

    9万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    96973

    QQ 章笑傲江湖章灌水大神章推广专家

    10
     楼主| 发表于 2020-8-12 19:35:48 | 只看该作者
    本帖最后由 VimVim 于 2020-8-12 20:03 编辑
    wjl 发表于 2020-8-12 19:30
    多谢分享制作工具,不过Vim对于大多数人学习难度有点高吧。

    所需要的所有Vim知识已经在动图演示的字幕中显示了,总结就是:

    :new
    :so MdxSourceBuilder

    随便找个识字的人都能照着这些字按顺序输入,不难吧。

    我要吃肉,是不需要学会打猎或养牛养羊甚至当个厨师,只要会拿起筷子或刀叉送到嘴里就好了。
    我要浏览个网页,是不需要学习计算机原理、HTTP协议或制作网站之类,只要会点击超链接就好了。


  • TA的每日心情
    擦汗
    2022-3-25 11:07
  • 签到天数: 66 天

    [LV.6]常住居民II

    23

    主题

    510

    回帖

    3585

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3585

    QQ 章灌水大神章笑傲江湖章

    11
    发表于 2020-8-12 20:03:06 | 只看该作者
    RickVincent 发表于 2020-8-12 17:21
    我是起哄的。:) 目测这个利器要火!工欲善其事,必先利其器!猜测K大是会加1000米还是10000米,以鼓励此类 ...

    K大从来不会吝啬的,我觉得可以加十朵浮云,那个更给力
  • TA的每日心情
    开心
    2019-8-21 19:27
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    61

    主题

    627

    回帖

    16万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    162733

    QQ 章灌水大神章笑傲江湖章

    12
    发表于 2020-8-12 20:10:39 | 只看该作者
    惊得我赶忙回去看了下,看看电脑上不知多少年前装的GVim还在不
  • TA的每日心情
    开心
    2019-10-10 05:35
  • 签到天数: 328 天

    [LV.8]以坛为家I

    12

    主题

    2675

    回帖

    4万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    46073
    13
    发表于 2020-8-12 21:27:40 | 只看该作者
    本帖最后由 Jiangxi 于 2020-8-12 21:38 编辑
    VimVim 发表于 2020-8-12 17:12
    # MdxSourceBuilder

    mdx图片词典制作工具:使用一个命令,实现从原始词条==> 标准化词条==> mdx源文件 ==> ...

    菜鸟一问:
    用Gvim打开MdxSourceBuilder.vim,显示乱码,是缺啥字体么?
  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    73

    主题

    1552

    回帖

    9万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    96973

    QQ 章笑傲江湖章灌水大神章推广专家

    14
     楼主| 发表于 2020-8-12 21:57:31 | 只看该作者
    本帖最后由 VimVim 于 2020-8-12 22:17 编辑
    Jiangxi 发表于 2020-8-12 21:27
    菜鸟一问:
    用Gvim打开MdxSourceBuilder.vim,显示乱码,是缺啥字体么?

    不是字体的问题。
    你找到vim安装目录下有个_vimrc文件,用任意文本编辑器打开,随便在哪加入一行(比如最顶部或最后一行):

    set encoding=utf-8

    以后就不会有乱码问题了。

    点评

    谢谢,加了set encoding=utf-8后,打开显示正常了。但Gvim软件的所有菜单变成乱码了  发表于 2020-8-12 22:34
  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    73

    主题

    1552

    回帖

    9万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    96973

    QQ 章笑傲江湖章灌水大神章推广专家

    15
     楼主| 发表于 2020-8-12 23:20:19 | 只看该作者
    本帖最后由 VimVim 于 2020-8-12 23:39 编辑

    不用管什么菜单,不影响使用这个工具。

    若仅仅是解决菜单乱码或者是根治中文乱码有关的常见问题,建议vimrc文件加入如下内容:

    1. " Basic Setting -----------------------------------------------------------{{{1
    2. set nocompatible    "启用不兼容Vi模式
    3. syntax on
    4. filetype plugin indent on   "文件类型自动识别,并使用相关插件和自动缩进

    5. " Encoding related --------------------------------------------------------{{{1
    6. set encoding=utf-8  "Vim 内部工作编码
    7. set fileencoding=utf-8  "设置此缓冲区所在文件的字符编码;新文件默认编码
    8. " 打开文件时自动尝试下面顺序的编码
    9. set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
    10. source $VIMRUNTIME/delmenu.vim
    11. set langmenu=zh_CN.UTF-8    "指定菜单语言,若需要英文则none
    12. source $VIMRUNTIME/menu.vim
    13. " language message en_US.ISO_8859-1 "指定提示信息语言
    14. language message zh_CN.UTF-8    "指定提示信息语言
    15. set ambiwidth=double    "使用US-ASCII字符两倍的宽度显示宽度不明的字符
    16. set nobomb    "取消UTF的BOMB文件头
    17. set ffs=unix,dos,mac    " 文件换行符,默认使用 unix 换行符
    18. set cm=blowfish2    "设置新的加密算法
    复制代码


    若要解决Vim的各种问题,并按照自己的心意来,那么就需要下功夫学会定制vimrc文档。不过使用Vim初期,可以简单的复制别人的vimrc文件直接使用,网络一搜一大堆。



  • TA的每日心情

    2020-11-25 15:28
  • 签到天数: 86 天

    [LV.6]常住居民II

    1

    主题

    125

    回帖

    5490

    积分

    会元

    Rank: 7Rank: 7Rank: 7

    积分
    5490
    16
    发表于 2020-8-13 03:55:48 | 只看该作者
    真是个狠人。。谢谢。
  • TA的每日心情
    无聊
    2022-7-21 15:56
  • 签到天数: 216 天

    [LV.7]常住居民III

    25

    主题

    646

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    16738
    17
    发表于 2020-8-13 09:17:56 | 只看该作者
    本帖最后由 wjl 于 2020-8-13 09:39 编辑

    我执行脚本后,生成的MarsDict.css,火星词典.txt,内容都是空的,没有生成 火星词典.mdx 不知道怎么回事
    操作方式是在gvim_8.2.1424_x64_signed中单击“运行vim脚本”按钮,选择MdxSourceBuilder.vim,图片链接无法访问吗?https://s1.ax1x.com/2020/08/13/azemGR.gif
    我电脑上安装了python,没有安装mdict-utils,这应该不影响生成 MarsDict.css,火星词典.txt  这两个文件吧




    点评

    前面我理解错了,原来MarsDict.css和火星词典.txt都是空的。需要看到你的复现步骤,以及结果截图。  发表于 2020-8-13 09:29
    MarsDict.css能够输出,说明一切正常。但火星词典.txt内容是空的,有点奇怪。还请说说你是如何操作的?复现的具体步骤。  发表于 2020-8-13 09:25
    生成火星词典.mdx需要安装python和mdict-utils  发表于 2020-8-13 09:24
    看不见截图,建议传输图片到图床:https://sm.ms/  发表于 2020-8-13 09:23
  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    73

    主题

    1552

    回帖

    9万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    96973

    QQ 章笑傲江湖章灌水大神章推广专家

    18
     楼主| 发表于 2020-8-13 09:41:13 | 只看该作者
    本帖最后由 VimVim 于 2020-8-13 09:47 编辑
    wjl 发表于 2020-8-13 09:17
    我执行脚本后,生成的MarsDict.css,火星词典.txt,内容都是空的,没有生成 火星词典.mdx 不知道怎么回事
    ...

    看到视频了。

    你的操作步骤很奇怪。输出的结果也不应该出现在vim的程序目录下,而是词典目录下。

    估计你的vim“工作路径”错了。请严格按照步骤来。

    1、关闭所有vim程序。
    2、右键MdxSourceBuilder.vim,使用vim打开(必须这样,才能保证vim的工作路径就是当前的词典目录,而非vim程序目录)
    3、使用 :new 新建文档
    4、执行 :so MdxSourceBuilder.vim

    或者你如果会更改vim的工作路径,那么第二步想怎么打开就怎么打开:
    1、输入命令 :pwd   可以看到当前的vim工作路径
    2、输入命令 :cd..  将工作目录变更为上层目录 或  :cd c:\test 将工作路径变更为test目录,如此类推。命令:cd 后加上词典目录即可将vim的工作目录变更到词典所在目录,与dos 或 windows的cmd的cd命令一样。
  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    73

    主题

    1552

    回帖

    9万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    96973

    QQ 章笑傲江湖章灌水大神章推广专家

    19
     楼主| 发表于 2020-8-13 09:59:26 | 只看该作者
    VimVim 发表于 2020-8-13 09:41
    看到视频了。

    你的操作步骤很奇怪。输出的结果也不应该出现在vim的程序目录下,而是词典目录下。

    如果你希望你这样的操作也可以,更改MdxSourceBuilder.vim,添加如下最后两行(确保位置如下所示):
    " ======================================================
    " 以下为程序正文,不熟悉Vim的用户请勿动
    " ======================================================
    "
    "
    " 取得本文件所在的目录,并设置为当前工作目录
    let s:home = fnamemodify(resolve(expand('<sfile>:p')), ':h')
    execute 'cd ' . s:home
  • TA的每日心情
    无聊
    2022-7-21 15:56
  • 签到天数: 216 天

    [LV.7]常住居民III

    25

    主题

    646

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    16738
    20
    发表于 2020-8-13 10:01:12 | 只看该作者
    VimVim 发表于 2020-8-13 09:41
    看到视频了。

    你的操作步骤很奇怪。输出的结果也不应该出现在vim的程序目录下,而是词典目录下。

    多谢,严格按照你给出的步骤,现在可以正常生成 MarsDict.css,火星词典.txt 了

    https://s1.ax1x.com/2020/08/13/azMjaT.gif



  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    73

    主题

    1552

    回帖

    9万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    96973

    QQ 章笑傲江湖章灌水大神章推广专家

    21
     楼主| 发表于 2020-8-13 10:07:47 | 只看该作者
    本帖最后由 VimVim 于 2020-8-13 10:18 编辑
    wjl 发表于 2020-8-13 10:01
    多谢,严格按照你给出的步骤,现在可以正常生成 MarsDict.css,火星词典.txt 了

    https://s1.ax1x.com/20 ...

    我一会更新一下程序(就是上贴所说),让其兼容各种操作。而且,以后不必打开MdxSourceBuilder.vim文件(我原来的设想是通过这个步骤自动设置工作目录,没想到你们却是另一种操作,以致失效),即可使用。

    此外,你已经有Python(需要与vim版本配对,vim的下载页面都有标识支持的python版本;同时python安装时要将其加入系统的path目录),安装 mdict-utilis 就很简单了,只要在windows cmd中输入如下命令,回车即可:

    pip install mdict-utils


  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    73

    主题

    1552

    回帖

    9万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    96973

    QQ 章笑傲江湖章灌水大神章推广专家

    22
     楼主| 发表于 2020-8-13 10:49:30 | 只看该作者
    本帖最后由 VimVim 于 2020-8-13 12:50 编辑
    wjl 发表于 2020-8-13 09:17
    我执行脚本后,生成的MarsDict.css,火星词典.txt,内容都是空的,没有生成 火星词典.mdx 不知道怎么回事
    ...

    已更新程序和说明文档,现在按照你这种操作方法也可以了,更简单,而且不容易出错。

    打开Vim,单击 “运行vim脚本” 按钮  或  输入命令 :bro so ,找到MdxSourceBuilder.vim,确定,结束。

    注:原来的操作方法(如GIF Demo所示)依然是可行的,熟悉Vim的用户会更喜欢,因为会自动寻址。


  • TA的每日心情
    无聊
    2022-7-21 15:56
  • 签到天数: 216 天

    [LV.7]常住居民III

    25

    主题

    646

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    16738
    23
    发表于 2020-8-13 11:32:35 | 只看该作者
    VimVim 发表于 2020-8-13 10:49
    已更新程序和说明文档,现在按照你这种操作方法也可以了,更简单,而且不容易出错。

    打开Vim,单击 “运 ...

    现在可以直接选择vim脚本来生成mdx,不用手工输入命令也可执行生成操作了
    https://s1.ax1x.com/2020/08/13/azsapd.gif

    点评

    这个词典的奥妙你可能没发现:词典的最底下还有不一样的导航。  发表于 2020-8-13 11:42
    是的,更方便像你这样喜欢GUI的用户,我自己已经习惯命令行模式,甚至隐藏菜单和工具栏。  发表于 2020-8-13 11:39
  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    73

    主题

    1552

    回帖

    9万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    96973

    QQ 章笑傲江湖章灌水大神章推广专家

    24
     楼主| 发表于 2020-8-13 12:25:34 | 只看该作者
    本帖最后由 VimVim 于 2020-8-13 17:13 编辑
    VimVim 发表于 2020-8-12 23:20
    不用管什么菜单,不影响使用这个工具。

    若仅仅是解决菜单乱码或者是根治中文乱码有关的常见问题,建议vimr ...

    进一步更新程序。解决Vim乱码以及满足常见的Vim用户需求。

    请将 _vimrc 文件复制到 $HOME 目录下,Windows下即是 c:\Users\YourName\
  • TA的每日心情
    开心
    2019-10-10 05:35
  • 签到天数: 328 天

    [LV.8]以坛为家I

    12

    主题

    2675

    回帖

    4万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    46073
    25
    发表于 2020-8-13 21:50:54 | 只看该作者
    wjl 发表于 2020-8-13 11:32
    现在可以直接选择vim脚本来生成mdx,不用手工输入命令也可执行生成操作了
    https://s1.ax1x.com/2020/08/1 ...

    能发一下您的python和Gvim安装文件么?我折腾半天就是生成不了mdx文件,不知是我的vim版本与python不匹配吗。不好意思,太菜了。谢谢。