[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/emms 7263ea6 1/7: *.el: Misc improvements and fixes w.r
From: |
ELPA Syncer |
Subject: |
[elpa] externals/emms 7263ea6 1/7: *.el: Misc improvements and fixes w.r.t lexical binding |
Date: |
Mon, 3 May 2021 09:57:13 -0400 (EDT) |
branch: externals/emms
commit 7263ea6f64b1bbf4de89cac6501be2e5d8e3fe9c
Author: Yoni Rabkin <yoni@rabkins.net>
Commit: Yoni Rabkin <yoni@rabkins.net>
*.el: Misc improvements and fixes w.r.t lexical binding
* jack.el: Enable lexical-binding.
* emms-playlist-limit.el (emms-playlist-limit--limit-playlist):
Use a closure.
* emms-player-mpg321-remote.el (emms-player-ignore-stop): Declare,
so as to fix a mis-compilation in `emms-player-mpg321-remote-notify-emms`.
* emms-last-played.el (emms-last-played-format-date): Use lexical binding.
* emms-browser.el (emms-browser-filter-only-dir)
(emms-browser-filter-only-type, emms-browser-filter-only-recent):
Return a closure.
Patch by Stefan Monnier
---
emms-browser.el | 33 +++++++++++++++++----------------
emms-cache.el | 2 +-
emms-last-played.el | 10 +++++-----
emms-player-mpg321-remote.el | 3 ++-
emms-playlist-limit.el | 6 ++----
jack.el | 2 +-
6 files changed, 28 insertions(+), 28 deletions(-)
diff --git a/emms-browser.el b/emms-browser.el
index 5f97104..1ae727b 100644
--- a/emms-browser.el
+++ b/emms-browser.el
@@ -2058,30 +2058,31 @@ This does not refresh the current buffer."
(interactive)
(emms-browser-next-filter t))
-(defun emms-browser-filter-only-dir (path)
- "Generate a function which checks if a track is in path.
-If the track is not in path, return t."
- `(lambda (track)
- (not (string-match ,(concat "^" (expand-file-name path))
- (emms-track-get track 'name)))))
+(defun emms-browser-filter-only-dir (dirname)
+ "Generate a function which checks if a track is in DIRNAME.
+If the track is not in DIRNAME, return t."
+ (let ((re (concat "^" (expand-file-name dirname))))
+ (lambda (track)
+ (not (string-match re (emms-track-get track 'name))))))
(defun emms-browser-filter-only-type (type)
"Generate a function which checks a track's type.
If the track is not of TYPE, return t."
- `(lambda (track)
- (not (eq (quote ,type) (emms-track-get track 'type)))))
+ (lambda (track)
+ (not (eq type (emms-track-get track 'type)))))
;; seconds in a day (* 60 60 24) = 86400
(defun emms-browser-filter-only-recent (days)
"Show only tracks played within the last number of DAYS."
- `(lambda (track)
- (let ((min-date (time-subtract
- (current-time)
- (seconds-to-time (* ,days 86400))))
- last-played)
- (not (and (setq last-played
- (emms-track-get track 'last-played nil))
- (time-less-p min-date last-played))))))
+ (lambda (track)
+ (let ((min-date (time-subtract
+ (current-time)
+ (seconds-to-time (* days 86400))))
+ last-played)
+ (not (and (setq last-played
+ (emms-track-get track 'last-played nil))
+ (time-less-p min-date last-played))))))
+
;; TODO: Add function to clear the cache from thumbnails that have no
associated
;; cover folders. This is especially useful in case the music library path
diff --git a/emms-cache.el b/emms-cache.el
index 9b5deb8..766af8c 100644
--- a/emms-cache.el
+++ b/emms-cache.el
@@ -105,7 +105,7 @@ This is used to cache over emacs sessions.")
(emms-cache-disable)
(emms-cache-enable)))
-(defsubst emms-cache-dirty (&rest ignored)
+(defsubst emms-cache-dirty (&rest _ignored)
"Mark the cache as dirty."
(setq emms-cache-dirty t))
diff --git a/emms-last-played.el b/emms-last-played.el
index 33f1c83..679e98a 100644
--- a/emms-last-played.el
+++ b/emms-last-played.el
@@ -1,6 +1,6 @@
;;; emms-last-played.el --- Support for last-played-time of a track -*-
lexical-binding: t; -*-
-;; Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+;; Copyright (C) 2006-2021 Free Software Foundation, Inc.
;; Author: Lucas Bonnet <lucas@rincevent.net>
;; Keywords: emms, mp3, mpeg, multimedia
@@ -99,7 +99,7 @@ If non-existent, it is set to 1."
(* (- (string-to-number days) 1) 3600 24))))
(defun emms-last-played-format-date (messy-date)
- "Format the messy-date according to emms-last-played-format-alist.
+ "Format the messy-date according to `emms-last-played-format-alist'.
Returns \" ? \" if there's bad input or if an other error occurs.
Input should look like this: \"Sun, 14 Oct 2001 13:34:39 +0200\"."
(condition-case ()
@@ -109,14 +109,14 @@ Input should look like this: \"Sun, 14 Oct 2001 13:34:39
+0200\"."
(my-format "%b %d '%y"))
(let* ((difference (- now messy-date))
(templist emms-last-played-format-alist)
- (top (eval (caar templist))))
+ (top (eval (caar templist) t)))
(while (if (numberp top) (< top difference) (not top))
(progn
(setq templist (cdr templist))
- (setq top (eval (caar templist)))))
+ (setq top (eval (caar templist) t))))
(if (stringp (cdr (car templist)))
(setq my-format (cdr (car templist)))))
- (format-time-string (eval my-format) (seconds-to-time messy-date)))
+ (format-time-string (eval my-format t) (seconds-to-time messy-date)))
(error "Never.")))
(provide 'emms-last-played)
diff --git a/emms-player-mpg321-remote.el b/emms-player-mpg321-remote.el
index 5ed942b..43f2d7b 100644
--- a/emms-player-mpg321-remote.el
+++ b/emms-player-mpg321-remote.el
@@ -170,13 +170,14 @@ If the remote process is not running, launch it."
(emms-player-mpg321-remote-start-process))
(emms-player-mpg321-remote-play-track track))
+(defvar emms-player-ignore-stop)
+
(defun emms-player-mpg321-remote-notify-emms (&optional user-action)
"Tell emms that the current song has finished.
If USER-ACTION, set `emms-player-mpg321-remote-ignore-stop' so that we
ignore the next message from mpg321."
(if user-action
(let ((emms-player-ignore-stop t))
- (ignore emms-player-ignore-stop)
;; so we ignore the next stop message
(setq emms-player-mpg321-remote-ignore-stop
(1+ emms-player-mpg321-remote-ignore-stop))
diff --git a/emms-playlist-limit.el b/emms-playlist-limit.el
index ed6c8b9..8f274c8 100644
--- a/emms-playlist-limit.el
+++ b/emms-playlist-limit.el
@@ -183,12 +183,10 @@ is non-nil."
(emms-replace-regexp-in-string "info-" ""
(symbol-name type)) regexp))))
(emms-playlist-limit--derive-playlist
playlist
- `(lambda (track) (let ((field (emms-playlist-limit-track-get track (quote
,type))))
- (and field (string-match ,regexp field))))
+ (lambda (track) (let ((field (emms-playlist-limit-track-get track type)))
+ (and field (string-match regexp field))))
bufname)))
-
-
(defun emms-playlist-limit-do (type regexp)
"Switch to a derived playlist containing the tracks with TYPE matching
REGEXP.
e.g.,
diff --git a/jack.el b/jack.el
index 4d17526..cbef8e1 100644
--- a/jack.el
+++ b/jack.el
@@ -1,4 +1,4 @@
-;;; jack.el --- Jack Audio Connection Kit support
+;;; jack.el --- Jack Audio Connection Kit support -*- lexical-binding: t; -*-
;; Copyright (C) 2005-2021 Free Software Foundation, Inc.
- [elpa] externals/emms updated (7556382 -> 6958871), ELPA Syncer, 2021/05/03
- [elpa] externals/emms 7263ea6 1/7: *.el: Misc improvements and fixes w.r.t lexical binding,
ELPA Syncer <=
- [elpa] externals/emms 0f9bc54 2/7: *.el: Avoid the obsolete `defadvice` system, ELPA Syncer, 2021/05/03
- [elpa] externals/emms 02915f7 3/7: * emms-player-mpv.el: use closure, ELPA Syncer, 2021/05/03
- [elpa] externals/emms 3a8ba30 4/7: *.el: Minor improvements and simplifications, ELPA Syncer, 2021/05/03
- [elpa] externals/emms 6958871 7/7: Fix typo in emms-cache-reset, ELPA Syncer, 2021/05/03
- [elpa] externals/emms d56d705 5/7: emms-(playing-time|mode-line).el: Use `define-minor-mode`, ELPA Syncer, 2021/05/03
- [elpa] externals/emms 74429d5 6/7: Make it possible to force-update Emms cache, ELPA Syncer, 2021/05/03