插件功能的一点建议
Star699 opened this issue · 11 comments
这个插件是目前我在怀旧服最好用的信息归类、信息屏蔽类的插件,有几个建议希望能考虑一下:
1、规则符合选项目前只有全部符合(and)和其中一个条件符合(or),希望能加入类似((A or B) and C)或者((A and B) or C)这种建立规则的方式,这样一个规则就可以实现当前多条规则的效果;
2、规则的管理面板在规则数量很多的时候管理起来会很麻烦,上下来回找,在规则少的时候还行;能否加入类别管理,先创建类别,然后在单独的类别面板创建子类或者规则;
3、希望能加入手写式的规则创建方式,比如:([contains=H--M] or [contains=萧] ) and ( [contains=費] );
4、希望能参考下Global Ignore List的规则管理面板、创建方式。
以上几点建议都是在用了Global Ignore List(https://www.curseforge.com/wow/addons/global-ignore-list)这个插件后想到的
我想了下,上面的几点建议可以通过这样修改一次性解决:
把现有的规则管理界面根据分类做成折叠样式的:类似WA插件里图示标签下点文字设置就打开文字的详细设置,再次点击文字设置就折叠起来;或者就想你做的消息浏览器那样,点加号打开树形菜单,右侧显示该子分类详细规则设置。
每次加载规则界面的时候就像你做的消息浏览器一样,根据分类做成折叠标签或者树形菜单。
创建规则的时候还用现有的,只是把规则管理界面进行修改。
望采纳~~
我看了看本地的配置信息的格式,感觉可以在读取本地配置信息的时候读取到class项目值,对其进行分解(消息浏览器用的应该是类似的逻辑)的时候动态加载生成折叠式的(类似WA设置中的样子)看当前是否有该一级分类,有则加入进去,无则创建新的折叠项,然后看当前规则是否属于二级分类,不是二级则显示,属于二级分类则重复类似创建一级分类的逻辑。比如点开“商业”折叠项,如果商业下面没有二级分类只有多条规则,就显示具体的规则,如果下面有布料、皮革分类则显示布料、皮革折叠项,点开布料分类显示具体的多条规则,这样规则管理主体界面不用大改,只用做成类似WA折叠式的即可。
匹配可以使用Lua正则表达式 https://www.jianshu.com/p/79f3af612700
包含只是纯文本查找。
在英文默认规则里面使用了大量匹配,主要是用来查找超短缩写词。
比如这个规则里面的 %f[%a]sm%f[%A]
表示单独的缩写词 sm
,它可以匹配 SM
, a sm b
, sm b
,但不匹配small
。如果不使用单词开头表达式%f[%a]
和单词结尾表达式%f[%A]
,英文里会有大量误匹配。
{
id = 3009,
["class"] = "Instance/The Scarlet Monastery: Graveyard/{author}",
["conditions"] = {
{
["value"] = "%f[%a]sm%f[%A]",
["field"] = "content",
["operator"] = "match",
},
{
["value"] = "%f[%a]gy%f[%A]",
["field"] = "content",
["operator"] = "match",
},
{
["value"] = "friedhof",
["field"] = "content",
["operator"] = "contain",
},
},
},
我的配置页面是用AceConfig自动生成的,所以做二级分类非常简单,只需要把配置项移动到子Lua表里面去就可以了。有时间我可以做一下。
正则表达式这个非常棒,好用666~~
希望能够加入重复符号、词、句裁剪,例如:
ZUL 4=1来个T++++++++++MMMMMMMM 压缩成 ZUL 4=1来个T++MM,
这个功能在BFFilter这个插件里有,我看了下那个插件文件,msgtrim.lua文件实现功能的代码文件,可以的话,请加入,这样我就只用MessageClassifier一个就全搞定了~~
不胜感激~~
更新到与 https://github.com/SwimmingTiger/WowBigfootClassic 内版本一致了。。。
新功能准备找其他人开发,对方正在学习插件开发技术。。。
找别人开发的计划流产了。不过我自己实现了规则分类检索功能。
我不知道怎么用AceConfig实现分栏功能,所以做了个分类筛选下拉框,选择某个分类后就只显示对应分类的规则了。
这样应该可以解决查找规则困难的问题。