aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorforcer <forcer>2005-09-22 18:46:00 +0000
committerforcer <mwolson@gnu.org>2005-09-22 18:46:00 +0000
commitb2ac5e98453572ab46f717804bdf79aab84286ee (patch)
tree63ba7f4031bb8956920018eb55339a00cd8700b6
parentcaf31401b5ed00a16b1b201204e030f15579b610 (diff)
emms-info-mp3info: Provide a way to configure the mp3info output coding system.
darcs-hash:20050922184657-2189f-122182bd8d0dbb1f966161be07d1c03b121591b1.gz
-rw-r--r--emms-info-mp3info.el17
1 files changed, 12 insertions, 5 deletions
diff --git a/emms-info-mp3info.el b/emms-info-mp3info.el
index cf94a43..2f7bd59 100644
--- a/emms-info-mp3info.el
+++ b/emms-info-mp3info.el
@@ -44,6 +44,11 @@
external mp3info program"
:group 'emms-info)
+(defcustom emms-info-mp3info-coding-system 'latin-1
+ "*Coding system used in the output of mp3info."
+ :type 'coding-system
+ :group 'emms-info-mp3info)
+
(defcustom emms-info-mp3info-program-name "mp3info"
"*The name/path of the mp3info tag program."
:type 'string
@@ -69,11 +74,13 @@ This is a useful element for `emms-info-functions'."
(when (and (eq 'file (emms-track-type track))
(string-match "\\.[Mm][Pp]3\\'" (emms-track-name track)))
(with-temp-buffer
- (when (zerop (apply 'call-process
- emms-info-mp3info-program-name
- nil t nil
- (emms-track-name track)
- emms-info-mp3find-arguments))
+ (when (zerop
+ (let ((coding-system-for-read emms-info-mp3info-coding-system))
+ (apply 'call-process
+ emms-info-mp3info-program-name
+ nil t nil
+ (emms-track-name track)
+ emms-info-mp3find-arguments)))
(goto-char (point-min))
(while (looking-at "^\\([^=]+\\)=\\(.*\\)$")
(let ((name (intern (match-string 1)))