Firefox userChrome.js greasemonkeyスクリプトスレ40

■ このスレッドは過去ログ倉庫に格納されています
2019/09/01(日) 10:22:26.11ID:0PU7t/DA0
※各所でスレ番号分断、乗っ取りの元凶になっている【強制コテハン】は導入禁止です。 勝手に立ててPart1からやり直して下さい。

■前スレ
Firefox userChrome.js greasemonkeyスクリプトスレ39
https://egg.5ch.net/test/read.cgi/software/1549382075/
2019/09/13(金) 22:29:31.32ID:K7G61Ksi0
69にしてから
000-reuseBlankTabIfCcurrentTab.uc.js
が動作していません。解決方法がわかる方,教えてください。
2019/09/13(金) 22:46:53.52ID:i28TBkVQ0
"chrome://browser/content/browser.xul"を"chrome://browser/content/browser.xhtml"に書き換えたか?
2019/09/14(土) 00:54:51.10ID:D+WA4Yf20
クソニートalice0775
さっさと修正しろ
2019/09/14(土) 01:04:34.06ID:Un7bN13g0
>>199
吠える暇があるなら自分でどうにかしろ雑魚www
2019/09/14(土) 10:54:57.45ID:YqGuus1L0
>>198
直りました!
ありがとうございました。
2019/09/15(日) 17:58:38.40ID:TWjuPvQx0
alice0775あくしろよ何サボってんだ
2019/09/16(月) 21:39:48.22ID:7qjMkfxL0
69でタブを閉じた時のフォーカスを常に最右のタブにするにはどうすればいいですか?
今だとひとつ前にいたタブにフォーカスが移ってしまいます
2019/09/16(月) 21:58:10.36ID:u603tRm90
https://addons.mozilla.org/ja/firefox/addon/select-after-closing-current/
このアドオン使うといいよ
カスタマイズ性が高くて、更新もちゃんとされている
2019/09/16(月) 22:18:31.90ID:7qjMkfxL0
>>204
う〜ん、変わりません
2019/09/16(月) 22:32:08.08ID:u603tRm90
スクリプトスレに来てるのに、これ分からないってアカンでしょ
Generalのところを[Last] [Tab]にするだけ
上から順番に優先順位だから、他はRemoveで削ってもいいよ
2019/09/16(月) 22:39:07.51ID:7qjMkfxL0
>>206
あ〜できました、ありがとうございます。
2019/09/18(水) 15:52:18.42ID:8mkLjYQJ0
応用力なさすぎてワロタw
2019/09/18(水) 18:41:50.89ID:L+ksT1X30
ワロワナイデ
2019/09/20(金) 09:08:12.34ID:1k++dfCy0
Amazon.co.jpの商品ページでウィンドウを小さくすると
変な枠が表示されるのですがどうすればよいでしょうか?
2019/09/20(金) 11:25:05.09ID:1k++dfCy0
すいません。ここで聞く内容ではなかったです。
2019/09/20(金) 20:04:35.34ID:VB1nKi3l0
autoselectTabとTabfocusではautoselectTabの方がすっきりしていて好きなんですけど69になってから使えず、Tabfocusの方はe.target.closest('.tabbrowser-tab')に書き換えて使えました
でも同じ事するなら短い方が良いし中国語入ってるのも好きじゃ無いのでautoselectTabの方を使いたく色々調べ、このスレでも61辺りとかで似た内容は書かれていましたがそれでは出来ず
if ((self.target = e.target).localName === 'tab') {

if ((self.target = !!e.target.closest('.tabbrowser-tab')) {
にしたり!!消したり最後の)消したりeventにしたりtargetの後ろに)置いたり、書き方をよく知らないので思い付いたのを試してみたのですがどれもダメ
もちろんxulはxhtmlにしました
どう書き換えるのが正しいのかアドバイス頂け無いでしょうか
どうかよろしくお願いします
2019/09/22(日) 05:16:43.09ID:hdLIE0Cc0
指定したタブより右側のタブ全てに対してスクロールトップしたいんですが色々試しても出来ません…
そもそもgoDoCommand("cmd_scrollTop");これしか見つからないのでタブ指定でスクロールさせる方法が分かりません
どなたかヒントもらえませんか?
2019/09/22(日) 10:30:11.32ID:ExgrFQiE0
>>212
tabfocus見て照らし合わせた考えてたらこんなのが導かれた
if (!!(self.target = e.target.closest('.tabbrowser-tab'))) {
2019/09/22(日) 12:25:57.82ID:QF2ErwLh0
>>213
普通のjavascriptのwindow.scroll(top)でできるんだからそれを各タブに注入すればいい
WEで簡単にできるよ
2019/09/22(日) 13:03:59.69ID:hdLIE0Cc0
>>215
すみません注入がよく分からないのですが、現在のタブから右のタブへ切り替えてwindow.scroll(top)実行、また右へ切り替えて〜というイメージでしょうか?
理想は現在のタブというより右クリしたタブより右側のタブ全てに実行したくて
タブの右クリコンテキストに「右側のタブを全てscrollTop」のようなメニューを追加しようと考えているのですが
2019/09/22(日) 13:22:51.14ID:QF2ErwLh0
違う
WEならexecuteScriptを使って右側のタブにだけスクリプトを注入する

uc.jsだったら同じwindowのタブすべてを対象にするwindow.messageManagerで
現在のタブの情報をchromeからcontentに送って該当のタブでの動作を止めればいいのかな
2019/09/22(日) 13:31:21.30ID:hdLIE0Cc0
>>217
WEってアドオン形式のことでいいでしょうか?そっちのほうが手軽なんですかね
ここより右を全部閉じるは以下のようにすごい簡単に書かれていたので応用してuc.jsですぐ書けるかと思って調べ始めたんです
var tabs = gBrowser.mTabContainer.childNodes;
for (var i = tabs.length - 1; tabs[i] != gBrowser.selectedTab; i--)
{
gBrowser.removeTab(tabs[i]);
}

ともかく、WEとexecuteScriptを調べてみますありがとうございます
2019/09/22(日) 13:32:58.38ID:QF2ErwLh0
一応サンプルとして作ったWE上げておく
Scroll_top_all_tabs_on_the_right.xpi
https://u6.getuploader.com/script/download/1865
署名済み。ピンタブは対象外にした
2019/09/22(日) 13:37:16.15ID:hdLIE0Cc0
>>219
おぉ!!動作完璧です
ソースコード参考にしますありがとうございました
221212
垢版 |
2019/09/22(日) 16:42:19.51ID:1yesmvoD0
>>214
ありがとうございます、動作確認出来ました
はー、!!が前だったり後ろに))だったりするんですね
自分だけではそうなる事は無かったので本当に助かりました
どうもありがとうございました
2019/09/22(日) 16:47:15.32ID:b6tyk1Nk0
varを駆逐した今日この頃
2019/09/22(日) 17:09:32.73ID:z0uveCNi0
>>221
ロダにアップよろしく
2019/09/23(月) 18:20:28.72ID:Oki9aeQv0
>>219
ここで聞いていいか分からないんですが、頂いたものを改造していて詰まってしまいました
background.jsにbrowser.contextMenus.createを複数書くとparentIdなど指定していなくてもコンテキストメニューがまとめられてしまいます
右クリックして表示される一番上の階層に2つ以上表示させたいのですがどうすればいいのでしょうか?
2019/09/23(月) 19:19:20.57ID:DNK9AygF0
webextensionsでは最上位に複数メニューは無理な仕様
拡張を分けるしかない
2019/09/23(月) 19:24:56.58ID:Oki9aeQv0
>>225
なるほど、分けることにします ありがとうございます
2019/09/24(火) 23:47:51.05ID:NTpqabeE0
>>217ではああ言ったがuc.jsでももうちょっとマシなやり方あるだろと
今日試してみたらできたので一応コード書いておく
個人的にWEでできることはWEで実装した方がいいと思うが

gBrowser.ScrollAllTabsOnTheRightToTop = function(aTab){
let tabs = this.visibleTabs.slice(aTab._tPos +1);
for (const tab of tabs) {
tab.linkedBrowser.messageManager.loadFrameScript("data:, content.scroll(0, 0)", true);
}
}

コンテキストメニューなら
let menu = document.createXULElement("menuitem");
menu.setAttribute("oncommand", "gBrowser.ScrollAllTabsOnTheRightToTop(TabContextMenu.contextTab)");

マウスジェスチャーとかキーボードショートカットなら
gBrowser.ScrollAllTabsOnTheRightToTop(gBrowser.selectedTab);

とかで実行する感じ
2019/09/25(水) 01:34:29.91ID:8KiS0cMK0
>>227
すごいですね
どこをどう調べたらその書き方が出てくるのかのほうが、後学のため聞きたいです
2019/09/25(水) 03:43:38.08ID:83S3albE0
pixivfilter.user.js
https://u6.getuploader.com/script/download/1869

前スレ946
GM.xmlHttpRequestをGM_xmlhttpRequestに変えたのでたぶんViolentmonkeyでも動きます
2019/09/25(水) 23:38:40.49ID:6SfZvETe0
>>228
https://developer.mozilla.org/ja/docs/Mozilla/Firefox/Multiprocess_Firefox/Message_Manager/Message_manager_overview
を見ていたので現在のタブのメッセージマネージャーが「gBrowser.selectedBrowser.messageManager」だと覚えていて
現在のタブのURL取得方法の一つが「gBrowser.selectedBrowser.currentURI.spec」だと思い出して
https://dxr.mozilla.org/mozilla-central/search?q=currentURIを見たら
「let uri = aTab.linkedBrowser.currentURI.spec;」というのがあったから
これを組み合わせた「aTab.linkedBrowser.messageManager」で試して
「this.visibleTabs.reverse()」だと上手く行かなかったので違うやり方で配列を取得した
2019/09/26(木) 02:36:30.70ID:QCwotUf80
>>230
うおお、リサーチ方法もすごいです
一生懸命英語でググったりしたけどやっぱ公式ドキュメントを探すのが良さそうですね
ご丁寧にありがとうございます
2019/09/26(木) 06:29:13.68ID:lh39BOsj0
69.01だけど以下が動かないことに気づいた
最初のタブに移動  gBrowser.selectedTab = gBrowser.tabContainer.firstChild;
最後のタブに移動  gBrowser.selectedTab = gBrowser.tabContainer.childNodes[gBrowser.tabContainer.childNodes.length-1];
教えてください
2019/09/26(木) 13:04:51.33ID:Qxzqzsu60
>>232
gBrowser.selectedTab = gBrowser.tabs[0];
gBrowser.selectedTab = gBrowser.tabs[gBrowser.tabs.length - 1];
2019/09/26(木) 13:29:13.13ID:MRoN9wsa0
gBrowser.selectTabAtIndex(0, false);
gBrowser.selectTabAtIndex(-1, false);
2019/09/26(木) 15:11:39.84ID:lh39BOsj0
>>233
>>234
お二方お忙しい所、教えて下さり
ありがとうございました。
2019/09/28(土) 09:24:11.85ID:MHfrQUUf0
autoSelectTab.uc.jsの修正版
誰かアップしてよ!
237212
垢版 |
2019/09/28(土) 14:13:17.08ID:+h+JStKB0
>>236
214さんに教えて頂いた通り書き換えるだけです。
238212
垢版 |
2019/09/28(土) 15:48:00.26ID:VYXloZRs0
今日は帰宅できないので明日アップします。
2019/09/28(土) 16:50:06.36ID:uhku4xpV0
>>237
ソースは下記で良いの?
https://u6.getuploader.com/script/download/1223
ここにxulなんてないんだけど・・・
2019/09/28(土) 23:33:46.38ID:9vMCgRJz0
pixivfilter 機能しなくなった?
2019/09/29(日) 15:19:18.57ID:xAk8DToV0
>>239
それでもいいよ
7行目お決まりのmTabContainer → tabContainerもやればいいよ
2019/09/29(日) 15:47:03.59ID:pX28Txv/0
>>241
それと、>>214に対応したけど動作しません。
ロダにアップ方よろしく。
243242
垢版 |
2019/09/29(日) 18:35:27.22ID:pX28Txv/0
autoSelectTab.uc.js修正版
アップしておいた。
2019/09/30(月) 08:45:11.27ID:Sg/lE0JB0
>>242
動作するよ
245名無しさん@お腹いっぱい。
垢版 |
2019/09/30(月) 14:38:00.77ID:zy6ovyLj0
YouTube Link Titleがいつの間にか削除されてた。
246名無しさん@お腹いっぱい。
垢版 |
2019/09/30(月) 20:08:43.91ID:Ur/G3rOQ0
無事、帰宅できたのか?

それが気にかかって、しかたがない…
2019/09/30(月) 20:23:39.91ID:IG1z2YUV0
何処の難民やねん
248名無しさん@お腹いっぱい。
垢版 |
2019/10/01(火) 08:16:05.93ID:rgpMIxuy0
ts
2019/10/05(土) 21:19:33.02ID:FH4jJVfX0
YouTubeログインができないね、IEならOK
2019/10/05(土) 21:41:01.58ID:FH4jJVfX0
直ったわ
2019/10/06(日) 23:59:01.62ID:7nBG0m9X0
ページ内検索ウインドウを出すボタンを追加するなんて事出来ますか?
今はctrl+Fで毎回出してるんですがちょっと面倒で
2019/10/07(月) 00:13:35.75ID:3hmxfZRr0
追加しないでも元からあるだろ
トグルはしないが
2019/10/07(月) 09:29:09.88ID:VogN8KEJ0
素朴な疑問だけど、ボタンをクリックしたあと、結局キーボードを使って検索語を入力するのでは・・・?
2019/10/07(月) 10:27:06.86ID:wMSG1fkE0
単語を範囲選択してからの検索ならアドオンやスクリプトがあるしな
マウスだけのスクリーンキーボードで入力という特殊な状況じゃない限り必要じゃないな
2019/10/07(月) 11:06:25.98ID:vQgKl+D10
>>251
以下を検索
"ページ内検索バーのトグルボタン"

toggleFindbar by DoubleClick.uc.js
ページ領域をダブルクリックでページ内検索バーの開閉をトグル(設定で閉じる機能だけにすることも可能)

toggle-findbar.uc.js
Ctrl+Fで検索バーの表示切り替え
2019/10/07(月) 14:40:15.30ID:Fqq5ShRu0
>>251は頭おかしい
2019/10/07(月) 21:32:29.72ID:rbNctrcB0
>>253
仕事上十数個の窓を同時に開く必要があるのだけど基本的にマウスで全てやってしまうのでキーボードは使わない
ctrlを使ったマクロも作ってるけどちょっと面倒

>>255
ありがとうございます
2019/10/07(月) 22:00:04.88ID:bQx1SiNl0
マウスジェスチャソフト入れてCtrl+F割り当てでもすれば?
前提として全部マウスでやることがそもそも面倒そうだから見直した方が良いと思うけど
2019/10/07(月) 22:00:46.65ID:O6oUJ7/n0
左手何してんの?
2019/10/07(月) 22:17:34.74ID:f6Qpe+B20
わかったら左手がお留守なのをなんとかして〜♪
2019/10/07(月) 22:52:04.90ID:VogN8KEJ0
>>257 (>>253の素朴な疑問の意図が伝わっていないようです)
ページ内検索ウインドウを出すボタンをマウスでクリックして、そのあと、どうすんの?
マウス操作だけで別のウィンドウでコピーしたものを「右クリック」→「貼り付け」でもしてるのかな・・・?
2019/10/07(月) 22:56:32.88ID:21e1FE7i0
自分の使い方と違う時点で何言われても
納得しないんだからしつこく絡むなよw
2019/10/07(月) 23:26:23.37ID:S9R2BZ4x0
ページ内検索ならMouseGestures2_e10s.uc.jsに「ページ内検索バー」というトグルできるのがあるよ
2019/10/07(月) 23:42:27.85ID:S9R2BZ4x0
ああごめnボタンが欲しいのか
おーぷん2ちゃんねるのFirefox拡張機能スレ(レス番710)にページ内検索トグルボタンがあるから
それに対して>>12をやればボタンを追加できる
265名無しさん@お腹いっぱい。
垢版 |
2019/10/07(月) 23:58:40.47ID:bQx1SiNl0
いやそれだったら>>252で全部解決してるだろ
アドオンバー表示してないとかいうオチじゃないだろな?
2019/10/08(火) 00:07:20.33ID:1rLNgx0A0
ページ内検索を開いた後、検索語打ち込むのなら
Ctrl-Fをその前に打つのは大した問題でない

範囲指定した文字列をページ内検索したいのなら
Cntl-Fを打つより、コンテキストメニューのアイテムにページ内検索を利用したほうが
ポインティングカーソルの移動が必要なページ内検索アイテムアイコンをクリックするより簡便かも

だが、次の検索箇所に移動するアイコンがページ内検索アイテムアイコンの近くにあるのなら
そちらのほうの選択も利便性がある
当然、ページ内検索ダイアログには、選択文字列が自動コピーされるアドオンが望ましい
2019/10/08(火) 01:27:33.50ID:TJGuOaAA0
チルト機能のあるマウス使うと便利よ
←でコピー、→でペーストにするの
左右にチルトスクロールさせることなどほぼないからね
2019/10/08(火) 01:58:12.92ID:q6GkFm4B0
そういや検索バーで文字事に色分けされてページ内検索できるアドオンが昔あったね
2019/10/08(火) 04:47:20.11ID:zdf/stKH0
>>268
今は亡きGrieverさんのWordHighlightToolbar.uc.jsを最新版で使えるようにしたらいいんじゃないかな
かなり便利だけど更新止まってるから有志がやるしかないが
2019/10/09(水) 00:39:02.33ID:5XWj8zgE0
残すところあと1 bindings (0.33% of original bindings)
フギャー
https://twitter.com/mozxbl/status/1181578363992981504
https://twitter.com/5chan_nel (5ch newer account)
2019/10/10(木) 02:44:44.83ID:CnTRK2Ns0
キタ━━━━━━(゚∀゚)━━━━━━ !!!!!

https://twitter.com/mozxbl/status/1181970010807427077
* 0 bindings (0.00% of original bindings)
* 0 lines of code (0.00% of original LOCs)
https://twitter.com/5chan_nel (5ch newer account)
2019/10/10(木) 12:08:55.26ID:9d7eMzlE0
>But... there is only xul?
ホントにね
2019/10/10(木) 17:49:05.86ID:0slxw7Lx0
>>240
うpしたファイルは改行を一個削除しちゃってたのでファイル上げなおしました
https://u6.getuploader.com/script/download/1878
自分用のは問題なかったんで気づいてなかった
2019/10/10(木) 20:33:58.54ID:BKjkOwLE0
ブラウザなら、拡張機能を入れる(iPhone以外)。
Chrome
https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo?hl=ja
Firefox
https://addons.mozilla.org/ja/firefox/addon/tampermonkey/

ブラウザのツールバーに増えた Tampermonkey のアイコンをクリックする。
Tampermonkeyの画面が開く。
「インストール済み」の左の「+」マークを押す。
新規スクリプトの画面が出る。
好きなスクリプトをコピペする。
「ファイル」「保存」で保存し、「ファイル」「閉じる」で終了。
スレッドを更新すると特定のIDが消える。
2019/10/11(金) 14:45:15.49ID:QuoVKYYx0
タブをダブルクリックで新規タブ
doubleclicknewtab.uc.js
(function(){gBrowser.tabContainer.addEventListener("dblclick", function(e){if(e.target.localName=="tab")BrowserOpenTab()},false)})()

どこで拾ったかもわからずググっても情報が出ず
69で動作しなくなってしまいました
どなたか解決方法わかりますでしょうか?(環境は69にすでに適応させています)
2019/10/11(金) 14:51:57.37ID:68ocTrdL0
>>275
>>53
これで動くかは知らん
2019/10/11(金) 15:10:25.97ID:QuoVKYYx0
無事動きました
2019/10/11(金) 18:35:05.39ID:J/TN1DLC0
Edge で開く
window.openDialog('microsoft-edge:' + gContextMenu.linkURL);
が使えなくなっていた
2019/10/14(月) 01:10:58.97ID:Hb3zsZ4o0
>>275
それ入れてないのにダブルクリックで新規タブ開くのなんでだろう?
どこかの機能に組み込まれてるのかな
2019/10/14(月) 05:53:54.97ID:o32/FPxo0
>>279
about:config覗いてみれば?
281名無しさん@お腹いっぱい。
垢版 |
2019/10/14(月) 06:40:06.18ID:o32/FPxo0
>>279
ごめん、about:configにあったのはダブルクリックでタブを閉じるだった
2019/10/14(月) 07:35:58.48ID:tzbtfoJg0
>>279
タイトルバー表示してる時はタブバーダブルクリックで新規タブ
2019/10/15(火) 01:54:21.62ID:I8IZWzGD0
>>282
タイトルバー表示にチェック入ってないけどダブルクリックで新規タブなるぞ
doubleclicknewtab.uc.js無しで
2019/10/15(火) 13:44:28.32ID:qoDn3+mK0
alice0775さんのMouseGestures2_e10s.uc.jsで
ホイールジェスチャに「前/次のタブ」を割り当てているのですが
右クリ+ホイールでタブを切り替えている最中に、マウスが少しでも上下左右に動いてしまうと
方向ジェスチャに割り当てている動作が誤爆してしまいます

ほかのマウスジェスチャアドオンやジェスチャソフトでは
ホイールジェスチャ中は方向ジェスチャが発動しない処理になっているのですが
このスクリプトでそういう動作にするには、どこを書き換えたらいいのでしょうか?
どう書き変えたらいいでしょうか?
2019/10/15(火) 13:46:37.32ID:qoDn3+mK0
何度も書き直していたら最後が二重になってしまいましたごめんなさい
2019/10/15(火) 14:10:34.87ID:kF8Nfw+g0
case "mousemove":
if (this._isMouseDownR) {
this._progressGesture(event);
}
をこうしたらそうなるかな(多少スクロール働くかもだが
case "mousemove":
if (this._isMouseDownR && !(this._suppressContext)) {
this._progressGesture(event);
}
2019/10/15(火) 17:02:57.23ID:vUJVYWOy0
>>286
こちらの環境ではスクロールすることもなく、
ホイールジェスチャ中の誤ジェスチャが完璧になくなりました
ありがとうございます!
2019/10/16(水) 01:49:21.62ID:vSTCoUza0
ふっふっふっ 楽しくなってきましたぁ
https://bugzilla.mozilla.org/show_bug.cgi?id=1588816
2019/10/16(水) 02:01:00.30ID:VRQ2HGXJ0
ほげえ
2019/10/16(水) 02:34:52.39ID:626XMpHa0
>>288
> 1588816 - Remove the userChrome.css case for eval restirctions
> When the XBL binding stuff is removed from desktop, it will kill the userChrome.css js hack, and we can remove this case from the eval restrictions.

ギャー!
2019/10/16(水) 02:39:10.70ID:ByLpV0+E0
まあそりゃそうだろうな
現状、どう見ても裏口だし
2019/10/16(水) 02:41:46.55ID:qNcGUHTO0
つーか、弄くり回してクラッシュだなんだと騒ぐやつが多いからじゃね?
なんかWin10のWindows Updateが強制自動実行になったのと似てるような
2019/10/16(水) 07:46:40.08ID:JrrYDfSQ0
その手のはみんなChromeでいい、Chromeに行った層なんじゃないかなぁ
最早弄れるから残ってる人しかいないと思うんだが
新規でわざわざ弄らない目的でFirefox選ぶ奴がどれくらいいるのかと
残ってるのも難民にしてどうするの
2019/10/16(水) 08:34:56.01ID:weJL4Zrd0
悪しきXBLのせいで可能になっていたuserChrome.cssのjsハックができなくなるので、
userChrome.cssの課題リストからこの問題を削除することができます!

っていう、いい知らせじゃないの?
2019/10/16(水) 08:54:12.55ID:BShBZxKS0
臭い物に蓋をする
2019/10/16(水) 10:24:26.13ID:6vFGH52y0
つまるところメソッド3が死んだってこと?
■ このスレッドは過去ログ倉庫に格納されています
大学生アイラと影の怪物と戦うリョウが、深夜3時3分の静止した世界で交錯する超常スリラーの概要

ニューススポーツなんでも実況