Skip to content

Latest commit

 

History

History
119 lines (94 loc) · 5.51 KB

readme.ja.md

File metadata and controls

119 lines (94 loc) · 5.51 KB

English / 日本語

userChromeES

uc / userChromeJS+サブスクリプトローダ 風に、ローカルに立てたWebDAVサーバーを介し、WebExtension APIを叩くユーザースクリプトを読み込むFirefoxアドオンです。

※XPCOM APIにアクセスできるようにするアドオンではないため、userChromeJS用のユーザースクリプトとはまったく互換性がありません。

WebExtensionではローカルのファイルを直接読み込めない (Fiefox 57以降) ため、WebDAVサーバー経由で読み込む手段を取っており、あらかじめローカルにWebDAVサーバーを立てる必要があります。

アドオンの設定で指定したWebDAVディレクトリのURLから、拡張子が *.uc.js、または *.uc.es となっているファイルを、アドオン起動時に読み込みます。サブディレクトリからは読み込みません。

インストール

Releasesページの「Downloads」で、「user-chrome-es-○○○.xpi」となっているリンクをクリックします。

なお、ローカルにあるスクリプトファイルの読み込みについて、リモートコードの実行であると判断されたため、当アドオンはAddons.mozilla.org (AMO)から削除されています。

メタデータ

各ユーザースクリプトにはGreasemonkey風のメタデータブロックが必要です。当アドオンでは以下のキーを解釈します。

メタキー名 値の意味
@name スクリプト名。
@description スクリプトの概要。
@include スクリプトを追加する場所。次のいずれかを指定:
  • background
  • popup
  • options
  • devtools
  • sidebar
複数指定可能。
必須

コード例

popup options sidebar の拡張

ページごと置き換えるのでなければ、それぞれ以下のようなマークアップ (body要素直下) を想定しています。

  • ul
    • li
      • :only-child な要素 (a要素やbutton要素)
        • img
        • テキストや要素
    • ……

/options/options.xhtml

  • article
    • h1
    • 要素
    • ……
  • ……

/sideber/sideber.xhtml

  • menu
    • li
      • details
        • summary
        • menu
          • li
          • ……
    • li
      • :only-child な要素 (a要素やbutton要素)
        • img
        • テキストや要素
    • ……

permissions / optional_permissions

ユーザースクリプトはすべてのWebExtension APIを利用できますが、以下の権限は optional_permissions manifest.json キーに含まれています。 そのため、/options/options.xhtml をタブとして開くなどした上で、permissions APIを利用して権限を要求する必要があります。

  • http://localhost/* 以外のURLに対する host パーミッション
  • bookmarks
  • browserSettings
  • clipboardRead
  • clipboardWrite
  • cookies
  • downloads
  • downloads.open
  • find
  • geolocation
  • history
  • idle
  • tabs
  • topSites
  • webNavigation
  • webRequest
  • webRequestBlocking

activeTab パーミッションも要求可能です。

Contribution

Pull Request、または Issue よりお願いいたします。

ライセンス

当アドオンのライセンスは Mozilla Public License Version 2.0 (MPL-2.0) です。

当ディレクトリに含まれるファイルは、FirefoxアドオンGreasemonkeyの一部であり、MIT Licenseで公開されているスクリプトコードです。