ポイントとマークの間のテキストは、リージョンと呼ばれます。ポイントとマークで区切られたテキストに対してさまざまな関数が動作しますが、ここではリージョン自体に特に関連する関数についてのみ説明します。
次の2つの関数は、マークがどこにも指していない場合にエラーを通知します。一時マークモードが有効で、mark-even-if-inactive が nil
である場合、マークが非アクティブなときにもエラーを通知します。
この関数は、領域の開始位置(整数)を返します。これは、ポイントとマークのうち、小さい方の位置となります。
この関数は、領域の終端位置(整数)を返します。これは、ポイントとマークのうち、大きい方の位置となります。
region-beginning や region-end を使用する代わりに、領域を操作するためのコマンドでは通常、interactive に ‘r’
または ‘R’
のコード文字を組み合わせて、領域の開始位置と終了位置を特定します。これにより、他の Lisp
プログラムが引数として境界を明示的に指定できるようになります。interactive
のコード文字を参照してください。
この関数は、一時マークモードが有効で、マークがアクティブであり、かつバッファ内に有効なリージョンが存在する場合に t
を返します。この関数は、マークがアクティブな際に、ポイント付近のテキストではなくリージョンを操作するコマンドで使用することを想定しています。
領域は、サイズが0でないか、あるいはユーザーオプション use-empty-active-region が nil
以外(デフォルトは nil)である場合に有効となります。関数 region-active-p は use-region-p
と同様ですが、すべての領域を有効とみなします。ほとんどの場合、region-active-p
は使用すべきではありません。領域が空である場合は、ポイントを操作する方が適切なことが多いためです。