From pbrochard at common-lisp.net Sun Oct 26 21:47:09 2008 From: pbrochard at common-lisp.net (Philippe Brochard) Date: 26 Oct 2008 22:47:09 +0100 Subject: [clfswm-devel] Some news on the latest SVN/GIT version Message-ID: <87ej23m3ky.fsf@grigri.elcforest> Hi all, In the latest SVN/GIT version, bindings are done with a hook (*binding-hook*) at runtime. This let you change the default binding with a simple reset-clfswm and you have a more precise access to the default binding. Here is the content of the default *binding-hook*: *BINDING-HOOK*=(INIT-*INFO-KEYS* INIT-*INFO-MOUSE* SET-DEFAULT-INFO-KEYS SET-DEFAULT-INFO-MOUSE INIT-*MAIN-KEYS* INIT-*MAIN-MOUSE* SET-DEFAULT-MAIN-KEYS SET-DEFAULT-MAIN-MOUSE INIT-*SECOND-KEYS* INIT-*SECOND-MOUSE* SET-DEFAULT-SECOND-KEYS SET-DEFAULT-SECOND-MOUSE) The bad news is that this change may break your configuration file. To change the default keybinding, you have to attach a new hook to *binding-hook*. See doc/dot-clfswmrc for some examples. A quick example is as follow: ---------------------------------------------------------------------- (defun my-binding () (define-main-key ("a" :alt) 'open-menu)) (add-hook *binding-hook* 'my-binding) ---------------------------------------------------------------------- Another big change is that you can have some default modifiers enabled for all keys (numlock is the main example). You can push some values in the *default-modifiers* list or more friendly you can use the functions with-capslock, with-numlock, without-capslock, without-numlock. Another thing, there is now some aliases for mod-* modifiers. ie you can use :alt as a modifier instead of :mod-1. The full list is: *modifier-alias*='((:alt :mod-1) (:alt-l :mod-1) (:numlock :mod-2) (:super_l :mod-4) (:alt-r :mod-5) (:alt-gr :mod-5) (:capslock :lock)) Have fun, Philippe -- Philippe Brochard http://hocwp.free.fr