>
> Some additional code to allow holding super to display the mode line:
>
> ``` lisp
> (defun custom-press-handler (code state)
>   (declare (ignore state))
>   (let ((super-keycodes (nth-value 6 (xlib:modifier-mapping *display*))))
>     (when (member code super-keycodes :test #'=)
>       (toggle-mode-line (current-screen) (current-head))
>       t)))
>
> (define-stump-event-handler :key-release (code state)
>   (declare (ignore state))
>   (let ((super-keycodes (nth-value 6 (xlib:modifier-mapping *display*))))
>     (when (member code super-keycodes :test #'=)
>       (toggle-mode-line (current-screen) (current-head))
>       t)))
>
> (setf *custom-key-event-handler* 'custom-press-handler)
> ```

NB: the above code requires you to grab the super keycode, which for me
is 133, though you can find it by calling xlib:modifier-mapping.

You can grab it like so in your init file:

``` lisp
(xlib:ungrab-key (screen-root (current-screen)) your-super-key-code)
```

Reply via email to