firefox userChrome.js greasemonkeyスクリプトスレ 3
1 :
名無しさん@お腹いっぱい。 :
2007/11/07(水) 00:39:11 ID:oCfttq850
1.タブを閉じた時、直前にフォーカスしていたタブに移す 2.リンクをクリックしたときは、現在のタブの直後に、それ以外は一番右に新規タブ これらのような uc.jsはありますか? できれば、TMPを消せる…。 宜しくお願いします。
6 :
名無しさん@お腹いっぱい。 :2007/11/07(水) 17:16:45 ID:WbkQgSYB0
>>5 です
>>7 ありがとうございます!
今入れてみて試しているところなんですが、
リンクやブックマークを新規タブで開けなくて試行錯誤しているところです。
どうしても分からなかったらまた聞くかもしれません…。
>>7 5 さんではないですけど、頂きました。
2.0.0.9 ayakawa 多段タブのuc.jsとopenTabs...uc.js
一緒でも正常に動いてます!
これでタブ周りの拡張をすべてはずせます。
(´Д⊂ ありがとうございました
10 :
7 :2007/11/07(水) 21:57:55 ID:cmaxxvXd0
11 :
7 :2007/11/07(水) 23:23:30 ID:cmaxxvXd0
>>11 私のやり方がいけないのか、
やっぱりどうしてもリンクやブックマークを新規タブで開けません。
現在のタブで開いてしまいます。
検索バーからは新規タブで開くのですが…。
まだ30分ほどしか
>>10 >>11 をいじってないので、
もう一度頑張ってみます!!とりあえず報告とお礼でした。
ありがとうございます!
13 :
7 :2007/11/07(水) 23:44:32 ID:cmaxxvXd0
>>12 >>7 はリンクやブックマークを左クリックおよびEnterで開く場合ではなく
中クリックおよびctl+Enterで開く場合ですよ
>>13 ありがとうございます。
ブックマークは中クリックで新規タブで開けていたのですが、
左クリックで開こうと頑張っていました。。。
左クリックでも開けるようにはできないんですよねぇ?
慣れるしかないのかな…。
それと、リンクバーからは中クリックでも新規タブは開けないようです。
これも、やはり無理なのでしょうか?
色々検索しているのですが、
どうしてもこれぞ!というサイトがヒットしなくて困っていました。
ですので、レスを頂けて非常に助かりました。
15 :
7 :2007/11/08(木) 00:26:10 ID:QiTb2oYo0
>>14 リンクバーとは?
過去ログに挙がっていたもの,
>>3 のアップローダーにありますよ。
BHNewTab-0.7-mod2.uc.js
misc.uc.jsの中のHomebuttonNewTabおよびLocationbarNewTab
linkinnewtabforspecified.user.zip
新規タブは中クリックで慣れているので, 私はこれらは使用していません。
BHNewTab-0.7-mod2といえば、ブックマークツールバー端の>>以降(のドロップダウン メニュー)から開く際は新規タブで開かれずにカレントタブに上書きされてしまうんだけど どう修正すれば新規タブで開くようになるかわかる方おられませんか?
>>15 すみません。リンクバーはブックマークツールバーのことです。
misc.uc.jsを入れたら、無事思い通りの動作が可能となりました!!!嬉しい〜!!
アップローダーは一応覗いてみてはいたのですが、
Sleipnirからの乗り換えの初心者なので
詳しいコメントが載っていないと、どうもよく分からなくて…。
数日前から試行錯誤していただけに、嬉しいです。
これでTMPを消せそうです。
何度もありがとうございました。
>>16 >>17 です。おおぅ…。本当ですね。
16さんのレスで、気が付きました。
19 :
名無しさん@お腹いっぱい。 :2007/11/08(木) 02:04:03 ID:Z1ZUuUjJ0
20 :
7 :2007/11/08(木) 02:06:16 ID:QiTb2oYo0
22 :
7 :2007/11/08(木) 02:17:55 ID:QiTb2oYo0
>>21 削除パスと間違えたのです。
うpろだなんかレオアウト変わった?
パスなしにしておいた。
>>23 なるほど、俺が頂いたの変えてもらった後だったみたいだね。
>>20 頂きました。使わせてもらいます。
>>20 私も頂きました。完璧です!ありがとうございます。
>>26 以下のスクリプトより先に実行されるようにする。
LDRize
Minibuffer
>>26 googleをマルチカラム化させるだけならuserContent.cssでも出来るよ.
@-moz-document domain("www.google.co.jp"),domain("www.google.com"){
#mbEnd{display:none;}
#res > div,#res > blockquote{ -moz-column-width:20em; -moz-column-gap:2em; }
#res > blockquote{ margin:0; }
#res > p.e + div,#navbar{ -moz-column-count:1; }
#res > p.e + div > table{ width:100%; }
div.g{ margin-left:0 !important; display:table; }
div.g nobr{ white-space:normal; }
#res > div > p{ font-size:80%; }
}
レイアウトが崩れるようだったら-moz-column-widthを増やすと解決するかも.
横からだけど頂きます。 今まで.j{width:55em !important;}で伸ばしてたけれどこっちの方が全然凄い
31 :
名無しさん@お腹いっぱい。 :2007/11/08(木) 17:55:36 ID:uBSGDAWF0
グリモンのソースは手に入れたんですが、 それをどういう風に適用すればいいのか分かりません gmscriptというファイルに、スクリプトファイルをいれたのですが、 グリモンのユーザースクリプトの管理というところに反映されてません スクリプトソースを適用する方法を教えてください!
33 :
名無しさん@お腹いっぱい。 :2007/11/08(木) 18:39:15 ID:uBSGDAWF0
34 :
16 :2007/11/08(木) 18:58:47 ID:8HX3oOA50
>>20 頂きました。
まさか修正版がアップされるとは思っていませんでした。
ありがとうございます。
35 :
26 :2007/11/08(木) 22:48:45 ID:NhB3IqMI0
>>28 特にそれらのスクリプトは入れていないと思います
>>29 ありがとうございます!
見事に理想とするものがcssだけで実行できました
usermenu.uc.jsは読み込まれるのにusercontent.uc.jsが読み込まれない。なぜだ。
37 :
名無しさん@お腹いっぱい。 :2007/11/09(金) 03:09:31 ID:BPnypchg0
ブックマークツールバーをステータスバーに置きたいんですけど、うまくいきません。そういうスクリプトありませんかね?
ff
39 :
はまつまみ :2007/11/09(金) 13:20:41 ID:TJLmoPMd0 BE:335402126-2BP(0)
ウギャア
>>40 軽量マウスジェスチャとAlice氏のスクリプトを同じ場所において
軽量マウスジェスチャの方にAlice氏の説明に書いてある
ナビゲーションリンク用のジェスチャを追加する。
するとlink要素で前ページ次ページを指定してあるサイトでは
マウスジェスチャで前ページ次ページを辿ることが出来るようになる。
>>20 ありがとうございます。とても助かっています。
厚かましいことを承知で機能要望を申し上げます。
次期バージョンとして、キーボードでの選択
(ex. C-B,Tab,Tab,Down,Down,Enterでお気に入りを選択)
にも対応して頂けると嬉しいです。
43 :
7 :2007/11/09(金) 19:19:17 ID:x9m5CURr0
>>43 素早い対応ありがとうございます!!
希望通りの動作です、本当に助かります。
45 :
40 :2007/11/09(金) 21:24:00 ID:Sm/Z4/Yl0
>>41 指定してあるサイトでの操作でしたか。
ありがとうございます。試してみます。
>>47 詳しく書かないですみませんでした、まさにその通りです。
更に言うと、上だとタブ操作時に誤爆がよくあるのと、タスクバーを上に持って行ってるので困るといった感じでした。
それで早速頂きました。
早々にすばらしいものをありがとうございました。
(ページ内ではなく)ブックマーク内をサイドバーの検索ボックスからmigemo検索できる ようにするにはどうしたらいいですか? xul/migemoではこれが出来ないようですが、xul/migemoのapiを使えば出来るかもと考えて やろうとしましたが、周辺知識があまりに足りないので難しいと判断しました。 例:以下のような動作が欲しいです。 javascript講座というサイト内の複数のページをブックマークするとします。 各ページのタイトルには"javascript講座"という文字列が含まれています。 そこで、「javascriptko」を検索キーに検索できれば便利そうです。 (「javascript講座」だとタイプするのに時間かかるから) まず、Ctrl+Bでブックマークをサイドバーに表示しますと、 自動的に検索ボックスにフォーカスされているので、「javascriptko」と入れます。 そうするだけで、サイト「javascript講座」内のブックマークしたページが サイドバーに一覧表示されます。 これで、ブックマーク内を整理しなくても、あとから簡単にブックマークを 取り出せることになりますから、とても便利です。
>>50 有益な情報ありがとうございます。
現段階では自分で書くのあきらめます。
>>53 1月5日更新版は動いたんですが、今配布してる6月25日更新版は動かないんです。
>>7 乙です。
しかしながら LINKONLYNEXT がどうも効かず、リンクも最右端に
開いてしまいます。
どうやら、リンクでも arguments.callee.caller が null になっていて
163行目の判定が false になっているようです。
(新規プロファイルでも確認)
何か他の設定が悪さしているのでしょうか。。。
>>alice0755さん
http://space.geocities.yahoo.co.jp/gl/alice0775/view/20071110 についての要望なのですが、
カレントタブから、リンクを複数開く場合は、そのカレントタブから開いたタブの右隣に開く
ということはできるのでしょうか?
具体的には
現在は
タブ1から1つ目のリンクを開くと
|タブ1|新規タブ1|タブ2|
タブ1から2つ目のリンクを開くと
|タブ1|新規タブ2|新規タブ1|タブ2|
となりますがこれを
タブ1から1つ目のリンクを開くと
|タブ1|新規タブ1|タブ2|
タブ1から2つ目のリンクを開くと
|タブ1|新規タブ1|新規タブ2|タブ2|
と開くということです。
58 :
7 :2007/11/10(土) 16:34:37 ID:+FlZCyH50
>>56 tabがらみの拡張機能, スクリプトが, handleLinkClickから標準で呼ばれている
openNewTabWith以外のメソッドで新規タブを開いていると思われる。
リンクをctrl+クリックまたは中クリックで新規タブを開く場合openNewTabWith
を通るのがブラウザデフォルトなので, それ以外に方法で新規タブを開いている
場合は個別に対応するしかないと思われる。
59 :
7 :2007/11/10(土) 16:36:10 ID:+FlZCyH50
>>57 できるスクリプトを読みましょう
INCREMENT
60 :
名無しさん@お腹いっぱい。 :2007/11/10(土) 18:59:23 ID:4P+Duw4p0
61 :
名無しさん@お腹いっぱい。 :2007/11/10(土) 19:14:08 ID:UBNlGBFX0
スレ住人の方々に質問です。 これだけは入れとけって言うお勧めのスクリプトはありますか?
>>59 const INCREMENT = 1;
となっているのですがすぐ右隣に新規タブを開いてしまいます
64 :
7 :2007/11/10(土) 20:46:13 ID:+FlZCyH50
>>63 tabがらみの拡張機能, スクリプトと干渉している
>>64 問題の切り分けをしてみました
Firefox 2.0.0.9
拡張userchrome.js 0.8のみ
chromeフォルダにはuserChrome.jsとSubScriptフォルダ
SubScriptフォルダにはopenTabsWhere_whichTabSelectWhenCloseTab.uc.js、ucjsNavigation.uc.js
この状況で問題はありません
しかしツール -> オプション -> タブ -> リンクを新しいタブで開いたとき、すぐそのタブに切り替える
にチェックをいれてしまうと、const INCREMENT = 1;の効果が反映されないようです
67 :
7 :2007/11/10(土) 22:55:47 ID:+FlZCyH50
>>65 Days on the Moonとこの open-tabs-next.uc.jsをベースにしていたが,
これを放棄して, ツール -> オプション -> タブ -> リンクを新しいタブで開いたとき、すぐそのタブに切り替える
に関わらないように作り直しました。
68 :
7 :2007/11/11(日) 00:11:07 ID:W2NcZ21N0
>>67 対応ありがとうございました
無事使えるようになりました
>>67 なにげにリンク判定を分かりやすくしていただき
ありがとうございます!
そこまでやっていただけたら、あとはこちらで原因を
究明するのみですが・・・、
・新規プロファイル
・拡張は UserChrome.jsのみ
・スクリプトは以下の3つのみ
- Sub-Script/Overlay Loader v3.0mod
- ucjsNavigation.uc.js
- openTabsWhere_whichTabSelectWhenCloseTab.uc.js
これでもなぜか openNewTabWith を通らない (´Д`;)
う〜む、あとは about:config の設定か・・・。
72 :
7 :2007/11/11(日) 02:26:38 ID:W2NcZ21N0
>>71 openNewTabWith を通らないリンクの種別はなんですか?
JavascrptなリンクとデータストリームなリンクははopenNewTabWithを通らないです。
呼び出されるメソッドは, プラットフォームによって異なる可能性もある。
>>52 ,
>>69 Fxのバージョン,b2rのバージョン,その他の拡張機能は?
もしかしたら, doCommand();を使わずに, 直接元のメソッドを呼び出すようにすればいいかもしれない。
お手数をおかけしてすみません。リンクをCtrl+クリックで NG です。 調べてみると、openNewTabWith を通っていないわけではなさそうです。 自分の環境では、Ctrl+クリックなどでリンクから新規タブを開いたとき、 openNewTabWith > loadOneTab > addTab と呼ばれていきます。 ということは、その過程を TabOpen イベントから辿っていくことができて いないのかと・・・。 と、ここまで書いておいてもしやとおもい Fx 本体を 2.0.0.6 → 2.0.0.9 に アップデートしたら無事 caller を拾えました。 お騒がせしました。。。_| ̄|○
>>47 GJ!!
ここはとってもインテリジェンススレッドです
ありがとう
Firefox 2.0.0.9にて、UserContent.jsが動いてる気配がない。wbr.js入ってるのに長いurlが折り返されない。 他のUserChrome.js用スクリプトはちゃんと動作している。みんなどのUserContent.js使ってるんだ?
>>76 エラーコンソールを見てみるとか。
確かにuc.js界隈は選択肢多すぎで困るよね。アップデートとかも基本的に
手動でやらなくちゃいけないし(スクリプト書けば自動化できるだろうけど)。
拡張にないものを追加するのはいいけど、すでにあるものをパフォーマンス
アップだけの目的でuc.js化するのも考えものだと思う。
78 :
名無しさん@お腹いっぱい。 :2007/11/11(日) 16:26:52 ID:79G+DeWq0
openTabsWhere_whichTabSelectWhenCloseTab.uc.js を使ってるんですけど 右クリックからの検索を右隣に開くにはどうすればいいのでしょうか?
>>79 文字列を選択してドラッグして検索で開いた新規タブもカレント右隣にできたらいいね。
カレントをなんらかの起点にして開いたものは右隣、そうでないものは末尾、というのが理想。
あと、ctrl+shift+とかのモディファイアで、一時的に強制的に右隣か末尾かを選択できる
オプションもあるとうれしい。
userContent.jsにおいて FastladderとLDRでuser.jsに // @privilege false をつけても動かないものがあったので見てみると どうもonloadやwindow.addEventListenerのloadイベント が取得できていないようでした。 ためしに動かなかったScriptで var w = (typeof unsafeWindow == "undefined") ? window : unsafeWindow; var _onload = w.onload; w.onload = function() { _onload(); //内容 } となっているところを var w = (typeof unsafeWindow == "undefined") ? window : unsafeWindow; //内容 としてみたところきちんと動くことができました。 こちらの早合点であればすいません。
82 :
7 :2007/11/11(日) 19:12:24 ID:W2NcZ21N0
>>79 右クリックからの検索右隣に開く
conqueryModoki2
DragNgoModoki3
以下をfunction isLink(){の/*ここまで*/の前に挿入
if( caller.name == "oncommand"){
var event = caller.arguments[0];
if(event){
var target = event.target;
while(target && target != document.getElementById("contentAreaContextMenu")){
target = target.parentNode;
}
if(target == document.getElementById("contentAreaContextMenu")) return true;
}
}
if( /conqueryModoki/.test(caller) ) return true;
if( caller.name == "loadSearch") return true;
>>80 困難, なぜなら元のコマンドのモディファイアありがのコマンドが起動するため,
元コマンド(モディファイア)なしのコマンドが実行されない。
元コマンドにパッチを片っ端から当てていけばできるでしょうけれども, 考えただけで...
83 :
79 :2007/11/11(日) 19:26:55 ID:2WsiI/DK0
なんですかこのエラー エラー: userContent.uc.js TypeError : this.require is not a function ソースファイル: file:///F:/Mozilla_profiles/Firefox2.0/chrome/userContent.pl.js 行: 9 ↓9行目 if(this.USE_GM && this.require('GM_modoki.jsl')){
ごめんusercontent.pl.jsが古いのに上書きされてた。
stylishで(使わなくてもいいかもしれない)UIフォントを変更(なんでもいい)すると起動がすげー速くなった。 何回か再起動繰り返してたら元の速さに戻っちゃったのでまたフォント変更してみたらまた速くなった。 なぜだかさっぱりわからない
Usercontent.jsのツールメニューが表示されない。 エラーコンソールには何も出ず、他のスクリプトは正常に動作してる。 usercontent.jsは1.11。
あー、compact menu使ってると動作しないのね・・・。併用は無理ですか?
つ compact_menu.uc.js
>>82 なるほどなるほど。じゃあモディファイアうんぬんは無理として、
ドラッグして検索したのを右隣に開くのも無理ですかね?
>>81 windowオブジェクト下のonloadを初めとする「on〜」と言う
一連のイベント用のコールバックは使えないので,
unsafeWindowを使う必要があります.これはGMでも同様.
window.addEventListenerは動作しますが,ver. 1.1でスクリプトの起動タイミングが遅くなったため,
loadイベントの後にスクリプトが起動され,イベントを捕らえられない事があります.
従来通りの(GMと同じ)タイミングでも起動できるようにしておきます.
>>88 調べてみて併用できそうなら対応しておきます.
>>88 Compact Menuはfx2に対応していないようなので対応しないことにしました.
一応,任意の(IDを指定した)メニュー下におけるようにはしておきます.
>>98 Compact Menu 2はfx2に対応してなかった?
なんだこのエラー。最適化ビルド使ってるのが原因か? [Exception... "'Permission denied to get property Function.__parent__' when calling method: [nsIDOMEventListener::handleEvent]" nsresult: "0x8057001e (NS_ERROR_XPC_JS_THREW_STRING)" location: "<unknown>" data: no]
>>96 レスありがとうございます。
早速インストールしてみたのですが少しだけ希望と違ってました。
Link Padのようにサイドバーで複数の「あとで読む」を管理出来るものってないのでしょうか。
ツールメニューから新しいウィンドウを開くために、 "OpenBrowserWindow();"一行だけのスクリプトを使用していたのですが、 userMenu.js をv1.0にしたところ、動作しなくなりました。 (v0.9に戻すと正常に動作します) エラーコンソールには "エラー: userMenu.js / OpenNewWindow.js ReferenceError : OpenBrowserWindow is not defined (以下略)" と表示されます。どのように修正すれば動作するようになるのでしょうか?
104 :
初スレの80 :2007/11/13(火) 23:11:35 ID:/r1h8gd70
>>76 折り返されない辺りを「選択した部分のソースを表示」してwbrタグが挿入されていれば機能しています.
wbrタグが入っていても折り返されない事もあるみたいです.
>>98 他にもCompact Menu Blue と言うのもあるようで.
その他にこの手の拡張がどれだけあるかわからないけど,
一つ一つ対応するのは面倒なんで,任意メニュー下に追加するようにします.
>>101 非特権コードから特権コードを呼び出そうとして失敗したんじゃないかと.
メタデータに「@privilege false」を追加するか,
userContent.pl.jsの「USE_GM」を「2」にすれば動くと思います.
>>103 極一部を除くchromeWindow下のプロパティやメソッドを,
chromeWindowを省略して呼び出せなくなりました.
ので,「chromeWindow.OpenBrowserWindow();」として下さい.
>>104 レスありがとうございます!正常に動作しました!
102です。 aliceさん、わざわざスクリプト作って下さってほんとにありがとうございます。 一つだけ我侭を言うとセッションを終了してもリストが消えないと嬉しいです。 今のままでも十分過ぎるほどなので戯言程度に聞き流してください。
エラー: malformed URI sequence ソースファイル: file:///プロファイル/chrome/userContent.pl.js 行: 28 USE_GM=2にしたらこんなエラーが出た。
>>106 (11/14 20:00) セッションを保存するようにした。(とりあえず全ウインドウ共有とした)
http://userscripts.org/scripts/show/3432 これusercontent.jsで動かすとポストするときに↓のエラーが出る。
エラー: [Exception... "Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIXMLHttpRequest.status]"
nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)" location: "JS frame :: file:///プロファイル/chrome/GM_modoki.jsl :: anonymous :: line 67"
data: no]
ソースファイル: file:///プロファイル0/chrome/GM_modoki.jsl
行: 67
Fast lookup dictionary
http://userscripts.org/scripts/show/13050 が最近急に使えなくなりました。
スクリプト自体は読み込んでいるのですが、検索結果が帰ってきません。
エラーコンソールには
エラー:[Exception... "Component returned failure code: 0x805e000a [nsIXMLHttpRequest.open]"
nsresult: "0x805e000a (<unknown>)"
location: "JS frame :: 略/chrome/GM_modoki.jsl :: GM_xmlhttpRequest :: line 53" data: no]
ソースファイル: 略/chrome/GM_modoki.jsl
行: 53
とあり
GM_modoki.jslのreq.open(obj.method || 'GET',obj.url,true);がフォーカスされてます。
何とか使えるようになりませんでしょうか?
>>110 YahooとかGoogleは動くので, サイト側の仕様が変わったのでは?
どのサイトを使用しているのですか?
112 :
110 :2007/11/14(水) 20:51:48 ID:PF98RAfm0
>>111 どの検索エンジンでも同じで実行するとウィンドウ下部でくるくる回ってますが
結果が返ってきません。
データを送れないのか、受け取れないのかすらわかりません。
userContent.pl.js・userContent.uc.js・GM_modoki.jslは最新版を使ってます。
数日前までは使えていて、重宝しているだけに困ってます。
>>112 当方では使えています。
Noscript等でページのJavascriptを禁止していませんか?
if (!SE) return;
if (!SE) return; if(max<=threshold) return true; これとかがusercontent.jsで使うと構文エラーになる理由がわからん。
>>115 (function(){ ... {)(); で括ってないから, returnはエラーとなる。
userContent.pl.jsの「USE_GM」を「2」にすれば動くはずです。
preload.sample.txtに記述がある。
117 :
110 :2007/11/14(水) 21:30:15 ID:PF98RAfm0
>>113 Noscriptを無効にすることで動作するようになりました。
しかし今まではNoscriptを有効にしていても普通に使えていたので何が変わったのか見当が付きません。
Noscriptを有効のままオプションを色々変更してもうまく動かないままです。
Noscriptと併用できる方法があれば是非教えて下さい。
宜しくお願い致します。
>>116 USE_GM=2にすると
>>107 のエラーが出て別のスクリプトが使えなくなるんだが・・・。
>>118 その別のスクリプトはUTF-8で保存していないのではないですか?
120 :
110 :2007/11/14(水) 22:01:50 ID:PF98RAfm0
Noscriptのバージョンを1.1.8から1.1.7.7にダウンすることで無事に動作するようになりました。
Noscriptの更新履歴を見てJARファイルの扱いとかが関係有りそうなんですが
自分には理解出来ませんでした。
http://noscript.net/faq#jar
>>121 やっぱり脆弱性がらみのアップデートはしておかないと駄目ですよね。
スクリプトが動かない原因は1.1.7.9の
Fixed GreaseMonkey's XMLHttpRequest compatibility regression
みたいですね。
公式のFAQではGreasemonky Scriptも問題無く動作すると書いてあるのに
同じ設定で動作しないのは↑の変更に対応するようにGM_modoki.jslの方を
変更しないと駄目ってことなのかな。
>>120 1.1.7.8の + Block untrusted XBL (thanks Sirdarckcat for inspiration)です。
従ってabout:configにて
noscript.forbidXBL をfalseにする
>>122 NoScript1.18にそのスクリプト入れてみたが普通に動く。許可してるサイトも許可してないサイトも。
NoScriptの設定が間違ってるんじゃない?初期設定に戻してみたら?
>>119 すべてUTF-8として扱うでエラーは消えたよ。
でも
>>90 の
Cross Post Hatena (+ del.icio.us)でポストするときに
エラー: [Exception... "Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE)
[nsIXMLHttpRequest.status]" nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)"
location: "JS frame :: file:///プロファイル/chrome/GM_modoki.jsl :: anonymous :: line 67" data: no]
ソースファイル: file:///プロファイル/chrome/GM_modoki.jsl
行: 67
ってエラーが出てdel.icio.usにポストされない。
126 :
110 :2007/11/15(木) 01:28:55 ID:wFGgUBc/0
>>123 有難うございます。
noscript.forbidXBL をfalseで1.1.8でもちゃんと動きました。
この項目をNoScriptのオプションから設定するとこは無いですよね。
>>124 最初に初期設定にしても1.1.8では駄目でした。
何が違うんでしょうね。
とにかく動くようになって感謝してます。
有難うございました。
>>127 Alice氏のならOperaだろうがなんだろうがお望みのことができますよ
129 :
127 :2007/11/15(木) 13:27:44 ID:Q9HOKjzL0
>>128 Alice氏のIE VEWはメニューから設定できるんですね。
IEという名前だけで用途まで決め込んでしまってました。
早速使わせていただくことにしました。
ありがとうございます。
minefieldでmouse_gestures.uc.jsを使っているのですが、このところ タブを閉じるで頻繁にクラッシュするようになりました。 case "RLR": gBrowser.removeCurrentTab(); break; case "RLR": document.getElementById("cmd_close").doCommand(); break; 上記両方とも同じようにクラッシュしてしまいます。 原因、あるいはそれを突き止める方法など教えていただけないでしょうか。
>>130 mouse_gestures.uc.jsの詳細とminefieldのバージョン, 拡張機能, プラグイン, OS等 あなたの環境が不明です。
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9b2pre) Gecko/2007111404 Minefield/3.0b2pre
を使用(uc.js動作検証時のみ)していますが,
ブックマークサイドバー, パーソナルツールバーへのD&Dでおかしくなることは111204辺りから起こりますが.
,タブを閉じる動作でエラーとなることは今までないです。
>>131 大変失礼致しました。
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9b2pre)
Gecko/2007111404 Minefield/3.0b2pre
mouse_gestures.uc.jsは
ttp://www.xuldev.org/blog/?p=74にあるもの を利用させてもらってます。
「タブを閉じる」のコードは上で書いたとおりです。
アドオンはスペルチェックの辞書がいくつか、そして以下のとおりです。
Console2 0.3.8
DOM Inspector 1.9b2pre
Gmail Notifier 0.6.2.2
Google Notebook 1.0.0.18
Greasemonkey 0.7.20070607.0
JavaScript Debugger 0.9.87
keyconfig 20060828
Nightly Tester Tools 1.3b3
ScrapBook 1.3rc
Stylish 0.5.3
userChrome.js 0.8
userChrome.jsで使ってるローダはAliceさん作のものを利用させてもらって
ます。
133 :
131 :2007/11/15(木) 17:53:52 ID:Cc1NvygG0
>>132 Console2 0.3.8+
Custom Buttons2 2.0.5.8
DOM Inspector 1.9b2pre
FlashGot 0.6.9.7
Greasemonkey 0.7.20070607.0
GrepSidebar 0.0.8.0711071200
JavaScript Actions 2.3.0.2007010501
keyconfig ja 20070815
NoScript 1.1.8.1
ScrapBook 1.2.0.8
SearchBox Sync 0.4.2
SearchWP 1.1b1
Secure Login 0.8.1.4
Session Manager 0.6.1.5
Stylish 0.5.3
userChrome.js 0.8
ViewSourceWith 0.0.9.1.1
XHTML Ruby Support 1.4.2006100801
サブスクリプトロ−ダSub-Script/Overlay Loader v3.0mod
軽量マウスジェスチャ(ロッカーホイ-ル対応版)
gBrowser.removeCurrentTab(); break;
上記の環境では クラッシュ に至るようなことは無いです。
動作検証程度の使用頻度なので, 至っていないだけかもしれません。
どういうタイミングでクラッシュするか分かりませんが まだβにもなっていないので
いろいろと不具合があるのは, 仕方ないのではと思います。
>>133 わざわざ検証していただきありがとうございました。
少し様子を見てみます。
>>108 お礼が遅くなってしまいました。すいません。
とても快適に使用しています。
我侭聞いて下さってありがとうございます
tableで段組してあるものを全部なくして横一列に並べるかtdを一部結合させて段組を減らすことはできるのでしょうか? グーグルのロゴ横の3段組のテーブルで表示されている検索欄を2段か1段にしたいのです。 今現在はこのようにして使用しています。 @-moz-document domain("www.google.co.jp"),domain("www.google.com") { .ra,#guser,#sd,#ap > br { display: none !important; } .g table{padding-top:0px !important; } .g {margin:0.4em 0 !important; } .j {width:60em !important; } .l {font-size:95% !important;} #res {padding-left:5px !important;} #logo {display:block;width:150px;height:52px;position:relative;overflow:hidden;margin:10px 0 10px 100px !important;} }
MonkeyGestures設定可能なもののまとめってないでしょうか?
すいません、助詞が抜けてた(´・ω・`) MonkeyGesturesで設定可能なもののまとめってないでしょうか? です。
Cross Post Hatena (+ del.icio.us)をusercontent.jsで使うにはどうすりゃいい?
実行した瞬間のマウスポインタの位置を知る方法ないですか? イベントを使ってマウスの場所を知る方法ならいろいろみつかったのですが 一回こっきりその瞬間の場所を知る方法がわかりません。 具体的にはkeyconfigでキーを押した瞬間の マウスカーソル下の単語を取得したいと思っているので window.getSelection() みたいな便利なのがあるとなおさら嬉しいんですが。
>>141 スクリプトではないですがuserContent.cssである程度は可能です。
>>142 cssでできるんですか。jsで対処しようかと思ってたんですが、その方向も調べてみます。
>>144 CSSって意外と出来ることが多いんですねえ。
jsのサンプルを前にして途方にくれていたんで数行のCSSで出来るとはびっくりです。
ありがとうございます。
>>140 仮に何らかの方法でマウス位置の座標を取得できたとしても,
その座標から単語を得ることの方が難しいと思われる。
アリスさんとこのreadLater.uc.jsをkeyconfigで操作するにはどんなコードを書いたら言いですか?便利なだけにもっともっと...ってなってしまう。
アリスさんとこのreadLater.uc.jsをkeyconfigで操作するにはどんなコードを書いたら言いですか?便利なだけにもっともっと...ってなってしまう。
確かにもっともっとだな。
154 :
初スレの80 :2007/11/16(金) 23:39:06 ID:RVK/oSY+0
>>125 GM_modoki.jslのGM_xmlhttpRequestを以下に書き換えればうまくいくかも.
function GM_xmlhttpRequest(obj){
if(typeof(obj) != 'object' || (typeof(obj.url) != 'string' && !(obj.url instanceof String))) return;
var req = new XMLHttpRequest();
req.open(obj.method || 'GET',obj.url,true);
if(typeof(obj.headers) == 'object') for(var i in obj.headers) req.setRequestHeader(i,obj.headers[i]);
['onload','onerror','onreadystatechange'].forEach(function(k){
if(obj[k] && (typeof(obj[k]) == 'function' || obj[k] instanceof Function)) req[k] = function(){
obj[k]({
status : (req.readyState == 4) ? req.status : 0,
statusText : (req.readyState == 4) ? req.statusText : '',
responseHeaders : (req.readyState == 4) ? req.getAllResponseHeaders() : '',
responseText : req.responseText,
readyState : req.readyState });
};
});
if(obj.overrideMimeType) req.overrideMimeType(obj.overrideMimeType);
if(typeof obj.data == 'string') req.send(obj.data);
else req.send(null);
}
>>140 mousemoveイベントでマウスカーソルの位置を変数に入れておいて,
必要なときにそれを参照するのが簡単じゃないかな.
マウスカーソル下の単語はevent.rangeParentとevent.rangeOffsetから探っていけるけど,
keyconfigだとどうだろう?clickイベントでなら,それで拾えるんだけど.
155 :
140 :2007/11/16(金) 23:50:06 ID:LwvcuW8S0
コンパクトメニュー下にusercontent.jsとかusermenu.jsのメニューを追加するにはどうすればいいですか? あと001-execMenuEditor.uc.jsってのを入れたんですけどUserMenu.jsとMenuEditorが共存できそうにありません。 MenuEditorを使ったメニュー項目の並び替えはできないのでしょうか?
火狐とboonstudio、もしくはnettransport等をflv形式ファイルDL時に連携させ、 動画のタイトル名で保存させられるようなスクリプトってないでしょうか?
>>154 そのコードだと以下のようなエラーに。
エラー: [Exception... "Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIXMLHttpRequest.status]"
nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)" location: "
JS frame :: file:///プロファイル/chrome/GM_modoki.jsl :: anonymous :: line 55" data: no]
ソースファイル: file:///プロファイル/chrome/GM_modoki.jsl
行: 55
エラーの内容は変わってない様子。
ブックマークするときに説明を書くのですが、その説明をブックマーク一覧でマウスオーバーしたときに ポップアップ表示するものはあるのでしょうか。 userChromeとgreasemonkeyどちらでも構いません、知っている方が居られましたら教えていただけませんか。
以前このスレで、Open Tabs Next(nanto_vi氏作)を常に右に開くようにする改造(15行目 mOffset++ → mOffset)を教わったんですが、昨日の3.0b2pre/nightlyから正常に動かなくなってしまいました。 (右に3つ開いた後左に開いていく) これを直すにはどこを修正すれば良いのでしょうか? また、他の"タブの右に開く系"でも常に右に開かせる改造は可能でしょうか? よろしくお願いします。
>>161 >また、他の"タブの右に開く系"でも...
と言うことですので, オールインワンでかつ(現状では)比較的trunkに対応の早い
Tab Mix Plusを使用することを選択肢に入れてはどうでしょうか。
>>162 ああ、Tab Mix Plusを忘れてた。入れたら問題なかった。
軽くなるかと思ってuserChrome.jsに切替えてたけどそんなに違わないし、また拡張に戻ってみます。
>>160 ありがとうございます。
希望通りの物でした。
166 :
初スレの80 :2007/11/17(土) 17:22:56 ID:2O/4iQWc0
>>158 これで駄目だったらお手上げ.
function GM_xmlhttpRequest(obj){
if(typeof(obj) != 'object' || (typeof(obj.url) != 'string' && !(obj.url instanceof String))) return;
var req = new XMLHttpRequest();
req.open(obj.method || 'GET',obj.url,true);
if(typeof(obj.headers) == 'object') for(var i in obj.headers) req.setRequestHeader(i,obj.headers[i]);
['onload','onerror','onreadystatechange'].forEach(function(k){
if(obj[k] && (typeof(obj[k]) == 'function' || obj[k] instanceof Function)) req[k] = function(){
obj[k]({
status : (function(){ try{ return req.status; }catch(e){ return 0; } })(),
statusText : (function(){ try{ return req.statusText; }catch(e){ return ''; } })(),
responseHeaders : (function(){ try{ return req.getAllResponseHeaders(); }catch(e){ return ''; } })(),
responseText : (function(){ try{ return req.responseText; }catch(e){ return ''; } })(),
readyState : req.readyState });
};
});
if(obj.overrideMimeType) req.overrideMimeType(obj.overrideMimeType);
req.send(obj.data || null);
}
>>167 BrowserSearch.searchBarに変わったので, 修正しないと動きません。
userChrome.jsで機能するマウスジェスチャーで 階層を1つ上に上がる拡張機能 "Go Up"の機能を再現したいのですが、 どうしたらできるでしょうか?
普通にどっか(忘れたw)に出てた気がするけどなあ。 Aliceさんのものが上で上がってるので蛇足かもしれないけど var uri = gBrowser.currentURI; if (uri.path == "/") return; var pathList = uri.path.split("/"); if (!pathList.pop()) pathList.pop(); loadURI(uri.prePath + pathList.join("/") + "/"); break;
>>169 たぶん
BrowserSearch.getSearchBar()がBrowserSearch.searchBarに
変更になったってことだと思う。だからそこを直せば良いのでは?
var searchBar = BrowserSearch.getSearchBar();
↓
var searchBar = BrowserSearch.searchBar;
>>166 なにもかかれていないポップアップが出るようになり、エラーが出なくなりました。
しかしdel.icio.usにはポストされていません。
176 :
初スレの80 :2007/11/17(土) 22:57:51 ID:2O/4iQWc0
>>175 req.open(obj.method || 'GET',obj.url,true);
を
req.open(obj.method || 'GET',encodeURI(obj.url),true);
に直してみて貰えます?
177 :
名無しさん@お腹いっぱい。 :2007/11/18(日) 06:47:41 ID:xq9pTFE40
表示しているタブのURLをクリップボードにコピーするマウスジェスチャってありますでしょうか?
>>173 試してみましたが、残念ながら動きませんでした。
180 :
名無しさん@お腹いっぱい。 :2007/11/18(日) 16:32:06 ID:bcxaZQoP0
質問です! xml, xul, html filesのエディターで, tree構造を開いたりcollapseしたりできるようなもの ってありますか? xulエクスプローラというのを試しに使ってみましたが、これはそういう機能ないみたいですね 誰か情報ご存じのかた、おしえてください。
GM_Modoki.jslを利用した自作のスクリプトで、似たようなエラーが出てたことがあった。 req.onerrorのときに、req.statusとかreq.statusTextを参照したり、 req.onreadystatechangeのときに、status,statusText,responseText,responseHeadersを 参照したりすると、エラーが出たことがあったので、そのあたりをばっさりコメント化したら事なきを得た。 今回の(del.icio.usの)とは関係なさそうだけど。
>>178 >>173 をそのままじゃだめですよ
変数名の大文字小文字, ソースをようく見て修正してみてください。
Menu Editor以外にメニュー編集できる拡張あったっけ? なんかMenu Editorだとusemenu.jsのメニュー項目が表示されたりされなかったりだし、 場所変えても再起動すると元に戻ってる。 Conpact Menu 2でusercontent.jsとかのメニューを使うにはどうすればいいでしょうか? あとアップローダーにあるGoogle Thumbnals動かないのは俺だけ?
ググる気もない奴がメニュー編集だの usercontent.js だのに手出すなよ。 MenuManipulator でも使っとけ。
>>178 余計な口はさんじゃったから、余計混乱させてしまったみたいですね…
すみません。
>>182 さんのおっしゃるとおり、私が変数名の大文字小文字を間違って
書いてしまったんです。でもワザとじゃないです。ホントです。
searchBarではなくてsearchbarでした。
var searchbar = BrowserSearch.getSearchBar();
↓
var searchbar = BrowserSearch.searchBar;
MenuManipulatorは1.5までしか対応してないんじゃ? バージョン書き換えで動くのかな
187 :
初スレの80 :2007/11/19(月) 00:29:14 ID:I8pRIDhQ0
>>179 お手上げです.一応調べてはみますがあんまり期待せんでください.
はてブもdel.icio.usも使ってないんで.
>>181 GM_modokiに限った話じゃなく,nsiXMLHttpRequest.status等で例外が発生することがあるみたいで,
ググってみたら似たような話がちらほら出てきました.
>>179 これで動作すると思います
function GM_xmlhttpRequest(obj){
if(typeof(obj) != 'object' || (typeof(obj.url) != 'string' && !(obj.url instanceof String))) return;
var req = new XMLHttpRequest();
req.open(obj.method || 'GET',encodeURI(obj.url),true);
if(typeof(obj.headers) == 'object')
for(var i in obj.headers) req.setRequestHeader(i,obj.headers[i]);
if(typeof obj.headers == 'object'){ for(var i in obj.headers) req.setRequestHeader(i,obj.headers[i]); }
['onload','onerror','onreadystatechange'].forEach(function(k){
if(obj[k] && (typeof(obj[k]) == 'function' || obj[k] instanceof Function))
req[k] = function(){
var responseState = {
responseText:req.responseText,
readyState:req.readyState,
responseHeaders:(req.readyState == 4 ? req.getAllResponseHeaders() :''),
status:(req.readyState == 4 ? req.status : 0),
statusText:(req.readyState == 4 ? req.statusText : '') };
setTimeout(function(){obj[k](responseState);}, 0);
};
});
if(obj.overrideMimeType) req.overrideMimeType(obj.overrideMimeType);
setTimeout(function(){
if(typeof obj.data == 'string') req.send(obj.data);
else req.send(null);
}, 500);
}
>>187 一番最後の setTimeoutの500 が 環境依存になるので, ここを上手い具合に逃げられないか検討を要すると思う。
>>149 keyconfig使わないのでよく分からないが, 以下のようなコードを書いたらいいのではと思う。
すべて開く readLater.allOpen();
すべて削除 readLater.clear(true);readLater.saveForWindow();
リストから一つ開く
if(document.getElementById("readLater-popup")..childNodes.length > readLater.MENUINDEX ) )
readLater.openURL(document.getElementById("readLater-popup").lastChild);
(リンクにフォーカスある時に)リストに登録
var linkNode = null;
var target = document.commandDispatcher.focusedElement;
while (target) {
if (target instanceof HTMLAnchorElement ||
target instanceof HTMLAreaElement ||
target instanceof HTMLLinkElement) { if (target.hasAttribute("href")) linkNode = target; }
target = target.parentNode;
}
if(linkNode){
var aURL = linkNode.href;
var aTitle = gatherTextUnder( linkNode );
}else{
var aURL = readLater._getFocusedWindow().content.document.URL;
var aTitle = readLater._getFocusedWindow().content.document.title;
}
readLater.addMenu(aURL,aTitle);
readLater.saveForWindow();
190 :
189 :2007/11/19(月) 03:06:56 ID:glVowEf70
× .. ○ .
>>188 Greasemonkey使用時と同じ動作になりました。ありがとうございました。
あとここにいる人たちはコンテキストメニューの順番とかどう弄ってるのかな?
手書き?アリスさんのところにMenu Editor用UserChrome.jsスクリプトがあったから
併用できるのかと思ったんだけど、うまく行かない。
>>191 Menu Editorに類するものは使っていません。
スクリプトのものは, スクリプトを修正して, 拡張のものはそのまま使っている。
不要な項目はCSSで非表示にしている。
Menu Editorやそれに類するものは, menuitemを一端削除してから,再度作り直している(副作用で
セパレータのIdも変わってしまっている)ので, menuitem等にダイナミックにイベントを定義しているものはスクリプト
だけでなく拡張機能およびFxの本来のもの(もしあれば)も動かなくなる。この仕様はBug 286619で挙げられたが,
たぶんチェックインない。
対処方法は ダイナミックにイベントリスナを定義するのでなく on〜の属性を使用するようにすればいい。
上記対処をした上で, Menu Editor用UserChrome.jsスクリプト とは逆に,
すべてのメニュー構築が終わった段階(スクリプトなどで通知して)でMenu Editorやそれに類するものが動くように拡張機能の中身
を変更すればいい。 そうすれば, スクリプトで追加したメニュー項目も並び替えることができる
と言うことです。
194 :
180 :2007/11/19(月) 17:17:57 ID:J03Hzrn+0
>>195 私の環境では自動で閉じます。
あなたの環境が不明なので回答不能です。
>>195 あ、それうちもなるなる。たまに空っぽのタブができてて、何だろうって思ってたら
ダウンロードした後だった。なんでだろうね(´・ω・)?
198 :
195 :2007/11/19(月) 21:35:10 ID:xRGjdJXL0
>>196 すいません。試した環境は以下の通りです(新規プロファイルを作成)。
拡張
・userChrome.js 0.8
userChrome.js
・
ttp://space.geocities.jp/alice0775/STORE/userChrome.js スクリプト
・openTabsWhere_whichTabSelectWhenCloseTab.uc.js
Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8.1.9) Gecko/20071025 Firefox/2.0.0.9 - Build ID: 2007102514
>>198 >自動で閉じてたんですが
提示されている拡張とスクリプトでは, ブランクタブが閉じないのは正しい挙動です。
200 :
195 :2007/11/19(月) 21:54:42 ID:xRGjdJXL0
>>199 <a href="./file.zip" target="_blank">file.zip</a>
の様なリンクをクリックした際に表示されるブランクタブが閉じる機能で、
1.5?あたりからついたFirefox標準の機能のことです。
openTabsWhere_whichTabSelectWhenCloseTab.uc.js を外すと自動で閉じてくれるんですが…
>>200 だから, 提示されている拡張とスクリプトでは, ブランクタブが閉じないのは正しい挙動です。
同スクリプトのlTREATEQUALLY を falseにしてやれば 元の機能に戻ります。
203 :
195 :2007/11/20(火) 00:28:26 ID:bhvNpDK+0
>>201-202 > TIREATEQUALLY を false
ちょっと199のレスを勘違いしてたみたいです。この設定でいい感じになりました。
ありがとうございます。
ウィンドウをマージするスクリプトが動かなくなってしまったのですが、 mgkWindowMediatorは何に置き換えればよいのでしょうか。 var enumerator = mgkWindowMediator.getEnumerator("navigator:browser"); var targetWindow = null; var tabCount = 0; while (enumerator.hasMoreElements()) { var cur = enumerator.getNext(); var ctabs = cur.getBrowser().mTabBox._tabs.childNodes.length; if (ctabs > tabCount && cur != window) { targetWindow = cur; tabCount = ctabs; } } if (targetWindow) { tabCount = getBrowser().mTabBox._tabs.childNodes.length; for (var i = 0; i < tabCount; i++) { var b = getBrowser().getBrowserForTab(getBrowser().mTabBox._tabs.childNodes[i]); targetWindow.getBrowser().addTab(b.currentURI.spec); } window.close(); targetWindow.focus(); }
>>205 ありがとうございます。
enumerator.hasMoreElements()のとこでダメみたいですね。
教えていただいたmergeWindow2.uc.jsの方を使わせていただこう
と思います。
>>188 これにGM_xmlhttpRequestを変更してから
http://userscripts.org/scripts/show/13026 のLDR subscriber in FLDR.user.jsが動かなかったのですが、
このScriptの
encodeURIComponent()のところを
encodeURI()を使うことによって解決しました。
そこで思ったのですがGM_xmlhttpRequestで送る
urlの仕様は変更なさったのでしょうか。
208 :
188 :2007/11/20(火) 02:56:40 ID:kosdGt1b0
>>207 >>188 の
req.open(obj.method || 'GET',encodeURI(obj.url),true);
を
req.open(obj.method || 'GET', obj.url , true);
かな
>>208 動作確認しました。
ありがとうございます。
Greasemonkeyの場合、除外したいサイトは@excludeで指定できますが、Stylishのスクリプトでも、除外用の構文ってありますか?
Chrome Edit PlusやEdit Config Filesみたいに プロファイルのフォルダを開いたり、各css編集できる スクリプトってありますか?
214 :
初スレの80 :2007/11/20(火) 18:13:30 ID:PghSJcrM0
>>188 参考にさせていただきます.
このコードを見て初めて原因が判りました.
sendはサーバへの接続確立を待たないみたいですね.
3β入れたんだが、textlink.uc.jsがURL文字列を4回クリックしないと動かない
Stylishのステータスバーアイコンクリックすると出てくるメニューをコンテキストメニューに追加するにはどうすればいいですか?
>>216 DOMインスペクタでStylishのステータスバーアイコンクリックすると出てくるメニューのid調べて
contentAreaContextMenuに追加すればいいんでない?
DragNgoModoki3.uc.jsで、画像を例えばデスクトップにD&Dした場合、ショートカットが保存されてしまうのですが 画像を保存するようにするにはどうすればいいでしょう。
219 :
名無しさん@お腹いっぱい。 :2007/11/21(水) 15:17:34 ID:SksZKa9B0
>>218 デフォルトで実体をドロップするようにしておいた。
Tab Clicking Options の拡張を置き換えたくて、これに代わる userChrome.js のスクリプトを探しています。 タブ左Wクリックで、そのタブが閉じてくれればよいです。 すみませんが、こんなスクリプトがありましたら教えてください。
昨日の3.0b2ナイトリーから 80氏の"Open Selection.se.js"とGomita氏の"Recently Closed Tabs popup.uc.js" が正常動作しなくなってしまいました。 Open Selection.se.jsはリンクが開けない Recently Closed Tabs popup.uc.jsは中クリは利くけど右クリでリストが表示されない です。 よければ修正箇所を教えてもらえないでしょうか?
3.0b1で軽量マウスジェスチャからページ内検索をしようとしたら gFindBar.isFindBarVisible() ? gFindBar.closeFindBar() : gFindBar.onFindCmd(); が仕様変更で使えないorz 誰か助けて
225 :
初スレの80 :2007/11/21(水) 17:40:49 ID:na7pBzEw0
>>214 間違ってた.sendを実行しないとサーバへの接続をしない.
そもそも当方では何も待たずにいきなりsendしても失敗しないので確認できない.
試しに話に挙がったdel.icio.usにポストしてみてもすんなり成功してしまうので,
GM_modoki.jslのGM_xmlhttpRequestが失敗する方に協力願えると助かります.
GM_xmlhttpRequestを
>>166 のコードにして,「req.send(obj.data || null);」を以下のどちらかに修正して成功するかどうか.
var timer = setInterval(function{ if(req.readyState == 1){ clearInterval(timer); req.send(obj.data || null); } },10);
var timer = setInterval(function{ if(req.channel){ clearInterval(timer); req.send(obj.data || null); } },10);
>>222 特に説明してなかったのでアレだけど,サンプルはfx2専用とでも思ってください.
なかなか確認や修正まで手が回りません.
>>225 ,223
バグが関係してるようなので様子を見ることにします。
すいませんでした。
質問 1 Greased Lightboxを使いたいんですけど user_pref("capability.policy.default.Window.navigator", "noAccess"); て書いてると エラー: userContent.js / Greased_Lightbox_v0.15.user.js Permission denied to get property Window.navigator と出て動きません。両立する方法、ありませんか? 質問 2 livedoor Reader 関連のスクリプトを動かしたくて前スレみて 書換えてみた・・・ メタデータに 「@privilege false」を追加する の意味がわかりません どこに、書き足せばいいのでしょうか?
>>227 navigator オブジェクト を使用しないようユーザスクリプトを改造する。
userContent.js.readme.txtにメタデータの説明がある。ユーザスクリプトに記述する。
>>224 gFindBar.hidden ? gFindBar.onFindCommand() : gFindBar.close();
で動作するかと思います。
>>228 あははは。全然,無理でした。あきらめます
ありがとうございました
>>225 タイプミス× setInterval(function{ if... ○ setInterval(function(){ if... ですね。
用法試しましたが, どちらでも問題なくポストできました。。
当方では以下のようにsetTimeout二重使いで open→コールバック定義→sendの順で呼ぶようにしてみました。
function GM_xmlhttpRequest(obj){
if(typeof(obj) != 'object' || (typeof(obj.url) != 'string' && !(obj.url instanceof String))) return;
var req = new XMLHttpRequest();
req.open(obj.method || 'GET',obj.url,true);
if(typeof(obj.headers) == 'object') for(var i in obj.headers) req.setRequestHeader(i,obj.headers[i]);
setTimeout(function(){
['onload','onerror','onreadystatechange'].forEach(function(k){
if(obj[k] && (typeof(obj[k]) == 'function' || obj[k] instanceof Function)) req[k] = function(){
obj[k]({
status : (req.readyState == 4) ? req.status : 0,
statusText : (req.readyState == 4) ? req.statusText : '',
responseHeaders : (req.readyState == 4) ? req.getAllResponseHeaders() : '',
responseText : req.responseText,
readyState : req.readyState });
};
});
if(obj.overrideMimeType) req.overrideMimeType(obj.overrideMimeType);
setTimeout(function(){
if(typeof obj.data == 'string') req.send(obj.data);
else req.send(null);
}, 0);
}, 0);
}
>>220 ありがとうございます! これでDrag de Goから乗り換えられます
ページ内のリンクのうち、URLに特定の文字列を含むリンクを 自動で新規タブに開くようなことはスクリプトで可能でしょうか?
235 :
初スレの80 :2007/11/22(木) 17:21:34 ID:AR0Vp6k80
>>232 ありがとうございます.
どうやらsetTimeoutなり何なりでタイミングをずらせば良いだけっぽいですね.
一応,readyStateの値を信用してみます.
http://www.xuldev.org/blog/?p=113 のVertical Toolbarを入れていると
http://to.tumblr.com/post/14878939 のTomblooが動きません。どこを直したらいいでしょうか。
Firefox2.0.0.9で新規プロファイルで試したところ
Tombloo
userChrome.js
Alice氏のローダー
までは動きましたがVertical Toolbarを入れると動きませんでした。
また、Vertical Toolbar以外のScript(userContent.jsやuserMenu.jsなど)
を入れた状態ではTomblooは動いたのでVertical Toolbarが原因と判断しました。
238 :
237 :2007/11/23(金) 00:40:33 ID:wl7QmHat0
Scriptの内の定義名やその他の関数のかたちを変えたりしても うまくいかなかったので、もしやと思いVertical ToolbarのCSS情報を記述してある var style = <![CDATA[ toolbar[orient="vertical"] > toolbarspacer { height: 15px; } toolbar[orient="vertical"] > toolbarseparator { margin: 0.2em 2px; border-bottom: 1px solid ThreeDHighlight; border-top: 1px solid ThreeDShadow; height: 2px; border-left: none; border-right: none; } ]]>.toString(); var sspi = document.createProcessingInstruction( 'xml-stylesheet', 'type="text/css" href="data:text/css,' + encodeURI(style) + '"' ); document.insertBefore(sspi, document.documentElement); sspi.getAttribute = function(name) { return document.documentElement.getAttribute(name); }; の部分を削除してuserChrome.css内に同等の情報を 記述することによってなんとかTomblooを動かすことができました。 しかしいまだに原因がよくわからないのですが、なぜ動かなかったんでしょうか。 後学のためにわかる方教えていただけないでしょうか。
239 :
名無しさん@お腹いっぱい。 :2007/11/23(金) 02:06:12 ID:M8KWvshk0
BHNewTabのtrunk版まだ〜?
>>237 tombloo.xpiの中のbrowser.xulの168行目
document.firstChild.appendChild(env);
を
document.documentElement.appendChild(env);
にすれば直るかもしんない
どっちかというと原因は拡張のほうにある
>>240 ありがとうございます。
そちらのほうが原因だったんですね。
後、思ったのですがuserChrome.js内でStyleを定義するのと
userChrome.cssで定義するのではどちらのほうが軽量化されるのでしょうか。
なんとなくCSSに書いたほうが高速な気がするのは気のせいでしょうか。
Scriptが更新されるといちいち改定しなくてはいけないのは難点ですが。
>>241 userChrome.cssで定義した方がいいに決まっている。
けど、それだとJSとCSSの2ファイル編集しないといけないので面倒だろ?
userChrome.js のスクリプトを自分で勉強して書いてみたいのですが、 参考になるサイトやドキュメントなどありませんか?
>>243 そうですか。
Vertical ToolbarのようなScriptはもうこれで完成してしまっているような
気がするので、userChrome.cssに記述することにします。
ありがとうございました。
247 :
名無しさん@お腹いっぱい。 :2007/11/23(金) 18:42:12 ID:Zu5kNE2h0
userChrome.jsって、エクステンションで同じ機能を インストールするのと比べて何が嬉しいの? 煽りでも荒しでもなく、本気でよくわかってないので教えてー。
>>247 俺はなるべく動作の軽いスクリプトにしてるけど
管理が面倒なのや多機能なのはアドオンにしてるよ
>>247 必要のない機能を削って遅くならないようにするため
実際には変化はなかなか分からないけど
250 :
名無しさん@お腹いっぱい。 :2007/11/23(金) 19:03:27 ID:Zu5kNE2h0
>>248 Firefoxが重くて仕方ない人とか、
ちょろっと痒いトコロを便利にしたい人向けってこと?
なんだか管理とかセキュリティとか考えるとデメリットが大きすぎる気がして。
導入とバックアップを直接フォルダで〜っていうのも、なんだかなって感じ。
Greasemonkeyくらい手軽なら使ってみたいんだけどね。
>>250 Greasemonkeyは描写遅くなるから俺はダメだな
252 :
名無しさん@お腹いっぱい。 :2007/11/23(金) 19:06:43 ID:Zu5kNE2h0
>>249 やっぱり軽量化が主になるんだね。
シンプルになるのは魅力なんだけど、管理が面倒。
Stylishみたいな管理エクステンションとかがあればいいのに…。
userChrome.jsの管理なんて面倒でも何でもない希ガス
>>251 マシン性能によるところだよね。
俺は軽量さより機能重視だわ。
画面内でいろいろ出来たり情報多くなる方が嬉しい。
なんとなくわかったよ、サンクス。
スクリプトを自作またはスクリプトを理解していて導入し, 自分で管理ができるのであればuserChrome.jsもあり。 そうでなければ, 拡張機能を使用するべきでしょう。
>>253 Firefoxの一機能なんだから、作業はFirefox上で完結してほしいんス。
フォルダ探しに行くのですらだるい。ズボラですんません。
>>255 成程。
とりあえず、管理エクステンションが出てくるまで様子を見ることにするよ。
レスさんくす。
>>252 拡張の場合、多機能で設定項目が多くなりがちですが、userChrome.jsはシンプルな単機能が多い。
設定値のある多機能なuserChrome.jsスクリプトでも、テキストエディタで一度設定する仕組みなので、
Firefox再インストール時にバックアップからコピーするだけで、環境を再構築できるのが魅力です。
(複数の拡張をインストールするよりも、複数のuserChrome.jsスクリプトをインストールする方が手間がかからないメリットもあります)
拡張も user.js で設定を保存すれば、バックアップからの設定復帰ができないわけではありませんが、
設定値を探す手間があるので、私自身は user.js による設定のバックアップはFirefox本体の設定値のみに限定してます。
>>256 フォルダ開くscriptもあるし
そこに放り込むだけなんだが
保存するときに場所を指定すればいいんじゃないかな
Save Link in Folder使うとか
>>258 まあでも放り込んだ後も管理する必要があるわけで・・・
アドオンだと不具合等のメンテナンスもある程度までは
アップデートでなんとかなる。
userChrome.jsではいろいろこまめに情報を得て、自分で
なんとかやりくりする必要がある。たとえ一からスクリプト
を書くのではなくても・・・
メンテナンスの手順にある程度の統一性を欲するのは、
理解できなくもない気がする。不具合の場合でも、その手順
にしたがって「あきらめをつける」=「作者が何とかするま
で待つ」こともできるから。
その一方で、そうした一軒煩雑なあれこれにこそ、拡張とは
違ったuserChrome.jsの面白みがあるんだと思う。
あ、でもGreasemonkeyの場合はどうなんだろう・・・
userChrome.jsのよさって使う時じゃなく書くときにあるんじゃないの。 書くのが簡単だからスクリプトが増えて結果として 使う人だけの人にもメリットが出るけど。
>>251 Greasemonkeyって描写遅いのか。
管理が楽だから使ってたけど、ちょっと無効にしてuserContent.uc.jsに切り替えてみる。
スクリプトからタブを閉じる方法がわかりません。。。 どうやってやるんでしょう?
>>265 どうもです
しかしながら、
gBrowser.removeCurrentTab();
や
gBrowser.removeTab(gBrowser.mCurrentTab);
などとやってもうまく動いてくれません。。。
Tab Mix入れてるんじゃね?
>>267 はい、Tab Mix Plus を入れていたので、無効にしたり削除してみましたが、
相変わらず動きません・・
aliceさん、DragNgoModoki3.uc.jsなんですが、 11/21 23:20のやつを入れたら 画像のD&Dがドラッグした画像の上だと効かなくなってます 11/21 15:30のだとたぶんやれてたので、 3.0b2pre用に書き換えた箇所が影響しているかと 以前と同じ挙動に戻してもらえると助かります
272 :
名無しさん@お腹いっぱい。 :2007/11/24(土) 16:02:51 ID:wsyglt5i0
greasemonkey制作でjqueryなどのライブラリを使いたいんですけど、 どうすればいいですか?
userMenu.jsのtoolメニュー用Scriptに userContent.cssのReloadがあるのに今頃気がついた。 便利すぎる。
なぜStylishを使わない。
>>276 b2rはどうしても外せないから使ってるんだが・・・
そんなに変化あるのか?
>>277 通信するたび通信先が2chのドメインかどうかを常にチェックし続けるから重くなるんだよ。
おとなしく専用ブラウザを使ったほうが軽いし高機能だよ。
>>278 いやそれは知ってるがグリモンと並べるほど重くなるのかと・・・
専ブラは何度か導入しようとしてるが結局b2rだな。
無知は罪だな
GreasedLightbox v0.15 スクリプト切ってたら、画像レイヤー表示した後 戻れなくなる。
"2chスレッドURLを自動的にb2rで開く"のチェック外したら軽くなる。
>>282 それやっても変わらないってのをどっかで聞いた気がするんだが・・・
>>283 >>276 のやつで0.2秒くらい速くなったよ。
これを変わらないと見るか、速くなったと見るかは使用者によるだろうけど。
0.2とか誤差の範囲だろwwwwwww
>>152-153 これ質問したのは自分ですが、MenuEditor が原因でした。
結果、MenuEditor は捨てることにしました。
0.8 で動かないとか言って失礼しました(´・ω・`)
連投失礼。
>>247 私も以前、それを疑問に思っていました。
そんで自分はスレでは質問せずに、実際に、ucjs 入れて試してみましたわ。
他の人も答えていますが自分も答えておくと、
「軽さ」を明らかに実感できる。
起動も早くなる。
ucjs のことを勉強しようと思えてくる。
これは、ucjs にハマるとコードなどを見る機会が自然と増えるから、自分で改造したりしたくなっちゃうんですなw
さすがにゼロから作れるほど、スキルは無いけど・・・
最近では、拡張だけでなくグリモンも置き換えれるものは、置き換えるようにしていますね。
グリモンも「重い」アドオンの代表ですからね。
ただ、マウスジェスチャーだけは、初期導入や設定管理のしやすさから、軽量ジェスチャーではなく、FireGesture 使ってます。
作者さんが軽量版と同じだからってのも理由の一つだけどw
>>276 参考になったd
1・2を争う遅延要因だったのか・・・
しかし結局のところグリモン捨てられなそう。
userContent.uc.jsだとうまく機能しないのがちらほら。
http://userscripts.org/scripts/show/9714 の fix recommended tags ですが
はてなブックマークのブックマークページで
unsafeWindow.document.getElementById('othertags_list').style.border = "4px solid red";
としたときにothrtags_listが赤枠で囲まれるのに対し、
unsafeWindow.document.getElementById('otherTag1').style.border = "4px solid red";
としてもid otherTag1の要素が赤枠で囲まれないのを見るに、
spanのオブジェクトはgetElementByIdで示すことができないのでしょうか。
>>276 試しにやってみたら48秒もかかった。Adblock Plus外したら8秒になった。
Adblock Plusがこんなにも重たかったとは・・・
>>288 上手く機能しないのは前にそんな話題があった希ガス
(function() {だか何かがグリモンだと補正かかるけど
userContent.jsだと追加してくれないとかなんとか
あまりの重さに即行で入れた。結果10秒。 くっ、あまりの軽さに惚れ惚れするぜ・・・
tableレイアウト6重だったら1秒以下だろ。 拡張機能50個近く入れてるけど。 最適化ビルド使ってチューニングして重くなる拡張止めればいい。 ただ、Firebugは有効にしておきたいんだよなぁ・・・。
>>290 Adblock Plusが重いのは異論ないけど、正規表現フィルターを使用せずさらに8文字ショートカットを適正に作成してだよね?
あとリンク先のURLをチェックする・しないも同条件だよね?
フィルタ以外は全部デフォルト設定だぜ 正規表現なんて知らないから*でやってる
>>294 俺はFirebugは普段使ってるのとは別のプロファイルを作ってそっちに入れてるな
しょっちゅう使う拡張でもないし
Aliceさん、DragNgoModoki4.uc.jsを入れてみたんですが、 【選択文字列のD&Dの処理方法 】のCurrentが効かないみたいです Defaultも試してませんが、ConQuery、Page、Domainは大丈夫でした すみませんが、確認お願いします Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.8.1.10pre) Gecko/20071124 Firefox/2.0.0.10pre
>>298 当方では, "C"として特に不具合はなく動作しております。
>>298 Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9b2pre)
Gecko/2007112416 Minefield/3.0b2pre
私のとこだと動いてくれてる気がします。
Currentってのを使ったことがなかったので誤解してるかも知れません。
currentの検索エンジンで検索ということで理解してるのですが・・・
301 :
299 :2007/11/25(日) 22:21:20 ID:5GFqKOMR0
>>298 すみません, 勘違いしてました orz...
カレントタブでなく, カレント検索エンジンの方ですね。
修正したときのエンバグでした。
300行付近以降の
var searchBar = getsearchBar()
を
var searchBar = this.getsearchBar();
としてください。
あれ、私の方がおかしかったみたいですね・・・ 一応Gecko/20071122 BonEcho/2.0.0.10preでも試したんですけど、 SEARCH["R"] = ["" , "ConQuery" , "NTF" , "Current" ]; でSearch with Currentできてるみたいです。 作者さんの指示にしたがった方が良いですよね。
303 :
299 :2007/11/25(日) 22:27:49 ID:5GFqKOMR0
>>301 連投ごめん, 上記訂正箇所は,
getEngineとsearchBardispatchEventの定義内にそれぞれ各1カ所,合計2カ所あります。
元ファイルも差し替えておきます(バージョン11/25 22:30)。
>>299 =301=303
ありがとうございます。動くようになりました〜
>>302 その記述だと文字列ドラッグでConQuery、Shift押しながらだとCurrentですね
私のとこではCurrentはステータスバーの文字列も出ず、反応もなく、でした
新しく落としたものだと大丈夫でした
>>304 たぶん私のとこのがおかしいのだと思います。fx3の方で動く理由は
なんとなく分かるのですが・・・
いずれにせよ、作者さんにすばやく対応していただけてよかったですね。
ていうか、横から勝手におっそわけを頂いてしまいました。
Aliceさん、IEViewもどきで「他ブラウザで閲覧」をコンテクストメニューから直接できるようにしてほしいんだけれど。 今の仕様だと例えばIEViewModoki→Janeで閲覧という感じで二度手間になっちゃうから。
斧ロダに使える、スクリプトどこにあるんですか?
308 :
299 :2007/11/26(月) 00:06:47 ID:u/rSBnIu0
>>304 DragNgoModoki4.uc.js
ちょっと手違いがあって, ファイルのバージョンが一回分古いものを先ほどUPしてしまったようです。
ファイルを上書きしてしまったのです。 orz
(たぶん外部アプリのパスが表示されないと思います。)
上記も含めて, 以下を修正しておいたものを再upしておきました。
(11/25 23:00) XPIの定義で外部アプリを指定しても外部アプリの起動できなかったのを修正(そもそもコードがなかった)
>>306 menuに対するuc.jsは,例題がたくさんあるので, 自由にいじれると思います。
要はコンテンツエリアコンテキストメニューのポップアップイベントを捕捉して,
必要なメニューアイテムをコンテンツエリアコンテキストメニューに追加する
と言う処理を書けばいい。
ご希望の動作をするように改造したいと思います。
>>307 それはIrvineのことだと思うんだけど
>>307 なんか前に勝手にボタン押してリロードしてくれるスクリプトとかいって
ウィルスかなんかが上がってたことがあったが、それのことか?
>>311 なんでだろう? ジオの制約? 私にもよく分かりません。
再うpしておきました。
var sidebarbox = document.getElementById("sidebar-box"); sidebarbox.setAttribute("dir", "reverse"); とすると,2行目でsidebarbox is nullって言われます どういう風に直せばいいんでしょうか? 使っているのは3.0b2preです
314 :
311 :2007/11/26(月) 10:45:51 ID:gohAH53x0
>>312 ありがとうございました
たどり着けました♪
>>313 提示された 2行そのものには問題はないが,
それらを, どこで, どのように, 何に 使用するのか情報が少なすぎて回答不能。
>>310 恐らくそれです。ウィルス?よくわかりませんが、無いと言うことですね。
ありがとうございました。
318 :
名無しさん@お腹いっぱい。 :2007/11/26(月) 20:42:58 ID:uqwFkwp00
anonym.toをかましてリンクをつけているのを 直リンにするようなものってありますでしょうか?
>>319 一番目のクロージャーの部分だけ切り出して実行したが, 当方の環境ではエラーはありませんでした。
拡張機能等と干渉しているのではないですか, そちらの環境が不明ですので回答不能。
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9b2pre) Gecko/2007112505 Minefield/3.0b2pre
>320 なるほどと思ったので,新規プロファイルにuserchrome.jsだけインストールして試してみました 試したのは同じく最初のクロージャーだけです UAはMozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.9b2pre) Gecko/2007112604 Minefield/3.0b2pre するとやはり同様のエラーが出ます Error: sidebarbox is null Source File: file:///C:/home/(ユーザ名)/Application%20Data/Mozilla/Profiles/Fx_Trunk/chrome/js/00_CustomSidebar.uc.js Line: 4 ほかに必要な情報とか試すべきことはありますか?
>>321 拡張機能のuserChrome.jsのバージョン
Sub-Script/XUL Loaderのバージョン
は最低必要ですね。
DOMインスペクタでそのidがあるか確認。
当該スクリプトがメインウインドウでloadされているか確認。
>322 userchrome.jsのバージョンは0.8でLoaderはzenikoさんのサイトのものです sidebar-boxは要するにサイドバーなのでないということはないと思います (サイドバーは常に開いています) ええと,4行目のメインウィンドウでloadされているかはDOMiのどこを見ればいいんでしょうか?
もしかしてと思って,pile0nadesさんのLoaderに変えてみたら,エラーが出なくなりました ……長々とつきあっていただいたのに,こんな結末で申し訳ないです
AutoPagerize我物故割れたPagerization藻物故割れた
327 :
326 :2007/11/27(火) 15:06:30 ID:Y0PXGCTw0
>>326 ちょっと差し替えました
AutoPagerize 0.0.17 for 3.0b2pre 2007-11-27 15:00
DL URLは同じです。
AutoPagerize.addFilterに返すpageオブジェクトを修正した,
たぶんこれでaddFilterを使用しているスクリプトも動くと思います。
今までの流れと関係あるのか分からんのですが、GoogleでのAutoPagerize(+LDRize)の動作がおかしくなった。 なんかPage1が消えたりj,kでの移動が吹っ飛んだり。おかしくなる前後で何もfirefoxの設定を変えてないんだけど… Googleの仕様変更か、それとも誰かSITEINFOに変なの書いた?
>>328 site infoが壊れているようですね。
wikiだから間違ったsite infoが登録されたのでしょう。
いずれ誰かが直すのを気長に待つか, 自分でローカルにsite infoを
記述するかですね。
330 :
329 :2007/11/27(火) 16:58:33 ID:Y0PXGCTw0
>>329-330 把握。ローカルで対処しました。wikiの方は ユーザー だれか たのむ。
そういやAutoPagerizeって VeohのSiteinfoもおかしいよね。 検索したとたんに2ページ目になるし。
334 :
326 :2007/11/27(火) 22:30:19 ID:Y0PXGCTw0
335 :
326 :2007/11/27(火) 23:45:53 ID:Y0PXGCTw0
>>334 後から分かったんですが最新版ではFx3でも動くみたいです。orz...
だめだ
>>306 をどういじればコンテクストメニューに出せるのかわからねえや・・・
>>340 そのままuserContent.js1.11で動作すると思います。
342 :
341 :2007/11/29(木) 00:24:36 ID:ForHCAXM0
>>340 追加
マシンスペック, 回線スペック等 および
>>97 の理由でタイミングとれずに動作しない場合は,
window.addEventListener("load", function() {
を
setTimeout(function(){
対になる
}, true);
を
},0);
に修正してみる。
userContent.js1.11とaliceさんのローダーを使っています。 DragNgoModoki4とConQueriModoki2、そしてopenTabsWhere_which〜の組み合わせで、 about:configのbrowser.tabs.loadInBackgroundはtrueのまま、 conqueryが開いたページをアクティブにするような設定方法は可能でしょうか?
>>339 ありがとうございました。
ただ、リンクにマウスをやると
このページをJaneで開く
このページをJaneで常に開く
このリンクをJaneで開く
このリンクをJaneで常に開く
という感じになってしまうのです。
リンクにポインティングをしているときには下の二つだけを表示するように出来ないでしょうか・・・
>>342 それで無事表示されました。ありがとうございます。
>>343 openTabsWhere_which〜の中身
const FOCUSEDEXCEPTLINK = false;
および
>>79 氏の要望による
>>82 の変更点の内,
if( /conqueryModoki/.test(caller) ) return true;
を
if( /conqueryModoki/.test(caller) ) return false;
DragNgoModoki4を使うのであれば
if( caller.name == "loadSearch") return true;
を
if( /\bloadSearch\b/.test(caller)) return true;
>>346 Aliceさん、ありがとうございます。
ただ、私の環境だと動作できていません。
やり直そうと思って再度スクリプトを頂いてきましたが、
昨夜のバージョンで、上記の変更がマージされていると言うことでしょうか?
とすると、DnGMとConquery、OpenTabsWhere〜を再導入するとしたら、
変更しなければ上記の設定になると思うのですが、上手くいきません。
about:configは、
browser.tabs.loadInBackground true
browser.tabs.loadDivertedInBackground false
のままです。
長らくTMPで使ってきた環境なので、
試しに新規プロファイルをもう一つ作って再度検証してみようと思います。
ありがとうございました。
350 :
346 :2007/11/29(木) 12:49:53 ID:ForHCAXM0
ページ上で読み込まれているprototype.jsに変更を施したいのですが Firebugに「prototype is not defined」と怒られてしまいます。 if(prototype){ window.Ajax.getTransport = function() { return Try.these( function() {return eval("GM_XMLHttpRequest",obj)}, function() {return new ActiveXObject('Msxml2.XMLHTTP')}, function() {return new ActiveXObject('Microsoft.XMLHTTP')} ) || false; } } どうかよろしくお願いします。
Compact Menu 2に対応させたいんだがcreate menuをどう弄ればいいんでしょうか?
>>354 希望通りの動作になりました。度々申し訳ありませんでした。
追加部分とコメント、参考にさせていただきます。
ブックマークとかb2rの背景の色を変えるstylish用のスクリプト教えてください。
>>361 質問スレの方に書き込みしてくれれば、誰かが回答してくれるよ
aliceさん、DragNgoModoki4.uc.js(2007/11/29 12:00)なんですが、 リンクと画像のD&Dで保存(S)ができなくなってます
>>342 直った。
でも
window.addEventListener('load', fixRecommendedTags, false);
こういう場合ってどう直せばいいんですかね?
>>363 ご指摘ありがとうございます。
修正しておきました。
>>364 fixRecommendedTagsの中身によります。
ldrizeの2007.11.28版ってuserContent.jsじゃ動きませんか? 古いのと入れ替えてみたんですが動きませんでした。 minibufferの方は大丈夫でした。
>>364 @privilege falseをつけて
window.addEventListener('load', fixRecommendedTags, false);
を
setTimeout(fixRecommendedTags,0);
にするだけでいける。
Ctrl+ホイール(文字サイズ変更)を無効化して通常のスクロールにするスクリプトはないでしょうか?
about:config で出来る。 mousewheel.withcontrolkey.action でググレ
>>366 エラーコンソールで return 文がどうたら言ってるなら、
スクリプト全体を無名関数で囲ってみれ。
(function(){
本体
})();
>>371 ありがとうございます。
やってみたんですが駄目みたいです。
エラーコンソールには何も出ていませんでした。
>>366 入れる順番間違えてるんじゃない?
自分は、順番を設定するために前に数字と . をつけて
000.AutoPagerize.user.js
001.Minibuffer.user.js
002.LDRize.user.js
その後はMinibufferのコマンド
っていう風に名前を変えてるけど。
375 :
初スレの80 :2007/11/30(金) 21:43:24 ID:/SX9+LPu0
>>374 >>375 いずれも駄目でした。
試しに新規プロファイルの真っ新状態でもやってみたんですが、動きませんでした・・・
>>376 >>377 テスト用ログインアカウントを提示していただけると, 検証しやすいのですけれどね。
>>376 ソースを見ただけなので的外れなこと言ってる可能性もありますが、
おそらく
var xpath='//div[@class="illust_smarll"]/a'
を
var xpath='.//div[@class="illust_smarll"]/a'
に(ドット一つつけるだけ)すれば解決すると思います。
>>381 もうっ、うれしすぎる。Aliceさんの所にあるcustombutton2用の検索エンジンボタンを
参考に何とかマージしようとしたのですが無理でした。
ありがとうございます。
383 :
初スレの80 :2007/12/01(土) 13:40:22 ID:BeHUz2FR0
>>378 規約的にいいのか知らないけど、誰でもとれるしいいよね。きっと
ID: greacemoneky
pw: gmtest
>>379 見ていただいてありがとうございます。
試してみましたが、Autopagerizeで表示された部分には適用されませんでした。
Autopagerizeするたびに増えてしまうことは無くなりましたが・・・
autopagerize対応スクリプトいろいろ見てますが
人によって書き方全然違ってよくわからないです。
>>384 規約的にって言うか、不正アクセス禁止法的にまずいと思う。同意があっても。
>>378 こんなこと安易に書くべきではない。
387 :
378 :2007/12/01(土) 15:20:05 ID:WgoOKrCq0
>>384 >>385 >>386 そのほかの皆様, 2ch運営管理者様
不適切な発言を行ったことに対しお詫びを申し上げると共に,
今後このようなことのないようにいたします。
>>384 >>379 に加えて
変数ADDED_POSの使用をやめて
常に0からループさせる必要があるかもしんない
>>390 各々のスクリプト内の
// @include main
を
Fxなら
// @include chrome://browser/content/browser.xul
Tbなら
// @include chrome://messenger/content/messenger.xul
にしてみる
>>392 Bug 330458 ? Cannot dynamically load an overlay using document.loadOverlay until a previous overlay is completely loaded
だと思います。
loadOverlayによるdom構築完了を待って次のloadOverlayをしなければならない。
>>393 uc.xulは使えないのですね
ありがとうございました。
395 :
名無しさん@お腹いっぱい。 :2007/12/02(日) 00:24:56 ID:mtNf09k/0
マウスのミドルクリックでホイールスクロール量を変更する スクリプトとかございませんか? いつもは3行づつのスクロールで2chや画像サイトを見るときはスクロール量を 40とか50とかに変更できたら便利なんだけど ホイールクリックでスクロール量Aとスクロール量Bが切り替えれるような スクリプトお願いします
DragNgoModoki ですが指定したフォルダに保存というのはできないでしょうか?
>>397 DragNgoModokiでSave Link in Folder、あるいはSave Image in Folderの
メニューを呼び出すことはできる?
399 :
397 :2007/12/02(日) 02:00:51 ID:66CBk/Jb0
>>397 Alice氏ですか?
すみません、要望の意味で言ったんですが、やはり無理でしょうか?
401 :
397 :2007/12/02(日) 02:24:21 ID:66CBk/Jb0
>>400 どういう仕様にすればいいのか, 具体的に記述ください。
それを見てから, 機能を作れるかどうか判断したいと思います。
拡張の Drag de Go のように
指定したジェスチャで画像やリンク先を指定したフォルダに保存できるように
後、できれば
>>398 氏の発言から、これも便利そうなので
Save Link in Folder、Save Image in Folder のように
あらかじめ登録しておいた複数の保存先をジェスチャによって呼び出す。
現機能のConQueryを呼び出すみたいな感じです。
検討お願いします。
素直に Drag de Go 使っとけよ… アレと Firemacs がなかったら Fx の価値半減とまで思ってるぞ俺は
404 :
397 :2007/12/02(日) 03:07:40 ID:66CBk/Jb0
下のも Drag de Go でできましたね・・・ 素直にそうしときます。すみませんでした。
userChrome.jsで何か作るとき xul形式で書くのとjs形式で書くのとでは 速さに違いが出るんかな。 コンテキストメニューに追加するのとかは xulのほうが便利だけどuc.jsで作ったほうが速いのなら 速いほうがいいなあと思って。
>>406 uc.jsの方がかなりDOM構築時が早いです。
実際に計測したわけではありませんが二倍以上変わると思います。
>>407 ってことはappendChildとかinsertBeforeとかで
いちいちやっていったほうが速いのか。
ありがとう。
firefox3でuserChrome.js動いてる人いたら ローダーどれ使ってるか、とか、どこいじったか、とか教えて欲しい。
410 :
名無しさん@お腹いっぱい。 :2007/12/02(日) 10:02:01 ID:s9fZpFst0
>>409 Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9b2pre) Gecko/2007120121 Minefield/3.0b2pre (ayakawa PGU)上で
Sub-Script/Overlay Loader v3.0modを変更なしで普通に使っている。
DragNgoModoki4.uc.js、textLink.uc.js、popupTranslate.uc.xu等を動かしています。
>>409 Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9b1) Gecko/2007110904 Firefox/3.0b1
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9b2pre) Gecko/2007120102 Minefield/3.0b2pre
alice0775 氏の Date 2007/10/15 19:00 を
var ver = this.getVer();
とした物を使ってる。スクリプトは自作+他作で30ヶ....チョット多いなア....
Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O 10.5; ja-JP-mac; rv:1.9b1)
Gecko/2007112221 Minefield/3.0b1 (lzyc)
>>383 をそのまま
userContent.jsとか使ってる
Firefoxではタブをクリックし離したときにその動作が実行されるようですが、これをクリックを押した瞬間に動作させることはできないのでしょうか?
415 :
414 :2007/12/02(日) 14:19:14 ID:lf0Q0m660
すいません勘違いでした タブの閉じるボタンや戻るボタンの場合はクリックし離したときにその動作が実行されるようで、タブ自体はクイックした際にその動作が実行されていました
>>414-4115 Windowsの場合リンクだろうとタブだろうと離した時にカーソル直下にあるものへ処理が渡される。
MacとかLinuxだと押したときに処理が入るはず。
>>415 の勘違いってのが勘違いじゃない?
フォーカス以外は基本的に離したときだね
DragNgoModokiで指定フォルダに保存はSuper Dragandgoから該当部分を移植したらできた かなり決めうちだけど
419 :
初スレの80 :2007/12/02(日) 17:43:28 ID:DkTlaD/00
010-ucjs_editor.uc.jsを使ってるんですがスクリプトの170行目 target.value = utf.convertStringToUTF8(textBoxText, encode, true); にエラー表示が出て2バイトの文字が書き込めません。 試してみたエディタはxyzzyとEmEditorでuserChrome.jsは0.8 アリスさんとこのsubです。 解決策ご教示ください。
>>420 書いたのをutf8で保存したらどうなる?
軽量マウスジェスチャのスクリプト // リファラのオンオフを切替 const kPrefName = "network.http.sendRefererHeader"; var prefVal = gPrefService.getIntPref(kPrefName); prefVal = prefVal == 2 ? 0 : 2; gPrefService.setIntPref(kPrefName, prefVal); var msg = prefVal == 0 ? "Disabled Referer" : "Enabled Referer"; XULBrowserWindow.statusTextField.label = msg; トグルさせる値が 0、2ではなく true、falseの場合はどのように当てはめたらいいのでしょう? 具体的には"javascript.enabled"をトグルさせたいのですが
>>326 3.0b2pre 2007120205にてUSE_GM=2にすると動かなくなったような
425 :
名無しさん@お腹いっぱい。 :2007/12/03(月) 15:49:48 ID:lJ+LFBjfO
〉422 エディタ側でutf8で強制的に開くよう設定したら書き込めました 有難うございました
俺も気になってFx3.0beta入れたけど やられたな cmd idとかも変わってるしややこしい
427 :
初スレの80 :2007/12/03(月) 18:26:23 ID:ZpoxvxNj0
>>375 のライブラリを少し修正.
errorMessage がエラー出すことが在ったり,_typeof がうまく動かない事が在ったりしたので.
http://www6.uploader.jp/dl/script/script_uljp00077.txt.html >>421 未確認だけど,スクリプトの先頭に↓を追加
var global = new chromeWindow.Object();
global.window = unsafeWindow;
global.document = unsafeDocument;
global._jsaCScript = _jsaCScript;
eval('(' + function(){
最後に↓を追加.
}.toSource() + ')();',global);
>>427 ありがとうございます。
試してみたところ
Error: userMenu.js / capture.tumblr.js ReferenceError : JsActions is not defined
Line: 596
557行目あたりの
var folder = JsActions.scriptFolderPath || JsActions.getScriptFolder();
がだめなんでしょうか。
>>423 setBoolPref と
getBoolPrefでいけると思いますがどうでしょう。
連投してすみません。
430 :
初スレの80 :2007/12/03(月) 22:15:55 ID:E8oEj4i20
>>428 var folder = JsActions.scriptFolderPath || JsActions.getScriptFolder();
↓
var folder = _jsaCScript.currentScriptPath.replace(/[^/\\]+$/,'');
或いは
var folder = Cc['@mozilla.org/network/io-service;1'].getService(Ci.nsIIOService).getProtocolHandler('file').QueryInterface(Ci.nsIFileProtocolHandler).getFileFromURLSpec(SCRIPT_PATH[0]).path;
これでどうでしょ?
>>430 うまくいきました。
ありがとうございます。
>>429 仰る通り、BoolPrefとすることで値は認識してくれました。しかも
誤 prefVal = prefVal == true ? "false" : "true";
正 prefVal = prefVal == true ? 0 : 1;
なんですね、知識なく望みの動作にするには滑稽に映るでしょうが大変です。
これで簡単なトグル動作は当てはめることが出来るので助かりました
本当にありがとうございます。
prefVal = !prefVal;
>>432 JavaScriptの知識ほとんどないけど、ダブルクォートで囲んだら文字列として
評価されてしまうんじゃない?
prefVal = prefVal == true ? false : true;
でもいけそうな気がするんだけど
>>433 ホントだ意味は分からないけど。"!"ってNOTじゃなかったっけ?何でトグルするんだろ?
>>434 最初にやってみたはずなんだけどなぁ、上のに当てはめるとフツーにそれですよね。
御二方、参考になります。
>>435 =は代入
a =!a
ってことはaにaの逆を代入するってことだと思う。
ゼロは偽 非ゼロは真だから
もし a=1の状態だったとしたら
a=!aを実行すると、aに0が代入され、
a=0だったら
a=!aを実行すると、aに1が代入されるんじゃないかと。
自分もそんなに詳しくないのでわかりにくかったらごめん。
>>436 オイオイ、全然違うぞ。a=1なら!aはfalse、a=0なら!aはtrue。
>>438 すまん
Cのwhileの()の中身と同じかと思ってた。
Google Readerの検索ボックスの右のボックスはデフォルトではAll Itemsに常になっていますが、これを今見ている フィードに自動的に変えてくれるスクリプトってありますか?
DragNgoModokiに要望なんですが、選択テキストのコピー・リンクのURLの コピーが出来たららうれしいです。 また、JSActions的に任意のスクリプトを実行出来たら運用の幅が広がると 思うのですがどうでしょう。
>>441 任意のスクリプトを実行できると思う....そうなるように記述すればいいだけ。
質問なんだけど、スクリプトファイルをJS Minifierとかでコードの圧縮や軽量化すると読み取り速度や実行速度が 上がる等のメリットあります? 削られ方によっては読み取れなくなかったりするけど、メリットがあるならやってみようかと思いまして。
444 :
初スレの80 :2007/12/06(木) 22:09:13 ID:YTbKDV380
445 :
441 :2007/12/06(木) 22:20:01 ID:6McysK8z0
Aliceさん、わがままな要望を聴いてくださり有難うございます。
「*.uc」と言うサブディレクトリとか「*.UCJS」と言うサブディレクトリとか訳わかめ いちどちゃんとしたreadmeつくってほしい
悲しすぎる...
ポップアップ翻訳でエキサイトが使えなくなったorz
>>448 aliceさんのpopupTranslate.uc.xulなら問題ないが?
>>446 そんなレベルでuc.jsとかgmとか使いこなっそうてのが無理
おとなしく拡張使ってな
http://www.nicovideo.jp/ だけ
user_pref("browser.link.open_newwindow.restriction", 0);
を
user_pref("browser.link.open_newwindow.restriction", 2);
にするという設定はどう書けばいいのでしょうか?
>>449 それなんだが・・・こっち側の問題ってことかorz
ありがとうございます 助かりました
>>454 ていうか、わざわざ作ったんすか?
ご苦労様です、俺ももらいます
457 :
454 :2007/12/07(金) 21:30:15 ID:vMyL1onQ0
>>453 browser.link.open_externalが3以外でも, 3同等になってしまっていた。
ので修正しておきました。
alice氏のIE VIEWもどきの特定のページを常に他ブラウザで開く機能を使うと 空白のタブが生成されてしまうのですが、これを抑止or自動で閉じる方法は無いでしょうか?
459 :
458 :2007/12/08(土) 03:09:05 ID:jK9rVj7p0
IE Veiwもどき 12/08 02:00版にて期待通りの動作を確認させていただきました。 aliceさん、素早い対応本当にありがとうございますm(_ _)m
ページ内のJavaScriptをON/OFFするだけの、いわゆるNoScript系の動作は userChrome.jsで可能でしょうか?
Stylishのステータスバーのメニューをコンテキストメニューに追加するにはどうすればいいの? <popup id="contentAreaContextMenu"> <menu id="#stylish-status-popup" /> </popup> こんな感じのuc.xulを作ればいいんだろうけどどうやって既存のメニューを引っ張ってくるのかまったくわからん。
>>444 更新お疲れ様です。
userChrome.jsローダーとライブラリを、Fx3Beta1にて使わせていただいていますが、
SM 1.1.7"Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.1.11) Gecko/20071128"(検証のため新規プロファイル)では、
80氏のuserContentとuserMenuのみ、chromeフォルダ直下に置くと動くのですが"*.uc"フォルダに置くと動作しませんでした。
他のスクリプトは動いています。お時間のあるときに確認お願いします。
エラーコンソール確認してみた?
>>465 真っ先に確認したけど何も吐いてないです。
467 :
初スレの80 :2007/12/09(日) 23:31:34 ID:QBhlBidN0
>>464 userContent.js / userMenu.js 最初の辺りの
if(location != 'chrome://browser/content/browser.xul') return;
を消して,メタデータに「@include main」の追加で動くと思います.
>>467 早々とありがとうございます。
”if(location != 'chrome://browser/content/browser.xul' && location != 'chrome://navigator/content/navigator.xul') return;”を消して
”// @include chrome://browser/content/browser.xul”を
”// @include main”に書き換えることで、動作確認しました。
自分の環境でローダーは、80氏のローダー使用時に動作が若干軽くなるので、移行させてもらいます。
いつもありがとうございます。
すいません。質問です。
Firefox 2.0.0.11のMac版にuserChrome.jsの0.8と
ttp://forums.mozillazine.org/viewtopic.php?t=397735#2169699 のSub Script Loaderを導入し、
同所のDrag'n'goをuc.jsのファイルとして導入したのですが、
例えば「userChrome.js」というようなピリオドを含む文字列をドラッグすると
URLと判断してGoogleで検索してくれません。
これ、皆様のところでも同じでしょうか?
JavaScriptの知識は無いながらソースをにらんでみたのですが
この判定をしているらしい箇所も見つけられませんでした。
対処法ありましたら教えてください。
>>469 エラーコンソールを見れば, 簡単なものは分かると思います。
当該スクリプトの
onload:function(details) {
console.log(details.responseText)
eval(details.responseText);
}
を
onload:function(details) {
//console.log(details.responseText)
eval(details.responseText);
}
にする。
>>470 /^file:\/{3}|^data:.+|^(?!javascript:)\S*?(([\w-]\.)+\w{2,7}|localhost([:\/]|$))\S*$/.test(url)
で判断している。
これを比較的安全なリンク, 危険を伴う可能性の高いリンク, 検索用文字列に場合分けるようにすれば良い。
472 :
469 :2007/12/10(月) 22:13:03 ID:hHXrHaMh0
>>471 ありがとうございます!動きました。
greasemonkeyを手放せなかったのですがこれで
助かりました。
スクリプトもこれを機に勉強します。
ありがとうございました。
473 :
初スレの80 :2007/12/10(月) 22:17:06 ID:Wu4vWMbD0
>>473 更新お疲れ様です。
Fx 2.0.0.11,Fx 3.0b1で動作確認しました。
SM 1.1.7"Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.1.11) Gecko/20071128"にて
userContentとuserMenuのみ、userContent.jsの51行目とuserMenu.jsの56行目で"SyntaxError missing;after for-loop initializer"が出て動作しませんでした...
また、恐縮なのですがお時間のあるときに確認お願いします。
以下をアップしておきました。 userContentjsのスクリプトの有効無効とエディタの起動for1.2 tp://www6.uploader.jp/dl/script/script_uljp00082.zip.html
>>473 userContent.js ver. 1.2
UTF-8で保存されたユーザースクリプト内にリテラル定数として日本語の文字列がある場合, userContent.js実行結果において日本語が文字化けする。
例
Fast lookup dictionaryのメニューポップアップの文字列
userContent.js ver. 1.11では文字化けはない。
userContent.pl.jsの設定
USE_GM=1;
USE_UTF8=2;
>>476 俺も1.11から1.2にしたら文字化けするようになった
malformed URI sequence userContent.pl.js 行: 42 mainWindow.userChrome_js_loader has no properties /userChrome.js 行: 33
479 :
476 :2007/12/11(火) 05:43:15 ID:k7xmTex10
userContent.js ver. 1.2 詳しく検証していないが, ver1.11にならい, if(script.codeString && !script._codeString) script._codeString = 'data:application/javascript,' + encodeURI(script.codeString); を if(script.codeString && !script._codeString) script._codeString = 'data:application/javascript,' + encodeURI('eval(_this.codeString);'); にしたら, 日本語化け直った。
480 :
初スレの80 :2007/12/11(火) 18:30:10 ID:DMhZk0OY0
昨日の userContent.js と userMenu.js で文字化け対策が外れていたので修正.
http://www6.uploader.jp/dl/script/script_uljp00083.zip.html >>479 文字化け対策の為にevalしていたのをすっかり忘れていました.
mozIJSSubScriptLoaderがcharsetを無視しなければ,こんな小細工要らないんですけどね.
>>478 >>malformed URI sequence
UTF-8 でないファイルをUTF-8として扱おうとして出るエラーです.
USE_UTF8が「2」なら,全てのファイルをUTF-8にするか「1」に変更する.
USE_UTF8が「1」なら,該当ファイルに適当な注釈文でも入れて自動判別が成功するように.
USE_GMが「2」なら,*.user.jsを全てUTF-8に.
ちなみに,サンプルで入っているRebuild.jsがEUCなのでこれがエラーを出してるかも知れません.だとしたら一行目を以下に変更.
const msg = 'userContent.js \u306e\u30b9\u30af\u30ea\u30d7\u30c8\u30ea\u30b9\u30c8\u3092\u518d\u69cb\u7bc9\u3059\u308b';
>>mainWindow.userChrome_js_loader has no properties
ローダーをメインウィンドウに入れておいて,
それ以外のウィンドウが開かれるとメインウィンドウの中のローダーを呼び出す作りになっているので,
メインウィンドウが無い状態でメインウィンドウ以外のウィンドウを開くとそのエラーが出ます.
通常そういった状況はあまり無いと勝手に判断して,速度優先のためにそうしました.
一応改善も考えてはいますが,当面我慢していただくか,窓から投げ捨ててください.
>>474 SeaMonkeyでは,userChrome.js 0.8でも明示しない限りJavascript 1.7が有効にならないようです.
なので,Javascript 1.7が使えるローダー(nanto_viさんのローダーや拙作のローダー等)でないと動きません.
拙作のローダーの場合は,*.UCJSと言うサブディレクトリに入れれば動きます.
481 :
474 :2007/12/11(火) 18:58:27 ID:XkW8dTCJ0
>>480 動作確認しました。
> SeaMonkeyでは,userChrome.js 0.8でも明示しない限りJavascript 1.7が有効にならないようです.
気づかず、失礼しました。
今まで、自分で変えていたのですが、メニューの表示位置の変更も助かります。
重ね重ねありがとうございます。
1.2 は pref.js への userscript の保存名が URL エンコードされるようになったんだね。
>>480 readme要望したヤシです。ありがとうございました。
1行目を変更して解決
我慢します
disable / enable / rebuild が機能してます?
Aliceさんの12/11 17:00のローダー、デフォルトでarrSubdirに書かれてるフォルダが userChrome.js.0.8じゃなくてuserCrome.js.0.8になってる… 単なるミスタイプを報告するのも気が引けるんだけど、一応、俺みたいにデフォのを そのまま使わせてもらってる人もいるかもしれないので。
>>484 Date 2007/08/08 10:20 アタリから userCrome.js.0.8 だったミタイ。
まあ、今更だし Alice0775 さんも言っている様に便宜上だから
このままで良いと思う.....
>>485 そうなんだ。
じゃあ、俺、自分が忘れてただけで書き換えてたんだな…orz
なんかお騒がせしてしまって申し訳ない。
>>484 ご指摘ありがとうございます。
全く気がつきませんでした orz, 当初からそのようだったようです。
userChrome.js.0.8とは特に関連はないことですし, 単なるフォルダの名称にすぎないので
気になる方は適当に書き直しておいてください。
userContent.js 1.2 で autopagerize がうまく動かんのですが、 何か設定を変えたりとか出来る事はあるでしょうか? 以下はエラーコンソールのログです。 use_gm=1, use_utf8=1 の時 Error: userContent.uc.js / autopagerize.user.js SyntaxError : return not in function Source File: file:///path/to/profile/chrome/content/autopagerize.user.js Line: 21 use_gm=2 の時 Error: userContent.uc.js / autopagerize.user.js Permission denied to get property Sandbox.document 試した環境は下の通り。新規プロファイル作ってから試しました。 autopagerize 0.0.17 userChrome.js 0.8 userChrome.js ローダー 80氏のver. 0.5 or Alice の12/11最新版 userContent.js 1.2 Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11
>>488 use_gm=1, use_utf8=1 の時
スクリプトを無名関数で囲むべし。
>>489 動きました!!ありがとう!!!
ところで use_gm=2 の時も無名関数で囲んで処理してるように思えるのですが、
そうではないんでしょうか?
userContent.pl.js 見て勝手にそう思い込んで無名関数で囲むの忘れてました。
userContent.js Ver1.2のrebuildするとUser Script Commandsメニューの中身が増殖するのを防ぐ
rebuild : function(){ var sd = saveState(userScript); userScript.destroy(); userScript = buildList(scriptDirectory,sd); if(controlMenu) controlMenu.userScript = userScript; },
を
rebuild : function(){ var sd = saveState(userScript); userScript.destroy(); userScript = buildList(scriptDirectory,sd); if(controlMenu) controlMenu.userScript = userScript;
var menu = document.getElementById('gm_modoki_usc_menu');if(menu){while(menu.lastChild){menu.removeChild(menu.lastChild);}menu.parentNode.removeChild(menu); } },
にしてみる
>>490 USE_GM = 2のときは// @privilege true をメタデータに追記しておく
>>480 userMenu.js>tabmenu>Order.ctが各~Orderと表示されて効かなくなりました。
Error: userMenu.uc.js / PluginOrder.ct.auto.js TypeError : gBrowser.mContextTab has no properties
Source File: file:///C:/Users/test/AppData/~/chrome/scripts_js.UCJS/tabmenu/Order.ct/PluginOrder.ct.auto.js
Line: 18
これを実行したときにuserMenu.jsから出るエラーです。
Error: gBrowser.mContextTab has no properties
Source File: file:///C:/Users/test/AppData/~/chrome/scripts_js.UCJS/userMenu.uc.js
Line: 360
>>491 いつも便利に色々使わせていただいてます。
autoContextmenuなのですが、80氏のローダーver5.0を使うと下記のエラーで動かなくなりました。
Error: uncaught exception: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsIScriptableUnicodeConverter.ConvertToUnicode]"
nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"
location: "JS frame :: file:///C:/Users/test/AppData/~/chrome/scripts.UCJS/autoContextmenu.uc.js :: anonymous :: line 16" data: no]
16行目の文字列を英語表記(1バイト文字?)にすると問題なく動くのですが、日本語に対応できるようでしたらお願いします。
>>493 あれ?何でかまだ理解できてないけど動きました。
ありがとうございます。
userMenu.js、0.9 から 1.1 に更新したらスクリプトの表示順がおかしくなった スクリプトディレクトリのメニュー項目名が日本語だとダメなのか?
496 :
初スレの80 :2007/12/13(木) 17:38:58 ID:FQqh939K0
userChrome.js用のローダーを少し改良.
disable/enableが不完全だったのと,メインウィンドウが無くても動作するように.
また,全てリンクして動作するようになったので,
あるウィンドウでrebuildするとその他のウィンドウもrebuildしたのと同じ状態になったりする.
http://www6.uploader.jp/dl/script/script_uljp00084.zip.html >>488 バグです.非特権時に document を参照すると例外を吐くようなので,直しておきます.
>>492 ブラウザは何でしょうか?
当方で確認できているのは,SeaMonkeyだとタブコンテキストメニュー周りが動作しません.
これも直しておきます.
>>495 日本語でも問題はない筈です.
ただ,1.0からソート処理を外しました.これによって並び順に若干違いが出ます.
ファイル名頭に数字を付ければ並び順はコントロールできると思います.
一応,ソート処理を加えるかどうか選択できるようにしておきます.
>>491 メニュー増殖しますか?
当方では確認取れないです.
497 :
491 :2007/12/13(木) 18:02:17 ID:UrtAVcAn0
>>496 Autopagerizeを有効にしておくと
「Too;」>「User Script Commands」メニュー内の
「AutoPagerize - clear cache」「AutoPagerize - on/off」
等がrebuildするたびに増殖する。
498 :
491 :2007/12/13(木) 18:12:29 ID:UrtAVcAn0
>>496 GM_modoki.jslのバージョンの違いかもしれません。
新規プロファイルで試したら増殖することはなくなりました。
499 :
492 :2007/12/13(木) 21:35:14 ID:gDgqoDwd0
>>496 改良お疲れ様です。
書き忘れ澄みませんSeaMonkey 1.1.7と2.0a1Pre2007121202ですがよろしくお願いします。
今ごろ存在を知ったのですが、フォルダ階層とかいろいろめんどくさいんで、 ぜんぶGUIでぱぱっと設定できるStylishみたいなツールはありませんか。
会ってもお前には使いこなせないよ^^
>>500 ない
userChrome.jsはそういう手間を楽しむものだから
>>500 そんなに面倒か? ぶちこむだけじゃないか
まあ俺も
>>502 派だからあっても知らないけど
Mozilla/5.0 (Windows; U; Windows NT 6.0; ja; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11にて
Aliceさんが前スレ902(
ttp://www6.uploader.jp/dl/script/script_uljp00051.zip.html )で
GoogleThumbnailsにAutoPagerizeのaddFilterをかかるように手直しされたスクリプトですが
80さんのローダーに変えたところ、タブを再読込すると2ページ目以降サムネイルがかからなくなってしまいました。
どなたか解決策を教えて下さい。
Alice氏のローダー使わせていただいてるんですが、uc.xulファイルが読み込まれていると Fx起動時検索バーの検索サイトアイコンが空白になってしまいますが、これは私だけでしょうか。
>>505 Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9b3pre) Gecko/2007121405 Minefield/3.0b3pre
2007/12/14 19:00のローダー
いまいちどういう症状なのか分からなかったりするけど…確認できなかった。
>>505 うちもなる。
一度検索かけると表示されるな。
>>505 >>507 うちではそんな症状は皆無だけどな。
使ってるuc.xulにもよるんだろうから、具体的に晒してみたら?
>>508 種類に関係なく再現します
popupTranslate.uc、rebuild_userChrome、ucjsProxySwitch、、、
Firefox 2.0.0.11です
GM scriptの質問です。 あるページのtableタグの情報を集計し、ファイルとしてダウンロードするア ンカーを追加したいのです。今はdata url(uri) schemeを使って実現させよ うとしていますが、普通こうするといった方法はありますでしょうか。
>>505 >>507 >>509 当方では, Fx2およびFx3, 80ローダおよび拙作のローダー,
実験プロファイル(拡張18個, uc.js106個, uc.xul18個, タブ10個)および
新規プロファイル(拡張3個, uc.xul1個)のどの組み合わせでも再現しません。
当方でCPUの負荷を見る限り, オブザーバの監視/処理に要する負荷が比較的高いのかもしれません。
runOverlays: function(doc){
var dochref = doc.location.href;
var ver = 3;//this.getVer(); ← ちょっと実験中(2007/12/09
を
runOverlays: function(doc){
var dochref = doc.location.href;
var ver = 2; //this.getVer(); ← オブザーバの負荷が高い場合 2がいいかも(12/15)
にしてみる。
512 :
509 :2007/12/15(土) 21:17:03 ID:+PRiq6fi0
>>511 うーん、かわらないですね、、、一瞬アイコンが表示された後、消えるといった感じです
実は半年ほど前からこの不具合は確認していて、地味に気になるのでuc.xulは使わないようにしていたんです
もうすこし様子を見ます。ありがとうございました。
参考までに私の場合 .拡張10個+uc.js 21個 .uc.xul 10個 を alice0775 氏のローダ(現在は2007/12/13 17:00)で Fx2/Fx3b2rc1/Minefield 上で使用していますが問題ありません。 メンドウですが新規プロファイルで拡張を含め1ヶづつ増やして チェック等ヤルしか無いと思います。
514 :
507 :2007/12/16(日) 08:19:28 ID:C4CAbST+0
検証してみた。 環境は XP SP2 Pen4 2.4G メモリ1GB userChrome.js 0.8 ローダーはalice氏のを12/14のもの。Firefox 2.0.0.11(Build 2007120721) Ayakawa 氏の SSE2 VC9。 まず userChrome.js 自体を無効にしてみたら普通に表示された。 次に userChrome.js 自体は有効ですべてのスクリプトを取り除いてみたら表示された。 次に uc.js のみを導入したら表示された。 次に uc.xul を追加で導入したら表示されなかった。 そこで uc.xul のみを一つ一つ確認しつつ導入と除去を繰り返した。 導入している uc.xul はbookmarksSidebarTooltip.uc.xul、conqueryModoki2.uc.xul、contextFindWords.uc.xul、pipelining.uc.xul、popupTranslate.uc.xul、rebuild_userChrome.uc.xul、ucjsProxySwitch.uc.xul。 このうち一つだけ入れた状態で表示されたのは bookmarksSidebarTooltip.uc.xul のみ。他のものは一つでも入っていると表示されなかった。
515 :
507 :2007/12/16(日) 08:32:08 ID:C4CAbST+0
拡張との相性を疑い、今度は userChrome.js 以外の拡張をすべて無効にしてみた。
結果は表示されなかった。
最後にローダーを変えてみた。Alice 氏のものから
>>496 のものに変えたところ、正常に表示された。
以上の結果から Alice 氏のローダーによる不具合の可能性が高いと考えられる。
JavaScript に対する知識が薄いため、ソースを読んでどうこう言うことは出来なくて申し訳ない。
516 :
507 :2007/12/16(日) 09:01:53 ID:C4CAbST+0
って、書いた後で新規プロファイルに拡張全部と userChrome.js 全部突っ込んでみたら再現しないなぁ。 よくわからなくなってきた。 何かの設定がぶつかってるみたい。
517 :
507 :2007/12/16(日) 09:25:22 ID:C4CAbST+0
すべての設定を移植した時点で表示されない状況が再現。 ツールバーのカスタマイズ状況によって表示されるされないが左右される模様。 一度表示されなくなったらカスタマイズ状況を手動で戻しても表示されないまま。 localstore.rdf を削除したらきちんと表示されるようになった。
>>515 前スレの80ってAliceさんじゃないの?
別人です
Javascriptのコードを見ても分かるとおり, 80氏はバリバリのプログラマーで, Alice氏は日曜プログラマー, という感じで全く作風が異なっている。
80氏、自前サイトもつといいのに… とか言ってみるテスト
>>515 私の場合は80氏のローダーでも表示されませんね・・・
そんなの、マゾしかできないよ。
今回のuserContent.js ver1.2ではタブを再読込みすると
>>504 でも出てるけど
AutoPagerizeのaddFilterが効かなくなってませんか?
Alice氏のローダー、80氏のローダー、本家のローダー、それぞれで新規プロファイルにて確認してみましたが
いずれもタブの再読込み後、そのタブでAutoPagerizeが読み込むページにはフィルターがかかりませんでした。
userContent.jsの設定で対応できるようなら教えていただけませんか。
Mozilla/5.0 (Windows; U; Windows NT 6.0; ja-JP; rv:1.8.1.11) Gecko/20071128 SeaMonkey/1.1.7
userMenu.jsをver.0.9からver.1.1にしたら、 見よう見まねで作ったスクリプトのうちのいくつかが 動作しなくなってしまいました。 他のスクリプトの関数を呼び出してるとこがダメっぽいです、 ああ、名前空間の問題だなぁと想像してみたものの、 ほとんど知識がないのでどう手を加えていいのか分かりません。 どなたかご教示ねがいます。
>>529 まずおまいのスクリプトをさらせよ
話はそれからだ
晒すって言っても、例えば ucjs_hogehuga(null, null, true, false ); っていう、他のスクリプトで定義してあるucjs_hogehuga関数を呼び出す一行だけでも出来ません。
以前どこかでステータスバーをメニューバーに移動するスクリプトを見つけて使ってたんですが 設定ごと全部クラッシュして場所がわからなくなってしまいました。どこにあるのか知っている方いませんか?
>>533 あーそうかここか・・・完全に失念してた。素早い対応ありがとうございました。
80氏のローダー(ver. 0.6)を使わせてもらってるのですが、一つ質問があります。 「ツールメニューに簡単なコントロールメニューを追加する」についてです。 「a.uc」と「b.uc」というようにサブフォルダにスクリプトを分けて置いている のですが、メニューに表示されるスクリプトがa.ucのものだけになっています。 場合によってはこのフォルダのものもすべて表示されていません。 しかしスクリプト自体は問題なく機能しております。 まあ何か困ることがあるかと言えば、ほとんどないのですが、こういうものなので しょうか。
最後に入れようと思ってたんですが、忘れて送信してしまいました。 すみません。 Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9b3pre) Gecko/2007121605 Minefield/3.0b3pre
>>535 Alice氏でしょうか。レスありがとうございます。
当方、AutoPagerizeのバージョンが0.0.18の環境での不具合でした。特定できなかった orz...
教えていただいたAutoPagerize 0.0.17 Alice氏Modバージョンでは私の環境でも問題なく動くことを確認しましので
こちらを使用させていただきます。
80氏へも、ご迷惑をおかけいたし申し訳ありません。
539 :
529 :2007/12/17(月) 01:06:26 ID:9BNH9Ink0
>>535 ありがとうございます
chromeWindow.を付けたら全部のスクリプトが動きました!
80氏じゃないけれど, とりあえずはエラーがでないように if(script[i].metaData && script[i].metaData.description) item.setAttribute('tooltiptext',decodeURIComponent(escape(script[i].metaData.description))); を if(script[i].metaData && script[i].metaData.description && toolkit.getCharset(script[i].metaData.description)=='UTF-8' ) item.setAttribute('tooltiptext',decodeURIComponent(escape(script[i].metaData.description))); にしてみる
>>541 早速お答えいただきありがとうございます。
置き換えてみたのですが、相変わらず一部のスクリプトしか表示されません。
Error: malformed URI sequence file:///[...]/chrome/userChrome.js
置換箇所に対して上記エラーがコンソールに出てきます。
>>543 早々の対応ありがとうございます。完動確認しました。尊敬します。
546 :
536 :2007/12/17(月) 13:02:22 ID:kP0Hal+D0
>>543 ,
>>544 該当箇所の削除で、メニューに表示されるようになりました。ありがとうございます。
再起動の件ですが、当然その都度再起動しておりました。
80氏もブログを始めてください。
548 :
名無しさん@お腹いっぱい。 :2007/12/19(水) 11:44:12 ID:Cg+m/omT0
xulってxmlですよね。 ということはxul内のscript要素内にうじゃうじゃ書いていくときはCDATAセクションで囲んだほうがいいんですか。 そういう書き方を見かけたことないので、厳密にはどうなのかときになりまして
>>548 そうだよ。
Firefoxや拡張機能のソースコードでXULにJavaScriptを
埋め込んでる物はたいていそうなってるよ。
550 :
名無しさん@お腹いっぱい。 :2007/12/19(水) 13:08:19 ID:Cg+m/omT0
>>549 ありがとうございます。勉強になりました。
>>551 自分で解決できないのなら, GM使えばいいんじゃない
誤爆した。 しつこくてスマン
556 :
初スレの80 :2007/12/19(水) 22:21:49 ID:SHKNQgCx0
>>556 80さん、乙です。
以下のエラーがcontent・menu両方出るけど大丈夫ですか?
load preload file Error : file not found.
Source File:chrome/userChrome.js
Line: 399
動きますよ readmeをよく読みフォルダ構成と彫り込むファイルを見直すことですね。
>>556 毎度、乙です。コチラも
GoogleAutoPager.user.js
googleImagesAutoPager.user.js
greasedlightbox_(googleImage).user.js
Japanize.user.js
等8個ほどのスクリプトが Fx2/Fx3 で問題なく動いています。
まあ、大した物使ってないって事ですが、
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9b3pre) Gecko/2007121904 Minefield/3.0b3pre
561 :
557 :2007/12/20(木) 00:23:49 ID:K/N1OxYd0
ごめん、0.UCJSToolkit.uc.js入れてなかった。 入れたらエラーが0.UCJSToolkit.uc.jsででるようになったけど、pl.js使ってないからおk?
>>559 greasedlightboxって、userContent.uc.jsで動かすと劇的に軽くなりますか?
>>562 環境による, そのスクリプトの使用頻度, OSのファイルキャッシュとメモリ搭載量, ページイングの状況により変わる。
しかし, ここの連中ときたら, どこそこのスクリプトがuserContent.jsで動かない何処を直せばいいの?だの, エラーがcontent・menu両方出るけど大丈夫? だの, 何かなーって感じ, 自分でどうこうする気全くなし。 素直にGM使ってりゃいいのにってwww
時々出没するSeamonkey使いもそう, 文句言うばっかりで, 自分で工夫すること全くしない。 元のGM用スクリプトのバージョンがアップしただけで, お手上げの香具師も出没。 何ともかんとも情けない。
>>563-565 みんなおまえさんに対して、どうこうして貰おうなどと思って聞いてないから心配するな
\丶 r⌒ヽ (⌒⌒) r⌒ヽ/, / /, ヽ 、、;(⌒ヾ . (((⌒⌒))) /⌒) ), , 、ヾ (⌒ ファビョ━ l|l l|l ━ン!⌒⌒);;)/, 、\(⌒ゝ;(⌒ヾ ∧_∧ ⌒)/)) ., / ((⌒-丶(;;;(⌒ゝ;;(⌒∩#`Д´>'') ,⌒⌒);;;;;)))⌒) (;;;;(⌒(⌒;;;(⌒ ヽ ノ / ))⌒));;;;)-⌒)) ゞ (⌒⌒=─ (,,フ .ノ ─=⌒⌒)ノ;;ノ;;;::) ((⌒≡=─. レ' ─=≡⌒)丿;;丿ノ
568 :
名無しさん@お腹いっぱい。 :2007/12/20(木) 05:39:41 ID:2n1uDnAb0
alice0775さんのDrag'n'goで検索ボックスに文字列をコピーする機能を追加したいです。 いろいろ試行錯誤したのですが、どうにも上手くいきませんでした。 どなたか方法を教えてくれませんか?
ID:ky2rF21x0の出番きたよ
まだですか?早く教えて下さい。
まあID:ky2rF21x0がalice0775さんなんですけどね
Alice氏は、たまにお茶目なことするからな
>>574 コテつけた方がいいんじゃないでしょうか
>>556 お疲れさまです。
SeaMonkey 1.1.7、2.0a1Pre{Build ID:20071220}共に動作確認しました。
TabOrderも完璧戻りました。ありがとうございます。
>>573 お疲れさまです。引き続き使わせていただきます。
> エッ?! 記憶にない...
Alice氏作スクリプトのメタデータ観ると、たまに吹き出すことことがありますよ。
やっぱおちゃめです。
>>574 見逃していました。ありがとうございました。
>>578 ツールメニューのUser Script Commandsから使うってこと?
それが効かないんだったらprefs.jsのNicovideoTimer.nicovideotimer_timeの設定を削除したらリセットされると思う。
>>579 なるほど……そういう意味だったんですか。
全く気づきませんでした。
必死でRTMのショートカットキー表示のスクリプトとか参考にしながら
「このキーを押したらリセット(?)」
らしきスクリプトを付け加えてました…………。
言い忘れました。ありがとうございます。
582 :
初スレの80 :2007/12/21(金) 17:54:24 ID:tKKyG1fG0
583 :
557 :2007/12/21(金) 18:24:37 ID:JHrln2ma0
>>582 readmeをろくに読んでませんでした。
80さん、ごめんなさい。
Element Resizerを使っているのですがで 一行サイズのテキストエリアには反応してくれなくてサイズ変更が出来ません どうすればそれらのサイズを変更出来ますか?
>>585 おおー、これですこれ
とても助かりました
>>526 いまさらだけど
メタデータに// @privilege falseを追記
俺は#heat_output > spanのところにwidth: 3px;を追加してた
589 :
568 :2007/12/22(土) 18:38:49 ID:wIsurx/50
alice0775さんのDrag'n'goで検索ボックスに文字列をコピーする機能のジェスチャーを右にしたいのですが、 //検索バーにテキストをコピー case 'DR': を //検索バーにテキストをコピー case 'R': にしてもなにも反応しません。どこがいけないのでしょうか?
エラーコンソールとか見てみる。
>>589 LINK, IMAGE,SEARCHのRが指定されている行を全部消す。
これにはあまり関係ないけれど, リンクの判定を少し厳しくしたもの(12/22 19:00)をうpし直した。
タブを1つ表示している時にマウスジェスチャーでタブを消すと firefox自体が終了してしまいます。 恐らくuserchrome.jsの軽量版マウスジェスチャーが原因だと思うのですが 解決法が分かる方いらっしゃいましたら回答お願いします。 ちなみに該当すると思われるスクリプトは // タブを閉じる case "Rsw": document.getElementById("cmd_close").doCommand(); break;
既出だ
>>592 オプション開いて常にタブバーを表示すればたぶんOK
>>592 SCRAPBLOGのコメント欄のどっかに書いてあったような気がする。
>>595 gBrowser.removeCurrentTab();
Aliceさんにお願いです 「userContentjsのスクリプトの有効無効とエディタの起動」が便利過ぎるので 80さんローダーuserChrome.js版も作って欲しいです お願いします m(_ _)m
それはaliceさんに頼むことなのか…?
Aliceタソ、今日はクリスマスイブです。 行くあてもない憐れなおいら達に、夢のあるスクリプトをドカーンとおながいします。
>>597 userChrome.jsのローダーもuserConent.jsもcreateContrlMenuのところは
作者が同じだけあって見た感じほとんど一緒だから
aliceさんにやってもらわなくてもいけるだろ。
Flashのコンテキストメニューを抑制するスクリプトってありませんか? マウスジェスチャの時に非常に邪魔です
>>601 それ、前に聞いたら無理だって言われた。
読み込み中のページエリア内でジェスチャが利かないのも。
>>601 軽量マウスジェスチャを使っているなら、タブ上でもジェスチャが効くように編集してやればいい。
>>604 Aliceサンタ キタキタキタキタ━━━(゚∀゚≡(゚∀゚≡゚∀゚)≡゚∀゚)━━━━!!!
今年のクリスマス一番のプレゼント頂きます!
ありがとうございます
キャホーィ
>>598 >>600 これは、オリジナルを更に使いやすくしてくれる「Aliceブランド」に意味があるのです
相変わらずconpact menuではうごかんのな。シクシク・・・
>>606 MenuEditorを回避する例のやつでいけるとか?
>>606 ちょっと見た感じではCompactMenu使っても、本来のmenuの要素残ってるから隠れてるそっちに適用されてるんじゃないだろうか。
var after = (function(win){
var p = (MENU_PARENT_ID) ? win.document.getElementById(MENU_PARENT_ID) : null;
if(p && p.nodeName == 'menu') p = p.firstChild;
return (p) ? p.lastChild || (win.document.getElementById((SEAMONKEY) ? 'sep_switchprofile' : 'menu_preferences')) || win.document.getElementById((SEAMONKEY) ? 'taskPopup' : 'menu_ToolsPopup').lastChild
: (win.document.getElementById((SEAMONKEY) ? 'sep_switchprofile' : 'menu_preferences')) || win.document.getElementById((SEAMONKEY) ? 'taskPopup' : 'menu_ToolsPopup').lastChild;
})(win);
のらへんをいじれば何とかなるような気がする。
610 :
609 :2007/12/25(火) 00:51:51 ID:opviamG40
すまん。 拡張のCompact Menu2と間違ってた。
ニコ動のflvとコメントをDLできるuserChrome.jsないですか?サンタさん あとでローカルでゆっくり見ようという算段なんだけど ぐぐっても使えなくなってて更新もしてないってところしかヒットしてくれない
ソフトでいいならBOON SUTAZIOが楽 flv単体ならあるだろうけどコメント付きは俺は知らないな
firefoxのCookie使ってくれるそういうソフトがないので ログイン確認で躓いてしまうからuserChrome.jsの力貸してください それもIEの利用なんで困ってます やっぱりfirefoxはこういうの公開してくれる人の数が少ないから敷居高いですよね 結局ソフトとの連携とかでfirefoxとSleipnirを行ったり来たりで頻度的にはIE系使うほうが多かったり 自分で作ろうにも頭がパーンで一歩たりとも前に進めない
>>613 Firefoxのcookieを共有する方法より使用ブラウザをFirefoxに統一させることを考えた方がいいと思うのだが・・・
前にどっかで観た記憶があってかなり探したんだけど タスクバー辺りでリファラー送信をトグルスクリプトってなかったですか?
一応 ぐぐって発見したnicovideoDownloader.uc.jsとnicovideoDownloader2.uc.jsをDLして メモ帳で開いてにらめっこしてたんだけどどこをどう弄ったらいいのかお手上げで頭から湯気ですよ
>>615 使ってくれるってブラウザじゃなくてニコニコ系ツールの話だったのね、失礼。
>>617 ぐぐって見つかる nicovideoDownloader.uc.js 使えてるけど。
620 :
609 :2007/12/25(火) 03:02:06 ID:opviamG40
AliceさんのuserChrome.js ローダ (改題)を利用しております。 //Firefox のブックマークツールバーのラベル文字列をケチる (function() { var nodes = document.getElementById('bookmarks-ptf').childNodes; for (var i = 0, max = nodes.length; i<max; i++) { var label = nodes[i].getAttribute('label'); label = label.charAt(0)+label.charAt(1); nodes[i].setAttribute('label', label); } })(); というスクリプトを使っているのですが、ローダーがuserChrome.js ローダ (改題)になってから このスクリプトが使えなくなってしまいました。 これはどこを変えればいいのでしょうか?
>>621 問題点
1.ブラウザのBrowserStartup時点では'bookmarks-ptf'は未定義
2.ブラウザのdelayedStartup完了を待たないとダメ(ただし現状では捕捉手段が用意されていない)
3.後にブックマークを追加してもラベルは短くならない
これらを改善するため以下を実施
1.ブックマークツールバーに要素が追加されたことを捕捉するイベントリスナーを追加
2.変更中は, 1のイベントリスナーを実行しないように抑制
3.連続して呼び出された場合に実行を抑制
//Firefox のブックマークツールバーのラベル文字列をケチる
(function(){
var timer;
function ketiru(){
document.getElementById('PersonalToolbar').removeEventListener("DOMNodeInserted", init,false);
var nodes = document.getElementById('bookmarks-ptf').childNodes;
for (var i = 0, max = nodes.length; i<max; i++) {
var label = nodes[i].getAttribute('label');
label = label.charAt(0)+label.charAt(1);
nodes[i].setAttribute('label', label);
}
BookmarksToolbar.resizeFunc();
document.getElementById('PersonalToolbar').addEventListener("DOMNodeInserted", init,false);
}
document.getElementById('PersonalToolbar').addEventListener("DOMNodeInserted", init,false);
function init(e){
if(timer) clearTimeout(timer);
timer = setTimeout(ketiru,0);
}
})();
623 :
名無しさん@お腹いっぱい。 :2007/12/25(火) 14:22:15 ID:q4urvONA0
>>623 ローダーの
that.runScripts(doc);
that.runOverlays(doc);
を
setTimeout(function(){that.runScripts(doc);},0);
setTimeout(function(){that.runOverlays(doc);},0);
にする
または, 80氏ローダなら this.userChrome_js_loader.loadJSandXUL(this); を var self = this; setTimeout(function(){self.userChrome_js_loader.loadJSandXUL(self);},0); および loadJSandXUL(userScript,this); を var self = this; setTimeout(function(){loadJSandXUL(userScript,self);},0); にする
627 :
623 :2007/12/25(火) 16:49:37 ID:7DME8JWv0
>>625 >>626 Alice0775氏のローダーを使わせていただいてますが
エラーがなくなりました。
ありがとうございました。
>>622 ありがとうございます!
でもなぜか自分の環境ではうまく動作しませんでした。
Win XPHome Edition [Service Pack 2] CPU:1296MHz メモリ:758MB (382MB Free)
Mozilla/5.0 (Windows; U; Windows NT 5.1; ja-JP, en-US; rv:1.8.1.11)
Gecko/20071127 Firefox/2.0.0.11
userchrome.js0.8
なのであれこれググって
toolbarbutton.bookmark-item {
width: 4em !important;
max-width: 4em !important; }
を利用することにしました。
お世話になりました。
629 :
初スレの80 :2007/12/25(火) 18:26:54 ID:NwDmj1q90
>>629 ありがたい。
これのおかげでようやくRefControlがはずせる。
Fake Referrerが機能してないような
Firefox Portable で、userContent.jsとuserMenu.jsを使わせてもらっているんですが、 最新版のスクリプトにしてから機能しなくなりました。 別の環境で同じ拡張とスクリプトを入れてる Firefox では正常に動いてるんですが... 同じような現象の方います?
634 :
初スレの80 :2007/12/26(水) 23:21:53 ID:8e3NCEQr0
>>629 View Menu in Context Menu が文字化けしていた.
let LABEL = '\u8868\u793a';
の「\」をバックスラッシュに置き換えるか,以下に修正.
let LABEL = decodeURIComponent(escape('表示'));
UTF-8ではバックスラッシュと円マークは違う扱いなんだね.
>>632 設定とかでリファラ吐かないようになってると機能しません.
他にもロケーションバーやブックマークとかからのリクエストには効きません.
>>633 0.UCJSToolkit.uc.js が使えるようになってますか?
Undo List 30とFake Referrerだけもらって適用しようとしたんだけどUndo listの方が動いてない 他に何か必要なんでしょうか? Alice氏のロダでSubscriptに突っ込んであるんですが
>>635 別にいらないと思うよ。標準のコードの中身の10を30に書き換えてるシンプルなやつみたいだし。
Firefox 3では動かないけど。
ウィンドウ右上の検索バーで使用する検索エンジンをマウスホイールで変更できるスクリプトはないでしょうか?
ワイド液晶なんですけど、blogとかの縦長なページを画面幅いっぱいに表示するスクリプトとかStyleってありませんか。
Operaみたいにブラウザのサイズに併せてその都度収まるように可変してくれたらいいんだけどなー
640 :
633 :2007/12/27(木) 11:44:00 ID:Ijid/xCt0
>>634 エラーコンソールで確認したんですが、0.UCJSToolkit.uc.js の前に、
userContent.js と userMenu.js がロードされていて、
ReferenceError を出しているようです。
ロードの順番を変えようとファイル名を変えてみたりしましたが、変化無し...
うーん、なんでだろう
641 :
633 :2007/12/27(木) 12:01:39 ID:Ijid/xCt0
Firefox Portable を使用していてFATの環境なので、もしやと思って フォルダ毎別フォルダへ移動、戻し書きをしたところ、順番どおりに 読み込まれるようになりました。 お騒がせしました。
>>637 SCRAPBLOGのどこかにScrollSearchEngines.uc.js
>>642 右クリック以外に使えるとは知りませんでした・・・thxです。
aliceさんのsaveimageinfolderでパスに日本語使えなかったり画像の保存が出来ないのは俺だけかな? コンテキストメニューからフォルダ選んで保存しようとしても画像が壊れてて表示できないて言われる 標準の「名前を付けて画像を保存」からはちゃんと保存できてるけど ダブルクリックで保存もちゃんと動かなくなった
>パスに日本語使えなかったり 当方では, フォルダやファイル名に日本語(スペースも)殆ど使わないのでそういう仕様になっています。 JavaScriptなので各自の使用目的方法に合わせスクリプトを修正して使ってください。 もしくは, 窓の外にポイッとしてください。 一応フォルダの日本語に対応させておきました。 >画像が壊れてて表示できない 当方では, そういうことに遭遇していないもので...
早い対応ありがとうございます 2バイト文字を使わないパスでもなぜか保存できなかったんですが、バッチリ保存されるようになりました ダブルクリックの方も上手く動いています コンテキストメニューが抑制させる分、拡張の方より勝手が良くなってすごく助かりました
一度訪れたサイトのリンクの横にチェックマークをつけてくれる グリモンてなんでしたっけ? ちょっとfirefoxがクラッシュしてデータが消えてしまったので・・・。
>>648 そんなのあるんだ。
個人的にはvisitedのLinkをcssで変化させればいいと思うんだけど。
a:visited::after{
content:"[visited]";
color:red;
}
見たいに
userchrome.jsでus.jsはスクリプトによっては かなりメモリを消費する場合がありますね user.jsはまだ軽いような気がする
>>649 おぉ!、これは探していたグリモンとほぼ同じ動作をしてくれます。
visitedを?に変えたらかなりそれっぽくなったので使わせていただきます。
すいません、↑の?はチェックマークです
タブ上をダブルクリックで、そのタブを凍結(TMPのような)するスクリプトありますか?
openTabsWhere_whichTabSelectWhenCloseTab.uc.js を有効にしているとタブバーのダブルクリックで新規タブを開く動作が出来なくなります タブ系拡張は一つもいれておらず、ローダーはalice0775さんのものをつかっているんですが、どうすればいいのでしょうか それとsaveFolderModoki.uc.xulも正常に動作していません pathはE:\Imageでalice0775さんのサイトの背景画像を保存しようとしたところ全く反応しませんでした
>>655 Tab Mix Plus, Save Image in Folderを使いましょう。
そこまで多機能なものはいらないからuc.jsをつかっています 拡張を増やす気は無いのでこちらで質問させていただきました
>>658 とりあえずFirefoxのバージョンとOSくらいは書くべき。俺も前に注意された
>>655 openTabsWhere_whichTabSelectWhenCloseTab.uc.js 以下の通り修正。
//
//呼び出し元の判定 何も処理しないならtrueを返す
//
function isIgnore(){
var max =50;
var caller = arguments.callee.caller;
while(caller && max>0){
//debug(caller.name+"\n"+caller);
/*ここから*/
//必要に応じて処理しない呼び出し元メソッド名等で判定する
//※duplicateTabInContextMenu
if( caller.name == "oncommand" && /duplicateTabInContextMenu/.test(caller) ) return true;
if( caller.name == "BrowserOpenTab" ) return true;
/*ここまで*/
caller = caller.caller;
max--;
}
return false; //処理する
}
>サイトの背景画像
って何?
>>655 うちも同じで、新規タブが開けないで固まる現象に出くわしてた。
それと、Greased Lightbox とも干渉してるみたいで、Lightboxの機能が使えなくなる
現象もあるみたい。
言葉足らずでしたすみません 正しくは「エロサイトの背景画像」です
>>603 それはcssで指定されたbackground-imageなので範囲外。
スクリプト見れば分かるとおり保存できるのはimgタグのみ。
saveFolderModoki.uc.xulの該当箇所を以下の通り修正 // Get text of link. linkText : function (target) { var text = gatherTextUnder( target ); if (!text || !text.match(/\S/)) { text = target.getAttribute("title"); if (!text || !text.match(/\S/)) { if (target.hasAttribute("alt")){ text = target.getAttribute("alt"); //fx2 if (text.match(/画像ファイル ".+" は壊れているため、表示できませんでした。/)) text = null; //fx3 if(text.match(/.*\/(.+)$/)) text = RegExp.$1; } if (!text || !text.match(/\S/)) { if(target.hasAttribute("href")) text = target.href; if(target.hasAttribute("src")) text = target.src; if(text.match(/.*\/(.+)$/)) text = RegExp.$1; } } } return text; },
>>665 乙すぎる・・・
二つともホントウにありがとうございました
両方とも正常完璧に動いています
新年早々本当にありがとうございました
>>661 Greased Lightboxの件,
openTabsWhere_whichTabSelectWhenCloseTab.uc.js 以下の通り修正。
return true;
}
} , true);
function getVer(){
を
return true;
}
} , false);
function getVer(){
にする。
Gmail MacrosをuserContent.jsで動かしたいんだけどどうも上手くいかないです。新しいバージョンの方なんですが、動かせるものならどこをどう弄ればいいか教えていただけませんか?
>>649 のvisitedところをチェックマークで
記述するのはどうしたらいいの?
Terapadをエディタにしているんだが
MS officeツールはインストールしてない
場合は無理か?
スレ違い質問で申し訳ない
"?"
671 :
名無しさん@お腹いっぱい。 :2008/01/02(水) 18:36:18 ID:gSj4u2p90
JHMHMMBFだあG、VんVMBんGHTYMM、ん、。、、
>>669 試してないけど
content: "\2611";
縁なしは \2713 でいけると思うよ。
673 :
名無しさん@お腹いっぱい。 :2008/01/02(水) 21:39:15 ID:CMazge380
質問。Firefoxの改造テクニック!って本なんだが、これはこの先Firefox3とか4にverUPとかしても活用できるよね?
>>673 ものによるとしか言いようがない。
いけるやつはいけるだろうしできなくなるやつはできなくなる。
675 :
669 :2008/01/03(木) 01:24:47 ID:Z8z4XuLQ0
トロイの木馬仕掛け放題, GreasemonkeyやuserChrome.jsは罪作りだね。 そこいらに転がっているexeファイルもホイホイとインスコするんだろうな。
>>676 中身見てないから分からんが、拡張子的にグリモンスクリプトじゃまいか
userChrome.jsじゃ動かんよ。
グリモンを入れるか、userChrome.jsで動かすのであればuserContent.js入れると吉
>>677 (公式に登録されていない)すべての拡張機能に言えるんでないの?
>>678 すみません、間違えました。userContent.jsで動かないのでした。
userContent.jsは最新版です。
>>681 3.0b2で試しに入れてみたがuserContentで動いてるよ
使い方間違えてるんじゃね readme読んでuserContentで設定しなおしてみ ところで俺はSafarihighlightが3b2(lzyc G4)で動かない。ローダーは80氏のだけど、 80氏のにするまえから3(当時はb1)にしたら動かない。2では動いてる 解決法知ってる人がいたら教えてくれ
>>683 設定をやり直したら動きました。ありがとうございました・・・
http://pc11.2ch.net/test/read.cgi/software/1185343069/568-569にある YoutubeDL.js ver. 0.5+mod by alice0775でDLしようとすると
動画タイトル.flvというファイル名でDLできるはずなのに
ファイルを保存するダイアログではファイル名は空欄、
ファイルの種類も.flvではなく「すべてのファイル」になってしまいます。
これをきちんと動画タイトル.flvでDLさせるにはどこを直せばいいのでしょうか。
ちなみにFirefox2.0.0.11、userContent.js1.3、ローダはAliceさんの2007/12/14 19:00のものを使っています。
686 :
685 :2008/01/04(金) 00:47:25 ID:gzIoVgRN0
今80氏のローダーでも試してみましたが、同じでした。
>>685 ちょっと修正
fp.init(window, "Save Movie As", fp.modeSave);
fp.appendFilters(fp.filterAll);
fp.appendFilters("Movie Files","*.flv");
fp.defaultExtension = "flv";
fp.defaultString = title.+'.flv';
を
fp.init(window, "Save Movie As", fp.modeSave);
fp.appendFilter("Movie Files","*.flv");
fp.appendFilters(fp.filterAll);
fp.defaultExtension = "flv";
fp.defaultString = title.replace(/^\s*/,'').replace(/\s*$/,'')+'.flv';
にする。
1. fp.appendFilters 単数形と複数形の間違いがあった
2. デフォルトのファイルの種別FLVをすべての種類の前にした
3. titleの前後に空白があるとファイル名生成に失敗するようだ
>>687 ばっちりです!
迅速な対応本当にありがとうございます。
>>683 lzyc build の問題じゃない?
あれ?! 私コワレマシタ orz
aliceさんの77: 後で読むをメニューに追加で、 スクロールバーの位置も保存できれば長いページを途中まで読んだとき 便利だと思うんですけど、できますか?
>>692 彼は今朝方コワレタから治るまで無理です
>>694 理想どおりっす!ありがとうございます!
Firefox 2.0.0.11 WinXP SP2 alice0775さんのローダーを使用 上記環境でBookmarksHistoryMenuMiddleClickedContinuously.uc.jsが動作しません。 80さんのローダーも試してみましたが、こちらもダメでした。 どこか修正箇所等あるでしょうか。
Alice氏のexpandsidebar.uc.jsを使用させていただいてますが、最新版で _CLOSEWHENGOOUT: true, とすると、サイドバーを閉じなくするチェックボックスが機能しなくなります。 環境は Windows2000 SP4 Mozilla/5.0 (Windows; U; Windows NT 5.0; ja; rv:1.8.1.6) Gecko/20070726 Firefox/2.0.0.11) です。
698 :
697 :2008/01/05(土) 13:25:31 ID:gq2oOTTM0
書き忘れました。ローダーは80氏のものを使用しています
>>696 Ctrl+中クリック
>>697 そういう仕様だったんですが...
case "mouseout":
//オープン直後なら何もしない
を
case "mouseout":
if(this._CHECKBOX.checked) return;
//オープン直後なら何もしない
で仕様変更。
700 :
697 :2008/01/05(土) 15:18:04 ID:gq2oOTTM0
>>699 すばやい対応ありがとうございます!
仕様でしたか・・・失礼しました。
でもこれで理想の動作になりました。
ありがとうございます!
みなさんサブスクリプトローダは何を使っていますか? userchrome.js0.8対応、日本語対応、グリモン風コメント対応の3拍子そろったローダはありますか?
ローダの話に便乗だよ 助けてよAliceたん、話題80の一番新しいローダがあややだとちっとも動かないよ、助けてよ 新規プロファイルで試しても無理だったよ、ひとつ前のバージョンは全然問題ないよ
公式やteteビルドでは問題なく動く。 おそらくは綾川ビルドだけの不具合だろうから、Alice氏の前に綾川氏に聞くのが筋。
>>702 firefox-ce-2.0.0.12pre-SSE2-ayakawa-071230-PGUでも動いているけど,
質問が漠然すぎる。
綾川氏のtrunk 080103だと普通に動いてるけど・・・
>>705 スレチですまんが、どこに置いてあるの?
>>704 _, ._
(;゚ Д゚)
そうなんですか
arrSubdirで指定したところにスクリプト入れただけなんですけど?
環境がおかしいのかとVMwareで別環境つくって新規インスコ、
新規プロファイルにuserChrome.js.xpiだけ入れてもダメ
なんでーーー
>>708 なんか設定間違ってるんじゃ?
うちのあややでも動いてるからなぁ。
うちも問題ないよ Mozilla/5.0 (Windows; U; Windows NT 5.1; ja-JP; rv:1.9b3pre) Gecko/2008010319 Minefield/3.0b3pre (ayakawa PGU) userChrome.js.0.63 使用スクリプト 000-windowhook.uc.js、DragNgoModoki5.uc.js、MouseGestures.uc.js、popupTranslate.uc.xul、suggestjp.uc.js ucjsPermission2.uc.xul、ucjsPermissionPreferences2.uc.xul、zzzz-MultiRowTabforFx2.0_3.0.uc.js arrSubdirってのは使ってない。みんな同じところに入れてある。 エラーコンソールにはなにか出てないの?
Error: missing } in XML expression Source File: file:///**************************/chrome/userChrome.js Line: 306, Column: 52 Source Code: this.debug("loadSubScript: " + script.filename); こんなん出てます、うーやっぱりうちだけなのかぁ
>>711 runScripts を以下のものにしてみる。
runScripts: function(doc){
if(!!this.dirDisable['*']) return;
const Cc = Components.classes;
const Ci = Components.interfaces;
var dochref = doc.location.href;
for(var m=0,len=this.scripts.length; m<len; m++){
var script = this.scripts[m];
if(!!this.dirDisable[script.dir]) continue;
if(!!this.scriptDisable[script.filename]) continue;
if( !script.regex.test(dochref)) continue;
if( script.ucjs ){ //for UCJS_loader
this.debug("loadUCJSSubScript: " + script.file.path);
var aScript = doc.createElementNS("
http://www.w3.org/1999/xhtml ", "script");
aScript.type = "application/javascript; version=1.7";
aScript.src = script.url;
try {doc.documentElement.appendChild(aScript);
}catch(ex) {this.error(script.filename, ex);}
}else{ //Not for UCJS_loader
this.debug("loadSubScript: " + script.filename);
try {Cc["@mozilla.org/moz/jssubscript-loader;1"].getService(Ci.mozIJSSubScriptLoader)
.loadSubScript(script.url, doc.defaultView);
}catch(ex) {this.error(script.filename, ex);}
}
}
},
>>712 (*´▽`*)うごきますた
ありがとうAliceたん、ありがとう
>>713 動きましたか, なぜ動かなかったのか根本はよく分かりません。
が, E4Xのヒアドキュメントの解釈が, 環境の違い(何が違うのでしょう?)により異なるのが要因と思われる。
どうせE4Xの部分はαにもなっていないtrunkのときの残骸みたいなものだったので, 削除してみたと言うことです。
716 :
初スレの80 :2008/01/06(日) 23:21:45 ID:Un4EO0jv0
userContent.js の管理ツールを実験的に書いてみた.
UCJSToolkit が同封のじゃないと更新がうまく行かないので,そっちも入れ替えて使ってください.
http://www6.uploader.jp/dl/script/script_uljp00101.zip.html >>629 のスクリプト集の Fake Referrer が何かおかしかったので修正.
{
let Cc = Components.classes;
let Ci = Components.interfaces;
Cc['@mozilla.org/observer-service;1'].getService(Ci.nsIObserverService).addObserver({
observe: function(subject,topic,data){
if(topic != 'http-on-modify-request') return;
var http = subject.QueryInterface(Ci.nsIHttpChannel);
if(http.referrer && http.referrer.host != http.originalURI.host) http.setRequestHeader('Referer',http.originalURI.spec.replace(/[^/]+$/,''),false);
}
},'http-on-modify-request',false);
}
>>716 乙です。
ローダー0.63 用管理ツールも希望します。
>>716 乙です。
Components.classesとかComponents.interfacesとかって
やっぱり変数で1回参照しないとだめなんですか?
>>718 どうなんだろ,
Fxの場合ブラウザウインドウ内に限定すればCcとかは定義済みだけど,
サイドバーとか他のウインドウ,ダイアログでは必ずしも定義済みとは限らないみたい。
720 :
初スレの80 :2008/01/07(月) 00:05:20 ID:0ZkIvCXg0
>>717 現時点でも少し書き換えるだけで対応できるんですが,
もう少し様子を見てから取り掛かりたいと思います.
>>718 そんな事は無いと思うんですが,
場合によっては Components(或いはその下の要素)が null だか undefined だかになって例外を吐くので,
一旦変数なり何なりに入れて置いた方が確実なので,そうしました.
常に Components の中身が保証されると言う事は無さそうです.
DragNgoModoki5なんですが、拡張をD&Dでセーブすると以下のエラーが出てしまいます。 line 666 switch(func.toUpperCase()){ DragNgoModoki4(2007/12/06)では問題ありませんでした。 fx3.0b2にalice氏のローダ(2008/01/06)を使用しています。
>>721 typoと言うかミスです。
お手数ですが, 1048行付近の
this.openURL(aEvent, aDragSession, url,gBrowser.currentURI,ACTION,true);
を
this.openURL(aEvent, aDragSession, url,null,gBrowser.currentURI,ACTION,true);
に直しておいてください。
>>719-720 ありがとうございます。なにか作るときには気をつけることにします。
80氏ので初めてletを知ったんですけど便利ですね。
あと管理ツールの動作が確認できました。乙です。
>>716 お疲れさまです。Firefox/2.0.0.11、Firefox/3.0b2で動作確認しました。
ucojsManager.uc.jsはSaeMonkey 1.1.7にも対応していますか?
>>722 動作確認しました。
遅くに有難うございました。
alice氏のexpandsidebar.uc.jsを使用していて、右側にサイドバーを移動させているのですが 縦スクロールバーを掴んで移動させている間は自動開閉しないように設定することは可能でしょうか?
>>726 直しておきました。
適当に直していただいて結構ですよ。 報告も不要ですし。
Google Image Relinker with Mouseoverと Pagerizationを組み合わせて Firefox/2.0.0.11で使用しているのですが イメージ検索の2ページ目以降で 画像の拡大が出来ないので 解決方法を教えていただけないでしょうか?
customizegoogleを使ってるのですが、次へを押さずに次のページを見るスクリプトはありますか? グリースであったような気がするけど入れたくないし、高望みするとgoogleimageで次へを押さずに次のページを見るスクリプトもあれば教えてほしいです。
>>732 読んでませんでしたスミマセンorz
しかし動かない…自分のやり方が悪いんだろうが、全くわからん
ROMって勉強してくる
まずGreasemonkey それが慣れたらuserChrome.js 十分いけるようになったらuserContent.jsとか試したらいいよ。 はじめてAutoPagerize入れたときの感動がFirefox一択にさせた。
735 :
名無しさん@お腹いっぱい。 :2008/01/08(火) 16:16:36 ID:eLdF5aOp0
aliceさん、ucjs_findbaのSearchWP2.0b2対応 よろしくお願いいたします。
ここはもう某氏作成スクリプトのサポートセンター化してるな
Autopagerize 0.0.19+firefox 2.0.0.11、グリモンでもusercontent.jsでも FORCE_TARGET_WINDOW = trueが機能しないけど、どこがまずいのだろ?
ITmedia のサムネの拡大画像(?)を快適に見るスクリプトって無いでしょうか。 (画像だからどこでもLightboxでいけるかと思いきや、よく考えたらリンク先は 画像じゃなくてHTMLページでしたorz)
aliceローダ, DragNgoModoki5.uc.js で以下のメッセージでNTF/NTB, 画像Saveできません。 セキュリティエラー: [URL] のコンテンツが file:///C:/Users/[ユーザ名]/AppData/Local/Temp/画像ファイル を 読み込みまたはリンクすることは禁止されています。 //画像 IMAGE["U"]= ["NTF" , ""]; IMAGE["D"]= ["NTB", "SF0"]; Mozilla/5.0 (Windows; U; Windows NT 6.0; ja; rv:1.8.1.12pre) Gecko/20071230 BonEcho/2.0.0.12pre (ayakawa SSE2-PGU)
>>739 そのエラーはdragDropSecurityCheck ではじかれているので正常動作です。
画像をキャッシュ参照にした際の, 退行バグ。
以下の通り修正ください。
if (this.imageLinkRegExp.test(url) || /^image\//i.test(contentType)){
var kind = (this.locale=="en")?'image':'画像';
var DIR = this.IMAGE;
を
if (this.imageLinkRegExp.test(url) || /^image\//i.test(contentType)){
url = (this.dataRegExp.test(urlFromData))?RegExp.$1:null;
var kind = (this.locale=="en")?'image':'画像';
var DIR = this.IMAGE;
にする。 さすれば, 実url参照になりdragDropSecurityCheckを通過できるようになります。
面倒をおかけしまして申し訳ありません。
自分で使うぶんには不具合があればその都度直すだけだが, 殆ど使わない機能のテストはつくづく難しい。
>>741 コンテントタイプの取得が上手くいかくなるので 以下の通り「再修正」ください。
//image link or link
var DIR = null;
url = (this.dataRegExp.test(urlFromData))?RegExp.$1:null;
var contentType = this.getContentType(url);
if (this.imageLinkRegExp.test(url) || /^image\//i.test(contentType)){
var kind = (this.locale=="en")?'image':'画像';
var DIR = this.IMAGE;
>>742 Googleサジェストの仕様が変わったんじゃないかな?
拡張のCustomizeGoogleでもサジェストが効かなくなってるし、吐かれるエラーも同じ。
>>744-745 ありがとうございます。仕様が変わったんですか。
他のツール類での検索が普通のグーグルにURLを渡していたので、設定変えるのもめんどくさいかな、と思ってこれ使ってました。
>>744 さんの言う通り本家でいくことにします。
>>743 動作確認しました。重ねてありがとうございます。
>>73 ありがとうございます。
No.69と102を同時に入れたのですがこれでいいのでしょうか?
googleimagesautopagerは作動するのですが
マウスオーバーしても画像が大きくなりません。
マウスオーバーもダイレクトリンクも使えるようになりました。 ただ、やはり2ページ目の画像はマウスオーバーもダイレクトリンクも 作動しませんでした。
>>750 マウスオーバーとダイレクトリンクは同時に使えません。
No69のgoogleimagesautopager.user.js
No69のgoogleimagedirectlinks.user.js
または
No69のgoogleimagesautopager.user.js
No102のgoogleimagerelinkerwithm.user.js
の組み合わせを試す。
かつ
googleimagesautopager.user.jsが先に実行されるようにしなければならない。
>>752 URL先には50行目にそんなの無いような気がする
>>753 >>752 で動かないと言うことでしたので, 久々に見てみたらその通りであった。
ついでにb3preでの不具合などもあったので直してみた。
これもまた, お蔵入りしているスクリプトなもので, 検証不足な部分も多々あるかと思います。
いずれにしても, 不具合報告やアドバイスいただけることは, ありがたいことです。
>>751 マウスオーバーとオートページャー(この読みでイイのか・・・?)
は同時に使えないのですか?
オートページャーで表示された2ページ目以降をの
画像をマウスオーバーでPOPUPさせたいのですが・・・
Auto pagerize で追加されたページには Greasemonkey スクリプトは効かない。
それが不満でproxomitronを使うようになった。
普通、AutoPagerizeで追加されたページにはGreasemonkeyスクリプトは効かない。 が、window.AutoPagerize.addFilterに関数を登録したら、AutoPagerizeが継ぎ足しするときに実行してくれる。 JavaScriptを書かにゃならんのだけれど、やってるグリモンはいくつかあるから参考にすればできるかも…。
ノートはモノによっては左右同時クリックで中クリックになった気がする
>>756-758 やれば出来そうなんでしょうが
難しそうですね。
今の僕には出来そうにないです。
ありがとう。
768 :
762 :2008/01/10(木) 11:59:52 ID:CDkmmQ7z0
俺のは便乗した冗談だから気にすんな
>>759 shift+Pでもポップアップするようにしておきました。
>>770 ありがとうございます。ちゃんと動作しました。
Greasemonkeyで質問なんですが、withでスコープチェーンに追加するやり方は 最適化が難しく、実行速度の低下を招くと知りましたが、現在Firefoxに搭載されている 実行環境でもそれほど如実に差が出るものなのでしょうか。 正直LDR用のGreasemonkeyを考えていると、ついwith(unsafewindow)としたくなるので それほど関係がないのならそのままでもいいかと思っているのですがどうでしょうか。
>>774 メモリリーク?
漏れる?
どういう関係が。
>>774 removeObserverすればいいんじゃない?
>>773 ありがとうございます。
むずかしいところですね。withを使うか検討してみます。
userContent.uc.jsと0.UCJSToolkit.uc.jsをchromeフォルダにいれ、contentフォルダにYoutubeDLを試しに入れてみましたが動かない YoutubeDLはuserContent.uc.jsの付属についているので、れあどめも見てみたけどわからない… googleで調べても、解決方法が見つからなかったので分かる人教えてorz
>>778 ローダによってやり方は違うけど、
userContent.uc.js(Ver.1.2以降) は javascript 1.7 として読み込まなければダメ。
例えば:
Alice0775氏のならデフォルトでは chrome の中に UCJSFiles
80氏のなら chrome の中に userContent.UCJS フォルダを作ってそこに、
content フォルダはその中に作る。
>>779 できませんでしたorz
ためしにGoogleAutoPagerをGMでやってみたら使えないので、多分他の何かが悪いのかな…
Youtubeの仕様変更で使えなくなってる可能性もある
使えるので,Youtubeの仕様は変更されていないみたい。
>>683 0.9.2リリース。
これで大丈夫…だと思います。
OSXは無いので試せないけど2では動いて、3では動かないようなので同じ症状だと思いますし。
>>779 userContent.uc.jsってUCJS Loader方式で適用しなきゃいけなかったんだ。知らなかった…orz
今の今までuserContent.ucフォルダから読み込ませてたよ…
別にucでもucjsでもどちらでも動くよ
>>783 うちでは前のバージョン(0.9.1)では検索バーでは動作(SearchWPでは動かない)するのが、
バージョン上げたら動かなくなりました。黄色くはなるんですが……
Mac OS X の3β2です。
788 :
名無しさん@お腹いっぱい。 :2008/01/11(金) 21:05:07 ID:+x3XkF3Z0
735です。 なんか気軽にめんどくさいことをお願いしたみたいでお手間かけました。 とっても快適です。ありがとうございました。
>>786 Macは無いのでテストできないです……。
念の為に入れてる377行と420行をコメントアウトして動作させ、出てきたエラーを教えて下さい。
790 :
初スレの80 :2008/01/12(土) 00:05:11 ID:ccdJCkb90
>>774 新しいwindowが開く度にaddObserverにてオブザーバの登録がされてしまうと言うバグです.
完璧じゃないけど取り合えず直しました.
(function(){
let Cc = Components.classes;
let Ci = Components.interfaces;
let list = Cc['@mozilla.org/appshell/window-mediator;1'].getService(Ci.nsIWindowMediator).getEnumerator('navigator:browser');
while(list.hasMoreElements()){ if(list.getNext() != window) return; }
Cc['@mozilla.org/observer-service;1'].getService(Ci.nsIObserverService).addObserver({
observe: function(subject,topic,data){
if(topic != 'http-on-modify-request') return;
var http = subject.QueryInterface(Ci.nsIHttpChannel);
if(http.referrer && http.referrer.host != http.originalURI.host) http.setRequestHeader('Referer',http.originalURI.spec.replace(/[^/]+$/,''),false);
}
},'http-on-modify-request',false);
})();
>>786 0.9.3リリース
try catchで0.9.1の方法と0.9.2の方法両方でgFindBarの書き換えを行ってみた。
如何せん汚いのでそのうちどうにかしたい…。
あとSearchWP2.0b2に対応。1.0で動かないのだったら…調査します。使ってないからノーチェックでしたし。
>>790 無名関数にするのはなんでなんなんだろう?
returnが機能しないから?
80氏のuserContent.jsの管理ツール、trunkで使えている方いらっしゃいますか? 80氏のローダで入れてみてるのですが、管理ウィンドウが立ちあがってこない… Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9b3pre) Gecko/2008011105 Minefield/3.0b3pre
無名関数にして実行させるためでは?
796 :
初スレの80 :2008/01/12(土) 23:03:35 ID:7KSCZIT20
>>793 そうです.
gotoが在ればgotoを使いたかったけど無いし,try-catch使って例外投げるのも大げさだし,
ループの中にループと関係ない処理書くのは嫌だし,フラグ設定して後で判別と言うのも二度手間だし.
とか,うだうだ考えてそうしました.
>>794 あまりよく確認はしてませんが,動くはずです.
何かエラーや警告は出ていませんか?
ローダーとか仕様がいくつもあって2.0や3.0もあって 複雑化してきたね
確かに。一番オーソドックスな組み合わせは何なの?
オーソドックスと言えば Firefox2.0.0.11 userCrome.js ver0.8 + Sub-Script/Overlay Loader v3.0 GreaseMonkey ver0.7.20070607 JavascriptActions ver2.3.0.2007010501
800 :
794 :2008/01/13(日) 00:51:35 ID:kLjk8IWR0
>>796 レスありがとうございます。
それがエラー、警告ともに出てないのです。BonEcho/2.0.0.12preの方だと、全く同じプロファイル構成できちんと
ウィンドウが出てくるのですが…
ローダーのバージョンは0.63で、chromeフォルダに0.UCJSToolkit.uc.jsを、サブフォルダuserContent.ucに
ucojsManager.uc.jsおよびucojsInstaller.xul、ucojsManager.xulを入れてあります。(userContent.uc.js関連も
この同じサブフォルダにまとめてあります。)UCJSToolkitは管理ツールに同封されていたものに置き換えてあります。
せっかくレスしていただいたのになんの情報も出せなくて申し訳ありません。もう少しいろいろ様子を見てみようと
思います。
Sub-Script/XUL LoaderとSub-Script/Overlay Loaderの違いは何?
0.7用と0.8用
>>800 XULのエラーを表示させる方法。
user_pref("javascript.options.strict", true);
user_pref("javascript.options.showInConsole", true);
80氏じゃないけれど
if(!userContent) let timer =
を
if(!userContent) var timer =
にする
804 :
793 :2008/01/13(日) 03:27:54 ID:UQ8Ve56L0
>>796 これって新しくwindowができて2つ以上になったときには新規にObserverを登録しないって
いう感じに考えてたんで、新しいwindowでは監視されないのかなって思ってたけど、
一回登録済みだから適用されるのか。
removeObserverで取り除くと両方とも除かれちゃうからだめなのかな。
いろいろ勉強になりました。
805 :
803 :2008/01/13(日) 03:29:41 ID:74dJ1Nzn0
let を使うとすれば if(!userContent) let timer = setInterval(function(){ userContent = chromeWindow.userContent_js; if(userContent) clearInterval(timer); },10); を if(!userContent){ let timer = setInterval(function(){ userContent = chromeWindow.userContent_js; if(userContent) clearInterval(timer); },10); } にする
806 :
803 :2008/01/13(日) 03:33:12 ID:74dJ1Nzn0
>>806 ありがとうございます。
なぜFirefoxのアプリケーションを終了させるまでに一度しかObserver登録を
行わせないようにするか納得できました。
あと、初歩的な質問で申し訳ないのですが、FirefoxのWindowの破棄はwindowのunloadイベント
で取得することができるのでしょうか。
>>796 let使うんだったら↓でいいんじゃないの?
fakeReferer: {
...
while(...){ if(...) break fakeReferer; }
...
}
>>803 どうもありがとうございます。
ご指摘のとおり、XULのエラーを表示させるようにしてませんでした。
エラーの箇所は、これまたご指摘のとおり、38行目(辺り)のif(!userContent) let timer・・・で
書いていただいたコードに変えてみたところ編集ウィンドウが立ちあがってきました。
なにからなにまでありがとうございました。
810 :
初スレの80 :2008/01/13(日) 17:23:39 ID:zSwwi+Vt0
>>805 うっかりしてました.今まで何で動いていたのか不思議です.
>>808 javascriptの勉強をいい加減にしかしていなかったので,
そんな事が出来るなんて今初めて知りました.
ちゃんと基本を学んでおかないと駄目ですね.
>>810 Bug 408957 ? let declaration must be direct child of block, top-level implicit block, or switch body block
がtrunkに反映されたためと思う。 Fx2へは未反映のようです。
博識な皆様に質問なのですが、userChrome.js で about:config の値を変更させるにはどういうスクリプトを書いたらいいのでしょうか?
>>812 tp://developer.mozilla.org/en/docs/Code_snippets:Preferences
ブックマークのフォルダを常にアクティブなフォルダのみ開いて、他は閉じるuserChrome.jsのスクリプトはありますか?
>>814 いろいろある。
まとめサイトにリンクされている。
また別のものがこのスレもしくは過去スレにもあった。
現在LDRのGreasemonkeyを書いていて、GM_xmlhttpRequest で外部からtextを取得しているのですが、LDRの文字コードがutf-8で 外部ファイルがshift_jisのため文字化けが起こってしまいます。 一般的にはphpやperlで行うようですが、何とかファイルの文字コード変換まで 全てGreasemonkey内で終わらせたいのですがどうすれば文字コードの変換ができるのでしょうか。
>>813 ありがとうございます。
ゆっくり読んでみます
誰か Auto Copy の文字列選択時に自動でクリップボードにコピーする機能だけ移植してください by ドザ
>>818 移植したよ!
about:cofig
から
clipboard.autocopyをtrueにするだけ!
>>819 いやそれって UNIX 系 OS だけでしょ?
>>816 試してないけど,GM_xmlhttpRequestするときにoverrideMimeTypeで
charsetを指定すればいいかも
autopagerize.user.jsとか参考に
>>821 ばっちりでした。
ただ唯一心残りなのは document.characterSet のような感じで
取得先の文字コードを動的に取得できないことでしょうか。
AutoPagerizeの場合は取得先が同一ドメインであり、現在のページと
同じ文字コードであると見てほぼ間違いないのでdocument.characterSet
で調べればいいのでしょうが、別だとあらかじめ指示しておく他ないようですね。
なんとか無事に文字化けせずに表示できてありがたいです。
825 :
はまつまめ :2008/01/17(木) 09:39:02 ID:WFe7L16W0
タブ上の中クリックに「他のタブを全て閉じる」を当てはめています。 これを、選択中のタブを中クリックした時には「全てのタブを閉じる」ようにしたいのですが どうすればいいでしょうか。
お客様の中にエスパーはいらっしゃいませんかー?
エスパーはいらっしゃいませんかー?
「他のタブを閉じる」ってのは選択中のタブ以外を消すのに、 同じく選択中のタブを中クリックで「全てのタブを閉じる」って、無理じゃね?
「他のタブを閉じる」というのは, A.非選択タブを中クリックしたときはそのタブ以外を閉じて, そのタブを選択する。 B.選択中のタブを中クリックしたときはそのタブ以外を閉じる。 と言うことと思われるので, 要望は, Bの動作を, 選択中のタブを中クリックしたときは全部のタブを閉じる。 にしたいと言うことで可能ですね。
>>827 ,828,829
すいません、説明ベタなもので(´;ω;`)ウッ
>>830 代弁して下さってありがとうございます。
要望はまさしくそれです。
firefox2の時は以下のスクリプトで希望の動作が出来ていたのですが
3.0b3では中々希望通りの動作にならずここに書き込みさせて頂きました。
gBrowser.mTabContainer.addEventListener("click", function(e){
if (e.target.localName == "tab" && e.button == 1){
var browser=getBrowser();
browser.removeAllTabsBut(browser.mCurrentTab);
}
},true);
だから, 動作Aと動作Bを場合分けしないとね.
>>826 ウィンドウのxをクリックじゃだめなの?( ゚д゚)
後は何なりと (function(){ const nsIAppStartup = Components.interfaces.nsIAppStartup; var mediator = Components.classes["@mozilla.org/appshell/window-mediator;1"] .getService(Components.interfaces.nsIWindowMediator); var windowType = "navigator:browser"; var enumerator = mediator.getEnumerator(windowType); var flg = false; while(enumerator.hasMoreElements()) { var win = enumerator.getNext(); if(window != win) flg = true; } if(flg){ window.close(); } })();
それ役に立つの?
見た目も大事だろ
>>833 ということは、2つの場合のスクリプトを書かないといけないという事よね?
もしよかったらヒント頂けないでしょうか。お願いします。
>>834 タブの上で作業を完結させたくて・・。
×書かないといけないという事よね? ○書かないといけないという事ですよね? タイプミスすいませんorz
しかし、いろんな使い方する人もいるもんだ。
>>841 JavaScriptやったことなくて分かんなかったから、オライリーの「入門JavaScript」っていう本買ってきたよ。
GreasemonkeyのGM_ほげほげっていう関数の説明ってどこにのってる?
>>847 GM_modoki.jslの中身見ながらがんばることにした。thx。
>>836 二重起動させようとしたら従来通り以下のようなダイアログが出るだけでアクティブにならなかったです
Firefox is already running, but is not responding. To open a new window, you must first close the existing Firefox process, or restart your system.
ポータブル版だからダメなのかな
でも作ってくれてどうもありがとう
>>850 そのメッセージはfirefox.exeが出してるからPortableは関係ないと思うけど。
そろそろβ3がでるんじゃないかな また複雑化しそうな予感w
>>850 Mozilla Firefox, Portable Edition 2.0.0.11で試したがそんなエラーメッセージ出ませんよ。
起動時のコマンドラインオプションか, FirefoxPortable.ini の設定がおかしいのではないですか?
>>850 そんなの出んよ?ただ元の質問を見ると
> すでに起動しているFirefoxをアクティブにすることはできますか?
らしいけどアクティブにもならんけど
firefox portable の存在意義が分からん firefox -profile PROFILE で何がいかんの?
>>857 Firefox2.0? 3.0β?
userchrome.jsとuserContent.jsのverは?
>>858 すみません
・Mozilla/5.0 (Windows; U; Windows NT 5.1; ja-JP-lg; rv:1.8.1.12pre) Gecko/20080114 Firefox/2.0.0.11 (ayakawa SSE2-PGU)
・userChrome.js 0.8
・userContent.js 1.3
860 :
836 :2008/01/19(土) 00:49:25 ID:c0ZHTm0j0
>>855 > すでに起動しているFirefoxをアクティブにすることはできますか?
win.content.focus();を追加してみた。
(function(){
const Ci = Components.interfaces;
var mediator = Components.classes["@mozilla.org/appshell/window-mediator;1"]
.getService(Ci.nsIWindowMediator);
var windowType = "navigator:browser";
var enumerator = mediator.getEnumerator(windowType);
while(enumerator.hasMoreElements()) {
var win = enumerator.getNext();
if(window != win){
win.content.focus();
setTimeout(function(){window.close();},0);
return;
}
}
})();
custom buttons2などで指定したURLをサイドバーに開くやり方をお願いします
>>861 「指定したURL」が意味不明確なので, プロンプト表示してURLを入力するものと勝手に解釈した。
この解釈があなたの意図していたものと異なっていても(ry
/*CODE*/
var specified_url = window.prompt('url');
if( specified_url){
if(!/^
http:\/\//i.test (specified_url)) specified_url = "
http:// " + specified_url
openWebPanel("Open Specified URL in Sidebar", specified_url );}
サイドバーに開く? どういうこと?
>>863 ブックマークのプロパティに”このブックマークをサイドバーに読み込む”というオプションがありますよね。
あの動作をボタンでしたんです。
ブックマークツールバーフォルダに入れてボタン化では個々に配置できないのでcustom buttonsで出来ればと
>>862 おw、スイマセンぼけてて読み飛ばしてしまった。風邪だなきっと・・・
説明が足らなかったようで申し訳ありませんでした。
参考にしてちょっと考えてみます
>>864 サイドバーに表示するって意味ね。
こういう使い方しないからこんな機能あるの初めて知ったよ。
知らない機能まだまだあるもんなんだなぁ…。
>>862 そんな面倒なことしなきゃ駄目かな?
以下のコードみたいに簡単でいいんじゃ?
openWebPanel("ここにページのタイトル記載", "ここにURL記載");
>>867 >「指定したURL」が意味不明確なので, プロンプト表示してURLを入力するものと勝手に解釈した。
と記述してあるだろ
870 :
861 :2008/01/19(土) 03:48:56 ID:ln0yH9Gl0
どうもありがとうございました。
>>862 も汎用的に使えるのでかなり便利ですね。親切なコードで感謝です。
Altを押しながらホイールを回したら一番上か一番下に移動したいと思って、 以下のスクリプトを書いてchrome/SubScript/scrollTopOrBottom.uc.jsに保存しました。 が、ブラウザ起動時にアクティブだったタブでしか有効になりません。 どうすればいいでしょうか? (function() { var w = window.content; var scrollTopOrBottom = { handleEvent : function(aEvent){ if(aEvent.altKey || aEvent.metaKey){ var positionY = aEvent.detail >= 0 ? w.scrollMaxY : 0; w.scrollTo(w.pageXOffset, positionY); } } } w.addEventListener("DOMMouseScroll", scrollTopOrBottom, false); })();
>>871 //Altを押しながらホイールを回したら一番上か一番下に移動
//マウスのイベント発生したwindow/frame/iframeで機能するようにしたつもり
(function()
{
var w = gBrowser.mPanelContainer;
var scrollTopOrBottom = {
_getWindow: function(aEvent){
var target = aEvent.originalTarget;
return target.ownerDocument ? target.ownerDocument.defaultView : null;
},
handleEvent : function(aEvent){
if(aEvent.altKey || aEvent.metaKey){
var fw = this._getWindow(aEvent)
if(!fw)return;
var positionY = aEvent.detail >= 0 ? fw.scrollMaxY : 0;
fw.scrollTo(fw.pageXOffset, positionY);
}
}
}
w.addEventListener("DOMMouseScroll", scrollTopOrBottom, false);
})();
873 :
872 :2008/01/19(土) 13:25:21 ID:c0ZHTm0j0
>>871 >>872 の
if(!fw)return;
の次に
aEvent.preventDefault();
を
を挿入しておいてください
80さんの保管庫とかないんですか? アップローダのが最新のものなのか このスレに書き込まれている修正コードで書き直さないといけないのか というかこのスレを見るのが面倒というか・・ 80さんのレスを抽出するだけじゃなくてその前後の流れも見なきゃいけないのが
使うのやめれば
>>875 のようなゆとりは他人様の作った拡張でも使えば
アップデート楽だよ?
>>872 userChrome.jsでページのwindow.documentオブジェクト取得するためには
ownerDocument.defaultViewもってこないといけないんだなあ。
今ちょうどdocumentでやってgetElementByIdがnot a functionっていわれたとこだったので
参考になりました。
google imageで、画像をクリックすると画像最大化+画像の元ページのURL表示はできますか? 後GMじゃなくて、userChrome.jsでgoogle検索の「次へ」を使わず次のページを読み込むことはできますか?
できるんじゃないですか? できるんじゃないですか?
>>882 は何なんだ?スクリプトとかさっぱりだから解らん
>>875 >>883 ゆとりは来るなよ…('A`)
そんな楽していきなり結果が得られるわけないだろ。
サーセンwしゃあないから色々調べるか
そもそも中にコメントが書いてあるだろ…。
「userChrome.js用ローダー ver.0.63」は chromeディレクトリと chrome\hogehoge.ucディレクトリと chrome\hogehoge.UCJSディレクトリの中のサブスクリプトをロードするもので スクリプト内に@include/@excludeの記述がないものは chromeディレクトリに スクリプト内に@include/@excludeの記述があるものは chrome\hogehoge.ucディレクトリまたは chrome\hogehoge.UCJSディレクトリに入れる という意味で間違いないでしょうか? > nanto_vi さんの UCJS Loader 方式 というのはJavaScript1.7の機能が使用されているスクリプト用 という意味ですか?あと日本語をエンコードせず日本語のままで使える機能付き? chrome\hogehoge.ucディレクトリと chrome\hogehoge.UCJSディレクトリの使い分けが今ひとつ理解できずにいます。
firefox用スクリプトアップローダーってファイルを削除してから もう一度別のファイルをあげなおしても、ファイルが変更されないなあ。
JSActionsのAPIについての解説って何かあるでしょうか。 JSA_modoki.jslをみた方がいいのでしょうか。
890 :
初スレの80 :2008/01/23(水) 18:22:21 ID:ymy8Z19h0
891 :
889 :2008/01/23(水) 21:30:34 ID:pHfIN3Yr0
>>890 ありがとうございます。
JSActionsは手軽に作成できそうで気になっていたので参考になります。
コンテンツエリア内の
http://から始まる文字列を選択して URLバーにドラッグ&ドロップしたらエンターキーを押さなくてもそのURLを開いてくれるけど
BHNewTab.uc.js 0.9を入れたらエンターキーを押さないと開かなくなった
と思います
Bookmarks and History open in New Tab ver. 0.7-mod3 から Bookmarks and History open in New Tab ver. 0.9 に変更したら カレントのタブが about:blank だった場合にはそのタブに開くという機能がなくなった と思います
894 :
名無しさん@お腹いっぱい。 :2008/01/24(木) 20:14:11 ID:Lip47bHL0
そういえばuserChrome経由でAutopagerize使うとおかしい Grasemonkeyでならおかしくならないのはなんで
そういえば896経由で文章書くとおかしい グレイスモンキーっておかしいのなんで
>>894 こんなイメージでつか
//GrepSidebar
case "※※※":
(function(){
var sidebarWindow = document.getElementById("sidebar").contentWindow;
// Verify that our sidebar is open at this moment:
if (sidebarWindow.location.href != "chrome://grepsidebar/content/grepsidebar.xul") {
toggleSidebar("viewGrepSidebar");
}else{
sidebarWindow.grepSearch.grepMain();
}
})();
break;
900 :
名無しさん@お腹いっぱい。 :2008/01/26(土) 11:31:46 ID:zbrqEk0V0
>>899 出来ました!!
ちゃんとGrepSidebarに送って検索が出来てます!
本当に有難うございます。感動しました。
Grepは本当に良く使うので物凄くうれしいです。
正直言って「自分で作れ」とか言われるだけだと思っていたのでホントにうれしいです。
ID:EqNyIxEr0さん 本当〜に有難うございます!^^
自分も似たの欲しかったのでもらった。サンクス。
903 :
sage :2008/01/28(月) 14:53:15 ID:9dvQUwK20
Firefox 2.0.11、Windowsです。 最初の空白タブは表示しないスクリプト、 どんなときでも同じタブ幅になるスクリプト、 タブのダブルクリックでタブを閉じるスクリプトを ご存じでしたら、教えてください。
905 :
初スレの80 :2008/01/28(月) 18:04:09 ID:YAyz3nEL0
超乙
>>905 非常に便利で重宝しているのですが、BHNewTab.uc.jsを入れると
URLバーに直接入力して移動することができなくなりませんか?
ここには, 自分で改良してやろうと言う輩は(ry
>>905 いただきました!
zenikoさんのProminentDomain.uc.jsが効かなくなった気がします!
それからそれからサブスクリプトローダーで@〜のないuc.jsファイルを
chrome直下だけじゃなくて任意の名前のフォルダも選べるようにしてください><
>>905 Linux環境で利用させてもらってるんですが
Firefox3で使おうとするとブックマークツールバーから
新しいタブに開けないようです。
ちなみにFirefox2で使うと新しいタブで開けます。
912 :
初スレの80 :2008/01/29(火) 22:52:28 ID:diVXAW570
>>910 242行を以下のように修正.
var url = entry.getAttribute('statustext'); if(!url) return;
↓
var url = entry.getAttribute('statustext') || ((entry.node) ? entry.node.uri : null); if(!url) return;
>>907 なるんですか?当方ではfx2.0.0.11/fx3.0b3pre共に確認できません.
取り合えず321〜324行(BrowserLoadURL = ... で始まるブロック)を,
消すなり何なりすればロケーションバーを弄らなくなりますので.
>>909 ProminentDomain.uc.js はロケーションバーのドメインが強調表示されれば良いんですよね?
だったら当方ではfx2.0.0.11/fx3.0b3pre共に問題なく動いております.
応急処置として上記の321〜324行の削除で何とか.
サブスクリプトローダーの件は,chrome直下/サブフォルダ下に限らず,
メタデータの無いucjsファイルをブラウザウィンドウのみに適用と言う事でどうでしょう?
913 :
910 :2008/01/30(水) 01:51:16 ID:Er6uZPwx0
>>912 ちゃんと新しいタブで開けるようになりました。
ありがとうございました。
914 :
名無しさん@お腹いっぱい。 :2008/01/30(水) 11:42:13 ID:XX1yy4cK0
903の者です。1は読みました。 どんなときでも同じタブ幅になるスクリプト、 タブのダブルクリックでタブを閉じるスクリプト は見つけられませんでした。教えてください。
>>914 これもデフォの機能
about:configで
browser.tabs.tabMinWidth を 250
再起動しる
>>916 Fx2だと最大値の方の指定が死んでるから
「どんなときでも同じタブ幅」にはならないんじゃない?
Fx3で復活したらしいけど
>>914 スクリプトを自力で探せないならTML入れた方が手っ取り早い
>>918 ああ、すまない。数値を見てなかったw
250ならデフォより広いから最大値関係ないね
>>914 の条件を満たしてるわ
現在表示しているタブの前に開いていたタブを取得するにはどうしたらよいでしょうか? gBrowser.mTabContainer.advanceSelectedTab(); だと、表示上の前後のタブを取得するんですよね?
>>905 ありがとうございます!
また、検索バーからの入力が空白タブを上書きしなかったので報告します。
922 :
名無しさん@お腹いっぱい。 :2008/01/30(水) 17:50:23 ID:XX1yy4cK0
>>915 デフォルトの中クリックではできませんでした。私の環境?
>>916 言葉足らずでごめんなさい。70pxくらいに小さくしたいのです。
引き続き、お願いします。
>>916 の数字を変えればいいだろjk
中クリックで出来ないとかあるのか?
>>920 >現在表示しているタブの前に開いていたタブ
って履歴のことか? 何をしたいのかさっぱり分からん
>>922 >私の環境?
っておもうななら, 環境さらさないとどうしょうもないと思うが...
>言葉足らずでごめんなさい
"どんなときでも"ってどんなときをいっているのやら?
>>922 //(Fx2用)about:configで 整数値:browser.tabs.tabMaxWidth, browser.tabs.tabMinWidth を設定
(function(){
//新規タブの幅
var func = gBrowser.addTab.toSource();
func = func.replace(
"t.maxWidth = 250;",
"t.maxWidth = Components.classes['@mozilla.org/preferences-service;1']."
+"getService(Components.interfaces.nsIPrefBranch2)."
+"getIntPref('browser.tabs.tabMaxWidth');"
);
eval("gBrowser.addTab = " + func);
//起動時のタブ幅復元
var maxWidth = Components.classes['@mozilla.org/preferences-service;1'].
getService(Components.interfaces.nsIPrefBranch2).
getIntPref('browser.tabs.tabMaxWidth');
setTimeout(function(){
for(var i= 0; i < gBrowser.mTabContainer.childNodes.length; i++){
var aTab = gBrowser.mTabContainer.childNodes[i];
aTab.maxWidth = maxWidth;
}
}
,0);
})();
>>922 //タブの左ダブルクリックでタブを閉じる
gBrowser.tabContainer.addEventListener("dblclick", function(event){
if (event.button != 0) return;
var aTarget = event.originalTarget;
while ( aTarget && aTarget instanceof XULElement && aTarget.localName !='tab') {
aTarget = aTarget.parentNode;
}
if ( !aTarget || aTarget.localName !='tab') return;
gBrowser.removeTab(aTarget);
}, false);
新規タブを開いた際にホームページを開くにはどのようにすればいいのでしょうか?
ホームアイコンをホイールクリック
質問スレで聞いたところ、無理との回答を頂きましたが スクリプトならもしや・・・と思い、質問させて頂きます。 googleやYahoo等のプルダウン履歴が6件しか表示されず、 これの数を増やしたり、プルダウン自体のサイズを変更するような スクリプトはないものでしょうか?
バインディングなので, スクリプトでは困難 拡張としてxbl作成してバインディングすれば行数変えるぐらいは簡単 もっと簡単なのは\chrome\toolkit\content\global\bindings\autocomplete.xml の<field name="defaultMaxRows" readonly="true">6</field>を変えればいい
933 :
932 :2008/01/31(木) 20:54:07 ID:PVc25SiF0
誤爆orz
934 :
名無しさん@お腹いっぱい。 :2008/01/31(木) 22:53:12 ID:13aCKNKY0
>>926 うまくいきませんでした。タブの数が増減しても70pxくらいの
ままにしたいのです。
>>927 ありがとうございます。
>>934 デフォのFx2で動くよ
about:configで 整数値:browser.tabs.tabMaxWidth, browser.tabs.tabMinWidth を設定してるかい?
936 :
名無しさん@お腹いっぱい。 :2008/01/31(木) 23:50:48 ID:13aCKNKY0
>>936 横からですが、私のとこでもMax/MinWidth 70で正常に動作しました。
userChrome.js 8.0 ローダーは80氏のもの(version 0.63)
Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.12pre) Gecko/20080127 BonEcho/2.0.0.12pre
>>935 MaxWidthはFirefox2じゃ効かないはずだが
3.0b3preでnavigator-toolboxがbrowser-toolboxに変更されたみたい 起動したら,うまくスクリプトが動いていなくてちょっと驚いた
>>907 同じような機能を持つもの(例えばalice氏のtabLock.uc.jsとか)と
ぶつかってないかい?俺はそうだった。
>>941 custom buttons 2もunknown useragentってエラーが出るし、Google Notifierもエラーが出る・・・
他にも影響ありそうだね。
>>942 横レスですがプロファイルを新しく作り直して行いましたが
新規タブで開かれないようです
無名関数で囲まれた中のオブジェクトを, 外部のスクリプトから変更できますか (function(){ var a = 1; alert("a=" + a); })(); と言うスクリプトを外部から, 何らかの方法で (function(){ var a = 2; alert("a=" + a); })(); と言う風に変更できない?
インストール済みの拡張機能とテーマをテキストファイルに出力してくれるような userChrome ってないでしょうか?
>>946 テキストファイルにするって, 一旦アーカイブしてishするみたいなこと?
948 :
名無しさん@お腹いっぱい。 :2008/02/01(金) 16:12:56 ID:yVO2Bojg0
>>937 数値で設定してありますが、ダメでした。ローダーは80氏のものを
使っています。
>>939 そういう情報があり、しかしTMPではできていたので、スクリプトで
解決できるのだと思っていました。
今はTMPを外したときの軽さが気に入っていて、これができれば
とてもうれしいです。
>>947 infolisterみたいな拡張とテーマをリストアップしたものをテキスト出力って意味じゃね?
UC.jsでやる必要はないと思う
>>948 TMPでできるのはそういう処理を実装してるからで
Fx2単体では未実装なのでabout:configでは実現できない
誰かが作ってくれるのを待つかTMLでも入れれ
>>931 レスありがとうございます。
お教え頂いた通りに行ったところ、行数変更ができました。
Firefoxの唯一の不満が改善できて非常に嬉しいです。
本当にありがとうございました!
マウスジェスチャーでホームボタンを押した際の挙動を行うにはどのようにしたらいいのでしょうか?
>>945 これでどうだろう?
eval(uneval((function(){var a = 1;alert("a=" + a);})).replace('var a = 1;','var a = 2;'))();
957 :
↑ :2008/02/01(金) 19:20:08 ID:AHao8rQ+0
952じゃなくて948
958 :
名無しさん@お腹いっぱい。 :2008/02/01(金) 20:41:50 ID:yVO2Bojg0
>>926 >>951 今試してみたらできました。前にやったときはできなかったんですがorz
ありがとうございます。
>>955 レスありがとう。
直接参照できれば, その方法で十分なんだが...
>>959 名前がないと難しいかも。
そもそもそれができたらクロージャってプライベートになってないような気がするんだけど。
XUL要素だとboxObjectで絶対位置を取得できるので, 例えば, 調べたいHTML要素に 目に見えないxul:tooltip要素を こっそりと tooltip.showPopup(HTMLtarget, -1, -1, 'tooltip', "bottomleft", "topleft"); などとしてポップアップさせて, その xul:tooltip要素のboxObject.x, boxObject.yを取得できる≪かもしれない≫
>>926 が可能かどうか分からないが
offsetTop(Left)と言うことだったので "bottomleft" じゃなく "topleft" かな
>>961 Firefox 3ならgetBoudingClientRectが使えないかな?
965 :
初スレの80 :2008/02/02(土) 10:41:31 ID:0xZKBqaA0
サーチバーはsasa+1さんのを併用してた
>>965 いただきます
>>967 ぐだぐだ文句言う前に, いごくようにして, ここにアップしろよ,
そうだ報告はいらない
>>967-969 と言うことで,
>>965 の// サーチバー入力時の機能置き換え.
のところの,
content.focus();
の前か後ろに
this.value = "";
this.setAttribute("empty","true");
this._textbox._displayCurrentEngine();
を挿入すればいいんじゃない?
formにカーソルを移動するコマンドはどのようなものになるのでしょうか?
※※.focus()
>>962-964 ありがとうございます。
下記のような関数を試してみましたが駄目でした。
というかツールチップが画面の左上端に表示されていたので、
取得できなくて当然なわけですが、知識不足でこれ以上はどうにもならずorz
どこを直せばいいのでしょうか?
function getAbsolutePos(node){
var p = {x: 0, y: 0};
const kXULNS = '
http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul ';
var tooltip = document.createElementNS(kXULNS, 'tooltip');
document.getElementById('content').appendChild(tooltip);
tooltip.showPopup(node, -1, -1, 'tooltip', 'topleft', 'topleft');
p.x = tooltip.boxObject.x;
p.y = tooltip.boxObject.y;
tooltip.hidePopup();
return p;
}
情報後出しですいません
Fx2なので
>>964 の方法は試せてません
でもこれって要素が見えてないとポップアップできないので座標取得できないのとちがう?
>>972 input form.element[0] forms[0]など試してみたのですがうまくできませんでした
何を指定すればいいのでしょうか?
function firstfieldFocus(){ var doc = window.content.document; if (!doc) return; for (var i=0; i <doc.forms.length; i++) { var elements = doc.forms[i].elements; for (var j=0; j <elements.length; j++) { if (elements[j].type == "text") { elements[j].focus(); elements[j].select(); return; } } } } これを当てればいいんじゃないかな。
<key id="key_focus" key="b" oncommand="(function(){doc=window.content.document;elems=doc.evaluate('//input[@type=\'text\']|//textarea',doc, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);if(elems.snapshotLength>0){elems.snapshotItem(0).focus()}})();" modifiers="accel,shift"/>
983 :
961 :2008/02/03(日) 11:10:26 ID:igFeaAfy0
>>983 ソースを読めば分かるはずだが, マウスイベントは, とりあえずHTML要素を得るだけのために使っているのであって, 座標の取得には使ってないが...
まあ地道にoffsetParentを遡るのが王道なんだろうな。
>>982 こんなに丁寧に何度も対応して頂きありがとうございます
無事フォーカスを移動することができました
>>981 >そもそもこのmainKeyset_overlay.xulは新たなコードの追加に対応しているのでしょうか?
対応しています。
ショートカットキーの割り当てが,既存のものとダブっているとダメなので, その場合は既存のkeyを削除しておく必要がある。
一方, 拡張機能のkeyconfigは, 自動的にダブリを削除するのでそんな気遣いはいらない。
欲しい機能が拡張機能にあるならそれを使用するのが手軽で良いと思います。
>>984 ですねorz
ちゃんと読まないでレスしてしまった…
ただ
>>975 試してみたんですがスクロール位置のみで
要素の座標は得られませんでした。
環境が悪いのかなという気も
WinME + userChrome.js 0.8 + 80氏のサブスクリプトローダ
>>986 説明ありがとうございます
既に割り当てられているショートカットのコマンドを消去することにより、
希望するキーにフォーカス移動を割り当てることができました
990 :
名無しさん@お腹いっぱい。 :2008/02/03(日) 14:30:09 ID:9Iql4llG0
AutoPagerizeに対応したGoogle Thumbnailsってないでしょうか? あるととても助かるのですが・・・。
>>990 ずいぶん前にアップローダーにあがってるよ。
探してみ。
>>899 これサイドバーが開いてないとエラーになりませんか?
新スレが必要だッ!!
( ^ω^)
>>992 ならこうしたらいいのではないでしょうか?
(function(){
var sidebarBox = document.getElementById("sidebar-box");
if ( sidebarBox.getAttribute('sidebarcommand') != "viewGrepSidebar") {
toggleSidebar("viewGrepSidebar");
} else {
var sidebarWindow = document.getElementById("sidebar").contentWindow;
sidebarWindow.grepSearch.grepMain();
}
})();
break;
>>995 すばらしい。どうもありがとうございます。
自分でもやってみたんですがなかなかうまくいかず、
助かりました。
(*^_^*)
1000げと
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。