7

Elisp では、この一見簡単なコードの平和は、実際には要点を動かしません。

(with-current-buffer "foo"
  (goto-char (point-max)))

AFAIKwith-current-bufferは、ターゲット バッファ内のポイントを復元しないでください。そうでない場合、バッファ内のポイントを操作するにはどうすればよいですか?

4

3 に答える 3

7

バッファのポイントとウィンドウのポイントを混同していると思います。「foo」を表示しているウィンドウにカーソルを移動したい場合は、 を実行中にそのウィンドウを選択するかgoto-char、または を使用する必要がありますset-window-point。一般に、バッファには N+1 個のポイントがあります (1 つは独自のポイントで、N はバッファを表示する N 個のウィンドウ用です)。

于 2013-02-06T04:10:23.777 に答える
1

使用してからswitch-to-buffer元に戻す必要がある場合があります。

于 2013-02-06T04:05:26.680 に答える
0

やってみてください:

(set-buffer "foo")
(goto-char (point-max))
于 2013-02-06T03:30:33.843 に答える