Hi,
I'd like to push the three changes to SLIME's master branch. These effectively mark the end of XEmacs compatibility and are mostly about deleting code.
They live in my fork, git@github.com:capitaomorte/slime.git, in the the `slime-el-cleanup' branch:
commit b9dfcba7d59c56e7b6b8d38413bd8f8801b13da3
Remove XEmacs portability layer and fix some FIXMEs
44 0 ChangeLog 108 632 slime.el
commit 92be40bcd47d640849f1df807d971cbe76b733c5
Redesign and simplify some window-managing code in slime.el
32 1 ChangeLog 80 212 slime.el
commit 8951befc40df6f693f0606789c616f312442992a
Improve window selection for popup buffers
Use Emacs 24.3's window-managing API to do less surprising choices when popping up temporary SLIME buffers. This is innocuous on previous Emacs versions.
12 0 ChangeLog 20 5 slime.el
The first is mostly a big cleanup of slime.el's XEmacs "portability layer", fixes some FIXME's and uses "declare" specs for indentation. It removes more than 500 lines in slime.el
The second simplifies the slime-popup-* logic, targets more FIXME's and adapts some parts to more common idioms.
The third commit adds 15 lines that, in my opinion, greatly improve window selection for popup buffers, but only on Emacs >= 24.3. They fix a common debugger annoyance: When I have my frame divided into 3+ windows, selecting restarts that immediatly trigger another debugger makes the SLDB buffer cycle between visible windows. This commit fixes that and subsequent SLDB buffers go to the same window if possible.
The cleanup is relatively aggressive and, though neither I nor the automated tests have noticed it, it's likely that I broke something that I don't use regularly.
Please test and review my changes. Except for the third commit, no functional changes should be observed. If you're acquainted with slime.el, point to the offending code whenever possible. Otherwise describe your use cases that were broken so I can fix it.
Thanks, João
joaotavora@gmail.com (João Távora) writes:
Hi,
I'd like to push the three changes to SLIME's master branch. These effectively mark the end of XEmacs compatibility and are mostly about deleting code.
They live in my fork, git@github.com:capitaomorte/slime.git, in the the `slime-el-cleanup' branch:
After comments from Helmut on Github, I have scratched the last commit and added two new ones. To tests, please reset your local branches. The two new commits are:
commit 17373f5acc453086a917bb4f4c6c8a7965b36e99 Date: Sun Mar 9 11:43:43 2014 +0000
Corrections after refactoring window-managing code
27 1 ChangeLog 11 0 contrib/ChangeLog 2 2 contrib/slime-clipboard.el 2 2 contrib/slime-compiler-notes-tree.el 2 2 contrib/slime-sprof.el 3 3 contrib/slime-trace-dialog.el 1 1 slime-tests.el 71 66 slime.el
commit 1ab1a40610c403756fd190812bbd932271283a38 Date: Sun Mar 9 13:10:23 2014 +0000
Save and restore windows popping up debuggers in Emacs23
5 0 ChangeLog 11 2 slime.el
Thanks, João