テキスト置換スクリプト
きっかけは某所で「ネコという文字を見るだけでもイヤ」といった書き込みを見たことから。じゃぁネコという言葉をuser.jsで別の言葉に置き換えればいいんじゃないか、と思った次第だ。
とりあえずネコにもイロイロあるし、実際ネコなんて単語が出てくることも少ない。なのでまずは「。」を「にゃ。」と置き換えるスクリプトを作ろうと思う。当初の目的と反対のことをしている気がしますが気にしない。
まずはやっぱり他の人が作った実際に動くスクリプトを参照することに。なんせお約束とかも分からないから。
どうやら冒頭に
// ==UserScript== // @name script名 // @namespace scriptを公開している場所? // @description 要約 // @include 適用場所? // // ==/UserScript==
等と書くもよう。他にもauthorとか。とりあえず先人に習って書くようにしよう。
実際のスクリプトはその内容にもよるだろうけど通常のJavaScriptの書き方でよさそう。最近はjQueryばっかり使ってたから普通の書き方を少々忘れてしまった。今回は文字を置き換えるというシンプルなものなので
(function() { /* ここに本文 */ }();
て形でいいんだろうか。そう書いてあるスクリプトもあるから大丈夫だろう。
いざメイン部分へ。今回行う文字の置換といえば、一昔前に「文章をHG化するブックマークレット」的なものがあった気がする。やりたいことは同じだから参考になるはず。それを元に書いてみると
(function() { document.body.innerHTML=document.body.innerHTML.replace(/。/g,'にゃ。'); }();
となった。私の頭の中ではおかしいところはない…はず。
いざuser.jsを置いているフォルダへ突っ込んで試してみよう。
…ちゃんと動作するサイトとしないサイトがあるぞ。Blogは動作するところが多そうだ、はてなはダメだけど。どういうことだ?わからないから一旦終了。