对于使用Spotify作为主力音乐流媒体的人来说,Spotify官方的桌面app体验并不是很好,无法看歌词,而且UI水平对于我个人审美来说感觉并不是很好看。
Spotify 第三方客户端
Spotify webUI
这时候就要选择第三方的Spotify客户端了,或者也可以使用Spotify的webUI然后使用美化插件,我webUI使用的Arc浏览器搭配上Gallery美化,其实最后的效果还可以,而且很轻量化,除了没法看歌词都很完美。
Spotify TUI
但是webUI到底还是官方的UI而且没法看歌词,而且作为重度终端使用者,还是希望在终端上使用Spotify。我选择使用的是spotify_player
一个用rust开发的开源的Spotify TUI,使用vim的键位并且在iTerm2
中可以显示专辑封面,同时也可以在配置文件~/.config/spotify-player/app.toml
中进行自定义。
Spotify Lyrics
接下来要解决官方客户端无法看歌词的问题,我们可以使用sptlrx
这个开源的终端歌词同步软件,搭配spotify_player
使用可以看当前歌曲的歌词。
Custom Your TUI
这样我们就实现了在终端上使用Spotify并且显示滚动歌词,同时搭配cava
(一个Audio Visualizer,依赖backgroud Music
实现),最后使用tty-clock
为整个布局点缀一下,就可以实现封面的效果了。
Optimization
虽然这样布局很不错,但是每次都要手动分屏很麻烦,能不能实现在终端敲一个命令自动分屏布局并且每个pane
自动执行对应的命令呢,当然是可以的啦。
我一开始选择使用tmux
和tmuxp
这样就可以用yml
配置文件写好tmux session
布局并且在对应的pane
执行不同的命令,但是研究了一下tmuxp
发现好像无法实现封面那样的复杂布局,只有几个预设的布局,而且tmux
无法显示超过1M大小的图片所以spotify_player
无法显示图片。
所以最后另辟蹊径,使用AppleScript
直接对iTerm2
进行布局。
|
|
这样将AppleScript
保存为scpt
文件,只需要在终端中用osascript scpt文件路径
执行AppleScript
脚本就可以实现一键布局啦。如果嫌每次输osascript
命令很麻烦,在~/.zshrc
中用alias
映射一下命令或者写个shell
脚本添加到环境变量就可以啦。
这就是最后的效果啦。
- 如果要使用本教程需要会一点
Unix-like
系统的操作,最基础的ls cd
这些需要会使用,如果是Mac则要安装Homebrew
作为包管理器,方便管理和安装。- 如果要使用
spotify_player
需要一个Spotify的会员账号,并且去dev spotify申请一个client id
。