これは一見簡単にコードの平易さは実際にポイントを移動しません。with-current-bufferはポイントを移動しません
(with-current-buffer "foo"
(goto-char (point-max)))
AFAIK with-current-buffer
は、ターゲットバッファ内のポイントを復元しないでください。 そうでなければ、バッファ内のポイントをどのように操作するのですか?
これは一見簡単にコードの平易さは実際にポイントを移動しません。with-current-bufferはポイントを移動しません
(with-current-buffer "foo"
(goto-char (point-max)))
AFAIK with-current-buffer
は、ターゲットバッファ内のポイントを復元しないでください。 そうでなければ、バッファ内のポイントをどのように操作するのですか?
あなたは、ウィンドウのポイントとバッファのポイントを混同していると思います。 "foo"を表示しているウィンドウでカーソルを移動する場合は、goto-char
を実行しているときにそのウィンドウを選択するか、set-window-point
を使用する必要があります。一般に、バッファにはN + 1個の点があります(1つは独自のもので、Nはバッファを表示するN個のウィンドウ用です)。
はやってみます
(set-buffer "foo")
(goto-char (point-max))
これはうまくいきません。 Btw、fooは新しく作成されたバッファです。 – navgeet
あなたはswitch-to-buffer
を使用して、スイッチバックが必要になる場合があります。
これが働いコードである - '(MAPC(ラムダ(ウィン) \t((式(選択ウィンドウ)が勝利しない限り) \t \t(と選択ウィンドウが \t \t(後藤-CHAR(ポイントを獲得します' – navgeet
' mapc()の代わりに 'dolist'を使うことをお勧めします。 '(少し速く、しばしばインデントが少し良くなる)。 – Stefan