Я пишу серию сценариев Greasemonkey.Эти сценарии обладают большинством своих функций, поэтому я счел полезным извлечь общие функции.
В common.js
являются общими функциями, и они вызывают GM_functions (например, GM.xmlHttpRequest
).Каждый пользовательский скрипт @require [...]/common.js
Есть ли способ избежать повторения всех метаданных в каждом script.user.js
:
// @require [...]/common.js
// @grant GM.getResourceText
// @grant GM.xmlHttpRequest
// @grant GM.setValue
// @grant GM.getValue
// @connect localhost
// @resource styleSheet [...]/style.css
?
Я пытался @grant
вcommon.js
(или, называя его common.user.js
), но похоже, что Greasemonkey все равно его игнорирует.
Я понимаю, что это можно считать недостатком безопасности, потому что вы можете не знать, какие привилегии вы в конечном итоге предоставляете, потому чтокаскадных @grants @ require.Однако Greasemonkey мог логически вывести окончательные привилегии из всех скриптов @required.
У меня тот же вопрос к @resource
.