(in-package :stumpwm)
(setf *window-border-style* :thin)

(defun undefine-keys (a-map par-list)  (mapcar #'(lambda (x) (undefine-key a-map x)) (mapcar #'kbd par-list)))

(undefine-keys *root-map* '("a" "e" "g" "C-e" "C-b" "C-a" "C-m" "M-n" "M-p" "C-w" "K" "M-Right" "M-Left" "M-Up" "M-Down" "F4" "F5" "F6" "F7" "F8" "F9" "F10"))
(undefine-keys *tile-group-root-map* '("space" "C-space"))

(defun sys-show-time ()
  (defparameter mystr (run-shell-command "date" t))
  (echo-string (current-screen) mystr))
(defcommand showtime () () (sys-show-time))

(define-key *root-map* (kbd "a") "showtime")
(define-key *root-map* (kbd "C-c") "exec qutebrowser --backend webengine")
(define-key *root-map* (kbd "c") "exec urxvt -bg 'black' -fg 'white' +sb -sl 65535 -b 0 -w 0 -letsp -1 -fn \"xft:bitstream vera sans mono:size=8:antialias=True,xft:unifont\"")
(define-key *root-map* (kbd "C-k") "kill")
(define-key *root-map* (kbd "q") "command-mode")

; ;;groups to list groups/vgroups has other stuff
; ;(define-key *root-map* (kbd "H-g") "gnew")
; ;(define-key *root-map* (kbd "H-n") "gnext")
; ;(define-key *root-map* (kbd "H-p") "gprev")
; ;(define-key *root-map* (kbd "H-k") "gkill")

(define-key *root-map* (kbd "C-Right") "move-window right")
(define-key *root-map* (kbd "C-Left") "move-window left")
(define-key *root-map* (kbd "C-Up") "move-window up")
(define-key *root-map* (kbd "C-Down") "move-window down")
