hcfyapp / crx-selection-translate

一站式划词 / 截图 / 网页全文 / 音视频翻译扩展。
https://hcfy.app
4.06k stars 539 forks source link

两个网页翻译功能的增加/改进 #1025

Closed hmrg-grmh closed 2 years ago

hmrg-grmh commented 3 years ago

希望增加功能简介(与原因)

  1. 未选中文本时,右键页面,也能有划词翻译在右键菜单里;这个右键菜单里的【划词翻译】可以展开子菜单,其中有【网页翻译】

    原因 : 有的时候快捷键会失效,所以来一个多种触发功能的途径。

  2. 增加一个在设置里或者在网页翻译右下角小弹框上的复选框,若选中,则可以进入【翻译整个网页】的模式,该模式下文细说;

    原因 : 我个人的使用中,一般都只有整个网页都要翻译的时候。这样就可以省去手动滑来滑去。

  3. 网页翻译时,对于仍然是“请稍后”的部分,希望能支持针对这部分的手动重试或者自动重试。

    原因 : 这样可以确保翻译效果在不是那么稳定的网络环境里,也能确保足够的可靠性。现在的问题就是,有的时候,网络波动了一下又好了,但是很长的网页翻译了一半,后面就永远都是【正在翻译,请稍候……】了。

详细的 ...

  1. 略,大致可以参考 FeHelper 的右键。

  2. 【翻译整个网页】:就是说,打上这个勾了的话,就不要,我看到哪才对哪提交翻译了,而是用一个【对于引擎来说最合适最稳定的请求频率】,【依然是每一自然段分别地】向引擎提交翻译任务。不需要实现出【整个网页同时翻译好】的效果,只是希望,即便我没有看到的文字,也会被当作看到一样去提交翻译,即触发条件不是我去看,而是它加载完成。

  3. 关于自动重试的功能,希望在显示上也能有所体现。即例如:

    1. 提交翻译任务后,显示【正在翻译,请稍候……】
    2. 接口调用失败后,显示【翻译失败】;并触发重试,仅在成功处罚重试时,在前面的【翻译失败】后紧接着显示【,重试中……】
    3. 请求超时后,显示【请求超时】;并触发重试,仅在成功处罚重试时,在前面的【请求超时】后紧接着显示【,重试中……】
    4. 重试部分可以显示成【,[0]重试中……】,每多重试一次那个数字就加 1
    5. 重试部分还可以考虑显示成【,[0]重试中…… 33s ...】,即后面再显示一个读秒。

    上述显示上的区分,也有利于再出现问题后作为排查线索。

lmk123 commented 3 years ago

第一点:网页翻译已经加入进右键菜单了,你把划词翻译升级到 v7.6.6 就能看到了

第二点:我可以在网页翻译工具栏上添加一个设置项,勾选之后就自动翻译网页全部文本,而不是像现在这样只有当网页滚动到可见的文本时才翻译。我给这个改进开了一个新的 issue #1026

第三点:DeepL 的集成方式不是接口调用,所以实际上我不能准确判断出 DeepL 是否报错了,也不太好确定它什么时候算是超时。假如我自行设定一个超时时间比如 10s 没获取到结果就算超时,但是 DeepL 的速度偶尔就是会慢到需要 10s 后才获取到翻译结果。所以让 DeepL 自动重试这个问题有点难办 :joy:

GH01 commented 3 years ago

我觉得楼主的 2 说的好像是:尽量自然的 小幅度的预取。 而不是 全页预取。

hmrg-grmh commented 3 years ago

第一点:网页翻译已经加入进右键菜单了,你把划词翻译升级到 v7.6.6 就能看到了

第二点:我可以在网页翻译工具栏上添加一个设置项,勾选之后就自动翻译网页全部文本,而不是像现在这样只有当网页滚动到可见的文本时才翻译。我给这个改进开了一个新的 issue #1026

第三点:DeepL 的集成方式不是接口调用,所以实际上我不能准确判断出 DeepL 是否报错了,也不太好确定它什么时候算是超时。假如我自行设定一个超时时间比如 10s 没获取到结果就算超时,但是 DeepL 的速度偶尔就是会慢到需要 10s 后才获取到翻译结果。所以让 DeepL 自动重试这个问题有点难办 😂

前两点收到~

第三点:其实也可以让用户指定。我的话,至少我觉得,一小时还是【正在翻译,请稍候……】,而别的页面已经可以正常翻译的话,之前页面的翻译肯定不正常……

hmrg-grmh commented 3 years ago

我觉得楼主的 2 说的好像是:尽量自然的 小幅度的预取。 而不是 全页预取。

没有,开发者正确理解了我的意思。

现在这个插件的逻辑,就是尽量小幅度的,而我想要看整个网页的话就会先滑一遍整个页面,页面大的话会很麻烦……

GH01 commented 3 years ago

小幅度的取 = 预先翻译

hmrg-grmh commented 3 years ago

小幅度的取 = 预先翻译

哦,你的意思是这个。是这样,我的意思是【一点一点地全提交】而不是【强制一次性全提交】。

hmrg-grmh commented 3 years ago

小幅度的取 =  预先翻译

哦,你的意思是这个。是这样,我的意思是【一点一点地全提交】而不是【强制一次性全提交】。

不过我刚刚想到,像如那种时刻都在动态中的 web ,如这个:https://elixirforum.com/t/big-data-with-elixir

在这种时候,【整个WEB的内容】的含义,也就并非是【当前页面不论是否在不在视野内的全部内容】了。

那么,如果要确保【整个WEB的内容】仍然能都被翻译的话,就应该对 #1026 中的【自动连续翻译】功能,就可能,也要保留原来的【进入视野时要触发翻译】的触发机制了。

hmrg-grmh commented 3 years ago

第一点:网页翻译已经加入进右键菜单了,你把划词翻译升级到 v7.6.6 就能看到了

第二点:我可以在网页翻译工具栏上添加一个设置项,勾选之后就自动翻译网页全部文本,而不是像现在这样只有当网页滚动到可见的文本时才翻译。我给这个改进开了一个新的 issue #1026

第三点:DeepL 的集成方式不是接口调用,所以实际上我不能准确判断出 DeepL 是否报错了,也不太好确定它什么时候算是超时。假如我自行设定一个超时时间比如 10s 没获取到结果就算超时,但是 DeepL 的速度偶尔就是会慢到需要 10s 后才获取到翻译结果。所以让 DeepL 自动重试这个问题有点难办 😂

对了,第三点也许可以这样:

(主要是,第二点如果不配合第三点的话,也可能会有另一种比较灾难的结果,那就是这个时间段网不好的话整个页面就都卡死。。。)

qizidog commented 3 years ago

右键菜单中,名字太长了。我这边看到的名字是“划词翻译-简单好用的划词/截图/网页翻译扩展”,强行撑大了我的右键菜单。

希望增加隐藏右键菜单的选项,或者名字弄短一点吧,“截图/网页翻译”就行了,最多“划词翻译-截图/网页翻译”,强迫症实在是受不了!!!

lmk123 commented 3 years ago

@qizidog 已发布 v7.6.8 将右键菜单的名称缩短为“划词翻译”四个字

qizidog commented 3 years ago

感动了!thx developer!

------------------ 原始邮件 ------------------ 发件人: "lmk123/crx-selection-translate" @.>; 发送时间: 2021年5月8日(星期六) 晚上9:57 @.>; @.**@.>; 主题: Re: [lmk123/crx-selection-translate] 两个网页翻译功能的增加/改进 (#1025)

@qizidog 已发布 v7.6.8 将右键菜单的名称缩短为“划词翻译”四个字

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

lmk123 commented 2 years ago

这个讨论贴中的两个需求都已分别开了 issue:

所以这个讨论贴我就先关了,有新的需求可以再开 issue

lmk123 commented 2 years ago

@GH01 @hmrg-grmh 我最近整了个“划词翻译核心用户群”,因为你们两位经常给划词翻译提建议,所以想邀请你们加入,如果感兴趣的话可以在公众号联系我,我拉你们进群

GH01 commented 2 years ago

感谢邀请,抱歉未能及时回复。 以我的使用范围而言,我已经很满足了,并且体谅你忙不过来(提也白提 :rofl:),所以后期发言少了。 我会看看你们的讨论,请别介意我常静陪默坐。

lmk123 commented 2 years ago

@GH01 其实是我最近在开发桌面端的划词翻译,等第一个版本发布出来之后,我想先提供给核心用户试用看看感受。目前核心群就一个人 :joy: 非常期待你们的加入

GH01 commented 2 years ago

群里另一位就是本楼楼主吗?

lmk123 commented 2 years ago

群里另一位就是本楼楼主吗?

不是。群里那一位经常在公众号里跟我沟通,应该没在 GitHub 上出现过。