最近UserScriptを書くことに目覚めて、不便なWebサイトをちょっと改造して好みにするのにハマってる
例えば「辞書系のサイトなのにページを開いた瞬間から入力欄にカーソルがあってないのがいや」とか、そういう細かい点をこちらで勝手に改修するするような感じね
で、増田において「この人記事に対して毎回○○って反応つけてるけど面白いと思ってやってんのかな? 面白いと思ってやってんなら致命的に自分とセンスが合わないから消したいし、面白いと思ってないならただの害悪だから消したいな」と思うことがあるわけですが、そういった異なる価値観に対して自動的に適切な距離を置くためのスクリプトを作ったのでメモがてら貼り付けておきます
// ==UserScript== // @name ますだどくさいスイッチ // @namespace Violentmonkey Scripts // @match https://anond.hatelabo.jp/2* // @grant none // @version 1.0 // @author anond // @description description // ==/UserScript== (async () => { // ここにNGワードをどんどん追加する // 基本は文字列、文字列で引っ掛けにくいなら正規表現でもいい const keywords = [ "あえいうえおあお", ]; const checkedMarker = `data-a${Math.random().toString(36).slice(-8)}`; const query = `div[id^="excerpt-"]:not([${checkedMarker}]`; const delTree = () =>{ const elems = [...document.querySelectorAll(query)]; for(const elem of elems) { const textContent = elem.textContent; if(keywords.some((x) => (typeof x === "string") ? textContent.includes(x) : x.test(textContent))) { const parentContainer = elem.closest("li"); parentContainer?.remove(); } else { elem.setAttribute(checkedMarker, "true"); } } }; delTree(); const mo = new MutationObserver(delTree); mo.observe(document.body, { childList: true, subtree: true }); })();
keywordsを増やして君だけのどくさいスイッチを育ててね!
(追記)
あえいうえおあお この反応が消えてれば成功です