Emacs EMMS和mp3info / mplayer的Unicode问题

时间:2011-06-27 08:20:02

标签: unicode emacs dot-emacs mplayer

我的Emacs-emms配置存在问题。似乎歌曲ID3tags中的Unicode特殊字符出现时unicode未呈现。例如,Trentemøller(音乐乐队)出演Trentem \ 370ller。 它似乎来自mp3info (当在emacs之外使用mp3info时,这些字符也没有得到很好的渲染),这在使用播放器mpg321时由emms使用。我怎么能在这里解决我的问题?你和其他emms-backend-players有这样的问题吗? 您是否以不存在此问题的方式配置您的emms?如果是,您的配置是什么?

我在MacOSX上工作。在我的终端控制台中,使用Bash比安装其他shell时没有任何问题。

编辑:emms用来播放文件的命令是:

mplayer -slave -quiet -really-quiet <song_file.mp3>

在控制台模式下,mplayer也有unicode问题。所以它来自mp3info,或者来自mplayer,在我看来。

我的emms配置:

;; EMMS
(require 'emms-setup)
     (emms-standard)
     (emms-default-players)

(require 'emms-player-simple nil 'noerror)
     (require 'emms-source-file nil 'noerror)
     (require 'emms-source-playlist nil 'noerror)
     (setq emms-player-list '(emms-player-mpg321
                              emms-player-ogg123
                              emms-player-mplayer))

(setq emms-info-asynchronously nil)
(setq emms-source-file-default-directory "~/Music/")
(setq emms-playlist-buffer-name "*Music*")
(setq emms-player-mpg321-parameters '("-o" "alsa"))

我的.emacs中的我的Unicode设置

(setq locale-coding-system 'utf-8)
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)
(set-selection-coding-system 'utf-8)
(prefer-coding-system 'utf-8)
(set-language-environment "UTF-8")
(set-input-method nil)
(setq read-quoted-char-radix 10)

2 个答案:

答案 0 :(得分:1)

可能你可以使用emms-print-metadata来设置mp3info。

在emms包中包含emms-print-metadata.c:

gcc emms-print-metadata.c -ltag -ltag_c -o emms-print-metadata

将emms-print-metadata移动到您的路径中,并在.emacs中添加此行:

(require 'emms-info-libtag) (setq emms-info-functions '(emms-info-libtag))

享受。 : - )

答案 1 :(得分:0)

我认为,您还需要设置“default-process-coding-system”变量 - 它在所有I / O操作中使用...