emms-help
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[emms-help] [patch] Killing and yanking


From: Yoni Rabkin Katzenell
Subject: [emms-help] [patch] Killing and yanking
Date: Mon, 05 Dec 2005 11:27:56 +0200
User-agent: Gnus/5.110004 (No Gnus v0.4) Emacs/22.0.50 (gnu/linux)

Just sent in the following patch to the darcs repo:

Mon Dec  5 11:20:44 IST 2005  address@hidden
  * Killing and yanking

The patch is attached here as well.

The patch implements killing and yanking in the Emms2 playlist
buffers. This means you can do all the killing and yanking you want
within and playlist and also yank any text from anywhere else into the
playlist as well. Nothing stopping you from embedding random bits of
Emacs Lisp between tracks.

The downsides are that it has bugs and that the coloring of the selected
and unselected tracks is in a sorry state of borkage, and
killing/yanking can screw it up worse.

I'm working on fixing the coloring of the tracks under all situations
now.

New patches:

[Killing and yanking
address@hidden {
hunk ./emms-playlist-mode.el 3
-;;; Copyright Yoni Rabkin under the GNU General Public License.
+;;; Copyright 2005 Yoni Rabkin under the GNU General Public License.
hunk ./emms-playlist-mode.el 8
-;;; I'm designing this as a method of displaying and manipulating the
-;;; different Emms playlist buffers defined by the user.
+;;; This is a method of displaying and manipulating the different Emms
+;;; playlist buffers.
hunk ./emms-playlist-mode.el 13
-
-;;; Todo:
-;;;
-;;; emms-add-m3u-playlist displays the first track on the
-;;; mode-line.
-;;;
-;;; Not all of the methods for adding tracks behave correctly in
-;;; regards to marking the current track. Stress test this.
hunk ./emms-playlist-mode.el 28
+
+(defvar emms-playlist-mode-window-width -25
+  "Width for the emms-playlist-mode pop-up window.")
hunk ./emms-playlist-mode.el 73
-    (define-key emms-playlist-mode-map (kbd "n") 'emms-next)
-    (define-key emms-playlist-mode-map (kbd "p") 'emms-previous)
hunk ./emms-playlist-mode.el 74
-    (define-key emms-playlist-mode-map (kbd "C-k") 
'emms-playlist-mode-kill-track)
hunk ./emms-playlist-mode.el 75
-    (define-key emms-playlist-mode-map (kbd "d") 
'emms-playlist-mode-kill-track)
+    (define-key emms-playlist-mode-map (kbd "C-k") 
'emms-playlist-mode-kill-track)
+    (define-key emms-playlist-mode-map (kbd "C-w") 'emms-playlist-mode-kill)
+    (define-key emms-playlist-mode-map (kbd "C-n") 'next-line)
+    (define-key emms-playlist-mode-map (kbd "C-p") 'previous-line)
+    (define-key emms-playlist-mode-map (kbd "C-j") 
'emms-playlist-mode-insert-newline)
+    (define-key emms-playlist-mode-map (kbd "M-y") 
'emms-playlist-mode-yank-pop)
+    (define-key emms-playlist-mode-map (kbd "M-<") 'emms-playlist-mode-first)
+    (define-key emms-playlist-mode-map (kbd "M->") 'emms-playlist-mode-last)
+    (define-key emms-playlist-mode-map (kbd "n") 'emms-next)
+    (define-key emms-playlist-mode-map (kbd "p") 'emms-previous)
hunk ./emms-playlist-mode.el 88
-    (define-key emms-playlist-mode-map (kbd "RET") 
'emms-playlist-mode-play-current-track)
hunk ./emms-playlist-mode.el 89
-    (define-key emms-playlist-mode-map (kbd "<mouse-2>") 
'emms-playlist-mode-play-current-track)
hunk ./emms-playlist-mode.el 90
-    (define-key emms-playlist-mode-map (kbd "M-<") 'emms-playlist-mode-first)
-    (define-key emms-playlist-mode-map (kbd "M->") 'emms-playlist-mode-last)
-    (define-key emms-playlist-mode-map (kbd "C-n") 
'emms-playlist-mode-select-next)
-    (define-key emms-playlist-mode-map (kbd "C-p") 
'emms-playlist-mode-select-previous)
hunk ./emms-playlist-mode.el 91
+    (define-key emms-playlist-mode-map (kbd "<mouse-2>") 
'emms-playlist-mode-play-current-track)
+    (define-key emms-playlist-mode-map (kbd "RET") 
'emms-playlist-mode-play-current-track)
hunk ./emms-playlist-mode.el 138
-
-;; Buggy
-(defun emms-playlist-mode-yank ()
-  "Yank the last Emms track killed into the buffer."
-  (interactive)
-  (let ((track nil)
-       (start nil))
-    (with-temp-buffer
-      (yank)
-      (setq track (get-text-property (point-min) 'emms-track)))
-    (if track
-       (funcall emms-playlist-insert-track-function track)
-      (error "No playlist info to yank"))))
-
-;; The logic for killing tracks in an interactive manner is
-;; suprisingly annoying
-(defun emms-playlist-mode-kill-track ()
-  "Kill the track at point."
-  (interactive)
-  (let ((region (emms-property-region (point) 'emms-track))
-       (inhibit-read-only t))
-    (cond ((not (emms-playlist-track-at))
-          (kill-line 1) (current-kill 1))
-         ((and (not (emms-playlist-mode-selected-at))
-               (emms-playlist-track-at))
-          (kill-region (car region)
-                       (cdr region))
-          (emms-playlist-mode-kill-track))
-         ((and emms-player-playing-p
-               (emms-playlist-mode-selected-at))
-          (emms-stop)
-          (emms-next-noerror)
-          (kill-region (car region)
-                       (cdr region))
-          (emms-playlist-mode-kill-track))
-         ((and (not emms-player-playing-p)
-               (emms-playlist-mode-selected-at))
-          (kill-region (car region)
-                       (cdr region))
-          (emms-playlist-mode-kill-track))
-         (t (error "Cannot kill content at point")))))
hunk ./emms-playlist-mode.el 151
+
+(defun emms-playlist-mode-insert-newline ()
+  "Insert a newline at point."
+  (interactive)
+  (let ((inhibit-read-only t))
+    (newline)))
+
+;;; --------------------------------------------------------
+;;; Killing and yanking
+;;; --------------------------------------------------------
+
+(defun emms-playlist-mode-between-p (p a b)
+  "Return t if P is a point between points A and B."
+  (if (eq a b)
+      nil
+    (eq p (cadr (sort (list a b p) #'<=)))))
+
+;; C-k
+(defun emms-playlist-mode-kill-track ()
+  "Kill track at point."
+  (interactive)
+  (let ((track (emms-playlist-track-at))
+       (inhibit-read-only t))
+    (if track
+       (let ((track-region (emms-property-region (point)
+                                                 'emms-track)))
+         (when (and emms-player-playing-p
+                    (equal (emms-playlist-selected-track) track))
+           (emms-stop))
+         (remove-overlays (point-at-bol) (point-at-eol))
+         (kill-region (car track-region) (cdr track-region)))
+      (kill-line))))
+
+;; C-w
+(defun emms-playlist-mode-kill ()
+  "Kill from mark to point."
+  (interactive)
+  (let ((inhibit-read-only t)
+       (m (mark))                      ; throw error if no mark
+       (p (point))
+       (sm emms-playlist-selected-marker))
+    (kill-region p m)
+    (when (emms-playlist-mode-between-p
+          (marker-position sm) p m)
+      (setq emms-playlist-selected-marker nil)
+      (setq emms-playlist-mode-selected-overlay-marker nil)
+      (emms-stop))))                   ; regardless of state
+
+;; C-y
+(defun emms-playlist-mode-yank ()
+  "Yank into the playlist buffer."
+  (interactive)
+  (let ((inhibit-read-only t))
+    (emms-playlist-mode-remove-overlay-selected)
+    (yank)
+    (emms-playlist-mode-overlay-selected)))
+
+;; M-y
+(defun emms-playlist-mode-yank-pop ()
+  "Cycle through the kill-ring."
+  (interactive)
+  (let ((inhibit-read-only t))
+    (yank-pop)))
hunk ./emms-playlist-mode.el 241
-  (unless (null emms-playlist-mode-selected-overlay-marker)
-    (save-excursion
-      (goto-char emms-playlist-mode-selected-overlay-marker)
-      (remove-overlays (point-at-bol)
-                      (point-at-eol))
-      (emms-playlist-mode-overlay-at-point 
-       'emms-playlist-track-face 1)))
+  (emms-playlist-mode-remove-overlay-selected)
hunk ./emms-playlist-mode.el 247
-         (emms-playlist-mode-overlay-at-point 
+         (emms-playlist-mode-overlay-at-point
hunk ./emms-playlist-mode.el 249
+
+(defun emms-playlist-mode-remove-overlay-selected ()
+  "Remove the overlay from the currently selected track"
+  (unless (null emms-playlist-mode-selected-overlay-marker)
+    (save-excursion
+      (goto-char emms-playlist-mode-selected-overlay-marker)
+      (remove-overlays (point-at-bol)
+                      (point-at-eol))
+      (emms-playlist-mode-overlay-at-point
+       'emms-playlist-track-face 1))))
hunk ./emms-playlist-mode.el 357
-
-(defvar emms-playlist-window-width -25
-  "Window width for the emms-playlist window when it's popuped.")
hunk ./emms-playlist-mode.el 360
-WINDOW-WIDTH is `emms-playlist-window-width'."
+WINDOW-WIDTH is `emms-playlist-mode-window-width'."
hunk ./emms-playlist-mode.el 362
-  (setq emms-playlist-window-width
-       (or window-width emms-playlist-window-width))
-  (split-window-horizontally emms-playlist-window-width)
+  (setq emms-playlist-mode-window-width
+       (or window-width emms-playlist-mode-window-width))
+  (split-window-horizontally emms-playlist-mode-window-width)
}

Context:

[fix manual sectioning
address@hidden 
[Fix conflicts in emms-playlist-mode.el
address@hidden 
[Fix emms.texinfo for PDF output (thanks twb)
address@hidden 
[Added `emms-playlist-mode-go-popup' for popuping emms-playlist as a side
address@hidden
 window.
] 
[emms-info-mp3info.el (emms-info-mp3find-arguments): use info-tracknumber 
instead of info-tracknum, so as to be consistent with ogginfo.
Trent Buck <address@hidden>**20051119150805
 emms-info.el: Update documentation.
] 
[emms-source-file.el: add missing third clause to AUTOLOAD calls.
Trent Buck <address@hidden>**20051028142538] 
[emms-info-libtag.el: Fix a couple of typos.
Trent Buck <address@hidden>**20051119183945] 
[Implement an emms-info function using the libtag package.
Trent Buck <address@hidden>**20051119181528] 
[Finished rewriting manual
address@hidden 
[More manual work, but still only 71 percent done
address@hidden 
[Added support for toggling default action in streams
address@hidden 
[Added a hook for emms-streams
address@hidden 
[debian/emms.emacs-install: Leave symlinks in bytecode dir for 
find-library/function/variable.
Trent Buck <address@hidden>**20051027172739] 
[debian/rules: swap binary-indep and binary-arch bodies, since emms is packages 
as source code.
Trent Buck <address@hidden>**20051027150418] 
[Makefile (ChangeLog): Generate ChangeLog from darcs metadata.
Trent Buck <address@hidden>**20051027133919
 debian/rules (build-stamp): Have make generate the ChangeLog.
 (build-arch): Include ChangeLog and debian/changelog in debian package.
] 
[Added simple player "playsound".
Trent Buck <address@hidden>**20051023012053] 
[Remove TODO from debian/docs.
Trent Buck <address@hidden>**20050912133353] 
[Don't attempt to dh_installchangelogs ChangeLog in debian/rules.
Trent Buck <address@hidden>**20050912125754] 
[Add prefix keys support.
address@hidden 
[manual 71% done
address@hidden 
[fix emms-info-ogginfo laguange
address@hidden 
[manual update (68% done)
address@hidden 
[emms-metaplaylist fix requested by Lukhas
address@hidden 
[A minor spell correction.
address@hidden 
[Make emms-mode-line-icon use the good function to get the current track
address@hidden 
[Rename `emms-playlist-save-active-as-m3u' to 
`emms-playlist-save-current-as-m3u'.
address@hidden 
[emms-playlist-sort.el: New file containing various playlist sort
address@hidden
 functions.
] 
[emms-setup.el: Added `emms-playlist-sort' to `emms-devel'.
address@hidden 
[emms-setup.el: Moved `emms-lyrics' and `emms-playing-time' into
address@hidden
 `emms-all'.
] 
[emms-lyrics.el: New function: `emms-lyrics-restore-mode-line'.
address@hidden 
[emms-playing-time.el: New function: `emms-playing-time-restore-mode-line'.
address@hidden 
[manual work (57% done)
address@hidden 
[emms.el: Should initialize `emms-player-paused-p' to nil at start. Or a
address@hidden
 pause + stop would make `emms-player-paused-p' be wrong.
] 
[emms-mode-line.el: Made `emms-mode-line-alter' be compatible with
address@hidden
 `emms-track-updated-functions'.
] 
[emms-mode-line.el: When artist or title info cann't be achieved, show
address@hidden
 file name without directory.
] 
[emms-mode-line: Changed dead `emms-playlist-current-track-changed-hook'
address@hidden
 to `emms-track-updated-functions'.
] 
[emms-playlist-mode-switch-buffer
address@hidden 
[Yet Another Installment of the manual re-write
address@hidden 
[emms-setup.el re-write
address@hidden 
[more manual re-writing
address@hidden 
[manual work
address@hidden 
[Another installment of manual changes
address@hidden 
[some manual fixes (just the start)
address@hidden 
[Rename emms-default.el to emms-setup.el.
address@hidden 
[emms.el (emms-playlist-new): Use interactive-p rather than
Michael Olson <address@hidden>**20050925165342
 called-interactively-p, since the latter is not available in Emacs21.
] 
[emms-streams.el: Update `emms-info-file-info-song-artist' so that it
Michael Olson <address@hidden>**20050925160336
 can deal with the new interface.
] 
[emms-playlist-mode.el: 3rd attempt to not clobber
Michael Olson <address@hidden>**20050924183844
 emms-playlist-buffer-p.
] 
[List all the changes needed in the manual
address@hidden 
[Update tracks with a specific function, and provide 
emms-track-updated-functions
address@hidden 
[Adding emms-info-ogginfo.el and consiquently modifying emms-default
address@hidden 
[add emms-metaplaylist-mode.el
address@hidden 
[rollback patch to fix adding tracks.
address@hidden 
[emms-playing-time.el: 
address@hidden
 
 1 New functions: `emms-playing-time-enable',
 `emms-playing-time-disable', `emms-playing-time-toggle', for handling
 hook stuffs. 
 
 2 Removed `emms-playing-time-display-p' where unnecessary now. 
 
 3 Updated commentary and author name. :-)
] 
[eemms-lyrics.el:
address@hidden
 
 1 New functions: `emms-lyrics-enable', `emms-lyrics-disable',
 `emms-lyrics-toggle', for handling hook stuffs.
 
 2 Removed `emms-lyrics-display-p' where unnecessary now. 
 
 3 Updated commentary and author name. :-)
] 
[emms-lyrics.el: Fixed a bug in `emms-lyrics-start'.
address@hidden 
[emms-playing-time.el: Applied standard customization definitions.
address@hidden 
[emms-info-mp3info: Provide a way to configure the mp3info output coding system.
address@hidden 
[Add documentation of the define symbols for emms-info.el.
address@hidden 
[remove emms-metaplaylist-mode code from emms-playlist-mode
address@hidden 
[emms-playing-time: Since 'info-playing-time is an int now, changed
address@hidden
 `emms-playing-time-display' accordingly.
] 
[emms-info-mp3info: Use number for 'info-playing-time.
address@hidden 
[emms-playing-time.el: Updated the playing-time retrieval method, so as
address@hidden
 to be able to display playing-time again.
] 
[emms-playlist-mode: Make sure emms-playlist-buffer-p is set, since we
Michael Olson <address@hidden>**20050922132808
 destroy all local variables.
] 
[emms-playlist-mode-go: Add buffer-live-p check to circumvent a
Michael Olson <address@hidden>**20050922132424
 "selecting deleted buffer" error.
] 
[emms-player-mplayer.el: Set resume method to nil to just use pause.
address@hidden 
[fix emms-score.el and emms-info-ogg.el borkage
address@hidden 
[clean-up emms-info-ogg.el
address@hidden 
[fix ogg-info
address@hidden 
[emms-info-mp3info ignores files which are not mp3s
address@hidden 
[Don't set values mp3info has nothing for
address@hidden 
[later-do.el: Run timer after function did run to avoid stacking
address@hidden 
[Inefficiency removed: Update each track only once :P
address@hidden 
[Ignore read-onliness when updating a track in a playlist buffer
address@hidden 
[Use time-less-p instead of <= for times
address@hidden 
[later-do.el emms version
address@hidden 
[emms-streams shouldn't overwrite `emms-track-initialize-functions'
address@hidden 
[Typo fix (findo -> find)
address@hidden 
[emms-info-track-description: Fall back to old behavior if no title and artist
address@hidden 
[Hotfix for emms-streams due to info changed. Please fix later.
address@hidden 
[Fix emms-default.el, and ignore ogg stuff for now.
address@hidden 
[Remove emms-info-later-do.el
address@hidden 
[Fix emms-default.el for new emms-info.el
address@hidden 
[emms-info-mp3info.el updated for newest emms-info.el
address@hidden 
[emms-info.el rewrite.
address@hidden 
[later-do: Work even if the called function errors out.
address@hidden 
[emms-random: Use `emms-playlist-current-select-random'.
address@hidden 
[fixing track killing some more
address@hidden 
[use insert function for yanking
address@hidden 
[Fixed saving/loading for emms-playlist-mode, also added track updating
address@hidden 
[Added track updating to emms.
address@hidden 
[Added emms-playlist-mode-insert-function (fixed sorting and shuffling 
font-lock)
address@hidden 
[Make emms-playlist-current-clear an interactive function.
address@hidden 
[Fix bugs in lyrics and mode-line modes when switching songs, fix yanking in 
playlist buffer
address@hidden 
[Fix track switching error and interactive playlist yanking
address@hidden 
[Fix track switching error and interactive playlist yanking
address@hidden 
[Added 'emms-playlist-clear to the default key-map for emms-playlist-mode
address@hidden 
[Added 'emms-playlist-clear to default playlist keymap
address@hidden 
[Make `emms-playlist-clear' interactive so that I can map it to a key.
address@hidden 
[include streaming into emms-default and fix streaming info from within the 
*EMMS Streams* buffer
address@hidden 
[Make `with-current-emms-playlist' disable read-onlyness.
address@hidden 
[fix emms-streams.el and emms-player-mplayer.el
address@hidden 
[comment out emms-info-playlist breakage
address@hidden 
[emms-playlist-set-playlist-buffer: Ensure the selected buffer is a playlist.
address@hidden 
[Ignore read-onliness when opening a playlist-mode-buffer.
address@hidden 
[fixing errors after breakage
address@hidden 
[Big renaming for current buffer/current playlist distinction.
address@hidden
 All playlist functions which work on the current playlist now are named
 `emms-playlist-current-...'. Other functions named `emms-playlist-...'
 work on the current buffer.
 This affects the following functions:
 
 emms-playlist-clear => emms-playlist-current-clear
 emms-playlist-selected-track => emms-playlist-current-selected-track
 emms-playlist-select-next => emms-playlist-current-select-next
 emms-playlist-select-previous => emms-playlist-current-select-previous
 emms-playlist-select-random => emms-playlist-current-select-random
 emms-playlist-select-first => emms-playlist-current-select-first
 emms-playlist-select-last => emms-playlist-current-select-last
 emms-playlist-insert-source => emms-playlist-current-insert-source
] 
[emms-playlist-new: No, it's a major mode, DONT pass an argument!
address@hidden 
[Making emms-default now emms-playlist-mode compatible
address@hidden 
[emms-playlist-new: Pass positive argument to mode function.
address@hidden 
[Renaming the "playlist" source to "streamlist".
address@hidden
 
 Things might be broken.
] 
[clean-up pseudo font-locking
address@hidden 
["font-locking" for inserted, unselected tracks
address@hidden 
[emms.el missing quote fix, emms-playlist-mode.el kill-track fix
address@hidden 
[Adding a bunch of FIXME tags for the playlist source
address@hidden
 
 When we come to a consensus on the naming, we'll just fix it.
 Yrk should have a word about it, stream-playlist sounds good.
] 
[Fixing emms-playlist-mode-open-buffer
address@hidden 
[emms-playlist-select should not switch to the playlist buffer.
address@hidden 
[Renaming emms-playlist-save to emms-playlist-mode-save-buffer
address@hidden 
[Added docstrings and clean-up for emms-playlist-mode.el
address@hidden 
[A kinder, gentler emms-playlist-mode-go
address@hidden 
[clean-up and emms-playlist-mode-center-current
address@hidden 
[emms-player-mplayer.el: mplayer also knows rm, rmvb, mp4, ...etc.
address@hidden 
[multiple fixes to emms-playlist-mode.el
address@hidden 
[emms-show now knows when nothing is playing.
address@hidden 
[Inhibit read-only in `emms-playlist-insert-track'
address@hidden 
[mpd-updates
Michael Olson <address@hidden>**20050917021138
 emms-player-mpd.el: Add handler for 'resume.
 (emms-player-mpd-paused-p): Remove, since we already have
 emms-player-paused-p.
 (emms-player-mpd-pause): Use toggle instead of either play or
 pause.
] 
[Making emms-playlist-mode-go respect emms-playlist-buffer
address@hidden 
[Add `emms-ensure-player-playing-p'
address@hidden 
[Adding emms-playlist-mode-save and -open
address@hidden 
[Small fixes
address@hidden 
[Be able to clear the playlist buffer even if it's killed.
address@hidden 
[Adding emms-playlist-save-active-as-m3u
address@hidden 
[Fixing a typo in emms-playlist-save-active
address@hidden 
[Docstrings for playlist saving functions
address@hidden 
[Adding m3u playlist format for saving.
address@hidden 
[Added emms-playlist-mode.el
address@hidden 
[Shuffle, sort and source-add don't move point anymore.
address@hidden 
[Provide source insertion
address@hidden 
[Cleaned up `emms-playlist-save' a bit
address@hidden 
[Adding emms-playlist-save and -active-save
address@hidden
 
 Opening will come soon.
 
] 
[Fix emms-playlist-new and make emms-playlist-clear use it.
address@hidden 
[Removing the old emms-save-playlist
address@hidden 
[emms-source-add now checks for an as of yet unset marker, too.
address@hidden 
[Add `emms-playlist-buffer-p'.
address@hidden 
[emms-lyrics.el: Changed to `emms-player-seeked-hook' to
address@hidden
 `emms-player-seeked-functions', defined in `emms.el'.
] 
[emms-playing-time.el: Changed to `emms-player-seeked-hook' to
address@hidden
 `emms-player-seeked-functions', defined in `emms.el'.
] 
[emms.el: Fix seek bug in `emms-player-seek'.
address@hidden 
[emms-lyrics.el: Updated commentary and applied standard customization
address@hidden
 definitions.
] 
[ogg-comment.el: Define macros before using them.
address@hidden 
[Add more mikmod command line args.
address@hidden 
[Added mikmod support (thanks to Martin Schoenmakers)
address@hidden 
[emms-playlist-new, emms-playlist-set-playlist-buffer: New commands.
address@hidden 
[Add `emms-player-simple-regexp'. Also, use it as appropriate.
address@hidden 
[Fixing typo in file regexps for gstreamer
address@hidden 
[Updated define-emms-simple-player examples in emms.texinfo
address@hidden 
[Call widen in shuffle and sort.
address@hidden 
[Added `emms-playlist-delete-track-function'.
address@hidden 
[Remove emms-playlist-kill-track.
address@hidden 
[Fix shuffling in combined sources.
address@hidden 
[Call `emms-shuffle' to shuffle a source.
address@hidden 
[Cleanup of the shuffle/sort stuff
address@hidden 
[emms-shuffle-all: Depend on the value of current, not of emms-player-playing-p
address@hidden 
[Don't make emms-playlist-sort and emms-playlist-shuffle interactive.
address@hidden 
[Keep the selected song correct for shuffling and sorting
address@hidden 
[Throw errors for `emms-next' and `emms-previous' at the end/beginning of the 
playlist
address@hidden 
[Added `emms-randomÃ' (idea by twb)
address@hidden 
[Add shuffling and sorting.
address@hidden 
[Lots of condition-case fixes.
address@hidden 
[First attempt at reading playing time for .ogg
address@hidden
 
 Problem : it's a bit long to read the info now.
 We need to optimize that.
 
] 
[Move gstreamer support into simple player.
address@hidden 
[Add pause and resume to the simple player.
address@hidden 
[emms-stream-info.el: Use emms-playlist-selected-track.
address@hidden 
[Removed old gstreamer wrappers
address@hidden 
[Added new generic wrapper for gstreamer
address@hidden 
[Fixed typo in emms.el
address@hidden
 
 Non quoted hook variable
 
] 
[Rewrote emms-player-gstreamer
address@hidden 
[Typo: It's emms-playlist-insert-track, not ...-track-insert.
address@hidden 
[emms-player-mpd doesn't need emms-player-extensions anymore.
address@hidden 
[FAQ: Typo fix (Thes -> The)
address@hidden 
[Fixing the extensions problem.
address@hidden
 
 Just removed the requires, and added require mplayer
 in emms-default.
 
] 
[Select a track after adding, too, if none is selected.
address@hidden 
[Rename emms-mpd.el to emms-player-mpd.el
address@hidden 
[Rename emms-lyric.el to emms-lyrics.el
address@hidden 
[Add speex support
address@hidden 
[Add pause and seek support to emms.el.
address@hidden
 This factors out the mplayer support into emms-player-mplayer.el,
 and removes emms-player-extensions.el.
] 
[renaming the provide, Emacs complains otherwise
address@hidden 
[Fixed emms-mode-line-icon and -playing-time
address@hidden 
[Rename emms-gstreamer.el to emms-player-gstreamer.el
address@hidden 
[fixing emms-lyric.el and emms-mode-line.el
address@hidden
 
 I don't have any lyric file, so I can't test it. But 
 there are no errors :)
 
 
] 
[emms.el (with-current-emms-playlist): Also recreate when the buffer is
address@hidden
 dead.
] 
[emms.el (emms-next-noerror): Always return non-nil when
address@hidden
 `emms-playlist-select-next' doesn't error out.
] 
[Playlist buffer rewrite
address@hidden 
[Initial commit (CVS 2005-09-11)
address@hidden 
Patch bundle hash:
85db0904edfe99fc17540fb35cc74cfff62556ae
-- 
"Cut your own wood and it will warm you twice"

reply via email to

[Prev in Thread] Current Thread [Next in Thread]