Wed Jul 5 20:47:48 JST 2006 Damien Elmes <[EMAIL PROTECTED]>
* browser: refactor level handling code
- remove insert-track-function, it's not needed
- playlist indentation is now handled the same way as the browser,
using format strings
- dynamically bind the relative level to make the above work
- indent tracks a little more to make them visibly "under" albums
New patches:
[browser: refactor level handling code
Damien Elmes <[EMAIL PROTECTED]>**20060705114748
- remove insert-track-function, it's not needed
- playlist indentation is now handled the same way as the browser,
using format strings
- dynamically bind the relative level to make the above work
- indent tracks a little more to make them visibly "under" albums
] {
hunk ./emms-browser.el 152
-(defcustom emms-browser-insert-track-function
- 'emms-browser-insert-track-standard
- "*A function to insert a track into the playlist.
-The default behaviour indents tracks depending on whether you're
-adding an album, artist, etc."
- :group 'emms-browser
- :type 'function)
-
hunk ./emms-browser.el 207
+(defvar emms-browser-current-indent nil
+ "Used to override the current indent, for the playlist, etc.")
+
hunk ./emms-browser.el 745
-(defun emms-browser-insert-playlist-group (type bdata level)
- "Insert a group description into the playlist buffer.
-Eg. [album] foo bar"
- (let ((short-type (substring (symbol-name type) 5))
- group cover)
- (setq group (emms-browser-format-line bdata 'playlist))
+(defun emms-browser-playlist-insert-group (bdata)
+ "Insert a group description into the playlist buffer."
+ (let* ((type (emms-browser-bdata-type bdata))
+ (short-type (substring (symbol-name type) 5))
+ (name (emms-browser-format-line bdata 'playlist)))
hunk ./emms-browser.el 752
- (insert
- (emms-browser-make-indent-for-level level))
- ;; FIXME - we've cut out [type] - support it in format strings
- (insert group "\n"))))
+ (insert name "\n"))))
hunk ./emms-browser.el 754
-(defun emms-browser-insert-track (track name level)
- "Insert a track into the playlist buffer, called NAME.
-LEVEL is used to control indentation."
- (funcall emms-browser-insert-track-function track name level))
+(defun emms-browser-playlist-insert-track (bdata)
+ "Insert a track into the playlist buffer."
+ (let ((name (emms-browser-format-line bdata 'playlist))
+ (track (car (emms-browser-bdata-data bdata))))
+ (with-current-emms-playlist
+ (goto-char (point-max))
+ (insert (emms-propertize
+ name
+ 'face 'emms-playlist-track-face
+ 'emms-track track)
+ "\n"))))
hunk ./emms-browser.el 766
-(defun emms-browser-insert-track-standard (track name level)
- (with-current-emms-playlist
- (goto-char (point-max))
- (insert (emms-propertize
- (concat
- (emms-browser-make-indent-for-level level)
- name)
- 'face 'emms-playlist-track-face
- 'emms-track track)
- "\n")))
+(defun emms-browser-playlist-insert-bdata (bdata starting-level)
+ "Add all tracks in BDATA to the playlist."
+ (let ((type (emms-browser-bdata-type bdata))
+ (name (emms-browser-bdata-name bdata))
+ (level (emms-browser-bdata-level bdata))
+ emms-browser-current-indent)
+
+ ;; adjust the indentation relative to the starting level
+ (when starting-level
+ (setq level (- level (1- starting-level))))
+ ;; we temporarily rebind the current indent to the relative indent
+ (setq emms-browser-current-indent
+ (emms-browser-make-indent level))
+
+ ;; add a group heading?
+ (unless (eq type 'info-title)
+ (emms-browser-playlist-insert-group bdata))
+
+ ;; recurse or add tracks
+ (dolist (item (emms-browser-bdata-data bdata))
+ (if (not (eq type 'info-title))
+ (emms-browser-playlist-insert-bdata item starting-level)
+ (emms-browser-playlist-insert-track bdata)))))
+
+;; --------------------------------------------------
+;; Expanding/contracting
+;; --------------------------------------------------
+
+(defun emms-browser-expand-to-level (level)
+ "Expand to a depth specified by LEVEL.
+After expanding, jump to the currently marked entry."
+ (goto-char (point-min))
+ (while (not (eq (buffer-end 1) (point)))
+ (if (< (emms-browser-level-at-point) level)
+ (emms-browser-show-subitems))
+ (emms-browser-next-non-track))
+ (emms-browser-pop-mark)
+ (recenter '(4)))
+
+(defun emms-browser-mark-and-collapse ()
+ "Save the current top level element, and collapse."
+ (emms-browser-mark-entry)
+ (goto-char (point-max))
+ (while (not (eq (buffer-end -1) (point)))
+ (emms-browser-prev-non-track)
+ (emms-browser-kill-subitems)))
+
+(defun emms-browser-find-top-level ()
+ "Move up until reaching a top-level element."
+ (while (not (eq (emms-browser-level-at-point) 1))
+ (forward-line -1)))
+
+(defun emms-browser-mark-entry ()
+ "Mark the current top level entry."
+ (save-excursion
+ (emms-browser-find-top-level)
+ (emms-with-inhibit-read-only-t
+ (add-text-properties (point-at-bol)
+ (point-at-eol)
+ (list 'emms-browser-mark t)))))
+
+(defun emms-browser-pop-mark ()
+ "Return to the last marked entry, and remove the mark."
+ (goto-char (point-min))
+ (let ((pos (text-property-any (point-min) (point-max)
+ 'emms-browser-mark t)))
+ (if pos
+ (progn
+ (goto-char pos)
+ (emms-with-inhibit-read-only-t
+ (remove-text-properties (point-at-bol)
+ (point-at-eol)
+ (list 'emms-browser-mark))))
+ (message "No mark saved!"))))
+
+;; --------------------------------------------------
+;; User-visible commands
+;; --------------------------------------------------
hunk ./emms-browser.el 846
- "Add all tracks at point."
+ "Add all tracks at point.
+Return the previous point-max before adding."
hunk ./emms-browser.el 849
- (let ((first-new-track
- (with-current-emms-playlist
- (point-max))))
- (let ((bdata (emms-browser-bdata-at-point)))
- (emms-browser-add-bdata-to-playlist
- bdata (emms-browser-bdata-level bdata)))
- (run-hook-with-args 'emms-browser-tracks-added-hook first-new-track)))
+ (let ((first-new-track (with-current-emms-playlist (point-max)))
+ (bdata (emms-browser-bdata-at-point)))
+ (emms-browser-playlist-insert-bdata
+ bdata (emms-browser-bdata-level bdata))
+ (run-hook-with-args 'emms-browser-tracks-added-hook
+ first-new-track)
+ first-new-track))
hunk ./emms-browser.el 860
- (let (old-pos)
- (with-current-emms-playlist
- (setq old-pos (point-max)))
- (emms-browser-add-tracks)
+ (let ((old-pos (emms-browser-add-tracks)))
hunk ./emms-browser.el 871
-(defun emms-browser-add-bdata-to-playlist (bdata starting-level)
- "Add all tracks in BDATA to the playlist."
- (let ((type (emms-browser-bdata-type bdata))
- (name (emms-browser-bdata-name bdata))
- (level (emms-browser-bdata-level bdata)))
-
- ;; adjust the indentation relative to the starting level
- (when starting-level
- (setq level (- level (1- starting-level))))
-
- (unless (eq type 'info-title)
- (emms-browser-insert-playlist-group
- type bdata level))
-
- (dolist (item (emms-browser-bdata-data bdata))
- (if (not (eq type 'info-title))
- (emms-browser-add-bdata-to-playlist item starting-level)
- ;; there should only be one track in this bdata, so use the
- ;; bdata
- (setq name (emms-browser-format-line bdata 'playlist))
- (emms-browser-insert-track
- item name level)))))
-
hunk ./emms-browser.el 917
-(defun emms-browser-expand-to-level (level)
- "Expand to a depth specified by LEVEL.
-After expanding, jump to the currently marked entry."
- (goto-char (point-min))
- (while (not (eq (buffer-end 1) (point)))
- (if (< (emms-browser-level-at-point) level)
- (emms-browser-show-subitems))
- (emms-browser-next-non-track))
- (emms-browser-pop-mark)
- (recenter '(4)))
-
hunk ./emms-browser.el 924
-(defun emms-browser-mark-and-collapse ()
- "Save the current top level element, and collapse."
- (emms-browser-mark-entry)
- (goto-char (point-max))
- (while (not (eq (buffer-end -1) (point)))
- (emms-browser-prev-non-track)
- (emms-browser-kill-subitems)))
-
-(defun emms-browser-find-top-level ()
- "Move up until reaching a top-level element."
- (while (not (eq (emms-browser-level-at-point) 1))
- (forward-line -1)))
-
-(defun emms-browser-mark-entry ()
- "Mark the current top level entry."
- (save-excursion
- (emms-browser-find-top-level)
- (emms-with-inhibit-read-only-t
- (add-text-properties (point-at-bol)
- (point-at-eol)
- (list 'emms-browser-mark t)))))
-
-(defun emms-browser-pop-mark ()
- "Return to the last marked entry, and remove the mark."
- (goto-char (point-min))
- (let ((pos (text-property-any (point-min) (point-max)
- 'emms-browser-mark t)))
- (if pos
- (progn
- (goto-char pos)
- (emms-with-inhibit-read-only-t
- (remove-text-properties (point-at-bol)
- (point-at-eol)
- (list 'emms-browser-mark))))
- (message "No mark saved!"))))
-
hunk ./emms-browser.el 1266
-(defun emms-browser-make-indent-for-level (level)
- (make-string (* 1 (1- level)) ?\ ))
+(defun emms-browser-make-indent (level)
+ (or
+ emms-browser-current-indent
+ (make-string (* 2 (1- level)) ?\ )))
hunk ./emms-browser.el 1296
- (indent (or
- (and (eq target 'browser)
- (emms-browser-make-indent-for-level lvl))
- ""))
+ (indent (emms-browser-make-indent lvl))
hunk ./emms-browser.el 1330
+ ;; give tracks a 'boost' (covers take up an extra space)
+ (when (eq type 'info-title)
+ (setq str (concat " " str)))
+
}
Context:
[browser: make faces dependent on type, not level
Damien Elmes <[EMAIL PROTECTED]>**20060704140109
also renamed the faces - you'll need to customize them again if you've
customized them before.
]
[browser: set missing elements to 'misc' to prevent failure
Damien Elmes <[EMAIL PROTECTED]>**20060704131400]
[browser: add no-cover documentation
Damien Elmes <[EMAIL PROTECTED]>**20060704125634]
[browser: don't need point-at-bol, code has been refactored
Damien Elmes <[EMAIL PROTECTED]>**20060704044315]
[emms-browser: Use point-at-bol instead of line-beginning-position for XEmacs compatibility.
Michael Olson <[EMAIL PROTECTED]>**20060702033721]
[browser: add default covers, fix bug
Damien Elmes <[EMAIL PROTECTED]>**20060704044020]
[browser: beginnings of format string support
Damien Elmes <[EMAIL PROTECTED]>**20060702091318]
[cache: set coding cookie in cache file
Damien Elmes <[EMAIL PROTECTED]>**20060702030320]
[Fix more XEmacs issues.
Michael Olson <[EMAIL PROTECTED]>**20060702020302]
[Allow player to set the exact elapsed time of a track. emms-player-mpd and emms-player-mpg321-remote both need this.
Michael Olson <[EMAIL PROTECTED]>**20060702012131]
[Make emms-cache and emms-browser work with XEmacs.
Michael Olson <[EMAIL PROTECTED]>**20060702001247]
[browser: bind 'C' to clear the playlist from the browser window.
[EMAIL PROTECTED]
[emms-browser: add C-j as an alternative to C-RET for console users
[EMAIL PROTECTED]
[browser: d for dired (missing half)
Damien Elmes <[EMAIL PROTECTED]>**20060630124050]
[browser: add 'd' to open dired on the current directory
Damien Elmes <[EMAIL PROTECTED]>**20060629175424]
[browser: fix bug with custom cover fetching function
Damien Elmes <[EMAIL PROTECTED]>**20060629141356]
[browser: cover display, compilation support,more
Damien Elmes <[EMAIL PROTECTED]>**20060629132444
- added optional rendering of cover images in the browser and playlist
(see http://repose.cx/dump/browser-images.png)
- display artist name if browsing by album
- add `emms-browser-get-track-field-function', which allows you to
customise the way the browser sorts the cache into various albums,
artists, etc. includes a function (not on by default) which finds
the artist name by the directory, not tag info - this prevents
making lots of top level artist entries for artists who only appear
on a compilation
]
[emms-playlist-mode-window-width defcustom + emms-playlist-mode-center-when-go
[EMAIL PROTECTED]
[make M-> act like a normal Emacs buffer for emms-playlist-mode
[EMAIL PROTECTED]
[emms-last-played: Count the number of times a track has been played.
[EMAIL PROTECTED]
By default, EMMS will now store the number of times you play a track.
]
[emms-cache.el: fix missing paren in emms-cache-sync
[EMAIL PROTECTED]
[emms-browser.el: fix bad keybinding for emms-browser-goto-random
[EMAIL PROTECTED]
[emms-browser.el: emms-browser-goto-random moves the point to a random line in the browser.
[EMAIL PROTECTED]
[cache: readability fix
Damien Elmes <[EMAIL PROTECTED]>**20060625110138]
[cache: rename function, remove obsolete one, only mark dirty if necessary
Damien Elmes <[EMAIL PROTECTED]>**20060625105130]
[emms-cache.el: Move the pruning code inside emms-cache-refresh.
[EMAIL PROTECTED]
[function name change + testing emms-patches mailing-list
[EMAIL PROTECTED]
[README: added a note about compiling emms-print-metadata, since it apparently wasn't obvious...
[EMAIL PROTECTED]
[README: fix a small typo
Damien Elmes <[EMAIL PROTECTED]>**20060620091959]
[README : Advanced configuration : added item about seeking.
[EMAIL PROTECTED]
[emms-player-mplayer.el: Enable mplayer's slave mode for seek support by
[EMAIL PROTECTED]
default.
]
[AUTHORS: Update William's info.
[EMAIL PROTECTED]
[browser: another read-only bug
Damien Elmes <[EMAIL PROTECTED]>**20060623171252]
[browser: fix bug with read-only buffer
Damien Elmes <[EMAIL PROTECTED]>**20060623150933]
[browser: more search stuff
Damien Elmes <[EMAIL PROTECTED]>**20060623150406
- fix bug where we clobber emms-browser-buffer
- clear search on new search
- add new keybindings - 's a', 's s', etc. to search for different fields.
]
[browser: preliminary browsing support
Damien Elmes <[EMAIL PROTECTED]>**20060623142837]
[cache: add a routine to refresh metadata info
Damien Elmes <[EMAIL PROTECTED]>**20060622114528]
[browser: use the filename if no useful metadata is available
Damien Elmes <[EMAIL PROTECTED]>**20060622112720]
[browser: uniquify track names, mpg321-remote: restart dead process
Damien Elmes <[EMAIL PROTECTED]>**20060622111421]
[browser: bugfixes, sort/display by year
Damien Elmes <[EMAIL PROTECTED]>**20060618122507
- fix a bug with add-and-play on a single file
- display album year if available
- sort albums first by year
- add c-1, c-2 etc keybindings to quickly browse by artist, album,
etc. (conflicts with standard keybindings - assumption is that
digit-argument is probably not very useful in the browser mode)
]
[define-emms-simple-player: Check for existence of the player executable.
[EMAIL PROTECTED]
[emms-player-mpd: Make the playable-p function return nil if we cannot start a connection to mpd.
Michael Olson <[EMAIL PROTECTED]>**20060616233847]
[Rename `emms-score-show' to `emms-score-show-playing'. Add
[EMAIL PROTECTED]
`emms-score-show-file-on-line'.
]
[browser: put track number first (better for compilation albums)
Damien Elmes <[EMAIL PROTECTED]>**20060616153258]
[browser: fix centering when adding new tracks to the playlist
Damien Elmes <[EMAIL PROTECTED]>**20060616132746]
[browser: remember position when hitting 1,2,3 etc
Damien Elmes <[EMAIL PROTECTED]>**20060616131926]
[browser: collapse before expanding (expand-to-level-2, etc)
Damien Elmes <[EMAIL PROTECTED]>**20060616110612]
[browser: fix sorting on tracks without a track number
Damien Elmes <[EMAIL PROTECTED]>**20060616110222]
[mpg321-remote: fix race condition
Damien Elmes <[EMAIL PROTECTED]>**20060616103159]
[mpg321-remote: fix bug related to the player stopping
Damien Elmes <[EMAIL PROTECTED]>**20060616011318]
[Add Adam Sjoegren (copyright got assigned)
[EMAIL PROTECTED]
[mpg321-remote: defvar mask-stop-message
Damien Elmes <[EMAIL PROTECTED]>**20060615094217]
[add player-mpg321-remote
Damien Elmes <[EMAIL PROTECTED]>**20060615063027
- allows seeking in files
- handles files with errors in them (the mpg321 simple version skips
over the files)
]
[browser: fix for the tracknumber fix patch
Damien Elmes <[EMAIL PROTECTED]>**20060615051156]
[browser: handle nil track numbers
Damien Elmes <[EMAIL PROTECTED]>**20060615023650]
[playlist: enable undo, add extra undo binding
Damien Elmes <[EMAIL PROTECTED]>**20060615022826]
[browser: require emms-playlist-sort
Damien Elmes <[EMAIL PROTECTED]>**20060615015543]
[browser: make defcustom lines user variables
Damien Elmes <[EMAIL PROTECTED]>**20060615013606]
[playlist-mode: add 'C' to clear playlist
Damien Elmes <[EMAIL PROTECTED]>**20060615013417]
[info: display progress when adding async
Damien Elmes <[EMAIL PROTECTED]>**20060615012854]
[browser: expand/collapse levels, tab through entries
Damien Elmes <[EMAIL PROTECTED]>**20060614180725]
[browser: refactor data format, bugfixes; emms: add emms-track-p
Damien Elmes <[EMAIL PROTECTED]>**20060614160048
Subitems are now stored in a tree of "bdata" objects, which is
generated when initially displaying the buffer. This makes rendering
simpler and also fixes some bugs where tracks were not being sorted
correctly in the browser and/or the playlist.
Adding items to the playlist now inserts 'group' names when you add a
whole album, artist, etc at a time. These names will be thrown away if
you run emms-shuffle. The sorting routines will correctly sort the
buffer, throwing away the group tags, but then throw an error because
the buffer is not the size they expected it to be. Other playlist
manipulation routines like next/previous should skip over the group
names - if they don't, it's a bug in the playlist code.
An example of the new interface is at:
http://repose.cx/dump/emms-browser.png
]
[emms-lyrics.el: Fix file-exists-p error when finding lyrics file for
[EMAIL PROTECTED]
streams. At present, will just take care of tracks with 'file type.
]
[added the section "Finding files and speed" to the manual
[EMAIL PROTECTED]
[fix bug in emms-playlist-mode-center-current
[EMAIL PROTECTED]
[removed superfluous comment (actually testing darcs send)
[EMAIL PROTECTED]
[debian: add changelog for 2.0-2
[EMAIL PROTECTED]
[debian: Install info file as well
[EMAIL PROTECTED]
[browser: sorting, bugfixes
Damien Elmes <[EMAIL PROTECTED]>**20060612051800
- add sorting for subitems (albums, tracks, etc)
- make isearching expand the current entry automatically
- rename subitems-exist to subitems-visible (clearer)
]
[updated manual about emms-foobar-file prefix toggling
[EMAIL PROTECTED]
[emms-cache: add pruning support, make save/load interactive
Damien Elmes <[EMAIL PROTECTED]>**20060611095400]
[Use better exclude regexp, so that people can load music files with '#' in the middle of the name.
Michael Olson <[EMAIL PROTECTED]>**20060610230507]
[emms-info: Never return 0 for info-mtime, since emms-time-less-p does not like this. Use nil instead.
Michael Olson <[EMAIL PROTECTED]>**20060610230409]
[Add mpd volume settings to custom
Martin Schoenmakers <[EMAIL PROTECTED]>**20060609231150
Small patchlet so mpd users can use custom to change the volume setting
backend to use the appropriate volume functions.
]
[browse subcategories (eg artist->album->title)
Damien Elmes <[EMAIL PROTECTED]>**20060609185950
- subcategories can now be expanded and contracted, and added to
playlist
- see the new keybindings at the top of the file
- add new faces for the various sublevels (only the dark background
colours are useful at the moment - any light background users want
to fix that?)
- fix a bug in emms-smart-browse with (recenter)
]
[update emms-cache.el commentary
Damien Elmes <[EMAIL PROTECTED]>**20060609064935]
[emms-player-mpd: Add functionality to dump MusicPD data into the EMMS cache. This allows for easy integration with emms-browser.el.
Michael Olson <[EMAIL PROTECTED]>**20060609043831]
[emms-player-mpd: Rename volume functions to better match the namespace created by emms-volume.el.
Michael Olson <[EMAIL PROTECTED]>**20060609043643]
[emms-player-mpd: Fix minor bug when importing the current MusicPD playlist into EMMS.
Michael Olson <[EMAIL PROTECTED]>**20060609043538]
[emms-setup: Get rid of pointless compiler warning.
Michael Olson <[EMAIL PROTECTED]>**20060609042002]
[emms-cache: Small compiler fix.
Michael Olson <[EMAIL PROTECTED]>**20060609041606]
[emms-cache: Add standard enable/disable/toggle interface and do a docfix for emms-cache-set-function.
Michael Olson <[EMAIL PROTECTED]>**20060609040108]
[Standardize copyright notices. Add COPYING file. Mention license in README.
Michael Olson <[EMAIL PROTECTED]>**20060608194123]
[Fix compiler warnings in emms-cache.el.
Michael Olson <[EMAIL PROTECTED]>**20060608184612]
[emms-metaplaylist-mode: Fix bug introduced by the recent emms-playlist-mode overhaul. Add faces for light backgrounds.
Michael Olson <[EMAIL PROTECTED]>**20060608143846]
[NEWS is new
[EMAIL PROTECTED]
[emms-playlist-mode: Facify tracks on startup.
[EMAIL PROTECTED]
[refactor browser mode creation code
Damien Elmes <[EMAIL PROTECTED]>**20060608123618
- make the rendering function (browse-by-artist, etc) responsible for
the mode name
- fix a bug where the wrong buffer is used
]
[browser sorting, and bug fixes
Damien Elmes <[EMAIL PROTECTED]>**20060608105253
- sort tracks when they're added to the playlist
- fix a bug where we didn't uniquify the buffer
- distinguish between files and urls
- modify emms-playlist-sort to accept an optional region
]
[update modeline when changing browsing method
Damien Elmes <[EMAIL PROTECTED]>**20060608094037]
[avoid rebuilding the browser window each time
Damien Elmes <[EMAIL PROTECTED]>**20060608092623]
[fix RET on trailing \n
Damien Elmes <[EMAIL PROTECTED]>**20060608090703
\n isn't propertized which means hitting RET on a playlist or browser
entry fails. this patch moves the point before trying to read the
properties.
]
[add a metadata browser - emms-browser.el
Damien Elmes <[EMAIL PROTECTED]>**20060608084400
* preliminary work on a metadata browser - still alpha, but it's
useable for me
* also updated my email address in emms-cache.el (whoops)
]
[small typo fix
Damien Elmes <[EMAIL PROTECTED]>**20060608032546]
[emms.el: Change directory to / before starting the player.
[EMAIL PROTECTED]
[emms-playlist-mode: When making new overlays, do not allow the rear to advance. This prevents some display issues. If we really need to modify the text there, we should be using (insert-before-markers).
Michael Olson <[EMAIL PROTECTED]>**20060607215212]
[Make emms-property-region bulletproof.
Michael Olson <[EMAIL PROTECTED]>**20060607215113]
[Fix typo in emms-property-region
[EMAIL PROTECTED]
[emms.el, simplified emms-property-region considerably.
[EMAIL PROTECTED]
[Very basic support for recording the time you last played a track.
[EMAIL PROTECTED]
* emms-last-played.el: New file.
Nothing fancy right now, more to come soon.
* emms-setup.el: emms-devel now requires and setups emms-last-played.
]
[Mark the cache as dirty for each modification.
[EMAIL PROTECTED]
[emms.el: The currently playing marker now should stay where it is, even for yanks
[EMAIL PROTECTED]
[emms-playlist-mode: Stop overlay from being attached to text inserted before it
[EMAIL PROTECTED]
[fix damien elmes's email address
Damien Elmes <[EMAIL PROTECTED]>**20060607154000]
[emms sources now switch add/play behavior when a prefix argument is supplied.
[EMAIL PROTECTED]
[Add autoloads to emms-setup.el
[EMAIL PROTECTED]
[Typo, defvar => defcustom for emms-cache-set-function
[EMAIL PROTECTED]
[Cleaned up the cached code in emms.el a bit
[EMAIL PROTECTED]
[refactor caching code into emms-cache.el
Damien Elmes <[EMAIL PROTECTED]>**20060607125345
* caching support is now provided via two function vars in emms.el,
emms-cache-get-function and emms-cache-set-function
* (emms-standard) or above will enable caching support
* you'll need to remove .emms-cache or s/emms-info-cache/emms-cache-db/
]
[emms-info: Fix bug that occurs after clearing the current playlist and trying to re-add songs to it.
Michael Olson <[EMAIL PROTECTED]>**20060606144439]
[emms-playlist-mode doesn't need overlay compatibility anymore
[EMAIL PROTECTED]
[emms-playlist-mode.el - now with less overlay!
[EMAIL PROTECTED]
[AUTHORS: fixed Lucas' e-mail address
[EMAIL PROTECTED]
[AUTHORS: Damien Elmes address updated
[EMAIL PROTECTED]
[info-cache-dirty/coding
Damien Elmes <[EMAIL PROTECTED]>**20060605163339
* mark the info cache as dirty when it's modified, so we don't have to
write it out all the time
* save the cache as mule-utf-8 - comments? i'm not sure if this is
correct
]
[emms-info caching (thanks to Damien Elmes)
[EMAIL PROTECTED]
[Sort file names from `emms-source-file-directory-tree-function'.
[EMAIL PROTECTED]
[Add some sources for inserting playlists without inserting their contents, and likewise for directories of playlist files. Exclude some files and directories from being added when walking directories.
Michael Olson <[EMAIL PROTECTED]>**20060604195602]
[emms-player-mpd: Differentiate between files and URLs when it makes sense to do so.
Michael Olson <[EMAIL PROTECTED]>**20060604195449]
[Miscellaneous minor cleanups.
Michael Olson <[EMAIL PROTECTED]>**20060604195311]
[Make sure we never have an empty track description when inserting a song into a playlist buffer.
Michael Olson <[EMAIL PROTECTED]>**20060604194940]
[Remove debian-extras package as requested by ftpmasters (debian)
[EMAIL PROTECTED]
[Put volume options in their own customize group.
Martin Schoenmakers <[EMAIL PROTECTED]>**20060601193853
Added a separate emms-volume group for customize and put things there instead
of in the main thing.
]
[Make handling of multiple playlist buffers less error-prone.
Michael Olson <[EMAIL PROTECTED]>**20060531203810]
[emms-volume.el: Cosmetic stuff, defvar -> defcustom
[EMAIL PROTECTED]
[emms-volume.el: Minor cosmetic cleanup
[EMAIL PROTECTED]
[emms-volme.el: Add some requires.
[EMAIL PROTECTED]
[emms-volume-amixer.el: Provide a way to set the control for amixer
[EMAIL PROTECTED]
[AUTHORS: Add Martin Schoenmakers. Welcome! :-)
[EMAIL PROTECTED]
[Add emms-volume and emms-volume-amixer.
Martin Schoenmakers <[EMAIL PROTECTED]>**20060530223500
New files: emms-volume.el provides some general volume changing things,
including a minor mode to more easily change volume when not in the
EMMS buffer. emms-volume-amixer.el is a backend using amixer.
]
[emms-streams: Re-add space after prompt and use completion for type.
Michael Olson <[EMAIL PROTECTED]>**20060530190620]
[emms-streams: When the user wants emms-streams to play the selected stream instead of add it, create our own playlist buffer. When quitting, if we own the current playlist buffer, kill it.
Michael Olson <[EMAIL PROTECTED]>**20060530144243]
[allow nonzero ogginfo exit plus some reindenting
Martin Schoenmakers <[EMAIL PROTECTED]>**20060530130411
When ogginfo gave a nonzero value on exit, any valid data would get tossed
if there was any. This prevented emms from showing info for files that are
tagged but a bit odd.
Also reindented emms-info-ogginfo accordingly, which incidentally removed
some tabs in favour of spaces.
]
[emms-streams: Re-implement yank and kill so that they do the right thing with emms-stream-list.
Michael Olson <[EMAIL PROTECTED]>**20060530045429]
[emms-streams: Implement kill and yank.
Michael Olson <[EMAIL PROTECTED]>**20060530040114]
[emms-streams: Make hitting RET on a URL do the right thing, improve cursor movement, and mark the buffer as unmodified after performing a save.
Michael Olson <[EMAIL PROTECTED]>**20060529030043]
[emms-player-mpd: Make seek work correctly.
Michael Olson <[EMAIL PROTECTED]>**20060525033120]
[emms-player-mpd: Use more robust method of detecting whether we need to force-feed MusicPD our playlist.
Michael Olson <[EMAIL PROTECTED]>**20060525014253]
[emms-playlist-mode: Make "d" kill the entire line. This seems to be a good compromise of those who use C-k and those who want more standard object-killing behavior.
foo**20060524200008]
[emms-player-mpd: When showing the currently-playing song, prepend the name of the radio station, if it exists.
foo**20060524195911]
[emms-player-mpd: Fix bug that caused unconditional reloading of the entire MusicPD playlist whenever the track was changed manually.
Michael Olson <[EMAIL PROTECTED]>**20060524061655]
[emms-player-mpd: Overhaul for streamlist support, and fix a few miscellaneous issues.
Michael Olson <[EMAIL PROTECTED]>**20060524055707]
[emms-player-mpd: Add a few checks to make sure that the given buffer exists before trying to do anything with it.
Michael Olson <[EMAIL PROTECTED]>**20060517035419]
[emms-source-playlist: Do not expand names of files in playlists, as this can cause problems with emms-player-mpd in some configurations.
Michael Olson <[EMAIL PROTECTED]>**20060516081257]
[emms-playlist-mode: Implement the option (disabled by default) of opening a new EMMS buffer for a playlist, when hitting RET on one.
Michael Olson <[EMAIL PROTECTED]>**20060510040730]
[emms-playlist-mode.el: Don't put a period after the mode map. This hangs 21.4 on display.
[EMAIL PROTECTED]
[TAG 2.0
[EMAIL PROTECTED]
Patch bundle hash:
38397b1dba8392d62a47b581f59b3ae5fe00c592
_______________________________________________
Emms-patches mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emms-patches