summaryrefslogtreecommitdiff
path: root/modules/music-config.el
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2025-10-23 00:15:14 -0500
committerCraig Jennings <c@cjennings.net>2025-10-23 00:15:14 -0500
commitd22d004ed9bdc11dbc21be368f90384ed8b1b795 (patch)
treea8ac1f44845bdd11c442cca3c69a51cfde9c1f8b /modules/music-config.el
parentdb5f40e21b3015c2ce09c9b94e1d14c4ae951b92 (diff)
refactor: unify and simplify key binding setups
Optimized key binding configurations across modules for consistency and reduced redundancy. Improved conditional requiring to handle errors gracefully in `music-config.el`, ensuring robustness across different machine environments. Eliminated comments clutter and adjusted function definitions to adhere to revised standards.
Diffstat (limited to 'modules/music-config.el')
-rw-r--r--modules/music-config.el41
1 files changed, 29 insertions, 12 deletions
diff --git a/modules/music-config.el b/modules/music-config.el
index 35273969..0a643729 100644
--- a/modules/music-config.el
+++ b/modules/music-config.el
@@ -16,14 +16,31 @@
;;
;;; Code:
-(eval-when-compile (require 'emms))
-(eval-when-compile (require 'emms-player-mpd))
-(eval-when-compile (require 'emms-playlist-mode))
-(eval-when-compile (require 'emms-setup))
-(eval-when-compile (require 'emms-source-file))
-(eval-when-compile (require 'emms-source-playlist))
-
-(require 'cl-lib)
+(eval-when-compile
+ (condition-case nil
+ (require 'emms)
+ (error nil)))
+(eval-when-compile
+ (condition-case nil
+ (require 'emms-player-mpd)
+ (error nil)))
+(eval-when-compile
+ (condition-case nil
+ (require 'emms-playlist-mode)
+ (error nil)))
+(eval-when-compile
+ (condition-case nil
+ (require 'emms-setup)
+ (error nil)))
+(eval-when-compile
+ (condition-case nil
+ (require 'emms-source-file)
+ (error nil)))
+(eval-when-compile
+ (condition-case nil
+ (require 'emms-source-playlist)
+ (error nil)))
+
(require 'subr-x)
;;; Settings (no Customize)
@@ -348,7 +365,7 @@ Dirs added recursively."
(t (message "Skipping non-music file: %s" file))))
(message "Added %d item(s) to playlist" (length files))))
- (define-key dirvish-mode-map "p" #'cj/music-add-dired-selection))
+ (keymap-set dirvish-mode-map "p" #'cj/music-add-dired-selection))
;;; EMMS setup and keybindings
@@ -436,9 +453,9 @@ Dirs added recursively."
("p" . emms-playlist-mode-go)
("x" . emms-shuffle)))
-;; Quick toggle key
-(global-unset-key (kbd "<f10>"))
-(global-set-key (kbd "<f10>") #'cj/music-playlist-toggle)
+;; Quick toggle key - use autoload to avoid loading emms at startup
+(autoload 'cj/music-playlist-toggle "music-config" "Toggle EMMS playlist window." t)
+(keymap-global-set "<f10>" #'cj/music-playlist-toggle)
;;; Minimal ensure-loaded setup for on-demand use