【讨论】一种提升英文阅读体验的可能性

大致如此,个人习惯单词提示在右面,但这个突出显示和独立提示区都有了

顺便想到,如果buffer先判断一下是否是html,如是文本先转成html再重渲染,是不是处理突出显示就在编程上就容易些

阅读的心流最好还是不要被查词打断的好,有个大概意思看过去就行了。

翻译句子就又是另一个难度了。有个左右对照的翻译插件了解一下(辅助翻译,不是自动翻译插件)?

还有就是我之前提到过的,不处理 UI 相关问题,会使插件维护起来更方便,用起来也更轻巧。

是,这点上一致,你前面说的阅读模式开关和我提的一键显隐是一个功能

翻译句子我是回复懒猫时补充说明目标不是单词(长篇难的直接全文翻译,不难的自己看),不是我需要段落翻译,当然谢谢推荐

1 个赞

今天拜读到懒猫的《Emacs插件开发手册》, 里面写到基于文字和overlay的高亮是不是可参考 (撤回我前面html渲染的乱想)

这个插件就是基于 overlay 来实现的。开关已经有了,更新一把。dictionary-overlay-toggle 这个命令切换。

1 个赞

只是开关是当前buffer全局的。不是针对单个单词。

有没有办法支持 pdf-tools的buffer呀,目前在pdf-tools的buffer里面运行会直接导致websocket 连接关闭。 查了一下貌似不行,无法把pdf-tools buffer转成普通的文本buffer

我估计不行吧。pdf-tools 的 buffer 太特殊了。

修改翻译的功能加上了。可以列出当前单词的若干翻译,选择一个认为合适的翻译,或者直接输入翻译值。

需要多更新一个python 包 sexpdata, 可以把python 对象转换为 sexp, 虽然代码并没有使用复杂的sexp, 但还是把这个依赖加上了。

引流:dictionary-overlay

git README 作为安装使用的介绍,dictionary-overlay 一些实现的逻辑,会放在blog 当中,作为详细文档。

4 个赞

大佬牛逼, 真的太好用了! :+1:

请问大佬,这个能够自动化一下么?

在尝试使用的使候,把未标记的单词全部标记为己知的时候,`dictionary-overlay-mark-buffer’ 会把一些标点符号、数字也记录进knownwords.txt文件中,这个是不是可以过滤一下,把标点和数字剔掉?

====

目前使用需要手动打开dictionary-overlay-start,然后再调用dictionary-overlay-render-buffer ,这两个是不是可以render的时候自动start?

你用 dictionary-overlay-install 这个命令试试呢?

试过了,需要手动 cd 进去那个文件夹 pip install build

环境:macOS 11.6, emacs-plus@29

我 Mac 28.2 不需要啊,直接就可以install。

我刚拉取了最新的commit, 发现可以自己build了。

这个目录改成这样会不会比较好:

(defvar dictionary-overlay-user-data-directory
    (concat (file-name-parent-directory user-init-file)
            "dictionary-overlay-data/"))

理由:

如果 emacs 配置在 ~/.config/emacs/, 跑了一下dictionary-overlay, 生成了一个 ~/.emacs.d/ 文件夹,重启的时候个人配置就跑不起来了,因为 emacs 检测配置的时候后者优先于前者。

更新:

发了个 PR。如果有不对,请直接修正。 :grin:

1 个赞

恩,有道理。我因为不知道怎么判断用户的 init-file 是哪个目录,所以写死了。我来合并一下

1 个赞

恩,我正在尝试接入 nltk 来进行词干提取。应该可以顺便加上 stopword 过滤。

dictionary-overlay-start 我通常是直接放在配置文件里了,文件加载的时候启动的

觉得你说得有道理,把 start 加在 render 方法里,能少一步算一步。

不过还是推荐直接在加载配置文件的时候就启动。