インデックスを使用してプログラムで領域(選択)をEmacs Lispに設定する方法は?


7

2つの絶対数を指定します(、と互換性がregion-beginningありますregion-end)。

これらの数値を使用して選択を設定するにはどうすればよいですか?


編集:悪モードを使用している場合は、この質問を確認することをお勧めします。質問の時点で、これが別の方法で必要になる場合があることに気づいていませんでした。

回答:


8

リージョンは、ポイントとマークの間のテキストのスパンとして定義されるため、問題の数値に両方を調整するだけで十分です。以下の用途point-minpoint-maxその目的:

(set-mark (point-min))
(goto-char (point-max))

ただし、後で「選択を設定する」と述べたので、おそらくリージョンを変更するだけではなく(常にリージョンがあるため)、それをアクティブにすることもできます。

(activate-mark)

1
(setq deactivate-mark nil)場合によっては、設定が必要になる場合があることに言及する価値があるかもしれません(選択の設定が失敗することがある理由を調べたときにわかるように
ideasman42

マークのアクティブ化は実際には機能しませんが、直後に非アクティブ化されるだけです。したがって、これは「<...>コマンドの後でマークが非アクティブになるのはなぜですか?」という新しい質問の資料です。種類。
wasamasa 2017
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.