学園祭カレンダー絞り込み

s:絞り込み(h:強調付き) (とどラン)a:相関が弱いものを消す

2022/11/21時点のページです。最新版はこちら。

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください。

■ 機能

1.対応サイトでコンテンツの項目を自由なキーワードで絞り込む入力ボックス(Sキーで同機能のプロンプトが起動)を設置します

・ナレッジステーション(○年○月○日の大学学園祭一覧(○○校))
・都道府県別統計とランキングで見る県民性 [とどラン](○○の相関記事)
・フリマガイド(fmfm.jp)
・ニコニコ動画(動画ランキング、ユーザー(投稿動画、マイリスト)、マイページ(ニコレポ、あとで見る、マイリスト)、動画検索、シリーズ)※要リロード
・ニコニ・コモンズ(コンテンツツリー)
・YouTube((チャンネル/ユーザー)×(動画一覧、再生リスト、検索結果)、トップページ、検索結果)、動画視聴ページのコメント(sキーは無効)
・オモコロ
・ワークマンオンラインストア、ユニクロオンラインストア
・ヤフオク(検索結果、評価一覧)
・5ch(スレッド内レス、スレッド一覧(~/subback.html、2ch Thread List))、re.Find2ch、したらば
・ニコニコチャート、ニコニコ解析
・2ちゃんねるまとめサイトのまとめ、オワタあんてな元祖、オワタあんてな私用
・駿河屋(お気に入りリスト詳細)
・GIGAZINE、ライフハッカー[日本版]、GIZMODO
・eBay(検索結果)
・AliExpress(ja)
・userbenchmark
・PubMed、Google Scholar
・Amazon(商品検索、レビュー)、ヨドバシドットコム(検索)、iHerb(検索)
・音泉、響、Yahoo!ショッピング、the360.life、価格.com詳細スペック検索、Pixiv(/users/)、Greasyfork、togetter
・ツイコミ(仮)、英語版wikipediaのtable、free.、Write.as、ふたチャン、価格.com(PCとノートPCの一覧)

 キーワードには正規表現が使えるほか、OR検索は|で、AND検索はスペースで区切ることで(厳密に文字としてスペースを使いたい時は\sを使ってください)、NOT検索は行頭1文字目を!にすることでそこからスペースが出るまでがNOT指定となります(!は行頭1文字目の1回きりしか使えません)。|やスペースや!は半角でも構いません
 「ABCやDEFを含まず、GHIかJKLを含み、かつMNOとPQRも含む」ものを絞り込むなら「!ABC|DEF GHI|JKL MNO PQR」といった感じです
 半角英文字の大文字小文字は区別しません
 sキーのプロンプトでは初期値として前回入力したものが入り、これと履歴はページのグループ(概ねドメイン)別にGM_setValue領域に保存されます
 履歴はプロンプトには直近250件(const historyLen = 250; 部分で変更可能)までしか表示されませんが保存自体は500件までされているので掘り返したい時や編集したい時はGM_setValue領域の管理画面を見てください
 初めて使うサイトで対象項目のヒット範囲を知りたい時は「絞り込み(s)」ボタンを左クリックすると枠が表示されます
 例や履歴はFirefoxでは選択・コピーできるので再利用の役に立ちますがChrome系ではTextify等を使わないと見ることしかできないと思います

2.学園祭一覧とワークマンオンラインに所在地をGoogleマップで検索するリンクを追加します

3.[とどラン]では各項目と記事ページの冒頭に「全相関記事を見る」リンクを追加します
 また相関記事一覧画面ではAキーを押して数値を入力するとその数だけ正・負の相関が強いものから残して残りを隠します

■ 実験的な機能

5.5chなどいくつかのサイトでは絞り込み時にsキーの代わりにhキーを押して(または「絞り込み(s)」ボタンを右クリックして)絞り込むとヒット部分を黄色く目立たせますがあまり丁寧な方法ではないので本当に必要な時以外は使わないでください

またsキーのプロンプト内で使える特殊なキーワードが2つあります

・S … 単独のS(前後に他の文字がつかない半角大文字のS)は「ヤフオクで非表示とメモ」スクリプトで付けたメモ全てにマッチします
 「S」でメモを付けた項目に絞り込んだり「!S」でメモを付けていない項目に絞り込んだり
 「S ABC」「!S ABC」「S|ABC|DEF GHI|JKL」「!S|ABC|DEF GHI」など他の指定と組み合わせることもできます

・deleteall … 現在いるページのグループの履歴をすべて削除します
 ドメインとページのグループは必ずしも同じではなく
 厳密に管理したい時はGM_setValue領域の管理画面を使ってください

■ 既知の問題

 シングルページアプリケーションのサイトにはしっかり対応していないので必要に応じてリロードしてください

■ サイト情報の書き方

対応サイトはスクリプト冒頭の

const SITEINFO = [{
id: '', // 入力履歴を保存するキー名 省略時はサイトのドメイン(省略可)
url: '', //対応URLにmatchする正規表現
filterPlace: '', //絞り込みフォームを設置する場所 XPathかjQueryセレクタ(省略可)
filterItem: '', //絞り込みフォームで絞り込む要素 XPathかjQueryセレクタ(省略可)
filterSampleWord: '', //絞り込みフォームの検索ワード例(省略可)
mapPlace: '', //地図検索を設置したい住所の書いてある要素 XPathかjQueryセレクタ(省略可)
important: false, //!importantを付けないと非表示にできないサイトでtrueを指定(省略可)
filterFunc: null, //絞り込み実行時に行わせたい追加処理(省略可)
observeURL: 0, //1以上ならURLが変化したら再処理を数値の回数繰り返す(省略可)
delay: 0, //ページ開始時から処理開始までの遅延ミリ秒 (省略可)
delayAutoWeighting: 0, // 0以外ならページ開始時から処理開始までの遅延の係数(省略可)
dniWait: 0, // 要素が継ぎ足されてから絞り込むまでのウエイトの追加量(省略可)
}];

の部分で増やせます
増やしたらスクリプト冒頭のメタデータブロックにそのサイトに対応する@match文も追加してください

■ おまけ

オモコロとニコニコチャートとライフハッカーとGIGAZINEのuAutoPagerize用MY_SITEINFO

{
url : '^https?://omocoro\\.jp',
nextLink : '//div[@class="page-navi"]/span/following-sibling::a|//div[@class="page-navi-links"]/span/following-sibling::a',
pageElement : '//div[@class="boxs"]',
},{
url : '^https?://www\\.nicochart\\.jp',
nextLink : '//ul[3]/li[@class="next"]/a',
pageElement : '//ul[@class="video-list"]',
},{
url : '^https?://www\\.lifehacker\\.jp',
nextLink : '//div[@class="lh-primary"]/ul/a[last()]',
pageElement : '//div[@class="lh-wrapper"]',
},{
url : '^https?://gigazine\\.net/search/results',
nextLink : '//div[@class="pagecount"]/a[text()=">"]',
pageElement : '//div[@class="pagecount"]/..',
}


不具合や要望があれば:(Bitmessage)BM-NBKhGgzahPds3f5Ms6ZRJyvZoMNgTYy4