如何在浏览器之外编辑Tampermonkey脚本

时间:2014-07-02 22:33:20

标签: javascript google-chrome tampermonkey

如何在浏览器之外编辑Tampermonkey脚本?宁愿在一个好的IDE中,而不是试图在浏览器中进行编辑。

当我在Firefox中开发Greasemonkey脚本时,我曾经能够这样做,但我无法使用Chrome找到.user.js文件。

2 个答案:

答案 0 :(得分:18)

由于Chrome扩展程序(请参见下文)无法访问文件系统,因此Tampermonkey会将脚本存储在内部存储中。

您可以做的是allow Tampermonkey to access your local files,将脚本标题复制到Tampermonkey,另外@require the full script that is located somewhere at your hard disk

" 并非真的"表示LocalFileSystem API允许文件访问,但名称和文件不一定映射到真实文件系统。 Furthermore LocalFileSystem seems to be deprecated now

答案 1 :(得分:9)

转到扩展程序> Tampermonkey>允许访问文件网址

然后,将脚本设置为:

// ==UserScript==
// @name            Acecool - Video Site - Ultimate Video Site Management, Ad Removal, Redirection, Direct-Linking and more!
// @author          Acecool
// @namespace       Acecool
// @version         0.0.1
// @description     Replaces encoded-links with decoded direct-links on episode finder sites.
// @description     Automatically click the "continue" button, and attempt to skip the countdown if any, on video watching sites.
// @description     Remove ad panels on video watching sites.
// @match           http://*/*
// @require         http://code.jquery.com/jquery-latest.js
// @require         file:///C:/AcecoolGit/acecooldev_userscripts/libraries/acecool_functions_lib.js
// @require         file:///C:/AcecoolGit/acecooldev_userscripts/video_sites/video_site_ultimate_tool.js
// @grant           GM_xmlhttpRequest
// ==/UserScript==

我知道这个帖子的作者有点晚了,但这就是我开发的方式......

然后,使用完全标题设置脚本,因此我包含的示例文件:video_site_ultimate_tool.js是

// ==UserScript==
// @name            Acecool - Video Site - Ultimate Video Site Management, Ad Removal, Redirection, Direct-Linking and more!
// @author          Acecool
// @namespace       Acecool
// @version         0.0.1
// @description     Replaces encoded-links with decoded direct-links on episode finder sites.
// @description     Automatically click the "continue" button, and attempt to skip the countdown if any, on video watching sites.
// @description     Remove ad panels on video watching sites.
// @match           http://*/*
// @require         http://code.jquery.com/jquery-latest.js
// @require         file:///C:/AcecoolGit/acecooldev_userscripts/libraries/acecool_functions_lib.js
// @require         file:///C:/AcecoolGit/acecooldev_userscripts/video_sites/video_site_ultimate_tool.js
// @grant           GM_xmlhttpRequest
// ==/UserScript==
alert( 'test script is running from the file system instead of from TM...' );

我将它们设置为相同(好吧,我将文件系统脚本中的@requires更改为http变体,因此functions_lib将转到bitbucket,而video_site_ultimate_tool将被删除,并且脚本在复制到我的bitbucket repo时放入...

它确实加速了开发,以便能够使用外部编辑器并立即显示更改...

希望这有助于下一个人..