Hi, I attach window-edit.el at the end of this email. window-edit.el contains only one function: M-x window-edit. I tried to implement Drew suggestions into one single function. See my comments below. Any feedback is very welcome. "Drew Adams" writes: > Some quick minor feedback: > > * Use `case' (compile-time require cl) to simplify code. I didn't use it yet. > * Why is WCF an arg? (You immediately set it.) Fixed. > * Bind `echo-keystrokes' to 0. Done. > * Let `0' delete the selected window. Done. > * Not sure `1' is a good idea (especially if no undo). Yes, right, fixed. > * Maybe `r' instead of `_'? Yes. Window configurations are now stored into a ring, so pressing `r' twice will call back wcf2 then wcf1 if wcf1 and wcf2 were stored. The first config in this ring is the initial one. > * When window reaches a minimum, trying to reduce it > more either moves it instead or deletes it instead. > Maybe do something different (e.g. nothing?). Fixed. Hence the ugly part of the defun. I couldn't figure out how to factorize all this a bit yet. Suggestions welcome. > * +/- is only for vertical resizing. Why not horizontal > also? Maybe let arrows do this also, with another key > toggling the mode (move border vs increase/decrease > size). SPC will toggle the mode. See the docstring. > * Maybe let Shift always navigate - up/down/left/right, > and use something else (`+' and `-'?) to > increment/decrement ARG. Right. S- now navigates through windows direction-wise. > * Maybe negate (toggle sign of) ARG with a keystroke > (e.g. `~'), instead of holding Meta down. (Modal.) Done. > * And maybe let C-N (N an integer) set ARG absolutely? Done. > * Maybe let mouse-1 select a window also. Done. > * Maybe use mouse wheel also (if direction is known)? Not done yet. Don't know if this is really useful. > * The prompt doesn't express much of what is possible. > In particular, if `one-window-p', the prompt makes > no sense (but `2' and `3' still make sense). Fixed, even though there is room for improvement. > * Let `?' provide more help. Done. > * Give confirmation message when save & restore. > When save, it should mention `_' (or `r') to restore. Done. > * Is it normal that the window is scrolled (perhaps to > keep point in view)? Maybe not scrolling should be > an option? Fixed, but it's not an option. > * Maybe let unrecognized events (keys, at least) quit > instead of being ignored. And then perhaps be > applied? So, e.g., `RET' would quit (and insert a > newline?). Not done. Will work on this later. Depends on feedback about this defun. > * Rename? `window-edit'? Good suggestion, done. > * Maybe bind it to `C-x w'. Or maybe have that be a > prefix for several window commands and bind this one > to `C-x w e' (for edit)? I let this to the user. Thanks again for the detailed suggestions. That was very helpful. I hope this function is closer that one might expect from window-edit.