EXWM works
This commit is contained in:
@@ -9,10 +9,11 @@ orgTrivialBuild {
|
||||
src = ./elisp/azos-emacs-exwm.org;
|
||||
packageRequires = with epkgs; [
|
||||
pkgs.azos.emacs.base
|
||||
pkgs.azos.station.base
|
||||
pkgs.azos.emacs.station
|
||||
|
||||
exwm
|
||||
desktop-environment
|
||||
bluetooth
|
||||
pulseaudio-control
|
||||
];
|
||||
}
|
||||
|
||||
@@ -180,8 +180,7 @@ Enabling randr. Automatic mapping of randr screens to workspaces.
|
||||
"xlayoutdisplay" nil "xlayoutdisplay")
|
||||
(setq exwm-randr-workspace-monitor-plist
|
||||
(azos/exwm/add-indexes (azos/exwm/get-monitor-list)))
|
||||
(exwm-randr-refresh))
|
||||
)
|
||||
(exwm-randr-refresh)))
|
||||
|
||||
(add-hook 'azos/exwm/load-hook (lambda () (progn
|
||||
(add-hook 'exwm-randr-screen-change-hook
|
||||
@@ -219,76 +218,71 @@ Sending simulated keys to X windows
|
||||
(use-package pulseaudio-control :after exwm)
|
||||
#+end_src
|
||||
|
||||
** TODO Dunst
|
||||
|
||||
Used to have to run a service 'dunst'. Don't do that now, handled by OS.
|
||||
|
||||
** TODO Flameshot
|
||||
|
||||
Also Flameshot
|
||||
|
||||
** Media keys
|
||||
|
||||
https://gist.github.com/ajyoon/5323b999a01dce8db2d4456da1740fe3
|
||||
|
||||
#+begin_src emacs-lisp
|
||||
(add-hook 'azos/exwm/load-hook (lambda () (progn
|
||||
(dolist (k '(XF86AudioLowerVolume
|
||||
XF86AudioRaiseVolume
|
||||
XF86AudioPlay
|
||||
XF86AudioStop
|
||||
XF86AudioPrev
|
||||
XF86AudioNext))
|
||||
(push k exwm-input-prefix-keys))
|
||||
(add-hook 'azos/exwm/load-hook (lambda ()
|
||||
(progn
|
||||
(dolist (k '(
|
||||
XF86AudioLowerVolume
|
||||
XF86AudioRaiseVolume
|
||||
XF86AudioPlay
|
||||
XF86AudioStop
|
||||
XF86AudioPrev
|
||||
XF86AudioNext))
|
||||
(push k exwm-input-prefix-keys))
|
||||
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioRaiseVolume>")
|
||||
(lambda ()
|
||||
(interactive) (start-process
|
||||
"pactl" nil "pactl" "set-sink-volume" "0" "+5%")))
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioLowerVolume>")
|
||||
(lambda ()
|
||||
(interactive) (start-process
|
||||
"pactl" nil "pactl" "set-sink-volume" "0" "-5%")))
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioRaiseVolume>")
|
||||
(lambda ()
|
||||
(interactive) (start-process
|
||||
"pactl" nil "pactl" "set-sink-volume" "0" "+5%")))
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioLowerVolume>")
|
||||
(lambda ()
|
||||
(interactive) (start-process
|
||||
"pactl" nil "pactl" "set-sink-volume" "0" "-5%")))
|
||||
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioMute>")
|
||||
(lambda ()
|
||||
(interactive) (start-process
|
||||
"pactl" nil "pactl" "set-sink-mute" "0" "toggle")))
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioMute>")
|
||||
(lambda ()
|
||||
(interactive) (start-process
|
||||
"pactl" nil "pactl" "set-sink-mute" "0" "toggle")))
|
||||
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioPlay>")
|
||||
'desktop-environment-toggle-music)
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioPlay>")
|
||||
'desktop-environment-toggle-music)
|
||||
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioNext>")
|
||||
'desktop-environment-music-next)
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioNext>")
|
||||
'desktop-environment-music-next)
|
||||
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioPrev>")
|
||||
'desktop-environment-music-previous)
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioPrev>")
|
||||
'desktop-environment-music-previous)
|
||||
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioStop>")
|
||||
'desktop-environment-music-stop)
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioStop>")
|
||||
'desktop-environment-music-stop)
|
||||
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioPause>")
|
||||
'desktop-environment-toggle-music)
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86AudioPause>")
|
||||
'desktop-environment-toggle-music)
|
||||
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86MonBrightnessUp>")
|
||||
(lambda ()
|
||||
(interactive) (start-process
|
||||
"light" nil "light" "-A" "5")))
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86MonBrightnessUp>")
|
||||
(lambda ()
|
||||
(interactive) (start-process
|
||||
"light" nil "light" "-A" "5")))
|
||||
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86MonBrightnessDown>")
|
||||
(lambda ()
|
||||
(interactive) (start-process
|
||||
"light" nil "light" "-U" "5")))))
|
||||
(exwm-input-set-key
|
||||
(kbd "<XF86MonBrightnessDown>")
|
||||
(lambda ()
|
||||
(interactive) (start-process
|
||||
"light" nil "light" "-U" "5")))
|
||||
)))
|
||||
#+end_src
|
||||
|
||||
In the event =xbacklight= doesn't work, the following command can be run:
|
||||
@@ -297,19 +291,6 @@ In the event =xbacklight= doesn't work, the following command can be run:
|
||||
xrandr --output eDP1 --brightness 0.5
|
||||
#+end_example
|
||||
|
||||
** TODO Input languages
|
||||
|
||||
#+begin_src emacs-lisp
|
||||
(defun azos/exwm/enable-heb ()
|
||||
(interactive)
|
||||
(start-process-shell-command "heb" nil
|
||||
"setxkbmap -layout us,il && setxkbmap -option 'grp:alt_shift_toggle'"))
|
||||
())
|
||||
(add-hook 'azos/exwm/load-hook 'azos/exwm/enable-heb)
|
||||
#+end_src
|
||||
|
||||
I think this can be handled by OS
|
||||
|
||||
** Dedicated processes
|
||||
|
||||
We'd want to be able to quickly map processes (Spotify, etc.) to
|
||||
|
||||
Reference in New Issue
Block a user