ブラウザ版のNotionを便利にするNewtion
SpotifyをTerminalで使う!spotify-tuiの設定・ポイントを解説の絵文字

SpotifyをTerminalで使う!spotify-tuiの設定・ポイントを解説

2022-06-05

2022-06-05

はじめに

こんにちは、音楽聴くの大好きで作りたいと思うこふです。

実際に使った様子

ちなみにターミナルのソフトウェアは iTerm2 を使っています。

Terminal ソフトウェアの設定により、背景・透過などは異なるかと思いますが、関係はありません。

プログラミング経験は不要ですが、馴染みのないツール・用語があると思います。ご了承ください。

導入する手順

インストールと API の取得・設定のみです。

Terminal 系のソフトウェアをインストール

こだわりがなければ基本的に標準で入っているもので大丈夫です。

カスタマイズしやすい、付属機能が多いなど便利な点はあります。

iTerm2 のダウンロード:https://iterm2.com/

spotify-tui のインストール

❯ brew install spotify-tui

API の情報を作成・取得・反映

Spotify のDeveloper ページにアクセスします。

CREATE AN APP をクリックし、以下のような画面でアプリ名・説明を入力します。

※アプリ名を見て、何に利用しているか分かれば OK です。


リダイレクト用の URL を設定します。

http://localhost:8888/callbackです。

Terminal の再起動してから、sptと入力して spotify-tui を起動します。

上記のように Client ID・Client Secret を入力します。

ポートの設定は後から変更できるので、上記の入力以外は ENTER を押してパスして大丈夫です。


以下のようにクライアント(自分側の)設定ファイルが生成されるので、編集することで上書きが可能です。

具体的には、Client ID・Client Secret・Port・Device IDです。

You can edit the config at anytime at ${HOME}/.config/spotify-tui/client.yml. (for snap ${HOME}/snap/spt/current/.config/spotify-tui/client.yml)

使い方解説

設定を工夫します。新たにファイルを作成します。

❯ vim ~/.config/spotify-tui/config.yml

以下は公式配布されているものです。

ここから各種色・ショートカットを変更できます。

# Sample config file # The theme colours can be an rgb string of the form "255, 255, 255" or a string that references the colours from your terminal theme: Reset, Black, Red, Green, Yellow, Blue, Magenta, Cyan, Gray, DarkGray, LightRed, LightGreen, LightYellow, LightBlue, LightMagenta, LightCyan, White. theme: active: Cyan # current playing song in list banner: LightCyan # the "spotify-tui" banner on launch error_border: Red # error dialog border error_text: LightRed # error message text (e.g. "Spotify API reported error 404") hint: Yellow # hint text in errors hovered: Magenta # hovered pane border inactive: Gray # borders of inactive panes playbar_background: Black # background of progress bar playbar_progress: LightCyan # filled-in part of the progress bar playbar_progress_text: Cyan # song length and time played/left indicator in the progress bar playbar_text: White # artist name in player pane selected: LightCyan # a) selected pane border, b) hovered item in list, & c) track title in player text: '255, 255, 255' # text in panes header: White # header text in panes (e.g. 'Title', 'Artist', etc.) behavior: seek_milliseconds: 5000 volume_increment: 10 # The lower the number the higher the "frames per second". You can decrease this number so that the audio visualisation is smoother but this can be expensive! tick_rate_milliseconds: 250 # Enable text emphasis (typically italic/bold text styling). Disabling this might be important if the terminal config is otherwise restricted and rendering text escapes interferes with the UI. enable_text_emphasis: true # Controls whether to show a loading indicator in the top right of the UI whenever communicating with Spotify API show_loading_indicator: true # Disables the responsive layout that makes the search bar smaller on bigger # screens and enforces a wide search bar enforce_wide_search_bar: false # Determines the text icon to display next to "liked" Spotify items, such as # liked songs and albums, or followed artists. Can be any length string. # These icons require a patched nerd font. liked_icon: shuffle_icon: 🔀 repeat_track_icon: 🔂 repeat_context_icon: 🔁 playing_icon: paused_icon: # Sets the window title to "spt - Spotify TUI" via ANSI escape code. set_window_title: true keybindings: # Key stroke can be used if it only uses two keys: # ctrl-q works, # ctrl-alt-q doesn't. back: 'ctrl-q' jump_to_album: 'a' # Shift modifiers use a capital letter (also applies with other modifier keys # like ctrl-A) jump_to_artist_album: 'A' manage_devices: 'd' decrease_volume: '-' increase_volume: '+' toggle_playback: ' ' seek_backwards: '<' seek_forwards: '>' next_track: 'n' previous_track: 'p' copy_song_url: 'c' copy_album_url: 'C' help: '?' shuffle: 'ctrl-s' repeat: 'r' search: '/' audio_analysis: 'v' jump_to_context: 'o' basic_view: 'B' add_item_to_queue: 'z'

おすすめの変更箇所は、ボリュームの上下の幅です。

標準値は 10%の値ですが、5%がおすすめです。

behavior: volume_increment: 5

GUI では面倒なことをやるべきだと思っています。そのため、主に選曲することに利用して便利だと感じます。


補足ですが、Spotifyd を使うことで、spotify-tui ではできないことも可能です。spotify-tui は公式の Web API でできることしか対応できません。

参考:https://github.com/Spotifyd/spotifyd

注意点

実装されていない機能も数多くります。いかがロードマップとなっています。

ロードマップ:https://github.com/Rigellute/spotify-tui#high-level-requirements-yet-to-be-implemented

さいごに

これで Terminal から Spotify を使えるようになり、マウス操作が不要となりました。コマンドを適宜覚えて、上手に活用しようと思います。

参考

関連記事


アバター

こふ

情報通信を専攻している大学生です。大学・趣味・アルバイトでプログラムを書いています。ITサービス・文章を創作することが好きです。

このブログについて

共有する