Debug failed initialization of keybindings
Some more pains of weening off of Dropbox is that my Emacs initialization is sensitive to dependencies and missing require statements. I'm still debugging everything. Some modules called `exwm-input-set-key` before the `window-manager` module loaded, which itself requires EXWM. This broke initialization. To get around this I could've called `(require 'exwm)` in each of those modules. I chose to define a `keybindings.el` module to whitelist some of my EXWM keybindings. I'm not sure if this is the best way forward, but it is *some* way forward.
This commit is contained in:
		
							parent
							
								
									068a648736
								
							
						
					
					
						commit
						77d46eb5e1
					
				
					 4 changed files with 35 additions and 25 deletions
				
			
		|  | @ -40,8 +40,5 @@ | |||
|   "Return the contents of the clipboard as a string." | ||||
|   (substring-no-properties (current-kill 0))) | ||||
| 
 | ||||
| (exwm-input-set-key | ||||
|  (kbd "C-M-v") #'ivy-clipmenu/copy) | ||||
| 
 | ||||
| (provide 'clipboard) | ||||
| ;;; clipboard.el ends here | ||||
|  |  | |||
							
								
								
									
										35
									
								
								configs/shared/.emacs.d/wpc/keybindings.el
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								configs/shared/.emacs.d/wpc/keybindings.el
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,35 @@ | |||
| ;;; keybindings.el --- Centralizing my keybindings -*- lexical-binding: t -*- | ||||
| ;; Author: William Carroll <wpcarro@gmail.com> | ||||
| 
 | ||||
| ;;; Commentary: | ||||
| ;; Attempting to centralize my keybindings to simplify my configuration. | ||||
| 
 | ||||
| ;;; Code: | ||||
| 
 | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| ;; Dependencies | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| 
 | ||||
| (require 'clipboard) | ||||
| (require 'screen-brightness) | ||||
| 
 | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| ;; Configuration | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| 
 | ||||
| (defmacro keybinding/exwm (c fn) | ||||
|   "Bind C to FN using `exwm-input-set-key' with `kbd' applied to C." | ||||
|   `(exwm-input-set-key (kbd ,c) ,fn)) | ||||
| 
 | ||||
| (keybinding/exwm "C-M-v" #'ivy-clipmenu/copy) | ||||
| 
 | ||||
| (keybinding/exwm "<XF86MonBrightnessUp>" #'screen-brightness/increase) | ||||
| (keybinding/exwm "<XF86MonBrightnessDown>" #'screen-brightness/decrease) | ||||
| 
 | ||||
| (keybindings/exwm "<XF86AudioMute>" #'pulse-audio/toggle-mute) | ||||
| (keybindings/exwm "<XF86AudioLowerVolume>" #'pulse-audio/decrease-volume) | ||||
| (keybindings/exwm "<XF86AudioRaiseVolume>" #'pulse-audio/increase-volume) | ||||
| (keybindings/exwm "<XF86AudioMicMute>" #'pulse-audio/toggle-microphone) | ||||
| 
 | ||||
| (provide 'keybindings) | ||||
| ;;; keybindings.el ends here | ||||
|  | @ -20,9 +20,6 @@ | |||
| (defconst pulse-audio/step-size 5 | ||||
|   "The size by which to increase or decrease the volume.") | ||||
| 
 | ||||
| (defconst pulse-audio/install-kbds? t | ||||
|   "When t, install keybindings defined herein.") | ||||
| 
 | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| ;; Library | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
|  | @ -65,15 +62,5 @@ | |||
|                            pulse-audio/step-size)) | ||||
|   (pulse-audio/message "Volume increased.")) | ||||
| 
 | ||||
| (when pulse-audio/install-kbds? | ||||
|   (exwm-input-set-key | ||||
|    (kbd "<XF86AudioMute>") #'pulse-audio/toggle-mute) | ||||
|   (exwm-input-set-key | ||||
|    (kbd "<XF86AudioLowerVolume>") #'pulse-audio/decrease-volume) | ||||
|   (exwm-input-set-key | ||||
|    (kbd "<XF86AudioRaiseVolume>") #'pulse-audio/increase-volume) | ||||
|   (exwm-input-set-key | ||||
|    (kbd "<XF86AudioMicMute>") #'pulse-audio/toggle-microphone)) | ||||
| 
 | ||||
| (provide 'pulse-audio) | ||||
| ;;; pulse-audio.el ends here | ||||
|  |  | |||
|  | @ -21,9 +21,6 @@ | |||
| (defconst screen-brightness/step-size 15 | ||||
|   "The size of the increment or decrement step for the screen's brightness.") | ||||
| 
 | ||||
| (defcustom screen-brightness/install-kbds? t | ||||
|   "If t, install the keybindings to control screen brightness.") | ||||
| 
 | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| ;; Library | ||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
|  | @ -44,11 +41,5 @@ | |||
|    :command (string/format "xbacklight -dec %s" screen-brightness/step-size)) | ||||
|   (message "[screen-brightness.el] Decreased screen brightness.")) | ||||
| 
 | ||||
| (when screen-brightness/install-kbds? | ||||
|   (exwm-input-set-key | ||||
|    (kbd "<XF86MonBrightnessUp>") #'screen-brightness/increase) | ||||
|   (exwm-input-set-key | ||||
|    (kbd "<XF86MonBrightnessDown>") #'screen-brightness/decrease)) | ||||
| 
 | ||||
| (provide 'screen-brightness) | ||||
| ;;; screen-brightness.el ends here | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue