5

私は新しい Emacs ユーザーで、ウィンドウを垂直に分割し、各ペインでバッファーを循環させる方法を学んでいます。

ただし、1 つのペインで新しいファイルを開いた後、next-buffer は他のペインでこのファイルを循環せず、新しいペインに一度表示された後にのみ循環します。これは次のように再現できます。

新しい emacs セッションで 2 つのファイル A と B を開きます。

「split-window-right」を使用してウィンドウを垂直に分割します。

「next-buffer」は、PaneLeft と PaneRight で A と B を循環します。

PaneLeft でファイル C を開きます。

「next-buffer」は、PaneLeft の A、B、C を循環します。

C が PaneLeft にフォーカスされていることを確認してから、PaneRight に切り替えます。「next-buffer」は、PaneRight の A と B のみを循環します。C が PaneLeft に既に表示されているため、おそらく C をスキップします。

PaneLeft に戻り、A または B が PaneLeft にフォーカスされていることを確認します。

PaneRight に戻ると、PaneLeft に何が表示されているかに関係なく、'next-buffer' が A、B、および C を循環します。

これは意図した動作ですか?意図したとおりに機能させるにはどうすればよいですか?

注: 私はカスタム拡張機能なしで実行しており、私の .emacs はほとんど空です。

4

1 に答える 1

2

switch-to-visible-bufferこの動作を制御する変数があります。GNU Emacs 24.2 のドキュメントから:

switch-to-visible-buffer is a variable defined in `window.el'.
Its value is t

Documentation:
If non-nil, allow switching to an already visible buffer.
If this variable is non-nil, `switch-to-prev-buffer' and
`switch-to-next-buffer' may switch to an already visible buffer
provided the buffer was shown in the argument window before.  If
this variable is nil, `switch-to-prev-buffer' and
`switch-to-next-buffer' always try to avoid switching to a buffer
that is already visible in another window on the same frame.

You can customize this variable.

This variable was introduced, or its default value was changed, in
version 24.1 of Emacs.

これが機能するはずのように機能しない場合は、おそらくバグがあります。

于 2013-02-07T20:56:43.803 に答える