Как редактировать скрипты Tampermonkey за пределами браузера

Как редактировать скрипты Tampermonkey за пределами браузера? Скорее, в хорошей среде IDE вместо того, чтобы делать изменения в браузере.

Я имел обыкновение делать это, когда разрабатывал скрипты Greasemonkey в Firefox, но я не могу найти файлы .user.js с Chrome.

Ответ 1

Так как расширения Chrome на самом деле (объяснение ниже) имеют доступ к файловой системе, Tampermonkey хранит сценарии во внутреннем хранилище.

Что вы можете сделать, это позволить Tampermonkey получить доступ к вашим локальным файлам, скопировать заголовок вашего script на Tampermonkey и дополнительно @require полный script, который находится где-то на вашем жестком диске.

"на самом деле" означает, что API LocalFileSystem допускает доступ к файлам, но имена, а также файлы необязательно отображаются в реальной файловой системе. Кроме того, теперь LocalFileSystem теперь устарела.

Ответ 2

Перейдите в Расширения> Tampermonkey> Разрешить доступ к файлам URL

Затем установите ваш скрипт как:

// ==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...

Это действительно ускоряет разработку, чтобы иметь возможность использовать внешний редактор и немедленно вносить изменения...

Надеюсь, это поможет следующему человеку..