大部分源码由 ChatGPT-4 模型生成, 提问过程
Emacs 查看字典翻译内容, 并自动播放字典音频文件(可选).
(use-package dict-line
:diminish
(dict-line-mode "🗺️")
:ensure nil
:load-path "path-to-your/dict-line"
:defer 2
:custom
;; (dict-line-audio t);; 自动播放音频
;; (dict-line-audio-root-dir "~/your/pronunciations/");; 音频目录
(dict-line-dict-directory "~/your/dict/");; 字典文件目录
(dict-line-dict-personal-file "~/your/dict/Mydict.ts");; 手动添加字典文件, M-x dict-line-word-save-from-echo
;; 显示方式
(dict-line-display #'dict-line--posframe);; 显示依赖 posframe.el
;; 或者使用 message 显示
;; (dict-line-display #'dict-line--message)
;; 或者自定义显示方式, 字典内容结果变量: dict-line-word, dict-line-dict
:config
(dict-line-mode t)
)
播放音频外部依赖程序: MPlayer - The Movie Player
音频文件: GitHub - yousefvand/pronunciations at 809cc0ca4d6ac4dbf0519e1caa40e581d41c2df3
(setq dict-line-audio-root-dir "path-to/dict/audio")
(setq dict-line-audio t)
- dict-line-dict-directory 字典文件目录, 必须的
- dict-line-idle-time 光标空闲多长开始查找单词, 默认: 0.5 秒
- dict-line-audio 播放单词音频文件 t/nil
- dict-line-audio-root-dir 音频文件夹
- dict-line-audio-program 音频文件播放后端程序, 默认: mplayer
- dict-line-audio-play-program-arg 音频播放后端程序参数
- dict-line-display 显示字典内容被调用变量.
- dict-line-posframe-location 使用 posframe 显示字典内容的位置.
- [X] 异步
- [ ] 支持更多 Dict 类型
- [ ] 外部索引, 例如: ripgre, grep 等等
- [X] 支持更多显示方式, 例如: posframe, popup, overlay
- [ ] 支持更多后端, 例如: sdcv
解析速度蛮不错的, 感觉不到卡顿.
欢迎 PR.
Welcome Pull request.
新增功能: 支持定义 posframe 显示方式.
修复 async.el 引起的错误 buffer 生成 \*emacs:error\*
重构, 支持异步.
添加 音频 文件 自动播放 支持
修复开启 dict-line-mode 导致 modeline 显示 invalid 错误