Future-Scholars / paperlib-ai-chat-extension

2 stars 1 forks source link

Milestone 0.2.0 #23

Open GeoffreyChen777 opened 1 month ago

GeoffreyChen777 commented 1 month ago

@igoogolx 最近我在高强度使用这个插件,发现一些还可以优化的地方。

不用太着急,抽空慢慢一个一个做就好。感谢!

igoogolx commented 2 weeks ago

有几个比较大的改动:

功能都已经开发完成了,还需要再测试下。另外现在的进度条功能,我不太确定是否合理,你可以先试用下。我们确定没问题之后,再合并 PR。

GeoffreyChen777 commented 2 weeks ago

太牛啦!!我会抽空测试下,万分感谢!

GeoffreyChen777 commented 1 week ago
  1. 我测试了进度显示,我认为现在这样用文字显示就足够了。
  2. 关于 disable cache 我觉得可能可以稍微改一下逻辑。现在的是需要用户disable,再打开一个新论文的时候,才会触发 reset。但是我想这个功能对应的场景需求应该是,cache有错误,或者 cache 质量不好,我想重新解析一下 pdf,所以需要删除掉原来的cache。基本不会有人拒绝 cache 吧。如果是这样的话,按照目前的逻辑,我就需要,首先 disable,然后打开一个论文 chat 触发reset,然后回去设置 enable。之后才能让其他论文继续 cache。所以我觉得可以这样修改一下:
    • 在插件 preference 里存一个type: hidden的项,比如叫做require-cache-reset. type 是可以是 hidden 来让UI不显示的。然后当用户的disable-cachefalse 变为 true 的时候,代表着用户想要 reset cache。此时,设置 require-cache-resettrue。你可以在 ext/src/main.ts 里很容易监听这个变化。
    • view/src/utils/persist.ts 里,判断要不要 resetCache 使用 require-cache-reset,当 reset 了之后,重新设置它为falsedisable-cache 判断的应该是需不需要创建 cache,而不是需不需要 reset。
igoogolx commented 1 week ago

我理解你的意思。其实我是想把 disable-cache 做成 Button 的,因为它应该是一次性触发的动作,但是 preference 的 type 好像不支持 Button, 所以用 Switch 替代了。请问下 preference 的 type 能支持 Button 吗?

GeoffreyChen777 commented 1 week ago

是这样的,就是个switch替代button的方案。

目前paperlib主体没写button的组件。如果实现了之后就可以用button啦。如果你想写这个组件,可以直接 PR paperlib,具体在这个地方:

https://github.com/Future-Scholars/paperlib/blob/main/app/renderer/ui/preference-view/components/extension-setting.vue

igoogolx commented 5 days ago

我提了 PR 来在 preference 支持 Button,paperlib-api 需要发新版本。