Mastodon ⇒ Kasgadon
by
pacochi
2017-04-18 [2017/04/18 16:32:48]
(Forked from
セミ by
cho45)
マストドンがカスガドンになります。
@@ -1,40 +1,36 @@
/*
- * @title セミ
- * @description みんな、大好き。セミ
+ * @title Mastodon ⇒ Kasgadon
+ * @description マストドンがカスガドンになります。
+ * @include *
* @license MIT License
- * @require
+ * @javascript_url
*/
-function replaceText (root) {
- var walker = document.createTreeWalker(root, NodeFilter.SHOW_TEXT, {
- acceptNode : function (node) { return NodeFilter.FILTER_ACCEPT }
+{
+
+const replaceText = root => {
+
+ const walker = document.createTreeWalker(root, NodeFilter.SHOW_TEXT, {
+ acceptNode : node => NodeFilter.FILTER_ACCEPT
}, true);
while (walker.nextNode()) {
walker.currentNode.nodeValue = walker.currentNode.nodeValue.
- replace(/([セゼ]ミ|蝉)/gi, "リア充");
+ replace(/(トゥート|トゥート)[!!]?/g, 'トゥース!');
}
-}
-var observer = new MutationObserver(function (mutations) {
- mutations.forEach(function (mutation) {
- replaceText(mutation.target);
- });
+};
+
+const observer = new MutationObserver(mutations => {
+ mutations.forEach(mutation => replaceText(mutation.target));
});
+
observer.observe(document.body, {
- characterData: true
+ childList: true,
+// characterData: true,
+ subtree: true
});
-/*
- document.body.addEventListener("DOMNodeInserted", (function me (e) {
- var walker = document.createTreeWalker(e.target, NodeFilter.SHOW_TEXT, {
- acceptNode : function (node) { return NodeFilter.FILTER_ACCEPT }
- }, true);
-
- while (walker.nextNode()) with (walker.currentNode)
- nodeValue = nodeValue.replace(/([セゼ]ミ|蝉)/gi, "リア充");
-
- return me;
- })({ target: document.body }), false);
-*/
+replaceText(document.body);
+}
/*
* @title Mastodon ⇒ Kasgadon
* @description マストドンがカスガドンになります。
* @include *
* @license MIT License
* @javascript_url
*/
{
const replaceText = root => {
const walker = document.createTreeWalker(root, NodeFilter.SHOW_TEXT, {
acceptNode : node => NodeFilter.FILTER_ACCEPT
}, true);
while (walker.nextNode()) {
walker.currentNode.nodeValue = walker.currentNode.nodeValue.
replace(/(トゥート|トゥート)[!!]?/g, 'トゥース!');
}
};
const observer = new MutationObserver(mutations => {
mutations.forEach(mutation => replaceText(mutation.target));
});
observer.observe(document.body, {
childList: true,
// characterData: true,
subtree: true
});
replaceText(document.body);
}
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。