在脚本之外访问 GM_getValue

Access GM_getValue outside of script

基本上是问题标题。这将使我受益匪浅。我希望能够在我的用户脚本之外访问 GM_getValue 以进行调试,或者至少访问值和名称本身。

我在 Windows 10.Chrome

  • 最新的 Tampermonkey 测试版(最终是正常的 Tampermonkey)在 仪表板脚本编辑器的 Storage 选项卡 .[=22= 中显示 GM 值]

  • 可视化方法:使用Storage Area Explorer扩展名:

    1. 打开 Tampermonkey 仪表板页面并通过 F12CtrlShift[= 调用 devtools 49=]我
    2. 在 Storage Area Explorer 面板中滚动到底部,按名称找到脚本的 @uid#,然后在具有该 UID 的 @st# 键中找到其数据:


  • 在控制台中转储:

    一次性设置:在 devtools - Sources - Snippets 子面板中添加新代码 snippet 并保存:

    function dumpGM_data(scriptName) {
        chrome.storage.local.get(null, data => {
            const UID = Object.keys(data).find(k => k.startsWith('@uid#') &&
                                                    data[k].value == scriptName);
            if (UID)
                console.log(data[UID.replace('@uid', '@st')].value.data);
        });
    }
    
    1. 打开 Tampermonkey 仪表板页面并通过 F12CtrlShift[= 调用 devtools 49=]我
    2. 打开并 运行 该片段:CtrlEnter - 在您关闭仪表板页面之前它一直可用
    3. 在控制台中调用它:

      dumpGM_data('SE Preview on hover')
      

  • Inspect/dump/edit直接数据库文件:

    Local Extension Settings/dhdgffkkebhmkfjojejmpbldmpobfkfoLocal Extension Settings/gcalenpjmijncebpfijmoaglllgpjagf 中的 ldb 数据库文件中使用您可以找到(或自己编译)的任何 LevelDB 工具,用于 Tampermonkey 测试版。