diff options
author | yonirabkin <yonirabkin> | 2005-09-17 17:28:00 +0000 |
---|---|---|
committer | yonirabkin <mwolson@gnu.org> | 2005-09-17 17:28:00 +0000 |
commit | 96573c9344c4e5ee89310026c8a7ac92d639a9e1 (patch) | |
tree | 5f5ac5f4ffb48fb44c478c96ab7a592e448173fa | |
parent | b1f7743701939aab80caa3112060c515c30dc387 (diff) |
A kinder, gentler emms-playlist-mode-go
darcs-hash:20050917172815-be80e-b12d00404dfa78d5d6647a1b19678a204d7199f4.gz
-rw-r--r-- | emms-playlist-mode.el | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/emms-playlist-mode.el b/emms-playlist-mode.el index 44bd276..46f80bb 100644 --- a/emms-playlist-mode.el +++ b/emms-playlist-mode.el @@ -250,18 +250,14 @@ of the saved playlist inside." ;;; Entry ;;; -------------------------------------------------------- -;; FIXME: everything is wrong here, implement non-twisted logic and an -;; interactive manner of selecting/creating a different playlist to -;; the current/default one. -(defun emms-playlist-mode-go (&optional pl-buffer) +(defun emms-playlist-mode-go () (interactive) - (when (null pl-buffer) - (setq pl-buffer emms-playlist-buffer) - (when (not pl-buffer) - (setq pl-buffer (emms-playlist-new)))) - (switch-to-buffer pl-buffer) - (unless (eq major-mode 'emms-playlist-mode) - (emms-playlist-mode))) + (if (null emms-playlist-buffer) + (error "No current Emms buffer") + (switch-to-buffer emms-playlist-buffer) + (when (and (not (eq major-mode 'emms-playlist-mode)) + emms-playlist-buffer-p) + (emms-playlist-mode)))) (defun emms-playlist-mode-startup () (unless (or emms-playlist-selected-marker |