Skip to main content

Display lyrics of the currently playing song in a terminal.

Project description

tulyp

screenshot

tulyp displays the lyrics of the currently playing song in the terminal. It checks for lyrics from 3 sources (stops at the first successful result):

  • genius.com
  • google.com
  • azlyrics.com

Tulyp only works with music players which are compliant with the mpris specification (e.g. Spotify, ncspot). You can specify the player to use as a commandline argument: tulyp spotify. If no player is provided ncspot will be used.

Lyrics will be displayed in a curses window and you can use the arrow keys or j/k to scroll up and down.

Lyrics get saved under XDG_CACHE_HOME/tulyp/artist-title (default: ~/.cache/tulyp/artist-title). If there are cached lyrics for a song, no queries will be executed.

Tulyp continously checks what song is currently playing and automatically reloads itself, to show the appropriate lyrics. You can switch between lyrics sources with number keys:

  • 1 - genius
  • 2 - google
  • 3 - azlyrics

Dependencies (they will be installed with tulyp)

  • beautifulsoup4 to extract lyrics from html
  • dbus-python to get the currently playing song through dbus
  • lyricsgenius provides API to get lyrics from genius.com
  • psutil needed when using ncspot to get the pid of the ncspot process
  • requests to search for lyrincs on google

Install

From PyPi

pipx install tulyp

From source

git clone https://github.com/laszloszurok/tulyp.git
cd tulyp
python -m build
pipx install dist/tulyp-0.0.3-py3-none-any.whl

Naming

  • we got a terminal user interface -> tu
  • we are dealing with lyrics -> ly
  • the program is written in python -> p

I am so good at naming things.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tulyp-0.1.1.tar.gz (104.9 kB view hashes)

Uploaded Source

Built Distribution

tulyp-0.1.1-py3-none-any.whl (10.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page