> The idea is really nice, but I'm hesitant for reasons given below. Can > it be postponed for 1.7.1? it can. it's removed from HEAD. we'll see. > A. I propose to merge it to jump-or-exec; scattered codes are difficult > to maintain. (By using #!key, the syntax won't be messed.) See also my > 3 apr message. jor and tor are two different things. That's why tor is shipped in a separated module, of course we could merge them, but I thought that the different things they do should be honorerd with two different commands. I also think that's more intuitive. One thing could be a base-function with jor and tor-wrappers. > B. defvar part is wrong. Suppose, > 1. call toggle-or-exec-leave. Then the animator is saved. > 2. (setq default-window-animator 'xyz) > 3. call toggle-or-exec-leave again. > 4. default-window-animator -> orig-value != xyz > > Isn't it enough to use simply `let'?: > ------------------------------------------------------------------------ > (...) > ------------------------------------------------------------------------ Of course that's much better. > If you want to store per-window animation rule, (I don't know if it's > possible at all), alist or plist can be used. Nope. > (...) > > ------------------------------------------------------------------------ > A 30-sec lisp lecture. > > (list (lambda ()) (lambda ())) > -> (#<closure 1e6caf0 @ user> #<closure 1e6c910 @ user>) > The two are not equal. I knew that... but It was late yesterday when I wrote it and I seem to forgot that. ^_^; > (...) > > Register only one function to the hook. Matching rules for > iconification can be stored in a module private variable. Attached is a version, which adds (and makes use of) a new "exit-leave" window-matcher. We could manually do window-put in the before-add-window-hook, but a window-matcher saves some lines of code and does the same. > D. > (windowp wind) should be checked before display-window, no? copy-paste from jor. > E. (in 1 min.) > autoload-command is necessary. done. > F. > If it'll be an independent func / module, how about the name > `show-hide-or-exec'? sound unintuitive. Well, same for toggle. But as soon as people know what the function does, toggle is better I believe. > Considering these points, I don't feel like tinkering at the eleventh > hour. For your interest, I've attached a half fixed version. > > b) is there a window-matcher which makes a window overlap a dock-window? > > Good question. No. Too bad. I "fixed" it by making the panel smaller and moving it into the part of my screen which is already covered by pager. Something like that would be nice, though. > (...) I know. Window-Rules UI is not perfect, we should use plain checkbuttons rather than checkbutton + button with ugly label. I'll check this. > I haven't reviewed new matchers yet. They should be OK. > Regards, > Teika (Teika kazura) Regards, Chris
Attachment:
toggle-or-exec.jl
Description: Binary data
diff --git a/lisp/sawfish/wm/ext/match-window.jl b/lisp/sawfish/wm/ext/match-window.jl index 2fa9421..4b05772 100644 --- a/lisp/sawfish/wm/ext/match-window.jl +++ b/lisp/sawfish/wm/ext/match-window.jl @@ -115,6 +115,7 @@ (ignore-stacking-requests boolean) (auto-gravity boolean) (never-delete boolean) + (exit-leave boolean) (fixed-size boolean) )))