dsh-fish-memory 1.4.5 → 1.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +50 -21
- package/README.md +3 -1
- package/lib/client.js +62 -2
- package/lib/index.js +6980 -6790
- package/package.json +56 -56
package/LICENSE
CHANGED
|
@@ -1,21 +1,50 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
1
|
+
Yuuyuko-uu 插件许可 1.2
|
|
2
|
+
|
|
3
|
+
版权所有 (c) 2026 Yuuyuko-uu
|
|
4
|
+
|
|
5
|
+
──────────────────────────────────────────────────────────────
|
|
6
|
+
|
|
7
|
+
【为什么不用 MIT】
|
|
8
|
+
|
|
9
|
+
2026 年 10 月,有人把我这几个插件(代码、README,还有我做的图)
|
|
10
|
+
改名、去掉署名,在视频里说成「自研」发布。
|
|
11
|
+
|
|
12
|
+
他没有违反 MIT —— MIT 只要求保留版权声明,不管「这是谁做的」。
|
|
13
|
+
|
|
14
|
+
所以换成了这份许可。它只多要求一件事:
|
|
15
|
+
你拿走的时候,说一声这是谁做的。
|
|
16
|
+
|
|
17
|
+
安装、修改、商用,全都允许 —— 和 MIT 一样宽。
|
|
18
|
+
|
|
19
|
+
──────────────────────────────────────────────────────────────
|
|
20
|
+
|
|
21
|
+
一、允许,不需要另外问我
|
|
22
|
+
|
|
23
|
+
1. 安装到自己的机器上使用,长期用,商用也行。
|
|
24
|
+
2. 读源码、改源码、改成自己需要的版本(改给自己用,不必公开)。
|
|
25
|
+
3. 把你的改动发给我(issue / PR);我采纳后,按仓库惯例记你的贡献。
|
|
26
|
+
4. 在文章、视频、教程里介绍、演示、截图、引用本项目 —— 请附上原仓库地址。
|
|
27
|
+
|
|
28
|
+
二、允许,但必须做到
|
|
29
|
+
|
|
30
|
+
5. 再分发时(把代码或其实质性部分放进你自己的仓库、整合包、安装包,
|
|
31
|
+
或者换一个包名发布),必须同时做到:
|
|
32
|
+
a) 完整保留本文件,不删、不改、不缩略;
|
|
33
|
+
b) 在 README 的第一屏写明:本项目派生自 <原仓库地址>,原作者 Yuuyuko-uu;
|
|
34
|
+
c) 说明你改了哪些部分。
|
|
35
|
+
6. 公开的衍生作品必须继续使用本许可(或更严格的许可),不得改用更宽松的许可。
|
|
36
|
+
|
|
37
|
+
三、禁止
|
|
38
|
+
|
|
39
|
+
7. 不得把本项目的全部或实质性部分声称为你自己原创 ——
|
|
40
|
+
包括在 README、发布说明、视频、插件市场条目里,
|
|
41
|
+
把它写成「自研」「原创」「我写的」。
|
|
42
|
+
8. 不得删除、替换、隐藏本项目的作者署名,
|
|
43
|
+
包括 LICENSE、NOTICE、README、package.json 和源码注释里的。
|
|
44
|
+
|
|
45
|
+
四、其他
|
|
46
|
+
|
|
47
|
+
9. 本项目按「现状」提供,不附带任何明示或默示的担保。
|
|
48
|
+
10. 违反第二、三条中任何一条,本许可立即终止;你还应当删除已发布的衍生作品。
|
|
49
|
+
从违约那一刻起,你就不再拥有使用、复制、分发本项目的任何授权。
|
|
50
|
+
11. 上面没写的情况想用,直接来问我,一般都会答应。
|
package/README.md
CHANGED
|
@@ -279,7 +279,9 @@ dsh plugin --profile desktop add dsh-fish-memory
|
|
|
279
279
|
|
|
280
280
|
## 许可
|
|
281
281
|
|
|
282
|
-
|
|
282
|
+
[Yuuyuko-uu 插件许可 1.0](./LICENSE):允许使用、修改、商用;
|
|
283
|
+
再分发时要在 README 第一屏注明原仓库和原作者;禁止把本项目说成自己的原创。
|
|
284
|
+
这份许可不是 OSI 认证的开源许可,用之前请读一遍全文。
|
|
283
285
|
|
|
284
286
|
分词用的词表来自 [jieba](https://github.com/fxsjy/jieba) 的 `extra_dict/dict.txt.small`
|
|
285
287
|
(MIT 协议),只保留了词条本身、去掉了词频和词性两列。
|
package/lib/client.js
CHANGED
|
@@ -179,6 +179,7 @@ const 洗键进度 = { 已: 0, 总: 0, 在跑: false, 干跑: false }
|
|
|
179
179
|
const [notes, setNotes] = React.useState(null)
|
|
180
180
|
const [busy, setBusy] = React.useState(false)
|
|
181
181
|
const [confirm, setConfirm] = React.useState(null) // 正在等确认的删除(二次确认,手滑不了)
|
|
182
|
+
const [并入, set并入] = React.useState(null) // ⭐ 1.4.5:切成按工作区前的「合并预览」
|
|
182
183
|
const [showDeleted, setShowDeleted] = React.useState(false)
|
|
183
184
|
const [selfDraft, setSelfDraft] = React.useState({}) // 每个会话「她自己叫什么」的草稿
|
|
184
185
|
const [ownerDraft, setOwnerDraft] = React.useState({}) // 每个会话「怎么称呼对方」的草稿
|
|
@@ -2690,6 +2691,47 @@ const 洗键进度 = { 已: 0, 总: 0, 在跑: false, 干跑: false }
|
|
|
2690
2691
|
'那种一个字都没改,也不会再问一遍 ✓)',
|
|
2691
2692
|
)
|
|
2692
2693
|
: null,
|
|
2694
|
+
// ⭐ 1.4.5:切成「按工作区」之前的合并预览 —— 先看清楚要并什么,再决定
|
|
2695
|
+
并入 && 并入.length
|
|
2696
|
+
? React.createElement(
|
|
2697
|
+
'div',
|
|
2698
|
+
{ style: S.askBox },
|
|
2699
|
+
React.createElement(
|
|
2700
|
+
'div',
|
|
2701
|
+
{ style: { flex: 1 } },
|
|
2702
|
+
'切成「按工作区」要把这些会话的记忆并成一份:',
|
|
2703
|
+
React.createElement(
|
|
2704
|
+
'div',
|
|
2705
|
+
{ style: Object.assign({}, S.dim, { fontSize: 12, marginTop: 4, lineHeight: 1.7 }) },
|
|
2706
|
+
并入.map((r) =>
|
|
2707
|
+
'· ' + r.叫什么 + ':' + r.会话数 + ' 间会话,共 ' + r.合计 + ' 条' +
|
|
2708
|
+
(r.去重 ? '(' + r.去重 + ' 条重复,并完 ' + r.并完 + ' 条)' : ''),
|
|
2709
|
+
).join('\n'),
|
|
2710
|
+
),
|
|
2711
|
+
React.createElement(
|
|
2712
|
+
'div',
|
|
2713
|
+
{ style: Object.assign({}, S.dim, { fontSize: 11, marginTop: 4 }) },
|
|
2714
|
+
'归档的会话不会并进来。旧库都留着 —— 想退回「按会话」随时能退。',
|
|
2715
|
+
),
|
|
2716
|
+
),
|
|
2717
|
+
React.createElement(
|
|
2718
|
+
'button',
|
|
2719
|
+
{
|
|
2720
|
+
style: S.btnDanger,
|
|
2721
|
+
disabled: busy,
|
|
2722
|
+
onClick: () => {
|
|
2723
|
+
setBusy(true)
|
|
2724
|
+
post('/merge-workspace', { 试算: false })
|
|
2725
|
+
.then(() => post('/mode', { 模式: 'workspace' }))
|
|
2726
|
+
.then(() => { setBusy(false); set并入(null); load() })
|
|
2727
|
+
.catch(() => setBusy(false))
|
|
2728
|
+
},
|
|
2729
|
+
},
|
|
2730
|
+
busy ? '并着呢…' : '并进来',
|
|
2731
|
+
),
|
|
2732
|
+
React.createElement('button', { style: S.btn, onClick: () => set并入(null) }, '算了'),
|
|
2733
|
+
)
|
|
2734
|
+
: null,
|
|
2693
2735
|
confirm && confirm.kind === 'stable'
|
|
2694
2736
|
? React.createElement(
|
|
2695
2737
|
'div',
|
|
@@ -3963,9 +4005,27 @@ const 洗键进度 = { 已: 0, 总: 0, 在跑: false, 干跑: false }
|
|
|
3963
4005
|
}),
|
|
3964
4006
|
disabled: busy,
|
|
3965
4007
|
onClick: () => {
|
|
4008
|
+
const 要切 = d.模式 === 'workspace' ? 'session' : 'workspace'
|
|
4009
|
+
if (要切 !== 'workspace') {
|
|
4010
|
+
// 切回按会话:不涉及合并,直接切
|
|
4011
|
+
setBusy(true)
|
|
4012
|
+
post('/mode', { 模式: 要切 }).then(() => { setBusy(false); load() }).catch(() => setBusy(false))
|
|
4013
|
+
return
|
|
4014
|
+
}
|
|
4015
|
+
// 切成按工作区:先**试算**(每间会话现有几条、并完剩几条),看清楚再决定
|
|
3966
4016
|
setBusy(true)
|
|
3967
|
-
post('/
|
|
3968
|
-
.then(() => {
|
|
4017
|
+
post('/merge-workspace', { 试算: true })
|
|
4018
|
+
.then((j) => {
|
|
4019
|
+
setBusy(false)
|
|
4020
|
+
const 报告 = (j && j.报告) || []
|
|
4021
|
+
if (!j || !j.ok || !报告.length) {
|
|
4022
|
+
// 没有可并的(都还是空的)→ 直接切
|
|
4023
|
+
setBusy(true)
|
|
4024
|
+
post('/mode', { 模式: 要切 }).then(() => { setBusy(false); load() }).catch(() => setBusy(false))
|
|
4025
|
+
return
|
|
4026
|
+
}
|
|
4027
|
+
set并入(报告)
|
|
4028
|
+
})
|
|
3969
4029
|
.catch(() => setBusy(false))
|
|
3970
4030
|
},
|
|
3971
4031
|
},
|