mpdlrc

command module
v0.7.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 7, 2023 License: MIT-0 Imports: 12 Imported by: 0

README

mpdlrc

https://github.com/eNV25/mpdlrc/

mpdlrc displays synchronized lyrics for the currently playing track. It uses the track's file path to find an .lrc file, e.g. file.mp3 => file.lrc. In the future, it may be extended to support synchronized lyrics embedded in the audio file.

Install

Installation requires a go compiler and the go tool.

Install to ${GOPATH:-$HOME/go}/bin using the go tool.

$ go install github.com/env25/mpdlrc@latest

or use master branch

$ go install github.com/env25/mpdlrc@master

NOTE: You may need to add ${GOPATH:-$HOME/go}/bin to $PATH.

Set up and Configure

You must set up MPD first. If you use MPD_HOST (and MPD_PORT) for the mpc command-line client see man:mpc(1), mpdlrc will pick those up. If you use a unix socket to connect to mpd no further configuration is required. Otherwise, since mpd doesn't allow clients to query the information, you need to at least configure the MusicDir option.

Configuration is done using a TOML config file. The config file should be located in ${XDG_CONFIG_HOME:-$HOME/.config}/mpdlrc/config.toml. More exhaustive documentation for the config file can be found in docs/config-docs.toml.

Example file, after setting MPD_HOST=localhost MPD_PORT=6600:

MusicDir = "$HOME/Music"

Run

$ mpdlrc

Screenshot

screenshot.png

Documentation

Overview

Package main

Directories

Path Synopsis
Package internal contains the [Application] struct and other packages.
Package internal contains the [Application] struct and other packages.
config
Package config implements the [Config] structure, and holds related functions.
Package config implements the [Config] structure, and holds related functions.
event
Package event implements [tcell.Event] and derived types.
Package event implements [tcell.Event] and derived types.
events
Package events implements functions dealing with channels of [tcell.Event].
Package events implements functions dealing with channels of [tcell.Event].
lyrics
Package lyrics implements the [Lyrics] structure.
Package lyrics implements the [Lyrics] structure.
mpd
Package mpd provides the client side interface to MPD (Music Player Daemon).
Package mpd provides the client side interface to MPD (Music Player Daemon).
mpdconf
Package mpdconf has a MPD config file scanner.
Package mpdconf has a MPD config file scanner.
panics
Package panics implements a panic handler.
Package panics implements a panic handler.
styles
Package styles implements some elements in common used by widgets.
Package styles implements some elements in common used by widgets.
timerpool
Package timerpool implements a global timer pool.
Package timerpool implements a global timer pool.
xfilepath
Package xfilepath contains some functions complementing [filepath].
Package xfilepath contains some functions complementing [filepath].
Package lrc implements an [LRC format] parser.
Package lrc implements an [LRC format] parser.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL