職業プログラマの休日出勤

職業プログラマによる日曜自宅プログラミングや思考実験の成果たち。リアル休日出勤が発生すると更新が滞りがちになる。記事の内容は個人の意見であり、所属している(いた)組織の意見ではない。

CotEditorで円マーク「¥」を検索

(タイトルの¥の文字は全角です。半角打つと何か怖いんで。文中も同様。)

Mac には CotEditor という良いエディタがありまして、MacでWeb系のコード(JavaScript, HTML, PHP, etc...)などを書く際にはいつもお世話になっています。

2つの文字 on Mac

さっきちょっとハマったのが、半角の円マーク「¥」(0xA5)と、半角のバックスラッシュ「\」(0x5C)との違いです。Macでは基本的に、JISキーボードの「¥」キーを押すと、本当の円マーク(0xA5)が入力されます。多くのプログラミング言語でエスケープ文字として利用される半角バックスラッシュ(0x5C)を入力するには、Optionキーを押しながら「¥」キーを押します。
Windowsで開発してた人がMacに移ったときに、ほぼ必ずハマるポイントです。
このことを知っている人であっても、普段Windowsを触っていると、久し振りにMacを触ったときにハマります。恥ずかしながら、本日の筆者もこのパターンです。

CotEditor 本文入力時の親切機能

CotEditorは「編集」メニューの中に「バックスラッシュを入力」と「半角円マークを入力」という2つのメニュー項目があります。
f:id:t_motooka:20140719143205p:plain
前述の背景さえ把握できていれば、「あれっ、バックスラッシュのときはOptionキーいらないんだっけ?」という混乱した状態であっても救われます。キーを実際に打って、間違えていれば消す、という手段の方が速い気もしますが。あと、背景を知らない人であっても「編集」メニューを広げれば色々気付くことができて救われます。

検索ダイアログの操作

では、検索ダイアログだと、どうでしょうか。
JISキーボードの「¥」キーを押しても、バックスラッシュしか入力することができません。クリップボードにバックスラッシュを持たせておいてペーストしても同じです。
少なくとも筆者は正規表現検索をすることの方が圧倒的に多いので、平常時は非常に便利です。

しかし、今日の筆者は違いました。
冒頭で掲げた問題に全力で引っ掛かり、ソースコード中には誤って入力された円マークが20個近くありました。そう、円マークからバックスラッシュへの一括置換を実行したかったのです。
どうすれば、検索ダイアログで円マークを入力すれば良いのでしょうか?

答えは「詳細設定」にありました。
f:id:t_motooka:20140719144218p:plain

詳細設定ボタンを押すと、次のようなドロワーが表示されます。
f:id:t_motooka:20140719144303p:plain

エスケープ文字を適当に変えれば、あとはお好きなように。

あと、別解として、正規表現\x{A5} を使うというのもあります。半角の円マークとマッチします。

環境情報

CotEditor 1.5.4