こんにちは、阿久津です。前回紹介した「コマンドプロンプトを起動するボタンをツールバーへ追加する」ですが、チューニング内容をご覧になるとわかるとおり、TasksNoItemsSelectedを使用しています。同キーは、フォルダーなどアイテムを選択していない状態で現れるツールボタンを作成するためものであり、アイテム選択時に使用するのはTasksItemsSelectedキー。

つまり、同キー下に同様のサブキーおよびCmd.exeを呼び出すエントリを加えることで、選択したフォルダーをカレントフォルダーとして開くことも可能でしょう。筆者も検証しておりませんが、機会があれば応用編としてご紹介したいと思います。同機能がすぐに必要な方は前回の記事を参考にチャレンジしてください。

さて、コンテキストメニューの<新規作成>から作成するテキストファイルを、ちょっとしたメモ作成に多用される方は少なくないでしょう。筆者も「新しいテキスト ドキュメント.txt」「新しいテキスト ドキュメント (2).txt」「新しいテキスト ドキュメント (3).txt」……と同名+連番のテキストファイルが増えてしまうことがあります。ここで気になるのが、生成されるテキストファイルの文字コード。

メモ帳から「名前を付けて保存」を呼び出しますと、初期状態の文字コードは「ANSI」となっています。実際にはShift JISであり、厳格にはMicrosoftが独自拡張を行ったMicrosoftコードページ932が使用されますが、そろそろUnicodeを使っても良い時期ではないでしょうか(図01~02)。

図01 デスクトップの何もないところを右クリックし、メニューから<新規作成>→<テキストドキュメント>とクリックします。これでテキストファイルが生成されました

図02 生成したテキストファイルをメモ帳で開き、<ファイル>メニューから<名前を付けて保存>を選択すると現れるダイアログでは、テキストファイルが「ANSI(Shift_JIS)」であることを確認できます

そもそもUnicodeとは世界中の文字をコンピューター上で使用するために定義された規格であり、Windows 7でも内部的にはUnicodeに対応しています。よく耳にするUTF-8は符号化方式(エンコーディング)の一種。例えばレジストリファイルなどはUnicodeを使用していますが、コマンドプロンプトなど一部のソフトウェアは、サロゲートペアと呼ばれる特殊なコードに未対応というのが現状です(図03)。

図03 こちらはレジストリエディターから生成したレジストリファイルに対し、図02と同じ操作を行ったもの。文字コードが「Unicode」になっています

ここ数年にリリースもしくはバージョンアップを行っているテキストエディターの多くは、Unicode対応が対応しているため、表現性が高まるUnicodeを使わない手はありません。そこで身近なテキストファイルをUnicodeで使うようにするため、<新規作成>から生成するテキストファイルの文字コードをUnicodeにするチューニングをお届けします。

1.メモ帳を起動し、文字コードをUnicodeに変更してから「%APPDATA%\Microsoft\Windows\Templates\NewText.txt」として保存します。
2.管理者権限で「regedit」を実行します。
3.レジストリエディターが起動したら、HKEY_CLASSES_ROOT \ .txt \ ShellNewキーを開きます。
4.文字列値「NullFile」を削除します。
5.文字列値「FileName」を作成し、値のデータを「NewText.txt」に変更します。
6.[F5]キーを押してから、レジストリエディターを終了します。

これでチューニングが終了しました(図04~17)。

図04 [Win]+[R]キーを押して「ファイル名を指定して実行」を起動し、テキストボックスに「notepad」と入力して<OK>ボタンをクリックします

図05 メモ帳が起動したら、<ファイル>メニューから<名前を付けて保存>をクリックします

図06 「ファイル名」を「"%APPDATA%\Microsoft\Windows\Templates\NewText.txt"」に変更し、文字コードを「Unicode」に変更してから<保存>ボタンをクリックします

図07 メモ帳の<×>ボタンをクリックして、アプリケーションを終了させます

図08 [Win]+[R]キーを押して「ファイル名を指定して実行」を起動し、テキストボックスに「%APPDATA%\Microsoft\Windows\Templates」と入力して<OK>ボタンをクリックします

図09 これでTemplatesフォルダーが開きました。図04~08の操作結果を確認してください

図10 [Win]+[R]キーを押して「ファイル名を指定して実行」を起動し、テキストボックスに「regedit」と入力して<OK>ボタンをクリックします

図11 レジストリエディターが起動したら、HKEY_CLASSES_ROOT \ .txt \ ShellNewキーを開きます

図12 文字列値「NullFile」を右クリックし、メニューから<削除>をクリックします

図13 確認をうながすメッセージが表示されたら、<はい>ボタンをクリックします

図14 右ペインの何もないところを右クリックし、メニューから<文字列値>をクリックします

図15 値名を「新しい値 #1」から「FileName」に変更します

図16 文字列値「FileName」をダブルクリックし、値のデータを「NewText.txt」に変更して<OK>ボタンをクリックします

図17 操作を終えたら、[F5]キーを押してから<×>ボタンをクリックしてレジストリエディターを終了させます

早速結果を確認してみましょう。デスクトップの何もないところを右クリックし、メニューから<新規作成>→<テキストドキュメント>と選択してください。通常と同じようにテキストファイルが生成されますが、「名前を付けて保存」から文字コードを確認するとANSIからUnicodeに変更されていることが確認できます(図18~20)。

図18 デスクトップの何もないところを右クリックし、メニューから<新規作成>→<テキストドキュメント>とクリックします

図19 「新しいテキスト ドキュメント.txt」をダブルクリックで開き、メモ帳から<ファイル>メニュー→<名前を付けて保存>とクリックします

図20 これで初期状態の文字コードがUnicodeに変更されていることが確認できました

新たに作成するテキストファイルの文字コードをUnicodeに変更したい方には便利なチューニングになるのではないでしょうか。なお、初期状態に戻す場合は%APPDATA% \ Microsoft \ Windows \ Templates \ NewText.txtと、HKEY_CLASSES_ROOT \ .txt \ ShellNewキーの文字列値「FileName」を削除してから、同キー内に文字列値「NullFile」を作成してください。

それでは、また次号でお会いしましょう。

阿久津良和(Cactus