ぁゃぴさんのブログを社内チャットでシェアしたらみんなギャル文字で会話しはじめてる
— nekogeruge (@nekogeruge_987) 2014, 3月 27
ギャルで自作PCアイドルでjsプログラマのぁゃぴさんのブログを社内のチャットでシェアしたらみんなギャル文字で会話しはじめた。
しかし、いかんせんおじさん達にはギャル文字を入力し続けるのは辛い。
ギャル文字変換ソリューションが求められてる
— nekogeruge (@nekogeruge_987) 2014, 3月 27
おじさん達にギャル文字変換ソリューションが求められてる旨をつぶやいたらぁゃぴさんが拾ってくれて、置換するスクリプトをシェアしてくれた。
javascript:K='あいうえおやゆよわつは。';k='ぁぃぅぇぉゃゅょゎっゎo';with(document.body){for(i in K){innerHTML=innerHTML.replace(RegExp(K[i],'g'),k[i])}}focus();
— ぁゃぴ (@upgrade_ayp) 2014, 3月 27
↓このスクリプト、どんな文章でもぁゃぴみたぃになるから、困った時ゎっかってね
— ぁゃぴ (@upgrade_ayp) 2014, 3月 27
なんとなくRubyで書き直し、せっかくなのでgemにして公開した。
報告したら喜んでもらえたようでよかった。
実はgemを作るのは初めてで、gemを公開するのは今年の目標の一つにしていた。
ネタは人のものだし、大したコードじゃないが、いざ公開してみると思い入れができるもので、いろいろやりたくなってくる。
とりあえずちゃんとしようと思って、最低限のテストは書いていてたのでTravisCI使うようにしておいた。
あとはもうちょっとテスト追加したり、置換表を外部のメソッドにしたり、置換表をもう少し増やしたりしようと思ってる。
ちなみに、本来ギャル文字はもっと色々バリエーションがあるもので、完全なギャル文字(?)に置換できるわけではない。
なのでぁゃぴさんも言ってるように、正確にはぁゃぴさんの文体に置換するメソッドなんだと思う。
で、はじめに書いた時はString#to_aypって名前にしてたんだけど、さすがに人の名前を勝手に使って公開するのはアレなのでString#to_galにした。