Back to Oh My Posh

Spotify

website/docs/segments/music/spotify.mdx

29.16.02.5 KB
Original Source

What

Show the currently playing song in the Spotify client.

:::caution Be aware this can make the prompt a tad bit slower as it needs to get a response from the Spotify player.

All playback states are supported on every platform (playing/paused/stopped, and an optional ad state on Windows and WSL). On Windows the data is read from the System Media Transport Controls, which covers both the native Spotify client and the Microsoft Store version, with a fall-back to scraping the Edge PWA window title. On WSL the same SMTC session is queried via the Windows interop powershell.exe, so the Linux side sees the same information the Windows host does. :::

Sample Configuration

import Config from "@site/src/components/Config.js";

<Config data={{ type: "spotify", style: "powerline", powerline_symbol: "\uE0B0", foreground: "#ffffff", background: "#1BD760", options: { playing_icon: "\ue602 ", paused_icon: "\uf04c ", stopped_icon: "\uf04d ", ad_icon: "\ueebb " } }} />

Options

NameTypeDefaultDescription
playing_iconstring\ue602 text/icon to show when playing
paused_iconstring\uf04c text/icon to show when paused
stopped_iconstring\uf04d text/icon to show when stopped
ad_iconstring\ueebb text/icon to show when an advertisement is playing (Windows/WSL)

Template (info)

:::note default template

template
{{ .Icon }}{{ if ne .Status \"stopped\" }}{{ .Artist }} - {{ .Track }}{{ end }}

:::

Properties

NameTypeDescription
.Statusstringplayer status (playing, paused, stopped, ad)
.Artiststringcurrent artist
.Trackstringcurrent track
.Iconstringicon (based on .Status)