Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

几点易用性改进和功能性改进建议 #27

Open
byzod opened this issue Jun 10, 2017 · 8 comments
Open

几点易用性改进和功能性改进建议 #27

byzod opened this issue Jun 10, 2017 · 8 comments

Comments

@byzod
Copy link

byzod commented Jun 10, 2017

易用性改进

  • 重复申请 希望添加几个功能 #23 中的以下需求

    • URL Encode 和 URL Decode 功能,很多跳转链接 encode 了目标链接
      具体实现可以参考Redirector

    • 自动测试规则是否匹配
      Redirector即为自动测试,十分方便
      该界面为用户输入界面,自动检测规则强度不会很高,一般不会产生性能问题

    • 在左侧勾选上的规则和禁用的规则用不同的颜色加以区分
      建议已禁用规则用灰色或其他淡色表示,以下为Redirector中的示例

  • 排序按钮很小并且没有对中,按起来稍有不便,而且看起来不爽。建议增加按钮尺寸及所在单元格的覆盖率
    当前样式

    改动后样式(示例)

  • 和上一条类似,winform风格的规则复选框很小,按起来很别扭,希望采用更加metro风格的较大的复选框,如果可以的话最好可以整行选择。另外截图中也有禁用规则变灰色的样式示例
    当前样式

    更大的复选框,灰色区分的禁用规则

    整行选择的示例(百度网盘)

功能性改进

  • 建议当用户更改了规则及其他选项而没有保存时,在离开、关闭、刷新设置页面时弹出模态提示对话框,提醒用户是否要放弃更改。(例如:confirm("你有未保存的改动,如果离开页面这些改动将丢失\n是否继续?")
  • 用户点击保存按钮后提供反馈信息(例如显示500ms的保存成功标签或Notification通知)
  • 进行删除规则等操作时提示用户,确认操作(那几个按钮很小而且靠的很近,一不小心就一夜回到解放前)
  • 若所有危险操作均有提示,可以考虑自动保存所有更改(就像Redirector一样)
  • "目标地址"可以接受一个函数 (src_uri)=>{return dst_uri}
    说明一下,这是Mason及其某个改版所增加的功能,因为在某些特殊情况下,仅靠正则的反向引用无法或者难以完成所需的重定向操作。
    假设需求将abc.com/f-{x}.html重定向到abc.com/f-{y}.asp,其中{x}, {y}为相关但不相同的字符串。例如y=x+4,需要将abc.com/f-14.html重定向到abc.com/f-18.html,该操作无法简单以正则表达式完成。
    若目标地址接受一个接收并返回一个字符串的函数,则很容易能够解决。例如,上述需求,只需在“目标地址”内填入href=>{let fid=href.match(/-(\d+)/)[1];return href.replace(fid, parseInt(fid)+4);}

题外话

话说这个扩展地址里填的究竟是通配符还是正则表达式?似乎能够识别一些正则语法,但是又不强制要求转义特殊字符?
原来直接从界面里得到的regex会自动转义/之类的符号,只需要像字面regex一样写就可以了。

@byzod
Copy link
Author

byzod commented Jun 17, 2017

另外,希望对过长的匹配/目标地址等内容进行截断,或让表格只在高度方向进行扩展
否则当有地址非常长的情况下(例如base64内嵌图片)就会把表格撑得非常长,难以按到右边的按钮……

实例
2

远景
1

@ivysrono
Copy link

作者消失太久了……

@byzod
Copy link
Author

byzod commented Jun 17, 2017

@ivysrono 诶,我看上次活动还是3个月前啊

@ivysrono
Copy link

@byzod 自从出了 #21 ……

@byzod
Copy link
Author

byzod commented Jun 17, 2017

@ivysrono 因为从根本上被背刺所以伤心了吗……可以理解
发现这个扩展的时候已经是54a了,所以很好运地并没有遇到#21 描述的bug

@ivysrono
Copy link

ivysrono commented Jun 17, 2017

@byzod 所以不好催更啊……
我也就是在寻找 WE 时代的反盗链等改头扩展,希望也能订阅规则。

BTW, 你用的 Redirector 也是 WebExtension , 也受到了 #21 的影响。

@byzod
Copy link
Author

byzod commented Jun 17, 2017

@ivysrono
这个修改header的扩展比较新,似乎功能上没什么问题,应该能部分满足你的要求。
但是看评论不能用通配符(更别提regex),每一个子域名甚至Http和Https都要新建一条规则……和这里的作者 @fengyc 比起来简直业余到不行~

回到redirect,仔细想想,某些重定向可能还需要使用特定的cookie才能完成任务,从这个角度来说这个扩展添加http header的修改功能也是合理的。
如果真的实现的话,那么Greasemonkey+URLRedirector基本上就能覆盖Mason的功能了

希望能够继续维护呀 @fengyc

@ivysrono
Copy link

@byzod 其实我想表达的意思是,在三个多月前,已经列入开发计划了 #18
那种弱鸡扩展,用起来太难受了,肯定不能满足我从 HTTP Header Mangler 迁移的需求。

fengyc added a commit that referenced this issue Jun 25, 2017
1 修改选项页,自动使用示例地址测试
2 增加匹配处理,增加 urlencode/decode ,base64encode/decode 功能,但该功能的处理采用 RegExp.exec 与原始的 string.replace 会有点不同
fengyc added a commit that referenced this issue Jun 25, 2017
1 匹配处理的多语言
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants