Add screen locking to my stumpwm config
This commit is contained in:
parent
05ba6544e2
commit
7d079e8973
1 changed files with 22 additions and 0 deletions
|
@ -5,6 +5,27 @@
|
|||
|
||||
(set-prefix-key (kbd "s-x"))
|
||||
|
||||
(defvar *screen-locking-hook* nil
|
||||
"Hook that gets called right before the screen gets locked.")
|
||||
|
||||
(defvar *screen-unlocked-hook* nil
|
||||
"Hook that gets called right after the screen is unlocked.")
|
||||
|
||||
(defun run-screen-unlocked-hook (process)
|
||||
"Run `*screen-unlocked-hook* if PROCESS' status is `:exited'."
|
||||
(when (eq (sb-ext:process-status process) :exited)
|
||||
(run-hook *screen-unlocked-hook*)))
|
||||
|
||||
(defcommand lock-screen () ()
|
||||
"Lock the screen using i3lock.
|
||||
Run `*screen-locking-hook*' before locking it and run `*screen-unlocked-hook*'
|
||||
after it has been unlocked."
|
||||
(run-hook *screen-locking-hook*)
|
||||
(sb-ext:run-program
|
||||
"/usr/bin/i3lock" '("--nofork" "--color=000000")
|
||||
:wait nil
|
||||
:status-hook #'run-screen-unlocked-hook))
|
||||
|
||||
(defcommand raise-browser () ()
|
||||
"Open or show my browser"
|
||||
(run-or-raise "firefox" '(:class "firefox")))
|
||||
|
@ -17,6 +38,7 @@
|
|||
"Open or show my terminal"
|
||||
(run-or-raise "kitty" '(:class "kitty")))
|
||||
|
||||
(define-key *top-map* (kbd "C-M-l") "lock-screen")
|
||||
(define-key *top-map* (kbd "s-b") "raise-browser")
|
||||
(define-key *top-map* (kbd "s-e") "raise-emacs")
|
||||
(define-key *top-map* (kbd "s-t") "raise-terminal")
|
||||
|
|
Loading…
Reference in a new issue