スクリプト - (2012/01/29 (日) 22:31:06) の編集履歴(バックアップ)
目次
スクリプトとは
参照:
V2C 使用法 外部コマンド:スクリプト
V2Cにはスクリプトと、System系スクリプトがあり次の違いがあります。
スクリプト
外部コマンドに登録することよってV2Cの機能を拡張して手動で実行ができるものです。
V2Cユーザーが個別に自由な名前を付けて配布・利用することが可能です。
System系スクリプト
V2Cの設定ファイルです。V2C本体の動作(更新、書き込みなど)に自動で影響を与えることができるものです。
名前が決まっているため、一ファイル内に複数の機能がまとめて用意されていることがあります。
どちらもスクリプト一覧からファイルを入手し、設定することで利用できます。
V2Cにはスクリプトと、System系スクリプトがあり次の違いがあります。
スクリプト
外部コマンドに登録することよってV2Cの機能を拡張して手動で実行ができるものです。
V2Cユーザーが個別に自由な名前を付けて配布・利用することが可能です。
System系スクリプト
V2Cの設定ファイルです。V2C本体の動作(更新、書き込みなど)に自動で影響を与えることができるものです。
名前が決まっているため、一ファイル内に複数の機能がまとめて用意されていることがあります。
どちらもスクリプト一覧からファイルを入手し、設定することで利用できます。
スクリプトの設定方法
- スクリプトをインストールするフォルダを作成する。
まず、V2C保存用フォルダに"script"フォルダを作成します。全てのスクリプトは、このフォルダに入れることでインストールすることができます。
V2C保存用フォルダの場所は、V2Cの「メインメニュー」→「ヘルプ」→「V2Cについて」から確認することができます。 - スクリプトファイルを入手し、"script"フォルダに入れる。
入手したtree.jsを"script"フォルダに入れる。- スクリプトの主な入手先
- スクリプト一覧からダウンロードする。
tree.jsをダウンロードし、zipファイルを解凍する。 -
スクリプトスレ@V2C掲示板
からコピペでスクリプトファイルを作成する。
(文字コードはUTF-8で保存。Windows付属のメモ帳の場合は「名前をつけて保存」ダイアログの下の方で文字コードを指定でます。)
- スクリプト一覧からダウンロードする。
- その他の入手先
-
V2C関連スレ用アップローダー
からダウンロードする。
上記と同じくtree.jsをダウンロードし、zipファイルを解凍する。 -
頂き物スクリプト
(※現在古いファイルです。最新ではありません。)からダウンロードする。
上記と同じくtree.jsをダウンロードし、zipファイルを解凍する。
-
V2C関連スレ用アップローダー
からダウンロードする。
- スクリプトの主な入手先
- スクリプト一覧の詳細か、スクリプトファイルの中身をメモ帳等のテキストエディタで参照し【登録場所】に指定されている場所に【ラベル】【コマンド】を設定する。
- 【登録場所】
全体 レス表示
V2Cの「メニュー」→「設定」→「外部コマンド」→「一般」タブ→「レス表示」タブ(または「全体」タブ)を開く。
次の項目のテキストエリアに青字の文を記入する。- 【ラベル】
被参照レスでツリー表示 と記入する(好きな文字列でもよい)。 - 【コマンド】
$SCRIPT tree.js と記入する。(tree.jsのように複数のコマンドが用意されている場合は、欲しいものだけ選択することができる) - ID
10 と記入する。(記入は任意です。マウスジェスチャに割り当てないなら未設定でOK)
- 【ラベル】
- 【登録場所】
- 追加ボタンを押し、一覧に追加されたことを確認し、OKを押して設定終了。
参考:ぶるるる
V2CでJaneにもあったレスツリーを表示
使い方
【登録場所】に従って登録した場所から、スクリプトを実行することができます。具体的な使用場所については、外部コマンドを参照してください。
例)レス表示に登録したtree.jsを使用する
レスが表示されてる上(レス番の上ではないので注意!)で右クリックしてください。ポップアップメニューに自分が付けたラベル名(上記設定の通りであれば「被参照レスでツリー表示」)が追加されてるはずです。それクリックすると、右クリックした場所のレスに対するツリーが表示されます。なお、被参照レスでない場合は表示されません。
備考
マウスジェスチャに登録
いちいち右クリック→選択という操作が面倒だという場合は、マウスジェスチャに登録することもできます。上のスクリプト設定のときにIDを設定しておくと、マウスジェスチャのレス表示のトコに追加されてるはずです。([10] レス表示 みたいな感じ)それを設定してやればマウスジェスチャで起動できます。
マウスオーバーで実行
(T20100813からURLExec.dat経由でも使用できるようになりました。詳細は「マウスオーバー」から)
ポップアップのレイアウトを変更
このtree.jsは、動的にHTMLを作ってそれをV2Cがポップアップで表示してるだけなので、中をいじれば自分の好きなようにレイアウトを変えられます。スクリプトはただのテキストファイルなので、tree.jsをUTF-8で開けるテキストエディタで開いて書き換えればOK。
例えば、tree.jsの下のほうにあるCSSの設定の下記の行で、x-smallをmediumにすると文字が大きくなります。
body{margin:5px 0 5px 5px; font-size: x-small;}
ポップアップからマウスを外した時にポップアップを閉じるようにする
通常、スクリプトでのポップアップはクリックしないと閉じませんが、R20101119よりマウス移動だけで閉じる事が可能となりました。
ただし、スクリプト内に専用の設定を記述する必要があります。(少なくとも2010/11/19以前にリリースされたスクリプトは設定されていないはず)
自分で設定し直す場合は以下のようにすれば有効にできます。
ただし、スクリプト内に専用の設定を記述する必要があります。(少なくとも2010/11/19以前にリリースされたスクリプトは設定されていないはず)
自分で設定し直す場合は以下のようにすれば有効にできます。
適用したいスクリプトをテキストエディタ(文字コードはUTF-8)で開いて v2c.context.setDefaultCloseOnMouseExit(true); を先頭行に追加し、保存する。
通常は上記で問題ないですが、各ポップアップ毎に設定を変えたい場合は下記のようにしてください。
適用したいスクリプトをテキストエディタ(文字コードはUTF-8)で開いて setPopupText(***) か setPopupHTML(***) という行を探して(***は何かしらの文字列)、その真下に v2c.context.setCloseOnMouseExit(true); という行を追加し、保存する。
ポップアップの文字列を選択出来るようにする
適用したいスクリプトをテキストエディタ(文字コードはUTF-8)で開いて setPopupText(***) か setPopupHTML(***) という行を探して(***は何かしらの文字列)、その真下に v2c.context.setPopupFocusable(true); という行を追加し、保存する。
選択文字列に対する右クリックメニューはコピーと外部コマンド以外の選択メニューは出ません。
また、コピペでは一部改行されない等の制限があります。
さらに、一部の外部コマンドはエラーが出て使用できない可能性があります(v2c.context.thread等がnullになるため)
また、コピペでは一部改行されない等の制限があります。
さらに、一部の外部コマンドはエラーが出て使用できない可能性があります(v2c.context.thread等がnullになるため)
その他
- スクリプトファイル名を<>で囲むとV2Cの内部スクリプトを指定することができます。(現在は<wikipedia.js>のみ。)
- ファイルの拡張子は".js"である必要はありません。
System系スクリプトの設定方法
ここではスクリプトのひとつ、rescheck.jsを使用した例として、1つのレスに複数のURLがある場合で行頭に連番を振る機能を解説します。
- スクリプトをインストールするフォルダを作成する。
まず、V2C保存用フォルダに"script"フォルダを作成します。さらにその中に"system"フォルダを作成します。
スクリプトは、この"system"フォルダに入れることでインストールすることができます。
V2C保存用フォルダの場所は、V2Cの「メインメニュー」→「ヘルプ」→「V2Cについて」から確認することができます。 - スクリプトファイルを入手し、"system"フォルダに入れる。
入手したrescheck.jsを"system"フォルダに入れる。
入手先はスクリプトの設定方法と同じです。 - スクリプトファイルの中身を確認・編集する。
以下の青字の行を探し行頭の"//"を削除する。
//ck.renbanURL = true; //URLのみの行が連続する場合、各行に番号を振る
目的の機能を利用するには、行頭の"//"を削除するなど、編集する必要があります。
スクリプトファイルの中身をメモ帳等のテキストエディタで参照しファイル内のコメントに従うか、自力で編集してください。 - スクリプトのパーミッション設定
今回の例ではこの操作は必要ありません。
利用する機能にはパーミッション設定が必要な場合があります。ファイル内に促す記述があれば従ってください。
「メインメニュー」→「設定」→「外部コマンド」→「スクリプト」 で、利用するスクリプトのテキストエリアに英字を入力することで設定できます。 - スクリプトの読み込み
「メインメニュー」→「ファイル」→「再読み込み」→「rescheck.js」 で、ステータスバーに「rescheck.jsを起動しました」と表示されれば成功です。
使い方
起動に成功すれば、所定の動作で条件が合えば機能が自動実行します。
例)rescheck.jsの機能を使用する。
更新して新着レスを取得するなどすれば、設定例だと、URLの行頭に番号が振られるはずです。
スクリプトFAQ
スクリプト実行時に「access denied」や「~Permission」というエラーが出る
パーミッションの設定が間違っている可能性が高いです。
下記の外部コマンド登録例でいうとFの部分です。
下記の外部コマンド登録例でいうとFの部分です。
${SCRIPT:F} hoge.js
各スクリプトで指定する文字は異なります。
基本的にスクリプトファイル(~.js)の中に設定法が書いてあるはずなので、設定が間違っていないか確認して下さい。
マウスオーバーでスクリプトを起動するようにしている場合は、URLExec2.dat内の記述も間違っていないか確認して下さい。
post.js等のフォルダに保存するだけで適用されるシステム系スクリプトの場合は、「外部コマンド」→「スクリプト」タブからパーミッション設定を確認してください。
基本的にスクリプトファイル(~.js)の中に設定法が書いてあるはずなので、設定が間違っていないか確認して下さい。
マウスオーバーでスクリプトを起動するようにしている場合は、URLExec2.dat内の記述も間違っていないか確認して下さい。
post.js等のフォルダに保存するだけで適用されるシステム系スクリプトの場合は、「外部コマンド」→「スクリプト」タブからパーミッション設定を確認してください。
Javaを1.6.0_29または1.7.0_01(2011/10/30時点最新)にすると「sun.org.mozilla.javascript.internal.EvaluatorException: Cannot add a property to a sealed object~」のようなエラーが出る
今後方向性が変わる可能性ありますが、とりあえず現時点での対処法
http://yy61.60.kg/test/read.cgi/v2cj/1304861674/285
http://yy61.60.kg/test/read.cgi/v2cj/1304861674/285
285 :n|a :2011/10/26(水) 01:48:52 ID:2jeXDaJA
>>280-284
おそらくセキュリティ強化のための変更ではないかと思われるので、
スクリプトを変更する必要があると思います。
との事なので、スクリプトの修正が必要です。
自分で修正できない人は、どのスクリプトでエラーが出るかをエラーメッセージも添えてスクリプトスレに報告してください。
誰かが修正してくれるかもしれません。
(エラーメッセージはメニューの「表示」→「最後のエラーメッセージ」から取得できます。)
また、自分で修正できる方はスクリプトスレで修正版を公開していただけると助かります。
自分で修正できない人は、どのスクリプトでエラーが出るかをエラーメッセージも添えてスクリプトスレに報告してください。
誰かが修正してくれるかもしれません。
(エラーメッセージはメニューの「表示」→「最後のエラーメッセージ」から取得できます。)
また、自分で修正できる方はスクリプトスレで修正版を公開していただけると助かります。
(作成・編集者向け)スクリプトFAQ
書きかけの項目です。加筆、訂正募集中。 |
参考:ぶるるる
V2Cスクリプト作成メモ
本当はwikiに書きたいところだけど、こっちの方が気楽に書けるので・・・だもんでwikiへの転載は大歓迎。後、もし嘘書いてたら教えてください。
ソース例:
- function test() {
- var hoge = "テスト";
- v2c.println(hoge);
- };
- test();
-