2008.04.28
userChrome.js スクリプトを更新
本サイトで公開している userChrome.js スクリプトの内、下記のスクリプトを更新しました。 Firefox 3.0b5 での動作確認もしています。
- Firefox で開いているページを Safari で開く userChrome.js スクリプト
- ブックマークメニューの「全てをタブで開く」を非表示にする userChrome.js スクリプト
- ダウンロードファイルのコメントに元の URL を挿入する userChrome.js スクリプト
- 関連記事
Posted at 21:42 | userChrome.js
- この記事へのトラックバックURL
- http://wildlifesanctuary.blog38.fc2.com/tb.php/167-6aa46580
- この記事へのトラックバック
| HOME |
さっそくアップデート・スクリプトをダウンロードさせていただきました。
それと、絶対に手放せない機能になっているlookupindictionary.uc.jsですが、Minefieldでも問題なく動作しています。ご報告までm(_ _)m
ところで、エントリ違いで申し訳ないですが…
以前から「プロファイル毎の Firefox を記憶して起動する AppleScript」も使わせていただいていますが、Leopard上のFirefox (Minefieldを含め)をスクリプト経由で起動するとビーチボールが表示され、以降、どの操作でも遅延が発生します。
原因は当方の環境によるものかも知れませんが…
因にPower Mac G5, 6GB RAM, OS 10.5.2 環境です。
Tiger では問題は起こらないのですが、なにかお分かりになりませんでしょうか。
報告ありがとうございます。
AppleScriptで起動での遅延、こちらでも確認しました。理由はわからないのですが、どうも nohup で起動すると駄目な様です。
set cmdStr to "nohup " & path2fx
となっている部分を
set cmdStr to path2fx
とするとどうなるか試してもらえますでしょうか?
> となっている部分を
> set cmdStr to path2fx
上記で解消しました!
Firefox 2.0.0.14, Firefox 3.0Beta5, Minefield全て正常に起動できています。
自分なりにスクリプト内を調べてはいましたが、"nohup "はエラーを回避するために置かれているのかなと思っていたので、削除するという考えに至りませんでした。
それで、ちょっと気がついた点を加えさせてください。
スクリプト経由で起動すると、プロセスに「sh」が2つ居残ります。Firefoxを終了すると「sh」も居なくなるので、関連していると思いますが、何のプロセスなのかが分かりませんでした。それと起動しているのはFirefox-binとなっています。
実は、macawさんのスクリプトが動かなくなったので、稚拙ながら起動スクリプトを作ってみました。
単純にdo shell script~のスクリプトではFirefox起動後に AppleScript Runnerが居座ってしまい、同時起動できなかったので対処したところ、プロセス上はFirefox-binではなくFirefox.appとなり、それ以外のプロセスも残らなくなりました。
どうしてこういった結果になったのか、よく分かっていませんが(なにせ初心者なもので(^^;
Error: contextmenu is null
Source File: file:///Users/(私)/Library/Application%20Support/Firefox/Profiles/(Minefiledのプロファイル)/chrome/lookupindictionary.uc.js
Line: 27
contextmenu.insertBefore(menuitem, document.getElementById("context-searchselect").nextSibling);
Error: Cc is not defined
Source File: file:///Users/(私)/Library/Application%20Support/Firefox/Profiles/(Minefiledのプロファイル)/extensions/%7B1280606b-2510-4fe0-97ef-9b5a22eafe64%7D/components/userChrome_js.js -> file:///Source File: file:///Users/(私)/Library/Application%20Support/Firefox/Profiles/(Minefiledのプロファイル)/chrome/userChrome.js
Line: 14
↑も表示されるのですが、関係しているのでしょうか?
因にFirefox 2.0.0.14では上記エラー表示されません。
nohup はエラー回避というより保険の為に使ってたんですがそれが仇となった様です。違いはTerminalで
$ ./firefox-bin > /dev/null 2>&1 &
$ nohup ./firefox-bin > /dev/null 2>&1 &
こんな感じで起動した後に夫々Terminalを閉じるとわかるかと。do shell script ~ で呼び出す場合は、呼出し元のshellが終了しても子プロセスは終了しないようで、この辺りは気にしなくてもいいみたいですね。
プロセスに sh が残るのは、Firefox.app/Contents/MacOS/firefox がshell scriptで、
firefox (shell script) → run-mozilla.sh (shell script) → firefox-bin(バイナリ)
こんな流れで起動する為です。Finder でダブルクリックした場合は直ぐに firefox-bin が実行されるようなので、do shell scriptの場合もfirefox-binに引数を渡して起動した方がいいのかも。
lookupindictionary.uc.js ですが、こちらではFx3b5、昨日のlates trunkで確認してみたんですが、どちらもエラーはでませんでした。スクリプトローダに依るのかもしれません。私はこちらの alice 氏のローダを使ってるんですが、これだとどうでしょう?
http://space.geocities.jp/alice0775/userChromejs.html
http://space.geocities.jp/alice0775/STORE/userChrome.js
本家のものを使っていたので、それが原因だったようです(^^;
お騒がせして申し訳ありませんでした。
> $ ./firefox-bin > /dev/null 2>&1 &
> $ nohup ./firefox-bin > /dev/null 2>&1 &
なるほど。そういうことだったのですね。勉強になります。
> do shell scriptの場合もfirefox-binに引数を渡して起動した方がいいのかも。
スクリプトを稚スクリプトでAppleScript Runnerを残さないために使ったfile_pathを加えてみました。
set cmdStr to path2fx & "Contents/MacOS/firefox-bin -P '" & profile & "' > file_path 2>&1 &"
としてみたところ、「sh」は残らず、起動中のプロセスもFirefox.appになりました。
これで良いのでしょうか?
お、いけましたか、良かったです。userChrome.jsはローダの違いによって問題が出る場合もあるのが難しいですね。
> 「sh」は残らず、起動中のプロセスもFirefox.appになりました。
これはどちらも問題が出ないのであれば、好みでいいのかなと(^^;