web-dev-qa-db-ja.com

Github GistまたはリポジトリからGreasemonkeyスクリプトを直接ロードする方法は?

代わりに、ブラウザのユーザースクリプトの3つのバージョンがあります。

  1. ローカルドラフト
  2. local-Greasemonkey
  3. Github

Githubには1つのスクリプトインスタンスのみが必要です。

Githubで共同編集されているスクリプトのコンテンツをGithubからGreasemonkeyに直接インポートする方法が必要です。

したがって、Githubでスクリプトに加えられた変更は、ブラウザーでスクリプトを使用してすべてのユーザーに自動的に影響し、新しい更新ごとに変更を手動でコピーする必要はありません。

そうする方法を知っていますか?答えは、あなたが知っている最良の1つまたは2つの方法に制限してください。

ノート:

  • もちろん、GitHubの資料も含めて、通常はPCをバックアップします。
4
JohnDoea

質問には2つの部分があります。


1つ目は、GitHubリポジトリまたはGitHub Gistから直接インストールするスクリプトをロードすることです。

GitHubリポジトリとGISTの両方で、オブジェクト自体を指す「Raw」オブジェクトリンクを取得し、可能であればプレーンテキストとしてWebブラウザーでそのオブジェクトを直接提供できます。ユーザースクリプトは通常、これらの「未加工の」URLで適切に取得されます。 Gistの個々のアイテムで「Raw」ボタンをクリックするか、GitHubリポジトリで特定のオブジェクトを表示しているときに、未加工のURLを取得できます。その「生リンク」は、インストール目的で配布できるものです。


2番目の部分は、GreaseMonkey/TamperMonkeyを自動更新できるように、上記で取得したものと同じ生のリンクを指すように、ユーザースクリプト内の更新フィールドとダウンロードフィールドを設定することです。

これを行う多くのスクリプトがあります。 Charcoal TeamのUserscriptsリポジトリFlag Dialog Smokey Controls、別名FDSC の例を使用します。これには、このような構成の良い例があります。

ユーザースクリプトには、スクリプトの名前、バージョン番号、投稿者、有効になっているサイトなどのユーザースクリプトの詳細を定義するヘッダーセクションがあります。ここには、「ダウンロード」コンポーネントと「更新」コンポーネントに関連する2つのフィールドがあります。@updateURL@downloadURLです。 // ==UserScript==コメント/ヘッダーセクションのこれらのフィールドを、最初のセクションで参照する生のリンクに設定します。次に、Greasemonkey/Tampermonkeyは更新URLを適切に解釈し、ユーザースクリプトヘッダーセクションの「バージョン」をインクリメントすると、それに応じて更新します。

FDSCはこのために2つのスクリプトを使用することに注意してください。1つは実際の更新検出用で、もう1つは更新バージョンを取得する実際のダウンロード場所用です。

// @updateURL   https://raw.githubusercontent.com/Charcoal-SE/Userscripts/master/fdsc/fdsc.meta.js
// @downloadURL https://raw.githubusercontent.com/Charcoal-SE/Userscripts/master/fdsc/fdsc.user.js

これらにも同じリンクを使用できると思います。 (ただし、これはテストしていません)

7
Thomas Ward