summaryrefslogtreecommitdiff
path: root/.emacs.d/lisp/init-exwm.el
diff options
context:
space:
mode:
authorThanos Apollo <[email protected]>2022-11-30 02:38:10 +0200
committerThanos Apollo <[email protected]>2022-11-30 02:38:10 +0200
commit50bc7230ad8780d4d037ad66581d40e87a9dad8d (patch)
tree6b2213335b659480e99c4d9df12fef0dcba7a45f /.emacs.d/lisp/init-exwm.el
parentd5b34d9ed4171a87ae8dea8c7791f17af9294d1d (diff)
Restracture and organize downloads
Diffstat (limited to '.emacs.d/lisp/init-exwm.el')
-rw-r--r--.emacs.d/lisp/init-exwm.el170
1 files changed, 0 insertions, 170 deletions
diff --git a/.emacs.d/lisp/init-exwm.el b/.emacs.d/lisp/init-exwm.el
deleted file mode 100644
index cce35df..0000000
--- a/.emacs.d/lisp/init-exwm.el
+++ /dev/null
@@ -1,170 +0,0 @@
-;;; package : EXWM configuration ---
-;;; .* --- .*
-
-;;; Code:
-
-(use-package dmenu)
-
-(defun apollo/rofi-switch-window ()
- "Launch rofi. Cant get it to work with exwm as of now tho."
- (interactive)
- (start-process-shell-command
- "rofi" nil "rofi -show window"))
-;; (global-set-key (kbd "s-<tab>") 'apollo/run_rofi)
-
-(defun apollo/run-in-background (command)
- "Run COMMAND in the background."
- (let ((command-parts (split-string command "[ ]+")))
- (apply #'call-process `(,(car command-parts) nil 0 nil ,@(cdr command-parts)))))
-
-(defun rofi ()
- "Run Rofi."
- (interactive)
- (apollo/run-in-background "rofi -show drun"))
-
-(defun apollo/volume-increase ()
- "Increase Volume."
- (interactive)
- (start-process-shell-command
- "amixer" nil "amixer sset Master 5%+"))
-
-(defun apollo/volume-decrease ()
- "Decrease Volume."
- (interactive)
- (start-process-shell-command
- "amixer" nil "amixer sset Master 5%-"))
-
-(defun apollo/set-wallpaper ()
- "Restore wallpaper."
- (interactive)
- (start-process-shell-command
- "nitrogen" nil "nitrogen --restore"))
-
-(defun apollo/emacs-keys ()
- "Swap caps with ctrl."
- (interactive)
- (start-process-shell-command
- "setxkbmap" nil "setxkbmap us -option ctrl:swapcaps"))
-
-(defun apollo/greek-keyboard ()
- "Swap caps with ctrl."
- (interactive)
- (start-process-shell-command
- "setxkbmap" nil "setxkbmap gr"))
-
-(defun apollo/exwm-init-hook ()
- "Do this upon start."
- (display-battery-mode 0) ;;Change to 1 to display battery
-
- (setq display-time-day-and-date t)
- (display-time-mode 1)
-
- ;;Launch apps that will run in the background
-;; (apollo/run-in-background "blueman-applet")
- (apollo/run-in-background "picom")
-;; (apollo/run-in-background "nm-applet")
- (apollo/emacs-keys)
- (apollo/set-wallpaper)
- )
-
-(defun apollo/exwm-update-class ()
- (exwm-workspace-rename-buffer exwm-class-name))
-
-(use-package exwm
- :config
- (setq exwm-workspace-number 6)
- ;; When window "class" updates, use it to set the buffer name
- (add-hook 'exwm-update-class-hook #'apollo/exwm-update-class)
-
- ;;When EXWM starts up, run this hook
- (add-hook 'exwm-init-hook #'apollo/exwm-init-hook)
- (start-process-shell-command
- "xrandr" nil "xrandr --output DisplayPort-2 --primary --mode 2560x1440 --pos 1920x0 --rotate normal --output HDMI-A-0 --mode 1920x1080 --pos 0x0 --rotate normal")
-
- ;; Set the screen resolution
-
- (require 'exwm-randr)
- (setq exwm-randr-workspace-output-plist '(1 "DP-1" 2 "HDMI-A-0"))
- (add-hook 'exwm-randr-screen-change-hook
- (lambda ()
- (start-process-shell-command
- "xrandr" nil "xrandr --output DisplayPort-2 --primary --mode 2560x1440 --pos 1920x0 --rotate normal --output HDMI-A-0 --mode 1920x1080 --pos 0x0 --rotate normal" )))
- (exwm-randr-enable)
-
- ;; (start-process-shell-command "xrandr" nil "xrandr --output Virtual-1 --primary --mode 2048x1152 --pos 0x0 --rotate normal")
-
- ;; Load the system tray before exwm-init
- (require 'exwm-systemtray)
- (exwm-systemtray-enable)
-
- ;; These keys should always pass through to Emacs
- (setq exwm-input-prefix-keys
- '(?\C-x
- ?\C-u
- ?\C-h
- ?\C-w
- ?\M-x
- ?\M-`
- ?\M-&
- ?\M-:
- ?\s-d
- ?\C-\M-j ;; Buffer list
- ?\C-\ )) ;; Ctrl+Space
-
- ;; Ctrl+Q will enable the next key to be sent directly
- (define-key exwm-mode-map [?\C-q] 'exwm-input-send-next-key)
-
- ;; Set up global key bindings. These always work, no matter the input state!
- ;; Keep in mind that changing this list after EXWM initializes has no effect.
- (setq exwm-input-global-keys
- `(
- ;; Reset to line-mode (C-c C-k switches to char-mode via exwm-input-release-keyboard)
- ([?\s-r] . exwm-reset)
-
- ;; Move between windows
- ([C-w C-p] . windmove-left)
- ([C-w C-n] . windmove-right)
-; ([s-up] . windmove-up)
-; ([s-down] . windmove-down)
- ([C-w C-v] . split-window-right)
-
- ;; Launch applications via shell command
- ([?\s-&] . (lambda (command)
- (interactive (list (read-shell-command "$ ")))
- (start-process-shell-command command nil command)))
-
- ;; Switch workspace
- ([?\s-e] . exwm-workspace-switch)
- ([?\s-`] . (lambda () (interactive) (exwm-workspace-switch-create 0)))
- ([?\s-1] . (lambda () (interactive) (exwm-workspace-switch-create 1)))
- ([?\s-2] . (lambda () (interactive) (exwm-workspace-switch-create 2)))
- ([?\s-3] . (lambda () (interactive) (exwm-workspace-switch-create 3)))
- ([?\s-4] . (lambda () (interactive) (exwm-workspace-switch-create 4)))
-
- ;; 's-N': Switch to certain workspace with Super (Win) plus a number key (0 - 9)
- ,@(mapcar (lambda (i)
- `(,(kbd (format "s-%d" i)) .
- (lambda ()
- (interactive)
- (exwm-workspace-switch-create ,i))))
- (number-sequence 0 9))))
-
- (exwm-input-set-key (kbd "C-c d") 'dmenu)
- (exwm-input-set-key (kbd "s-<tab>") 'rofi)
- (exwm-input-set-key (kbd "s-q") 'kill-emacs)
- (exwm-input-set-key (kbd "<XF86AudioRaiseVolume>") 'apollo/volume-increase)
- (exwm-input-set-key (kbd "<XF86AudioLowerVolume>") 'apollo/volume-decrease)
- (exwm-input-set-key (kbd "s-0") 'apollo/emacs-keys)
- (exwm-input-set-key (kbd "s-9") 'apollo/greek-keyboard)
- (exwm-enable))
-
-;;Transparency
-(set-frame-parameter (selected-frame) 'alpha '(90 90))
-(add-to-list 'default-frame-alist '(alpha 90 90))
-
-;;Follow focus using exwm-mff
-(use-package exwm-mff
- :init
- (exwm-mff-mode))
-
-;;; init-exwm.el ends here