新插件: netease-cloud-music.el (网易云音乐)

我上面写了 curl 保存和使用 cookie 的方法,看了眼 request 库,它好像也有 curl 保存 cookie 的接口(request--curl-cookie-jar),用户的 cookie 信息像这样保存一下感觉会比原有那样每次调用登陆要好一点(不过 cookie 过期时间好像只有十分钟左右)。

另外就是这个方法好像对不使用 curl 的来说没有用?因为 request 除了 curl 外,还有一个 emacs 内置的请求方式。

目前先使用原方法吧。至于 curl ,我等下在 README 上加上并设置相关变量。

  1. 加入了每日推荐歌曲、歌单功能,添加的方式与搜索功能相同;
  2. 修复了在用户歌单添加歌单歌曲时的错误;
  3. 将 TUI 和歌词上的样式全部改为 face ,以方便用户自定义。
1 个赞

我这边用 curl 测试了,如果去掉 countrycode=+86, curl 可以正常返回 200 反馈,如果加上 countrycode=+86 就会返回 501 帐号不存在。

API的后端能否写个补丁兼容我这种情况?

对于每日推荐歌曲,一般都是想随机播放其中的歌,遇到好听的才会加到列表。

但是目前,要播放每日推荐歌曲某一首,必然会将之加入到某个列表中。同时也不能将每日推荐歌曲作为一个歌单来进行播放。

一个妥协的方法是将每日推荐歌曲全部加入Local Playlist, 但是之后遇到喜欢的并没有一个方法将它加到“我喜欢”或者其他自己的歌单列表的方法。

不知道能不能改善下关于每日推荐歌曲的交互逻辑。

对于搜索到的歌单也会遇到这个问题,对于搜到的某个歌单的歌曲也没有很好的方法经过试听之后将之加入到其他的歌单的方法

另外之前说在 netease-cloud-music-delete-song-from-playlist 加询问yes or no,但是实际用着并没有起作用。

这就是 local playlist 的作用,我一开始的目的

这个是我写错了,把 (null index) 改成 index 就好了,我等下去修改

这个我之后加入功能,这个的确有点必要

1 个赞

那之后如何将歌曲 从 local playlist 加到 其他歌单呀

  1. 修复了删除歌曲时无提示出现的问题;
  2. 添加了 storage 功能,现在可以把歌曲放进 storage ,然后可用来加入进其它歌单,快捷键请参考 README
1 个赞

我用TUI, 在非Local Playlist 歌单,播放歌曲有时会报错

request: Format specifier doesn’t match argument type

有时会报错

funcall-interactively: Wrong type argument: numberp, nil

eaf 端没有这个问题

netease-cloud-music 打开的相关buffer中,怎样禁用 evil-mode?设置了

(add-hook 'netease-cloud-music-mode-hook #'evil-emacs-state)

没有起作用,music 单键操作在 evil-mode 里简直灾难。

:hook
  (evil-mode . (lambda () (evil-set-initial-state 'netease-cloud-music-mode 'emacs))))
1 个赞

api 里应该是 countrycode=86,没有加号

curl没问题,不晓得为啥登录时elisp request就是返回nil报错

修复了 TUI 端下播放用户歌单失败问题。(原因是昨天定义 face 之后有一处 face 的忘记更改了 :joy:)

修复了更改用户歌单名称失败的错误。

在按Enter 播放“在那遥远的地方” 之后,下面的歌单全消失了

image

image

emmm,好像是因为网易云音乐云盘的问题,lizhi歌单里面的歌基本都是云盘里的歌。其他歌单没有这个问题。

而且很奇怪,在eaf 端这个歌单里面的歌是都能正常显示正常播放的,但是 TUI端就只显示了2首歌

storage 这个功能也有些问题

在eaf端

添加歌到storage后, netease-cloud-music-storage 值为 ((441722 "太阳照常升起" 14408 "久石譲"))

然后打开其他歌单,执行 netease-cloud-music-add-storage-to-current-playlist 会报错 if: Wrong type argument: numberp, (441722 "太阳照常升起" 14408 "久石譲")

在 TUI 端:

添加同一首歌到storage后, netease-cloud-music-storage 值为 (6)

然后打开其他歌单,执行 netease-cloud-music-add-storage-to-current-playlist 会报错[Netease-Cloud-Music]: Failed to add the songs with playlist! 。 而且netease-cloud-music-show-storage 无法正常显示

你似乎把eaf和 tui 端的api弄混了

这个已解决,刚才发现的,我现在在加新功能,等下提交。

这个我没办法复现,因为我歌单里没有云盘的歌。

windows, mac,手机端 软件都是可以上传歌曲到音乐云盘的,然后再将歌曲从音乐云盘加到歌单。