From a3ab59de884a372226432ba50dd3c36e354ff22e Mon Sep 17 00:00:00 2001 From: jdlugosz963 Date: Sat, 31 Dec 2022 23:20:53 +0100 Subject: Update Desktop config --- .config/emacs/exwm/desktop.el | 90 +++++++++++++++++++++++++++++++++---------- 1 file changed, 70 insertions(+), 20 deletions(-) (limited to '.config/emacs/exwm/desktop.el') diff --git a/.config/emacs/exwm/desktop.el b/.config/emacs/exwm/desktop.el index 579e6b2..512dbdc 100644 --- a/.config/emacs/exwm/desktop.el +++ b/.config/emacs/exwm/desktop.el @@ -5,13 +5,16 @@ (let ((command-parts (split-string command "[ ]+"))) (apply #'call-process `(,(car command-parts) nil 0 nil ,@(cdr command-parts))))) -(defun jd-exwm/exwm-init-hook () - (display-battery-mode t) - (display-time-mode t) +(defun jd-exwm/restart-process (program-name) + (call-process "killall" nil nil nil program-name) + (jd-exwm/run-in-background program-name)) - (jd-exwm/run-in-background "nm-applet") - (jd-exwm/run-in-background "pasystray") - (jd-exwm/run-in-background "blueman-applet")) +(defun jd-exwm/exwm-init-hook () + (jd-exwm/restart-process "polybar") + (jd-exwm/restart-process "nm-applet") + (jd-exwm/restart-process "redshift-gtk -l 54.37:18.6") + (jd-exwm/restart-process "blueman-applet") + (jd-exwm/restart-process "pasystray")) (defun jd-exwm/exwm-update-title () (exwm-workspace-rename-buffer exwm-title)) @@ -20,6 +23,7 @@ (interactive) (pcase exwm-class-name ("firefox" (exwm-workspace-move-window 2)) + ("Brave" (exwm-workspace-move-window 2)) ("qutebrowser" (exwm-workspace-move-window 2)) ("discord" (exwm-workspace-move-window 5)) ("obs" (exwm-workspace-move-window 5)) @@ -27,29 +31,26 @@ (use-package exwm :config - (setq exwm-workspace-number 9) + (setq exwm-workspace-number 10) (add-hook 'exwm-init-hook #'jd-exwm/exwm-init-hook) (add-hook 'exwm-update-class-hook #'jd/exwm-update-class) (add-hook 'exwm-update-title-hook #'jd-exwm/exwm-update-title) (add-hook 'exwm-manage-finish-hook #'jd-exwm/configure-window-by-class) - (start-process-shell-command "xmodmap" nil "xmodmap ~/dotfiles/.Xmodmap") (start-process-shell-command "nitrogen" nil "nitrogen --restore") - (start-process-shell-command "xinput" nil "xinput set-prop 11 336 1") + (start-process-shell-command "xinput" nil "xinput set-prop 'ETPS/2 Elantech Touchpad' 'Synaptics Tap Action' 1 1 1 2 1") + (start-process-shell-command "xmodmap" nil "xmodmap ~/dotfiles/.Xmodmap") (require 'exwm-randr) + (setq exwm-randr-workspace-monitor-plist '(9 "eDP-1" 0 "eDP-1")) (exwm-randr-enable) - ;; (start-process-shell-command "xrandr" nil "xrandr --output DP-1-8 --primary --mode 1920x1080 --output eDP-1 --off") - - (require 'exwm-systemtray) - (exwm-systemtray-enable) (setq exwm-input-simulation-keys - '(([?\C-l] . [left]) - ([?\C-h] . [right]) - ([?\C-k] . [up]) - ([?\C-j] . [down]))) + '(([?\C-b] . [left]) + ([?\C-f] . [right]) + ([?\C-p] . [up]) + ([?\C-n] . [down]))) (setq exwm-input-prefix-keys '(?\C-x @@ -81,7 +82,7 @@ (lambda () (interactive) (exwm-workspace-switch-create ,i)))) - (number-sequence 1 9)))) + (number-sequence 0 9)))) (exwm-enable)) @@ -94,7 +95,56 @@ (desktop-environment-brightness-normal-increment "5%+") (desktop-environment-brightness-normal-decrement "5%-")) -(set-frame-parameter (selected-frame) 'alpha '(95 . 95)) -(add-to-list 'default-frame-alist `(alpha . (95 . 95))) +(set-frame-parameter (selected-frame) 'alpha '(90 . 90)) +(add-to-list 'default-frame-alist `(alpha . (90 . 90))) (set-frame-parameter (selected-frame) 'fullscreen 'maximized) (add-to-list 'default-frame-alist '(fullscreen . maximized)) + +(defun jd-exwm/get-color (ATTRIBUTE) + (face-attribute 'default ATTRIBUTE)) + +(defun theme-to-xresources () + (interactive) + (require 'term) + (with-temp-buffer + (insert "! Generated by theme-to-xresources\n") + (dolist (spec + '(("emacs.background" :background "E6") + ("emacs.foreground" :foreground ""))) + (let ((color (jd-exwm/get-color (cadr spec)))) + (insert (format "%s: #%s%s\n" + (car spec) + (caddr spec) + (string-remove-prefix "#" color)))) + (write-region (point-min) (point-max) "~/.Xresources"))) + (call-process "xrdb" nil nil nil "-merge" (expand-file-name "~/.Xresources"))) + +(defun jd/theme-sync () + (interactive) + (theme-to-xresources) + (setq org-confirm-babel-evaluate nil) + (org-babel-tangle-file "~/dotfiles/Desktop.org") + (setq org-confirm-babel-evaluate 't) + (call-process "killall" nil nil nil "dunst") ;; TODO: prevent clear notification history + (jd-exwm/restart-process "polybar")) + +(add-hook 'jd/load-theme-hook #'jd/theme-sync) +(add-hook 'exwm-init-hook #'jd/theme-sync) + +(defun jd/dunst-show-history () + (interactive) + (start-process-shell-command "dunstctl" nil "dunstctl history-pop")) + +(defun jd/dunst-close () + (interactive) + (start-process-shell-command "dunstctl" nil "dunstctl close")) + +(defun jd/dunst-close-all () + (interactive) + (start-process-shell-command "dunstctl" nil "dunstctl close-all")) + +(jd/leader-key-def + "d" '(nil :which-key "dunst") + "dh" '(jd/dunst-show-history :which-key "show history") + "dc" '(jd/dunst-close :which-key "close") + "da" '(jd/dunst-close-all :which-key "close all")) -- cgit v1.2.3