キーボードの入力確定をしたあとやファイル処理を間違った直後に元に戻したいときがある。そうしたときのためには「やり直し」という操作が必要である。これはキーボードショートカットとしては「Ctrl+Z」で簡単に実現する。入力確定直後であれば、変換まえの入力状態に戻すことができる。通常のファイル操作であれば、その処理が取り消される。また、この「やり直し」の操作自体が間違っていて、最初の通りでよかったという場合もあるだろう。こういうときには「やり直しのやり直し:Ctrl+Y」で「やり直し」以前の状態に戻すことができる。
 おもしろいのはこの「やり直し」は原則的にどこまでも遡ることができるということである。つまり、「Ctrl+Z」を連打していけば、入力以外の操作はただちに回復することができるわけである。たとえば、間違って文字列を削除してしまった場合などは便利であるし、かりにすこしまえの状態に戻したいときなどもその段階までこの操作をつづけることで確実に回復することができる。あわててほかの操作をするまえに、落ち着いてこの「やり直し」操作をするべきであろう。初心者はぜひこの操作を活用してほしい。
 そうはいっても戻ることができるのはファイルを起動した直後の部分までである。
 なお、文字入力した分は、秀丸では変換前の状態つまり再変換可能な状態に戻るが、LightWayTextやQXエディタではいきなり入力以前に戻ってしまい、再度入力からやり直す必要がある。そのぶん「やり直し」操作が早くできるが、入力しなければならないときもあるので、一長一短か。
(2012/6/4)

 ファイル操作のなかで標準的な機能として「削除系」コマンドがある。ごく普通の使い方としては、カーソル位置のつぎの文字を削除するには「Delete」キーを、前の文字を削除するには「Backspace」キーを押す。QXエディタの場合は、カーソル上の文字を削除するのが「Delete」キーであるという違いはあるが。またマウスで選択した部分をすべて削除するにもこのどちらかのキーを押す。また行単位で削除するには、前節でも触れたように、その行の欄外をクリックすると行全体が選択されるので、どちらかのキーを押す。なお、LightWayTextの場合は、この欄外クリックで論理行全体(パラグラフ)が選択されてしまうので、一行だけ選択するときには欄外をカーソルでドラッグする。秀丸とQXエディタでは論理行全体を選択するには欄外でダブルクリックする。さらには、カーソル位置でマウスのトリプルクリックをすればその位置にある論理行全体を選択できることもついでに書いておこう。なお秀丸には単独の一行を削除するために「Ctrl+Enter」という便利なキー割り当てがデフォルトで設定されているので覚えておきたい。
 さて、「削除系」コマンドでカーソル位置の前か後ろを全部削除したいというような場合が意外と多いことである。これにたいしてわたしは「カーソルより前を削除」に「F7」キーを、「カーソルより後ろを削除」に「F8」キーを割り当てている。ただしこのコマンドは秀丸にしか実装されていない。頻度のかなり高いコマンドなのでほかのエディタでも取り入れてほしい。
 あとは単語の削除などいくつかのコマンドもあるが、あまり重要とは思えないので、省略する。
(2012/1/21)

 ファイル操作のなかでも重要なキー操作として「クリップボード系」コマンドがある。「40 Windowsの基本的キーコマンドをまず身につけよう」で既述したように、そのもっとも代表的なWindows一般用コマンドは以下のものである。
 すべてを選択:Ctrl+A(All)
 コピー:Ctrl+C(Copy)
 貼り付け:Ctrl+V
 切り抜き:Ctrl+X
 これらはどのアプリケーションにも通用するもっとも重要かつ頻度の高いコマンドである。初心者はこのあたりは完全にマスターしておく必要がある。
 これ以外ではコマンドというほどではないが、マウス操作として覚えておいたほうがいいのは、次の二つである。
 行の選択:行の左欄外のクリック(単独行の場合)またはドラッグ(複数行の場合)。ただしLightWayTextではクリックで複数行の選択のみ。
 単語の選択:単語の上でダブルクリック
 このほかに秀丸エディタだけに設定されている機能として「追加コピー」「クリップボード履歴」というコマンドがあり、これらはきわめて便利で有効な機能なので、以下にこの説明をしておこう。
「追加コピー」というコマンドはなにか文字列をコピーしたあとでこれにつづくべき部分を別の箇所からこのコマンドを使って追加するとこれらの文字列が連続して合体した文字列としてクリープボードに取り込まれ、必要な場所にまとめてペースト(貼り付け)をおこなうことができるというコマンドである。完全に必要な文字列はないが、そのパーツとなるものが離れて存在しているような場合、あるいは長い引用文中に不要な箇所があってそれ以外の部分をコピーしたいときなどじつに役に立つ。デフォルトでは「追加コピー」にはShift+F8キーが与えられており、文字列を選択したあとの右クリックからも選択できるが、これでは面倒なので、わたしは「F5」キーを割り当てている。最初のコピーのあとにつづく部分を選択し「F5」キーを押せばいいだけだし、これを何度かくりかえすことでひとつの文字列に合成することができる。これはぜひ慣れてもらいたいスキルだと思う。
 これに比べると「追加切り抜き」というコマンドもあるが、これはあまり実用性がない。削除すべき不要部分を合成して一連の文字列を作ることはできるが、通常あまり現実性に乏しい。削除すべき部分をわざわざあちこちに残しておくことはあまりないからである。
 もうひとつ「クリップボード履歴」は使いようがある。わたしはふだんはToClipまたはQTClipというクリップボード・ユーティリティを頻用しているが、登録テキスト以外のものを貼り付けに使う場合、この「クリップボード履歴」から「取り出し」機能を使ってみるのも悪くない。そのため、このコマンドには「F9」キーを割り当てている。ここからすぐ呼び出しができるようにしているのである。

 ファイル操作のなかで知っておくと便利な小ワザがいろいろあるが、カーソル移動系のコマンドもそのひとつである。とくに大きなファイルや複数のファイルを同時に開いたり処理したりするときに、通常のカーソル移動やマウス操作では実現できない、知らないひとには驚くべき裏技がいろいろあるのである。しかもこれらのカーソル移動系のワザはあまりメニューバーに登録されていないことが多いので、知らないとまったく使えないが、使いこなせたらこれを使わないことが情けなくなるほど役に立つワザばかりなのである。わたしとしてもこれらを順次紹介していくのはとてもうれしいところで、これらはまさに「知っていると得をするパソコンTIPS」なのだ。
 とりあえず秀丸エディタの分類にしたがって「カーソル移動系」コマンドを確認すると、知っておくべきコマンドは「指定行」「行頭に移動」「行末に移動」「論理行頭に移動」「論理行末に移動」「ファイルの先頭」「ファイルの最後」「最後に編集した所」「前ページ」「次ページ」「現在行をマーク/マーク解除」「マーク一覧」である。
 このうち一般的なのが、「指定行(への移動)」で、このコマンドは比較的一般的に「Ctrl+G」のキー割り当てがなされている。これはQXエディタでもLightWayTextでもデフォルトで設定されているので、とくに変更する必要はない。ただし、このコマンドは行番号がわからないとあまり意味がないという面ももつ。特定の行番号を反復利用するようなときには有効だろう。
「最後に編集した所」コマンドは直前に編集行為のあったところへ戻るもので、秀丸ではデフォルトで「Ctrl+L」が割り当てられているので、これを流用する。QXエディタではデフォルトで「Shift+F5」が割り当てられているが、変更したい。LightWayTextにはこのコマンドは用意されていない。
 重要なのは、カーソルをファイルの先頭、論理行頭、行頭に一気に移動するコマンド、それと反対にファイルの最後、論理行末、行末に一気に移動するコマンドである。
 秀丸ではデフォルトでは「Ctrl+Q」でメニューを呼び出し、「ファイルの先頭」「ファイルの最後」「行頭に移動」「行末に移動」などを選択するようになっている。これでは面倒くさいし、すでに「Ctrl+Q」には「保存して終了」コマンドを割り当てているので、ここでは以下のようなコマンドを割り当てたい。QXではファイルの「先頭へ」「最後へ」にそれぞれ「Ctrl+Home」「Ctrl+End」がキー定義設定されているので、これでもよい。
 ファイルの先頭:Ctrl+Up(上の矢印キー)
 ファイルの最後:Ctrl+Down(下の矢印キー)
 論理行頭に移動:Ctrl+Left(左の矢印キー)
 論理行末に移動:Ctrl+Right(右の矢印キー)
 行頭に移動:Alt+Left(左の矢印キー)
 行末に移動:Alt+Right(右の矢印キー)
 ここで「論理行頭」「論理行末」というのは段落の最初と最後という意味であり、たんに「行頭」「行末」というのはカーソル位置行の最初と最後という意味である。カーソル位置から見た相対的視点であり、とくに「行末」コマンドなどは途中で修正したりしてカーソルが行の途中にあるときなど、このコマンドを働かせるとすぐ入力位置にカーソルを移動させることができるので、実用的である。なお、QXとLightWayTextには「論理行頭に移動」「論理行末に移動」のコマンドはない。ぜひ追加してほしい。
 なお、「前ページ」「次ページ」にはそれぞれ「PageUp」「PageDn」キーがあるので、それですませればいい。出先などでマウスがないときにはこのキーを押すだけで処理ができるのは具合がいい。ただし、機種によってはこれらのキーがない場合もありうるので、そのためには以下のコマンド割り当てをしておこう。
 前ページ:Alt+Up(上の矢印キー)
 次ページ:Alt+Down(下の矢印キー)

 ある大きなテキストファイルを継続的日常的に操作している場合、よくあるのは基点となるべき特定の行に必要に応じてジャンプできるようにしたいという事情が生じることである。本で言えば、現在読んでいるページやそれに対応する目次や注のページなどにしおりを挟んでおくようなものである。これをエディタ上では「マーク」と呼び、その該当する箇所(行全体)にこのマークを付けることによって、このマーク箇所を一覧から呼び出し、カーソルをそこへ一気に移動させることができるのである。
 長いファイルや構成的なファイルを構築(執筆・編集)しているときなど、たえずこのマーク機能を使ってページをすばやく移動させたり戻ったりすることができる。前項で挙げた「行頭に移動」「行末に移動」「論理行頭に移動」「論理行末に移動」「ファイルの先頭」「ファイルの最後」のように一般的なカーソル移動とは異なり、このマークはファイル作成者に固有のものであり、自由に選択し削除することができるものである。わたしなどは自分の年間の日録のように1メガバイト以上になるような巨大なテキストファイルや、いま書いているこの原稿のような全体の構成を同時に進めていく必要のあるようなテキストファイルにこのマーク機能を欠かせないものとして利用している。これを使わないと必要な箇所を見つけるために手間がかかってしまい、甚だ効率が悪いことになる。この機能を構成するコマンドは、カーソルのある行に「マーク」を設定または解除するコマンドと、マーク行の一覧を表示するコマンドである。これは非常に必要度の高いコマンドであるので、できるだけ簡単なキー割り当てをすべきである。
 秀丸ではこれらのコマンドにキー割り当てさえされていない。そこで以下のようにキー割り当てを設定する。
 マーク一覧:F11(デフォルトでは「行番号表示/非表示」)
 現在行をマーク/マーク解除:F12(デフォルトでは「アウトライン解析」)
 操作の方法は、マークの必要な行の左端にカーソルを動かしてF12キーを押すとその行がマークされる。それを繰り返して必要なマーク設定をすれば、それらの箇所はF11キーを押すと現われるマーク一覧に表示される。そこにはファイル名と行数(論理行数)も表示されている。
 今度は逆に、F11キーを押してマーク箇所の一覧を呼び出し、その一覧のなかから該当するマーク箇所をダブルクリックするか選択して「移動」ボタンを押す(優先的に「移動」が選ばれているのでマークを選択してEnterキーを押すだけでもよい)と、その箇所にジャンプする。このマーク一覧で特定の行を選び削除したり「全てクリア」(全削除)することもできる。(*)また、複数のファイルでマークを付けることもできるので、マークのあるファイルのどれかを開いている状態でこのマーク一覧を呼び出すと、別のファイル名とその行数も表示されるので、それをダブルクリックすると、そのファイルを開くと同時にそのマーク箇所にジャンプする(一種のタグジャンプ)ことができる。
 同じことはQXエディタでもLightWayTextでも言えることだが、まずQXエディタでは「カーソル行にマーク設定または解除」コマンドに「Ctrl+F2」が設定されており、「マーク行一覧」には設定がない。これを秀丸と同じようにF12とF11キーのキー定義設定をしなければならない。(**)同じように、LightWayTextでも「マーク設定」には「Ctrl+M」が設定され、「マークリスト」は設定されていないので、これも変更・設定する。LightWayTextではこのマークリストは「検索」メニューの「マークリスト」の下にマーク名とともに登録されるので、ここからのジャンプも可能となる。そのためにはマーク設定のさいにマーク名を登録する手間がかかる。なお、このマークリストはQXでは保存されるが、LightWayTextではアプリケーション終了とともに消えてしまうのが致命的な弱点だ。

(*)秀丸ではこのマーク一覧を記憶することができるので、パソコン再起動後にも再利用できるが、機種が変わってその間にファイルに変動があると、このマークがずれてしまうという問題がある。その場合、F11でマーク一覧を呼び出し、マーク箇所にジャンプさせてF12でマークを解除し、移動先にカーソルを動かして再度F12でマークし直す必要がある。マークがずれないようになるとありがたいので、改善をお願いしたい。
(**)「41 テキストエディタにおけるファイル操作の基本1」で既述したQXのキー定義設定の方法を参照してほしい。

 高機能テキストエディタでは文字データをさまざまな文字コードで表示することができ、必要におうじて切り替えることができる。いまや一般的なのは国際標準と言えるUNICODEのUTF8(Unicode Transformation Format-8)であり、日本語独自のShift-JISは日本語環境のなかでは通用するが、メールやテキスト交換などで広くやりとりするにはあまり適切ではない。環境がちがえば文字化けしてしまうのである。その点、UTF8はその心配がない。その意味でこれからはテキストファイルの作成自体をUTF8で実現していくことをお奨めしたい。
 しかしながら、事情によってはUTF8からShift-JISに変換したり、その逆をおこなったりする必要があるときがある。たとえば、わたしが愛用しているWinLPrtなどはUTF8のテキストデータをバイナリファイルと読み違えをしてしまうので、ファイルを印刷するときには、このデータの文字コードおよび改行コードをShift-JISおよびWindows用に変換しなければならない。こうしたときに必要な処理がエンコーディングであるが、これがちょっと面倒くさい。あまり使われることのないコマンドという位置づけのせいか、秀丸エディタでもキーコマンドの設定はないし、メニューバーの「ファイル」メニュー~「エンコードの種類」のプルダウンから文字コードの種類と改行コードの種類をいちいち選択しなければならない。これでは面倒なので、わたしは次のようにキーを設定している。
 UNICODE(UTF-8):Alt+U
 日本語(Shift-JIS):Alt+S
 改行=LF:Alt+X
 改行=CR+LF:Alt+W
すなわち、AltキーをベースにしてUNICODEにするには頭文字のUを、Shift-JISにするには頭文字のSをあて、改行コードをUNIX系のLF(LineFeed)にするには最後の文字のXを、Windows系のCR(CarriageReturn)+LFにはWindowsの頭文字のWをあてることにして覚えやすくした。なお、「上書き保存(改行=LF)」というコマンドもあるので、これに「Ctrl+Alt+S」というキー割り当てをしておけば、上書き保存するときにUNIX系の改行コードに変換しながら保存するので、改行コード変換の手間をひとつ減らすことができる。
 なお、このコマンド自体はQXエディタやLightWayTextにはない。QXでは「その他」メニュー~「共通設定」~「表示」で表示漢字コードをShift-JISやUNICODEなどから選択できるだけである。LightWayTextでは「書式」メニュー~「テキストファイル形式」で改行コード(Macintosh、Windows、Unix)と文字コード(Shift-JIS、JIS、EUC)を選択するだけで、あまり機能しない。ここは秀丸のキー割り当ての幅広さが優る。

 こうしたファイル操作のほかに、知っておくと便利なコマンドが「保存して終了」または「全保存終了」である。秀丸でファイルを開いているときにいちいち保存(Ctrl+S)してから終了ボタンを押すのでは面倒なので、こういうキー割り当てで保存と終了を簡略化することができる。これらのコマンドにはデフォルトではキー割り当てがなされていないので、なにも割り当てなければ「ファイル」メニューのプルダウンメニューから選択するしかない。
 まず秀丸の「保存して終了」コマンドには「Ctrl+Q」というキー割り当てをしたい。これはわたしの趣味だが、Macintoshではアプリケーションの終了には「Command+Q」(通称コマキュー)というショートカットキーが標準設定されていたのにちなんでみたのである。Macintoshに馴染みのないひとにはあまり感動はないかもしれないが、こういう異なるOSでのキーコマンドの設定は楽しい。すくなくともひとつの秀丸ファイルを保存して終了するさいにはぜひこれを習得してほしい。
 さらに秀丸で複数のファイルを操作しているときにはそれぞれ保存して終了するのは時間の無駄である。こういうときには「全保存終了」コマンドを使いたい。これには「Alt+F4」というキー割り当てをするのが便利である。このキーコマンドはWindowsではアプリケーションの終了に標準で割り付けられているコマンドだからである。ここでは秀丸の複数ファイルを「全保存終了」でいちどに保存しつつアプリケーション終了させるのである。ちなみにこの「Alt+F4」は連打していくと開いているアプリケーションをつぎつぎと終了させて、しまいにはWindowsの終了の直前までいくことができる。
 この「全保存終了」コマンドはQXエディタでも設定できるので、同じように「Alt+F4」というキー定義をしておこう。なお、QXには「保存して終了」コマンドは用意されていないので、「全保存終了」コマンドで代用すればよい。またLightWayTextにはこれらのコマンドはそもそも設定されていない。改善が待たれるところである。

 ファイル系のコマンドのなかであまり重視されていない(かもしれない)ものに「カーソル位置への読込み」コマンドがある。秀丸では「ファイル」メニューからのプルダウンメニューからの選択でこのコマンドを走らせることができるが、デフォルトではキー割り当てがなされていない。
 しかしこのコマンドが重要(重宝)なのは、短いファイルを連続的に連結していくような場合があるからである。こうした場合、ファイル連結・分割ユーティリティ(*)のようなツールを使うのもいいが(**)、ショートカットキーで効率よく確実な方法で実現できるのである。そのためにはこの「カーソル位置への読込み」コマンドにキー割り当てをしておくほうがいい。わたしはこのコマンドに「Ctrl+F3」というキー割り当てをしている。こうしておくと、あるファイルの後ろに別のファイルを連結したいときには、連結したい箇所にカーソルを動かしておいてこのキーを押せば、そこで開かれるダイアログから連結したいファイルを選択するだけで簡単に実現する。さらに続けて次のファイルを連結する場合にはこの作業を連続的におこなえばいいのである。もちろん、ファイルの途中に別のファイルを挿入する場合でも、カーソル位置を確定しておけば、必要なファイルの挿入が実現する。そのためにもこのキー割り当ては(とくに編集作業においては)必要である。なお、このコマンドはQXエディタにもLightWayTextにも存在しない。

(*)ファイル連結・分割ユーティリティにはたとえばXEJOIN95のようなものがある。
(**)このあたりのことは『出版のためのテキスト実践技法/総集篇』の「I-3-3 テキストファイルの連結または分割処理」に詳しく書いたので参照してほしい。

 テキストエディタ(以下、エディタと略す)のファイル系コマンドのなかで前項で挙げたコマンドについで重要なコマンドはいくつかある。それらは「名前を付けて保存」「カーソル位置への読込み」であり、「保存して終了」または「全保存終了」などもある。さらにデータをSHIFT-JISだけでなくUNICODEなどさまざまな文字コードにエンコードする必要があるひとには「上書き保存(改行=LF)」や「日本語(SHIFT-JIS)」や「UNICODE(UTF-8)」などのコマンドがあり、それぞれにキー割り当てができる。
 まず、「名前を付けて保存」であるが、これは通常すでにファイル名の付いているファイルを別の名前で保存しなおすときに使うコマンドである。このコマンドにはデフォルトで「Shift+Ctrl+S」が割り当てられているので、これは踏襲しておいていいだろう。主要なコマンドのサブコマンドにはよく「Shift」キーを追加するパターンがあるので、覚えやすいからであるし、この別名保存コマンドはそれほど頻度が高くないからわざわざ別のキー割り当てをするには及ばないというのがその理由である。とにかく、このコマンドを実行すると「名前を付けて保存」の画面が開かれる。新規ファイルを保存するときにはふつうに上書き保存コマンド(Ctrl+S)でこのファイル名の保存画面を呼び出すことができる。
「名前を付けて保存」画面では「ファイル名」に既存のファイル名が上書きできる状態で呼び出されているので、新しいファイル名を入力して保存ボタンをクリックする。そのさい「ファイルの種類」「エンコードの種類」「改行コード」をプルダウンメニューから選択することができる。
 LightWayTextではこのコマンドが初期設定されていないので、「編集」メニュー~「カスタマイズ」で「設定するメニューアイテムの選択」ボタンをクリックし、「ファイル」のプルダウンメニューからを選択する。「Shift」にチェックを入れ、四角い枠に「S」を入力し、OKボタンをクリックするだけでキーカスタマイズができる。なお、LightWayTextにはキー設定をファイルに保存することはできないので、このキー設定を他のパソコンに読み込ませてキー設定を再現させることはできない。そのつど設定し直さなければならない。
 またQXエディタでは「別のファイル名で文書を保存」コマンドが「F12」にキー定義されているので、これを変更するには、「その他」メニュー~「キー定義設定」画面で「F12:別のファイル名で文書を保存」コマンドをクリックし、「追加」ボタンをクリック~「キー定義変更(キー追加)」で「英数字」を選択~「CTRL」と「SHIFT」にチェックを入れ、四角い枠に「S」を入力し、OKボタンをクリック~「キー定義設定」画面で「保存終了」をクリックすれば設定完了である。

 以下では主として秀丸エディタをモデルに、すぐれたテキストエディタを使いこなすにあたってキーカスタマイズをどのようにおこなうのが便利かを実践にそくしてとりあげていきたい。ここでモデルとしてとりあげるテキストエディタ(以下、エディタと略)は秀丸のほかに、いまこの原稿を書いているLightWayText、さらにはQXエディタである。(*)これらはわたしが現に日常的に使っているエディタであり、これらに可能なかぎり共通のキーカスタマイズを実現することによって、それぞれのエディタの使い勝手の良さにくわえてこれらのコマンドを混乱なく操作できるようにするためである。
 ここではまず、それぞれのテキストエディタでファイル操作をおこなうにあたって主要なキー操作を考えてみよう。
 前項で述べたように、エディタのファイル操作系で最重要なコマンドは、Windows標準のつぎの四つである。まずこれを確認しておこう。
 新規作成:Ctrl+N(New)
 開く:Ctrl+O(Open)
 上書き保存:Ctrl+S(Save)
 印刷:Ctrl+P(Print)
 ただし、QXエディタのデフォルト設定では印刷が「Ctrl+Shift+F12」となっている。これはあまり感心しないので、訂正したい。
 まずQXエディタの「その他」メニュー~「キー定義設定」を選択する。ここで開かれるリスト画面で「Ctrl+P」は「コントロールコードの入力」というデフォルト設定になっているので、このキー定義を選択し、左側の「機能変更」ボタンをクリックし、開かれる画面で左側の「分類」から「ファイル」をクリックし、右側の「定義名・機能説明」の「FilePrint:文書を印刷」を選択し、「設定終了」ボタンをクリックすればキー変更ができる。このキー定義の変更をファイルに保存しようとすれば、「保存終了」ボタンをクリックする。このファイルはQXエディタ本体と同じフォルダに「QXWKEY.INI」として保存される。さらにこれをテキスト保存するためには「?」メニュー~「キー定義一覧」で「一覧作成」をクリックすれば、QXエディタ本体と同じフォルダに「QXWKEY.txt」として保存される。いずれにせよ、QXエディタのキー定義変更(キーカスマイズ)はこのようにして変更できるのである。QXエディタはやや特殊なキー設定をしているので、かなりの変更が必要かもしれない。ちなみにLightWayTextでは「編集」メニュー~「カスタマイズ」でキーカスタマイズをおこなうが、こちらはややシンプルでキーカスタマイズできるコマンドも少ない。

(*)LightWayTextとQXエディタについては「5 早めにテキストエディタをインストールしておこう」で作者名と入手先は紹介ずみである。