Closed xioxin closed 7 years ago
我这儿没啥问题
这次升级 配置文件会失效 这样会不会让用户一脸懵逼?
这才是一脸懵逼
哈哈哈 我在里站调的样式 忘记了适配表站了 这就去改
表站样式已经修好
我和老婆在三亚,明天拍婚纱照,你们自己先搞。🏖️
@Mapaler 那我点合并了 被秀了一脸 造成一万点伤害
推荐用Firefox开发,因为更遵守W3C,拿到Chrome一般也可以用,反过来就不行。
也没必要说是升级,直接当多另一个版本就行了。
为什么页面会变长??
而且底下啥都没有?
某一个标签里面的内容过多吧 看了是长筒袜
用火狐开发者工具最好先进开发者工具设置打开代码草稿纸,比每次粘贴好,还能看到错误信息。
今天看到Stylish官网有用油猴来添加css的功能
看了下是这样一堆代码
这段代码没有安装Stylish的情况下依旧可以使用几乎和我写的差不多
能给个地址吗 我看看
https://userstyles.org/styles/137583 每个样式都有这个入口的 油猴和Stylish好像是同一个作者,所以这应该是钦定的写法
我刚才看了你的脚本了,方便是很方便,要是一开始就做成这样这个项目可能风格会完全不一样。
但是我考虑了一下这样会不会搞得复杂了,需要同时考虑如何解析生成CSS和输出到页面两个步骤,需要控制的开关太多。
在原版脚本里只加入保存CSS的功能,单独做一个只负责读取CSS的脚本在e站使用,开关交由用户自己用油猴完成,可以在显示CSS脚本上加一个你有多久没更新数据库了的消息提示,这样开发难度降低了。并且用户希望获取翻译更新的话,就必须来项目页面,可以增加项目的活跃度,刺激新的用户贡献翻译,不然他们将永远只会自动更新而不会来这个项目。
这样包括天国的JS版(不存在的)也可以做成这样的
那我去掉E站生成css的功能 开关已经有了
获取wiki版本有没有什么思路
格式版本的话在row里面,具体有没有修改的话那就是git拉取版本。直接做个定期检查更新就行了。
好的 看尝试实现一下
每次获取数据保存一个时间戳,每次初始化的时候看看当前时间减时间戳过了多久,满足时间条件就在网页里插入更新连接就行了(跳转到项目页面)
https://github.com/Mapaler/EhTagTranslator/wiki/_history 找了一下可以在这个页面获取wiki提交历史,也就可以记录hash值,最新hash值变了就说明有变化。
哦这个可以
想拿到 wiki 提交次数 有什么思路吗
想拿到 wiki 提交次数 有什么思路吗
还是只有那个页面,要不自己写一个git,否则自己想办法
https://raw.githubusercontent.com/wiki/Mapaler/EhTagTranslator/rows.md https://raw.githubusercontent.com/wiki/Mapaler/EhTagTranslator/Home.md 这两个可以取到 wiki的原始md数据
但是其他的均无法获取 有什么头绪吗 比如 https://raw.githubusercontent.com/wiki/Mapaler/EhTagTranslator/group.md
在自己的项目的wiki均没有问题 不清楚是啥问题
没事了 发现嵌套了文件夹
我当初试验了,嵌套文件夹对于前端没有区别,所以为了方便git管理,我就把具体的翻译部分放到了文件夹里。
有区别的,_Sidebar.md、_Footer.md 会在就近位置寻找,可以通过文件夹来实现不同的页面有不同的Sidebar 和 Footer https://github.com/OpportunityLiu/exviewer/wiki https://github.com/OpportunityLiu/exviewer/wiki/%E4%B8%BB%E9%A1%B5 我这个中文和英文右栏不一样就是这么做的
还有这种操作?可是你是怎么发现的?
试图搞多语言的时候试出来的,不过这样就无法在线编辑,只能用git,因为在线编辑的URL是没有目录信息的,只能访问到其中一个_Sidebar
刚准备告诉你 我写了个新的 在我fork的new分支下
https://github.com/xioxin/EhTagTranslator/blob/new/EhTagBuilder.user.js
用的mvvm做的ui ui模板分离
数据是直接解析md源码 现在只写了获取数据 和生成css
我搞不来,你的代码太高端了,看得累……你就不能换个js的名字吗,当作其他的版本就可以了啊
换 回主分支再换
你新代码都是ES6、7的吧,会不会在浏览器支持上还需要一定的普及?(P.S.好像ES8已经出来了)
我不是给了你编辑权限的吗,你可以直接在原项目添加分支测试,好处就是可以切换分支后刷新网页就可以测试不同版本了,现在这样有点麻烦。我刚才把直接传Greasy Fork的webhook也先删了,你之前编辑那个版本虽然能用,但是我觉得还是把更新的流量引导到项目来。
火狐用户数据文件夹下“gm_scripts”文件夹内就是所有的GM代码,我先用GM添加一个EhTagBuilder脚本,然后把项目克隆进去,编辑好后直接提交就可以。测试其他版本,只需要git切换检出到对应版本,刷新网页就可以了,不需要在不同窗口复制粘贴。
火狐默认gm文件在%AppData%\Mozilla\Firefox\Profiles\用户随机id\gm_scripts
可以用"E:\Program Files\Mozilla\Firefox\firefox.exe" -no-remote -ProfileManager
来创建自己的用户信息,需要移动位置的话把旧的文件夹移到新的地方,创建一个新的用户把文件夹设为新的地方就可以了,这样就不怕重装电脑了。
等下 我先修改下 很简单就能去掉那个界面
好了 只是去掉了 没有加入引流相关的按钮和界面
我不准备在Builder上做显示功能,毕竟是叫Builder的。我是准备做一个专门的小脚本只负责读取储存的CSS添加到页面,Builder只负责添加CSS到储存。分开干事情互不影响,也不需要多余的判断。我准备先搞起来
你先只管把你的想法直接从头实现为一个新的脚本,作为一个新的实现,到时候让用户自己选择体验就行了,毕竟差异太大了不敢直接替换主脚本。
插件数据存储是互动通的吗
不是互通的吗?这个我还真不知道,我以为是和本地储存一样的
根据一般浏览器的安全套路 一般是不通的吧 没做过实验
本地存储跨域名也不互通的
测试了下还真是不通的…… 本地储存是不同域名不通,但是不同脚本可以共用。 GM_setValue是不同域名可以共同,但是不同脚本不通,尴尬……
有个参数是 @namespace 命名空间 不知道是不是一样的命名空间 数据能共用 (猜测)
同样的命名空间除了在Greasy Fork上可以查找同一作者的脚本外毫无用处(目前发现)
刚才做了两个脚本
// ==UserScript==
// @name test1
// @namespace http://www.mapaler.com/
// @include https://github.com/Mapaler/EhTagTranslator/settings/hooks
// @include https://greasyfork.org/zh-CN/users/webhook-info
// @version 1.0.0
// @grant GM_getValue
// @grant GM_setValue
// @grant GM_listValues
// ==/UserScript==
GM_setValue("value1","dsffdsf");
console.log(GM_getValue("value1"));
console.log("test1",GM_listValues());
// ==UserScript==
// @name test2
// @namespace http://www.mapaler.com/
// @include https://github.com/Mapaler/EhTagTranslator/settings/hooks
// @include https://greasyfork.org/zh-CN/users/webhook-info
// @version 1.0.0
// @grant GM_getValue
// @grant GM_setValue
// @grant GM_listValues
// ==/UserScript==
console.log("test2",GM_listValues());
测试了,两个页面的输出结果都是
dsffdsf test1.user.js:13:1
test1 Array [ "value1" ] test1.user.js:14:1
test2 Array [ ] test2.user.js:12:1
也就是两个脚本的数据库不通用。
这就很尴尬了 我再想想有没有别的办法
想了半天感觉还是写一起吧
我觉得的理想状态是这个样子,这样谁都不需要自己编一套显示脚本,只管维护构建部分就行了,但是既然数据库不能通用就很尴尬了。
所以我觉得,直接传统脚本就还是按照传统的方式去做,不做页面内直接显示,直接把你的脚本作为新的实现与传统脚本平行存在比较好。
19
实现一键更新样式 点击生成CSS,生成完成后自动保存 设置中增加“使用内置样式注入器” 选项,可以手动关闭 在E站中增加构建者的UI
因为之前在Chrome下开发的 今天拿FireFox测试结果一塌糊涂,研究了半天终于把兼容搞好了
⚠️注意:之前的配置参数将会丢失,记得备份
你们最好测试一下 再合并 https://github.com/xioxin/EhTagTranslator/raw/master/EhTagBuilder.user.js