refactor(core): ♻️ 移除订阅名依赖并优化节点重命名规则
优化 substore 脚本逻辑,移除 peiqian-rename.js 和 yuetong-rename.js 中对 _subName 的硬编码判断,使其更适合在单条订阅中复用。 同时在 rename.js 中新增流媒体文案清理规则,并同步更新 README.md 文档,说明各脚本在单订阅与整合订阅中的最佳实践建议。
This commit is contained in:
+6
-5
@@ -6,7 +6,7 @@
|
||||
|
||||
单订阅脚本先跑,整合订阅最后跑:
|
||||
|
||||
1. `sntp-rename.js`:只给 SNTP 节点注入线路标签。
|
||||
1. `sntp-rename.js`:放在 SNTP 单订阅里,注入线路标签。
|
||||
2. `yuetong-rename.js`:只清理 YueTong 的品牌前缀和装饰符号。
|
||||
3. `peiqian-rename.js`:只清理 PeiQian 的推荐/用途描述。
|
||||
4. `rename.js`:整合订阅最终重命名,负责国家短码、国旗归位、订阅后缀和去重。
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
## SNTP 规则
|
||||
|
||||
`sntp-rename.js` 只建议用于 SNTP。像 `BGP`、`D`、`CT` 这类关键词比较短,全局使用容易误伤其他订阅。
|
||||
`sntp-rename.js` 建议挂在 SNTP 的单条订阅里使用。它不依赖 `_subName`,方便分享和复用;但像 `BGP`、`D`、`CT` 这类关键词比较短,不建议直接放到整合订阅里全局运行。
|
||||
|
||||
| 命中关键词 | 注入标签 |
|
||||
| --- | --- |
|
||||
@@ -51,7 +51,7 @@
|
||||
|
||||
## YueTong 规则
|
||||
|
||||
`yuetong-rename.js` 只处理 `_subName === 'YueTong'`:
|
||||
`yuetong-rename.js` 建议挂在 YueTong 单条订阅里使用,不依赖 `_subName`:
|
||||
|
||||
```text
|
||||
🇯🇵 悦·日本专属2💎 - YueTong
|
||||
@@ -67,7 +67,7 @@
|
||||
|
||||
## PeiQian 规则
|
||||
|
||||
`peiqian-rename.js` 只处理 `_subName === 'PeiQian'`:
|
||||
`peiqian-rename.js` 建议挂在 PeiQian 单条订阅里使用,不依赖 `_subName`:
|
||||
|
||||
```text
|
||||
🇯🇵 日本东京03-0.1倍 | 电信联通推荐 - PeiQian
|
||||
@@ -115,6 +115,7 @@ Pro-🇭🇰 Sharon|守夜人 - Alpha 8K Snell
|
||||
|
||||
## 注意事项
|
||||
|
||||
- 专属脚本都带 `_subName` 判断,放错位置通常也不会处理其他订阅。
|
||||
- `sntp-rename.js` 不带 `_subName` 判断,适合挂在 SNTP 单订阅里;如果放进整合订阅,可能会误伤其他带 `BGP`、`D`、`CT` 的节点。
|
||||
- `yuetong-rename.js` 和 `peiqian-rename.js` 也不带 `_subName` 判断,适合挂在对应单订阅里;如果放进整合订阅,需要确认规则不会误伤其他订阅。
|
||||
- `rename.js` 会剥离并重新追加 `- _subName`,重复运行不会叠加订阅后缀。
|
||||
- 如果新增订阅里出现很短、很泛的关键词,例如 `D`、`CT`、`BGP`、`S1`,优先拆成单订阅脚本,不建议放进全局 `rename.js`。
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
/**
|
||||
* PeiQian 专用节点清理脚本
|
||||
* 只处理 _subName 为 PeiQian 的节点,避免把“推荐/用途/hy2”等文案规则误伤到其他订阅。
|
||||
* 负责清理推荐、用途、hy2、倍率等 PeiQian 节点文案。
|
||||
*/
|
||||
function operator(proxies) {
|
||||
return proxies.map(proxy => {
|
||||
if (proxy._subName !== 'PeiQian' || typeof proxy.name !== 'string') {
|
||||
if (typeof proxy.name !== 'string') {
|
||||
return proxy;
|
||||
}
|
||||
|
||||
|
||||
@@ -263,6 +263,7 @@ function operator(proxies) {
|
||||
return name
|
||||
.replace(/[\u{1F300}-\u{1FAFF}\u{2600}-\u{27BF}\uFE0F]/gu, '')
|
||||
.replace(/\u200d/g, '')
|
||||
.replace(/\s*\|\s*流媒体/gi, '')
|
||||
.replace(/-\s*(\d+(?:\.\d+)?)倍/gi, ' $1x')
|
||||
.replace(/(\d+(?:\.\d+)?)倍/gi, '$1x')
|
||||
.replace(/\b(\d+(?:\.\d+)?)X\b/g, '$1x')
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
/**
|
||||
* YueTong 专用节点清理脚本
|
||||
* 只处理 _subName 为 YueTong 的节点,负责去掉“悦·”品牌前缀、钻石等装饰,以及压短 AI 解锁文案。
|
||||
* 负责去掉“悦·”品牌前缀、钻石等装饰,以及压短 AI 解锁文案。
|
||||
*/
|
||||
function operator(proxies) {
|
||||
return proxies.map(proxy => {
|
||||
if (proxy._subName !== 'YueTong' || typeof proxy.name !== 'string') {
|
||||
if (typeof proxy.name !== 'string') {
|
||||
return proxy;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user