[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
elscreen and window-prev-buffers
From: |
Geoffrey Ferrari |
Subject: |
elscreen and window-prev-buffers |
Date: |
Sun, 7 Oct 2012 03:44:38 -0700 (PDT) |
User-agent: |
G2/1.0 |
I'm seeing some strange interaction between elscreen (elscreen-20120413.1107
from marmalade repo) and window-prev-buffers.
First let me illustrate the normal, expected behaviour. Suppose I start emacs
with emacs -Q. At the start, the result of eval-ing (window-prev-buffers) is
nil. Then I open file1.txt using find-file and (window-prev-buffers) returns a
list whose sole element is the scratch buffer. Then I open file2.txt and it
returns a list of file1.txt and the scratch buffer. This is good behaviour
because when I kill the file2.txt buffer, I see file1.txt again, and then when
I kill file1.txt, I return to the scratch buffer. I return to files in the
order in which I opened them.
Now suppose I activate elscreen (which automatically creates screen #0) and
then create a new screen, which becomes screen #1. At this starting point,
(window-prev-buffers) returns a list whose sole element is the scratch buffer.
Then, when I open file1.txt, it returns a list of the scratch buffer and the
buffer showing file1.txt. Then when I open file2.txt, it returns a list of the
scratch buffer, then file1.txt's buffer, then file2.txt's buffer. Now, if I
kill file2.txt, the window automatically redisplays the scratch buffer, not
file1.txt. I think this is bad behaviour - my files are not redisplayed in the
order in which I opened them.
Clearly, the behaviour here is different. For some reason, with elscreen and a
new screen, the scratch buffer is always kept as the first element of
(window-prev-buffers), and opening a new buffer appends it to
(window-prev-buffers) *after* the scratch buffer.
Has anyone else noticed this behaviour? Is there anything that can be done to
improve it?
- elscreen and window-prev-buffers,
Geoffrey Ferrari <=