バッファ (read-only-mode) の読み取り専用状態を切り替えます。
現在のバッファ名を変更する。
現在のバッファの末尾に ‘<number>’ を追加して名前を変更する。
バッファ buffer をスクロールします。表示モード を参照してください。
バッファは読み取り専用となることがあり、これはテキストの挿入や削除を行うコマンドが許可されないことを意味します。(ただし、C-x RET fなどの他のコマンドでは引き続き変更済みとしてマークできます。ファイルテキストのコーディングシステムの指定を参照してください)。モードラインでは、左マージン付近に‘%%’または‘%*’と表示されることで読み取り専用バッファであることが示されます。モードラインを参照してください。読み取り専用バッファは通常、テキストを操作するための専用コマンドを備えたDiredやRmailなどのサブシステムによって作成されます。アクセス制御で書き込みが許可されていないファイルにアクセスした場合も、バッファは読み取り専用になります。
コマンド C-x C-q (read-only-mode)
は、読み取り専用バッファを書き込み可能に、書き込み可能なバッファを読み取り専用にします。これは、各バッファにローカル値を持ち、その値が nil 以外であればバッファを読み取り専用にする変数 buffer-read-only を設定することで動作します。オプション view-read-only を nil
以外の値に変更すると、C-x C-q
でバッファを読み取り専用にした際に、バッファ内でビューモードも有効になります(ビューモード を参照)。
C-x x r (rename-buffer
は現在のバッファ名を変更します。新しい名前はミニバッファの引数として指定します。デフォルト値はありません。他のバッファで使用されている名前を指定した場合はエラーが発生し、名前の変更は行われません。
C-x x u (rename-uniquely)
は、現在のバッファを、区別可能かつ一意となるように数値サフィックスを付けた類似の名前に変更します。このコマンドに引数は不要です。複数のシェルバッファを作成する際に便利です。例えば
*shell* バッファの名前を変更してから再度 M-x
shell を実行すると、*shell*
という名前の新しいシェルバッファが作成されます。一方で、元のシェルバッファは新しい名前のまま存続します。この手法は、メールバッファやコンパイルバッファ、および特定の名前で特殊なバッファを作成するほとんどの
Emacs 機能にも有効です。(M-x compile や M-x
grep
などの一部の機能では、再度このコマンドを使用する前に別のバッファに切り替える必要があります。そうしないと、名前を変更したにもかかわらず現在のバッファが再利用されてしまいます。)
コマンド M-x append-to-buffer および C-x x
i (insert-buffer)
を使用して、あるバッファから別のバッファへテキストをコピーすることもできます。テキストの蓄積を参照してください。