diff options
author | lucas <lucas> | 2005-09-16 21:21:00 +0000 |
---|---|---|
committer | lucas <mwolson@gnu.org> | 2005-09-16 21:21:00 +0000 |
commit | 46f2edc42166eb1a4a840485f410823b9e0c8b72 (patch) | |
tree | a7e41826e2c378858aab4fe2fc070343f1e59c49 /emms-playlist-mode.el | |
parent | 3e97e2a386e287dc5b7acf37a87aa1b8daaa0af8 (diff) |
Adding emms-playlist-mode-save and -open
darcs-hash:20050916212134-4f952-f9c41d8ba7a07b8525e8d627e1d5630def0de19c.gz
Diffstat (limited to 'emms-playlist-mode.el')
-rw-r--r-- | emms-playlist-mode.el | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/emms-playlist-mode.el b/emms-playlist-mode.el index 8d9f2d6..ec91230 100644 --- a/emms-playlist-mode.el +++ b/emms-playlist-mode.el @@ -235,6 +235,41 @@ lis)) ;;; -------------------------------------------------------- +;;; Saving/Restoring +;;; -------------------------------------------------------- + +(defun emms-playlist-mode-save-buffer (buffer filename) + "Saves a playlist buffer in a file, including annotations." + (interactive "bPlaylist buffer to save: \nFFile to save buffer as: ") + (with-current-buffer (find-file-noselect filename) + (erase-buffer) + (prin1 (with-current-buffer buffer + (buffer-string)) + (current-buffer)) + (save-buffer) + (kill-buffer (current-buffer)))) + +(defun emms-playlist-mode-open-buffer (filename) + "Opens a previously saved playlist buffer. + +It creates a buffer called \"filename\", and restore the contents +of the saved playlist inside." + (interactive "fFile: ") + (let* ((s) + (buffer (find-file-noselect filename)) + (name (buffer-name buffer))) + (with-current-buffer buffer + (setq s (read (buffer-string)))) + (kill-buffer buffer) + (with-current-buffer (get-buffer-create name) + (insert s)))) + +(defun emms-playlist-mode-save-active-buffer (filename) + "Saves the active playlist buffer to a file." + (interactive "FFile to save playlist buffer as: ") + (emms-playlist-mode-save-buffer emms-playlist-buffer filename)) + +;;; -------------------------------------------------------- ;;; Entry ;;; -------------------------------------------------------- |