付録

キーボードショートカット一覧

キー機能
Navigatorウィンドウ
Alt + S スタイルシートメニューを開く
Alt + O アウトラインメニューを開く
Alt + N ナビゲーションメニューを開く
Alt + A アプリで開くメニューを開く
Alt + C カスタムスクリプトメニューを開く
S 次の見出しへ
W 前の見出しへ
A or Ctrl(Command)+↓ 次のリンク
Q or Ctrl(Command)+↑ 前のリンク
Ctrl(Command) + J リンクの一覧をコピー
Alt + Back Space 一つ上の階層へ
T ナビゲーション:トップ
U ナビゲーション:上へ
F ナビゲーション:最初のページ
P ナビゲーション:前のページ
N ナビゲーション:次のページ
L ナビゲーション:最後のページ
C ナビゲーション:目次
1 ナビゲーション:章
2 ナビゲーション:節
3 ナビゲーション:項
X ナビゲーション:付録
G ナビゲーション:用語集
I ナビゲーション:索引
? ナビゲーション:ヘルプ
H ナビゲーション:検索
@ ナビゲーション:制作者
R ナビゲーション:著作権
B ナビゲーション:ブックマーク
O ナビゲーション:別バージョン
JavaScriptパネル
Ctrl(Command) + W 閉じる
Ctrl(Command) + Q
Ctrl(Command) + R 実行
サイト別ユーザースタイルの編集
Ctrl(Command) + S 保存
Ctrl(Command) + W 閉じる
Ctrl(Command) + Q
Ctrl(Command) + R 再読み込み
スタイルシートマネージャ
Ctrl(Command) + W 閉じる
Ctrl(Command) + Q
Ctrl(Command) + R 再読み込み
Ctrl(Command) + E 編集

短縮構文の一覧

カスタムスクリプトおよびJavaScriptパネルでは、Netscape/Mozillaの内部仕様を知らない人でも簡単にスクリプトを作成できるように、以下の参照や関数をあらかじめ用意しています。

定数・値・参照

XHTMLNS
XLinkNS
XULNS

各々、XHTML 1.0/1.1・XLink 1.0・XULの名前空間を示す文字列です。

_window

閲覧中のドキュメント(フレームを使ったページの場合は現在のフレーム)のグローバルオブジェクト(Windowオブジェクト)への参照です。

_window.document.navigations

ナビゲーションとして認識されているlink要素・a要素の一覧が収められた配列で、以下のプロパティがあります。

length

ナビゲーション用リンクの数

[n].elemType

そのリンクの要素タイプ(文字列)。link要素ならnavigation、a要素ならanchorです。

[n].href

そのリンクのリンク先。

[n].substance

そのリンクの要素そのもの。

_window.document.headings

見出し要素の一覧が収められた配列で、以下のプロパティがあります。

length

ナビゲーション用リンクの数

[n].id

その見出しのid。見出しにidがない場合、直下のa要素のname属性の値に、それもなければnullになります。

[n].level

その見出しのレベル。

[n].label

その見出しの内容テキスト。

[n].substance

その見出し要素そのもの。

_contextualURI

リンクを右クリックしてコンテキストメニューを開いた場合はリンク先のURI、それ以外の場合は現在のフレームのURIの文字列です。

_popupNode

その上で右クリックしてコンテキストメニューを開いたノードへの参照です。コンテキストメニューを開いていない場合はnullです。

_selection

選択範囲のテキストです。未選択状態では空文字列になります。

_selectionSource

選択範囲のHTMLのソースです。途中から選択されている要素については、開始タグ・終了タグが補われます。

_selectionNodes

選択範囲に含まれているノードの一次配列です。

_focusedElement

現在フォーカスされている要素ノードへの参照です。

_profileURI
_profilePath
_installedURI
_installedPath
_temporaryURI
_temporaryPath
_homeURI
_homePath

それぞれ、現在のユーザーのプロファイルディレクトリ、Mozilla/Netscapeがインストールされているディレクトリ、システムのテンポラリファイル専用ディレクトリ、ホームディレクトリ(デスクトップなど)の位置を示す文字列です。

URI」は「file:///」という形のURI形式、「Path」はプラットフォームごとのファイルパス形式(Windowsなら「c:\...」)です。

_isOnline

オンラインモードかどうかを示す真偽値です。

_inFrame

コンテキストメニューを開いたのがフレームの中かどうかを示す真偽値です。

関数

_getTopWindowOf(aWindowType)

指定したウィンドウタイプのXULウィンドウで、最近アクティブだったものを返します。

_getWindowsOf(aWindowType)

指定したウィンドウタイプのXULウィンドウを配列として返します。

_loadURI(aURI[, aReferrerURI])

指定したURIを現在のウィンドウ(現在のタブ)に読み込みます。返り値はURIを読み込んだブラウザです。

_openNewWindow(aURI[, aReferrerURI])

指定したURIを新しいウィンドウで開きます。返り値は開かれたXULウィンドウです。

_openNewTab(aURI[, aReferrerURI])

指定したURIを新しいタブで開きます。返り値は開かれたタブです。

_loadURIAndDo(aURI[, aReferrerURI[, aCallBackFunc1[, aCallBackFunc2[, ...]]]])

指定したURIを現在のウィンドウ(現在のタブ)に読み込み、ページの読み込み完了後に、渡された関数を実行します。返り値はURIを読み込んだブラウザです。

実行する関数には第一引数として、読み込んだページのWindowオブジェクトが渡されます。また、関数内ではこれらの短縮構文も利用できます。

_openNewWindowAndDo(aURI[, aReferrerURI[, aCallBackFunc1[, aCallBackFunc2[, ...]]]])

指定したURIを新しいウィンドウで開き、ページの読み込み完了後に、渡された関数を実行します。返り値は開かれたXULウィンドウです。

実行する関数には第一引数として、読み込んだページのWindowオブジェクトが渡されます。また、関数内ではこれらの短縮構文も利用できます。

_openNewTabAndDo(aURI[, aReferrerURI[, aCallBackFunc1[, aCallBackFunc2[, ...]]]])

指定したURIを新しいタブで開き、ページの読み込み完了後に、渡された関数を実行します。返り値は開かれたタブです。

実行する関数には第一引数として、読み込んだページのWindowオブジェクトが渡されます。また、関数内ではこれらの短縮構文も利用できます。

_selectButton(aMessage, aButtons)

ボタンのラベルを格納した配列を渡して、3ボタンまでのダイアログボックスを表示します。返り値は、押されたボタンのインデックス(0〜3)です。

_selectButtonWithTitle(aTitle, aMessage, aButtons)

_selectButton()の、ダイアログのタイトルを指定できるタイプです。

_selectList(aMessage, aListItems)

リストの項目を格納した配列を渡して、リストボックス形式のダイアログボックスを表示します。返り値は、選択されたリストアイテムのインデックス(0〜n-1)です。

_selectListWithTitle(aTitle, aMessage, aListItems)

_selectList()の、ダイアログのタイトルを指定できるタイプです。

_getClipBoard()

クリップボードに格納されている文字列を返します。クリップボードの中身が文字列以外のデータの場合は、nullを返します。

_setClipBoard(aString)

指定した文字列をクリップボードに格納します。返り値はありません。

_getInnerText(aElementNode)

指定した要素ノードの内部テキスト(画像がある場合は画像の代替テキスト)を集め、文字列として返します。

_convertCharset(aString, aInputCharset, aOutputCharset)
_convertCharset(aString, aOutputCharset)

文字コードの変換を行い、変換後の文字列を返します。変換前の文字コードを省略すると、内部コード(Unicode)からの変換とみなします。

_addStyleSheet(aURI[, aMIMEType[, aMedia[, aTargetWindow]]])

指定したスタイルシートを追加で適用します。MIMEタイプを省略すると「text/css」、対象メディアを省略すると「all」として扱います。第四の引数としてフレームあるいはWindowオブジェクトを渡すと、そのフレームを対象にして実行します。返り値はありません。

_run(aAppPath[, aOptions])

指定のアプリケーションを起動します。起動オプションは文字列または配列の形で渡します。返り値はありません。

ファイルの読み込みと保存

_include(aFilePathOrURI)

指定した外部のJavaScriptのファイルを読み込み、実行します。返り値はありません。

_readFrom(aFilePath)

指定した外部のファイルをテキストとして読み込み、内容を文字列として返します。

_writeTo(aString, aFilePath[, aFlags])

渡した文字列をテキストファイルに保存します。同名ファイルがある場合は確認無しで上書きします。文字コード変換は行いませんので、必要に応じて _convertCharset() で変換しておいて下さい。

第三引数として以下のフラグを、"flag1=yes,flag2=no"というような形式の文字列で指定できます。

CreateDirectory
指定した保存先のディレクトリが存在しない場合にディレクトリを自動で作成する場合はyesを、処理を中断する場合はnoを指定します。無指定の場合は確認のダイアログが表示されます。
Overwrite
指定した保存先のファイルが存在する場合に上書きする場合はyesを、処理を中断する場合はnoを指定します。無指定の場合は確認のダイアログが表示されます。

保存したファイルをnsILocalFileのオブジェクトとして返します(キャンセルされた場合はnull)。

_saveURIAs(aURI[, aFilePath[, aFlags]])

URIで示されたリモートのリソースをローカルにファイルとして保存します。第二引数を省略するとファイル選択用のダイアログを開きます。第三引数には_writeTo()と同様のフラグを指定できます。ダウンロードを実行中のnsIWebBrowserPersistオブジェクト(ダウンロード開始前にキャンセルされた場合はnull)を返します。

_saveURIInBackgroundAs(aURI[, aFilePath[, aFlags]])

URIで示されたリモートのリソースをローカルにファイルとして保存します。_saveURIAs()とは異なり、ダウンロードの進行度を示すダイアログなどを表示しません。第二引数を省略するとファイル選択用のダイアログを開きます。第三引数には_writeTo()と同様のフラグを指定できます。ダウンロードを実行中のnsIWebBrowserPersistオブジェクト(ダウンロード開始前にキャンセルされた場合はnull)を返します。

_chooseFile(aTitle[, aDefault[, aFilter]])

コモンダイアログを開き、ファイルを一つ選択します。デフォルトのファイル名と、ファイル選択のフィルタ(*.txt;*.docなどの形式)を指定できます。返り値はnsIFileのオブジェクトです。

_chooseFileToSave(aTitle[, aDefault[, aFilter]])

_chooseFile()と基本的には同じですが、保存専用でファイルを選択します。

コンテキストメニュー拡張の機能

_cancelStyles([aTargetWindow])

現在のページあるいは現在のフレームの全てのスタイル指定を無効にします。引数としてフレームあるいはWindowオブジェクトを渡すと、そのフレームを対象にして実行します。

_switchStyleTo(aStyleName[, aTargetWindow])

現在のページあるいは現在のフレームの表示スタイルを、指定した名前のスタイルに切り替えます。その名前のスタイルがない場合やnullを渡した場合は、永続スタイルシートのみの表示になります。第二の引数としてフレームあるいはWindowオブジェクトを渡すと、そのフレームを対象にして実行します。返り値はありません。

_openStyleSheetSource(aStyleName[, aTargetWindow])

現在のページあるいは現在のフレームの、指定した名前のスタイルシートのソースを表示します。複数のシートがある場合、別ウィンドウあるいはタブで開きます。第二の引数としてフレームあるいはWindowオブジェクトを渡すと、そのフレームを対象にして実行します。返り値はありません。

_editGlobalUserStyleSheet()

グローバルユーザースタイルシートを編集します。返り値はありません。

_editCustomUserStyle([aTargetWindow])

現在のページ用のサイト別ユーザースタイルを編集します。引数としてフレームあるいはWindowオブジェクトを渡すと、そのフレームを対象にして実行します。返り値はありません。

_addOptionalStyleSheet(aStyleIndexOrName[, aTargetWindow])
_removeOptionalStyleSheet(aStyleIndexOrName[, aTargetWindow])

ユーザー定義スタイルの有効無効を切り替えます。ユーザー定義スタイルは登録名あるいは登録順の番号(0〜n-1)で指定します。第二の引数としてフレームあるいはWindowオブジェクトを渡すと、そのフレームを対象にして実行します。返り値はありません。

_getLinks([aRegExp[, aShouldCopyResultToClipBoard[, aTargetWindow]]])

現在のページ、現在のフレーム、あるいは選択範囲のリンクを収集し、リンク先URIの一覧を配列として返します。第二引数にtrueを与えると、結果をクリップボードにコピーします。第三の引数としてフレームあるいはWindowオブジェクトを渡すと、そのフレームを対象にして実行します。

_getLinksWithNode([aRegExp[, aTargetWindow]])

現在のページ、現在のフレーム、あるいは選択範囲のリンクを収集し、配列として返します。返す配列の個々の要素は、uriプロパティにリンク先、nodeプロパティにリンクの要素ノードを格納したオブジェクトです。第二の引数としてフレームあるいはWindowオブジェクトを渡すと、そのフレームを対象にして実行します。

_SendURITo(aURI, aReceiverIndexOrName)

指定したWebサービスにURIを送ります。Webサービスは登録名あるいは登録順の番号(0〜n-1)で指定します。返り値はありません。

_SendStringTo(aString, aReceiverIndexOrName)

指定したWebサービスに文字列を送ります。Webサービスは登録名あるいは登録順の番号(0〜n-1)で指定します。返り値はありません。

_OpenWithApp(aURI, aString, aAppIndexOrName)

指定した外部アプリケーションにURIと文字列を渡します。アプリケーションは登録名あるいは登録順の番号(0〜n-1)で指定します。返り値はありません。

_runCustomScript(aScriptIndexOrName[, aTargetWindow])
_CustomScript(aScriptIndexOrName[, aTargetWindow])

別のカスタムスクリプトを実行し、実行したスクリプトの返り値をそのまま返します。スクリプトは登録名あるいは登録順の番号(0〜n-1)で指定します。第二の引数としてフレームあるいはWindowオブジェクトを渡すと、そのフレームを対象にして実行します。

_up([aTargetWindow])
_goNextHeading([aTargetWindow])
_goPrevHeading([aTargetWindow])
_goJSPanel([aTargetWindow])
_showComments([aTargetWindow])
_showLinks([aTargetWindow])
_showIDs([aTargetWindow])
_showCites([aTargetWindow])
_showTitles([aTargetWindow])
_showEvents([aTargetWindow])
_showAll([aTargetWindow])

コンテキストメニュー拡張の各機能を実行します。引数としてフレームあるいはWindowオブジェクトを渡すと、そのフレームを対象にして実行します。全て、返り値はありません。

設定の読み込みと保存

_getPref(aPrefString)

保存された設定を読み込み、返します。返す値の型は真偽値・文字列・整数値のいずれかです。設定が保存されていない場合、nullを返します。

_setPref(aPrefString, aValue)

指定した名前で設定を保存します。返り値はありません。保存する値の型は自動で判別され、真偽値・数値(整数値)・文字列値のいずれかとして扱われます。例えば数値を文字列として保存したい場合は、value.toString() などを渡すようにして下さい。

_clearPref(aPrefString)

指定した名前の設定を削除します。返り値はありません。なお、その設定が保存されていない場合は何もしません。

_getCookie(aName)

指定した名前のCookieの値を取得し、返します。その名前のCookieがない場合は空文字列を返します。

_putCookie(aName, aValue [, aExpiresDays[, aPath]])

指定した名前でCookieを発行します。有効期限とパスは省略することができます。

サンプルスクリプトの説明

カスタムスクリプト用のサンプルスクリプトとして、あらかじめ以下のものが用意されています。自分でカスタムスクリプトを作る場合などの参考にして下さい。

  1. 現在のページへのリンクを生成

    現在のページへのリンクを<a href="URI" title="ページのタイトル">ページのタイトル</a>の形で作成し、クリップボードにコピーします。

  2. 選択範囲をHTMLとして引用

    選択範囲のテキストを、元のHTMLのマーク付けごと引用します。インライン要素だけを含んでいる場合は<q title="ページのタイトル" cite="URI">選択範囲</q>の形で、ブロックレベル要素が含まれている場合は、<qblockquote title="ページのタイトル" cite="URI"><p>選択範囲</p></blockquote>の形で引用し、クリップボードにコピーします。

  3. 見出しのリストを生成

    ページ内の見出しを収集し、アウトラインを順不同リストで作成して、クリップボードにコピーします。ページ内の目次などを作るのに使えます。

  4. テキストファイルをUTF-8でエンコードする

    選択したテキストファイルを任意のエンコーディングからUTF-8に変換して保存します。.dtdファイルをローカライズしたいのにUTF-8のテキストを読み書きできるエディタを持っていない、などの場合などにどうぞ。

  5. 文字列をUnicodeエスケープする

    入力した文字列をJavaScript用に\u文字コードの形にUnicodeエスケープします。言語パックのpropertiesファイルを他言語化する場合などに使えます。

  6. 文字列をCSS用にエスケープする

    入力した文字列を\文字コード (末尾に半角スペース有り)の形にエスケープします。スタイルシート中のエスケープされた文字に対応したブラウザ専用のスタイルシートを書くときなどに使えます。

  7. 文字列をXMLの文字数値参照に変換する(10進数)

    入力した文字列を&#文字コード(10進数);の形の文字数値参照に変換します。

  8. 文字列をXMLの文字数値参照に変換する(16進数)

    入力した文字列を&#x文字コード(16進数);の形の文字数値参照に変換します。

  9. noframesの中身を表示

    フレームを使用したページで、<noframes>の内容を表示します。フレーム非対応ブラウザでの表示を確認するのに使えるかもしれません。

  10. オブジェクトのプロパティ一覧を取得する

    JavaScriptのオブジェクトのプロパティ一覧を調べ、クリップボードに結果をコピーします。

  11. オブジェクトのプロパティ一覧を取得する(再帰処理)

    JavaScriptのオブジェクトのプロパティ一覧を調べ、クリップボードに結果をコピーします。オブジェクトのプロパティ一覧を取得するとの違いは、再帰処理で各プロパティの中身も調べようとする点です。

  12. Iria形式のダウンロードリストを生成

    ページ内のリンクを収集し、Iria形式のダウンロードリストを作成して保存します。あんな事やこんな事に使えるかもしれません。

  13. パッケージをアンインストール

    入力した名前のパッケージをアンインストールします。exUnregisterer.jsの使い方の実例にもなっています。

  14. 画像の自動リサイズ(IE互換)

    ウィンドウサイズより大きい画像を開いた場合、ウィンドウサイズに合わせて画像を自動的に縮小表示します。Full Sizeボタンで、元のサイズで表示します。

  15. サイドバーに追加

    現在のページかリンク先をサイドバーパネルとして登録します。

  16. サイドバーに追加(2)

    現在のページかリンク先をサイドバーパネルとして登録します。サイドバーに追加が失敗する場合はこちらを同素。

  17. 他のスクリプトを選択して起動

    カスタムスクリプト同士を連携させる例です。

  18. XULキャッシュのON/OFF

    設定をトグルさせる例です。

  19. installed-chrome.txtから重複しているエントリを消す

    インストーラを使って上書きインストールしていると、installed-chrome.txtにどんどんエントリが重複登録されていってしまいます。このスクリプトを実行すると、重複したエントリだけを削除してinstalled-chrome.txtをクリンナップします。僕のようなズボラな使い方をしている方に捧げます。

  20. 指定したサイトへのリンクを強調表示する

    「本物の入り口」や「自分のサイトへのリンク」などを探すのに役立つかもしれません。

便利な使い方

© 2001-2004 Piro(SHIMODA Hiroshi):http://piro.sakura.ne.jp/