一个支持多词典的翻译插件(目前仅支持单词)

windows下声音播放能弄好就完美了!

Windows 声音播放没问题的啊(亲测)。你安装一个 mpv 就可以了,可以通过 scoop 安装。

potplayer 可以不,或者 windows media player!电脑没有装mpv播放器

你可以尝试一下通过以下设置,将声音播放器设置为你想用的播放器名称。(我没试过)

(setq fanyi-sound-player "potplayer")

前提是 Path 中要找的到你的播放器

谢谢,稍后回复实验结果!

fanyi-haici-chart-inhibit-same-window 我新加了一个选项来使得树状图在另一个 window 上显示了。设置它为 t 就跟上面的图一样了

1 个赞

:+1: :+1:
设置了 (setq fanyi-haici-chart-inhibit-same-window t) 后,柱状图和 fanyi 主界面并排显示了,直观,按 q 退出也都正常了。

@Youmu 今天遇到一个问题,在搜索一个单词(config),取消后重新搜索另外一个单词(ensure),返回结果两个都有,如下图:

猜测:取消时没有kill掉所有线程?

是有取消操作的,我看看还有哪个边界情况没考虑

请问能否订制翻译界面显示的词典顺序?个人因素,希望每次首先看到的是朗文的英英翻译,强迫自己习惯用英英翻译的思考方式,这点能否实现?

在多线程的环境下指定顺序有点难啊。不过也不是没有办法。

你可以修改fanyi-render,在insert之前先goto-char。

你还可以用一个模板,用魔术字符串指定位置,然后fanyi-render的时候搜索魔术字符串定位就行了。

是这个思路,针对不同的字典服务先在 buffer 上分配不同的 uuid,当有结果的时候再找到对应位置再渲染。

但是我个人觉得不是很有必要:

  1. 不美观,虽然 text 可以用 invisible 的 property 来隐藏,但是它还是存在的。
  2. 在字典标题上可以直接用 tab 来 fold,这样也可以快速的折叠对应的字典内容
  3. imenu 也可以直接跳到对应的字典

如果让我来实现这个功能的话,我会选择提供字典初始的折叠状态。这样即使所有结果都返回了但是还是折叠状态也就避免了中文翻译的“剧透”。

@Youmu 请教下,能否通过设置关闭搜索错误的提示?

比如:搜索中文时,4个字典中肯定是有几个不会有结果的。我从标题栏的 1/4 已经知道有三个词库没结果了。

按上述设置,无法播放声音!

还是安装一个 mpv 吧,https://mpv.io/installation/
Windows 上可以通过 scoop 或者 Chocolatey 安装,很方便的。我选择的是 scoop。

搜索 :Did you misspell the word,并注释掉那一行。如果觉得这样不好,那可以搜索某个特殊的函数名,让用户自己设置错误处理函数。也可以通过hook判定是否有用户处理函数。

如果哪个用户说:我想播放第一个例句的声音。

又该如何是好。还是加个hook,pre-render,post-render,你想干什么就受制于你的想象力了。

直接修改源代码是可以实现。还是希望作者可以加一个选项,会比较方便一些。

前几天刚增加了 fanyi-verbose ,把它设置为 nil 就行

1 个赞

嗯,这种方式最用户来说最友好,我思考一下该以怎样的方式来提供