# TUIJam
A fancy TUI client for Google Play Music.
TUIJam seeks to make a simple, attractive, terminal-based interface to
listening to music for Google Play Music All-Access subscribers.
[![asciicast](https://asciinema.org/a/155875.png)](https://asciinema.org/a/155875)
# Dependencies
* [Python >= 3.6](https://www.python.org/downloads)
* [mpv](https://mpv.io)
* [youtube-dl](https://rg3.github.io/youtube-dl/)
# Installation
To install from source
```bash
git clone git@github.com:cfangmeier/tuijam.git
cd tuijam
python setup.py install --user
```
or from pypi
```bash
pip install --user tuijam
```
or from the AUR
```bash
yay -S tuijam
```
# Configuration
When you first launch TUIJam, it checks for a config file in `$HOME/.config/tuijam/config.yaml` with the following content:
```yaml
email: you@your-email.com
password: your-password
device_id: yourdeviceid
```
If this file doesn't exist, TUIJam will guide you through a first-time setup where you will need to supply your google music email, password, and (optionally) a separate password to encrypt your google credentials locally.
Note that if you have 2-factor setup on your Google account, you need to make
an app-password for TUIJam.
## Additional Configuration
- `persist_queue`: (Default: `True`) Saves the current queue and reloads it when the app resumes
- `reverse_scrolling`: (Default: `False`) Switches the direction of mouse scrolling
# MPRIS Support
TUIJam supports a subset of the [MPRIS](https://specifications.freedesktop.org/mpris-spec/latest/) spec to allow for external control via clients such as [playerctl](https://github.com/acrisci/playerctl). Currently, the following behavior is supported:
- Get current song metadata (Title/Album/Artist)
- Get player status (Playing/Paused/Stopped)
- Play/Pause current song
- Next Song
- Stop
If this causes problems for you, please feel free to create an issue, but this feature can also be disabled by placing the following line in your config file:
```yaml
mpris_enabled: false
```
# Youtube
From version 0.3.0, Youtube videos are included in search results. By default, no video is shown during playback, but this can be changed by adding the following line to the config file:
```yaml
video: true
```
# Controls
- `ctrl-c` quit
- `ctrl-p` toggle play/pause
- `ctrl-k` stop
- `ctrl-q` add all songs in search result to queue
- `ctrl-n` move to next song
- `ctrl-r` view recently played songs
- `ctrl-w` Clear the current queue
- `ctrl-s` shuffle queued songs (Note: If this hangs, try running `stty -ixon` in your terminal and restarting `tuijam`)
- `ctrl-u` Thumbs up the currently playing song
- `ctrl-d` Thumbs down the currently playing song
- `>` seek forward 10 seconds
- `<` seek backwards 10 seconds
- `+` volume up
- `-` volume down
- `tab`/`shift-tab` cycle focus through search/queue/input windows
- In search window,
- `q` Add selected song/album to queue
- `r` Create radio station around selected song/album/artist and add 50 songs from it to queue
- `e` view information about selected song/album/artist
- `backspace` go back in search/expand history
- In queue window,
- `u` move selected song up in queue
- `d` move selected song down in queue
- `delete` remove selected song from queue
- In input window,
- Type search query and press enter. Results are shown in search window.
- Enter an empty query to view the suggested "Listen Now" stations and albums.
# Thanks
TUIJam was heavily inspired by the
[gpymusic](https://github.com/christopher-dG/gpymusic) project, and, of course,
could not exists without the great
[gmusicapi](https://github.com/simon-weber/gmusicapi).
This project is neither affiliated with nor endorsed by Google.
挣扎的蓝藻
- 粉丝: 14w+
- 资源: 15万+
最新资源
- IMG_20241019_203801_edit_288242973348204.jpg
- 基于Flink+Kafka的全链路数仓, 包括实时和离线详细文档+全部资料.zip
- 基于Flink的电商实时数据仓库项目详细文档+全部资料.zip
- 基于flink的电商实时数据分析、推荐、风控项目详细文档+全部资料.zip
- 华盈恒信—福建金辉房地产—1104培训体系研讨问题.doc
- 华盈恒信—福建金辉房地产—培训管理办法1116.doc
- 华盈恒信—福建金辉房地产—南国金辉售楼部培训考核问卷.doc
- 华盈恒信—福建金辉房地产—例:2001年应届毕业生进厂培训、实习计划.doc
- 基于Flink的车联网实时数据平台详细文档+全部资料.zip
- 基于Flink的练习项目详细文档+全部资料.zip
- 华盈恒信—金德精密—员工培训课程大纲.doc
- 基于Flink的批流处理实战案例详细文档+全部资料.zip
- 联纵智达-钱江啤酒—徐鹭钱啤区域经理培训纲要.doc
- 基于Flink的电影数据实时统计网站详细文档+全部资料.zip
- 基于flink的实时计算平台详细文档+全部资料.zip
- 基于flink的实时流计算web平台详细文档+全部资料.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论0