• Stars
    star
    34
  • Rank 742,520 (Top 16 %)
  • Language
    Perl
  • Created over 13 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Perl Interface for the Music Player Daemon 2 | http://search.cpan.org/dist/App-Pimpd/

Donate - Every tiny cent helps a lot!

NAME

pimpd2 - Perl Interface for the Music Player Daemon 2

DESCRIPTION

pimpd2 is a command-line based MPD client that implements all the features the author was missing from the other awesome client, mpc.

pimpd2

FEATURES

-np, --now-playing

Show basic song information on a single line.

-i, --info

Show all available song information and MPD server status.

-cp, --copy

Copy the currently playing song to destination.

If destination is omitted, uses the target_directory variable from the configuration file.

-cpa, --copy-album

Copy the currently playing album to destination.

If destination is omitted, uses the target_directory variable from the configuration file.

-sh, --shell

Spawn the interactive pimpd2 shell.

All the regular features can be used. Commands that return data that can be added to the current playlist will do so automagically for convenience, since we can not read from standard input while being interactive.

-q, --queue

Queue tracks. Arguments must be valid playlist position IDs as shown in the --playlist output.

You can also use the --search-playlist command if the tracks to be queued follows a pattern.

PLAYLIST INTERACTION

-pls, --playlist

Show the current playlist.

--playlists

List all playlists known by MPD.

-af, --add-files

Add files to the current playlist.

Can read from standard input:

pimpd2 --randomize 42 Nirvana | pimpd2 -af

Accepts file arguments:

pimpd2 -af ~/music/Nirvana/Bleach/*.flac

-a, --add-playlist

Add playlist to the current playlist.

If not given a full name, and the name partially matches existing playlists, prompts for input:

pimpd2 -a 2010

  0 2010-12-indie
  1 2010-12-other
  2 2010-12-pop
  3 2010-12-punk_rock
  4 2010-12-rock
  5 2010-12-undef
choice:

If choice equals 'all', all matching playlists are added.

-r, --randomize

Return n random songs from the collection. The first argument is the number of songs, the second argument is an optional artist name. If an artist name is specified, will only return random songs from that particular artist.

If no arguments are specified, returns 100 random songs.

If you want to add the results to the current playlist, pipe it to --add-files:

pimpd2 -r 12 | pimpd2 -af

Or use the interactive shell ( -sh ) which does this for you automatically.

-ra, --random-album

Return n random full albums.

A pipe to --add-files will add the results to the current playlist.

-rma, --rmalbum

Given a string, searches the current playlist for matching albums, and remove them from the playlist. The string can be a regular expression.

-da, --delete-album

Delete the current album from disk.

-f, --love

Favorize, or love, the current song.

If called with zero arguments, the song will be saved to a playlist following this naming scheme:

%year-%month-%genre.m3u

Else, the argument is used for the playlist name, thus:

pimpd2 --love lovesongs

adds the song to lovesongs.m3u

--loved

Check if the currently playing song is already loved or not.

--unlove

Unlove songs matching given PATTERN.

--lsplaylists

Lists available playlists.

--slove

Search the database with loved songs for PATTERN.

If PATTERN is omitted, returns all loved songs.

-spl, --search-playlist

Search the current playlist for string, possibly a regular expression.

If more then one song is found, queues up the results. See --queue.

COLLECTION INTERACTION

-lsa, --songs

List all songs on album.

If no argument is specified, use the album tag from the currently playing song.

A pipe to --add-files will add the results to the current playlist:

pimpd2 -lsa Stripped | pimpd2 -af

-l, --albums

List all albums where artist is featured.

If no argument is specified, use the artist tag from the currently playing song.

-sdb, --search-db

Search the database for string, possibly a regular expression.

A pipe to --add-files will add the results to the current playlist:

-sar, --search-artist

Search the database for artist.

A pipe to --add-files will add the results to the current playlist:

-sal, --search-album

Search the database for album.

A pipe to --add-files will add the results to the current playlist:

-set, --search-title

Search the database for title.

A pipe to --add-files will add the results to the current playlist:

--stats

Display statistics about MPD

--status

Display MPD status

CONTROLS

-n, --next

Play the next track in the playlist.

-p, --previous

Play the previous track in the playlist.

-cl, --clear

Clear the current playlist.

-cr, --crop

Remove all songs but the current one from the playlist.

-x, --xfade

Set crossfade.

--pause

Toggle playback status.

--repeat

Toggle repeat on/off

--random

Toggle random on/off

--play

Start playback.

If a remote stream URL and an external player is specified in the configuration file, starts playback on the local machine as well as on the MPD server.

--stop

Stop playback, locally and remote.

--kill

Stop local playback.

OPTIONS

-np,   --now-playing      basic song info on a single line
-i,    --info             full song info
-cp,   --copy             copy the current track to destination
-cpa,  --copy-album       copy the current album to destination
-sh,   --shell            spawn the interactive shell
-q,    --queue            queue tracks

Playlist

-pls,  --playlist         show the current playlist
       --playlists        list all known playlists
-af,   --add-files        add files to playlist
-a,    --add-playlist     add playlist
       --randomize        randomize a new playlist with n tracks
-ra,   --random-album     add n random full albums
-rma,  --rmalbum          remove album matching pattern from playlist
-da,   --delete-album     delete the current album from disk
-f,    --love             love song
       --loved            check if the current song is loved
-u,    --unlove           unlove songs matching pattern
-spl,  --search-playlist  search the current playlist for str

Collection

-lsa,  --songs            list songs on album
-l,    --albums           list albums by artist
-sdb,  --search-db        search database for pattern
-sar,  --search-artist    search database for artist
-sal,  --search-album     search database for album
-set,  --search-title     search database for title
       --slove            search the database with loved songs for pattern
       --stats            display statistics about MPD
       --status           display MPD status

Controls

-n,    --next             next track in playlist
-p,    --previous         previous track in playlist
-cl,   --clear            clear the playlist
-cr,   --crop             remove all songs but the current one from playlist
-x,    --xfade            set crossfade
       --pause            toggle playback status
       --repeat           toggle repeat mode
       --random           toggle random mode

-p,    --play             start playback (locally and remote)
-s,    --stop             stop playback (locally and remote)
-k,    --kill             stop playback (locally)

-h,    --help             show the help and exit
-m,    --man              show the manual and exit
-v,    --version          show version info and exit

ENVIRONMENT

pimpd2 will look for a configuration file in the following locations, in this order:

$XDG_CONFIG_HOME/pimpd2/pimpd2.conf
~/.config/pimpd2/pimpd.conf
~/.pimpd2.conf
./pimpd2.conf
/etc/pimpd2.conf

AUTHOR

Magnus Woldrich
CPAN ID: WOLDRICH
[email protected]
http://japh.se

CONTRIBUTORS

None required yet.

REPORTING BUGS

Report bugs and/or feature requests to [email protected], on rt.cpan.org or http://github.com/trapd00r/pimpd2/issues.

COPYRIGHT

Copyright 2009, 2010, 2011, 2019- the pimpd2 "AUTHOR" and "CONTRIBUTORS" as listed above.

LICENSE

This application is free software; you may redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

mpd(1)

App::Pimpd::Collection::Album, App::Pimpd::Collection::Search, App::Pimpd::Commands, App::Pimpd::Doc, App::Pimpd::Info, App::Pimpd::Player, App::Pimpd::Playlist, App::Pimpd::Playlist::Favorite, App::Pimpd::Playlist::Randomize, App::Pimpd::Playlist::Search, App::Pimpd::Shell, App::Pimpd::Transfer, App::Pimpd::Validate

More Repositories

1

LS_COLORS

A collection of LS_COLORS definitions; needs your contribution!
Shell
1,987
star
2

ls--

ls on steroids
Perl
496
star
3

vidir

edit directory in $EDITOR (better than vim . with netrw)
Perl
173
star
4

zsh-syntax-highlighting-filetypes

zsh syntax highlighting with dircolors in realtime
Shell
147
star
5

configs

My ~/etc - configs, dotfiles
Vim Script
115
star
6

utils

Small useful utilities for everyday work
Perl
74
star
7

neverland-vim-theme

256 colors CLI and GUI. It doesn't suck.
Vim Script
66
star
8

win95-winxp_icons

default icons from win{95,98,2000,xp}
48
star
9

colorcoke

Change the extended (non-ANSI) color set. Generate tints and shades that can be applied in any range.
Shell
45
star
10

vimpoint

Damian Conway's presentation system, written in viml
39
star
11

vim-syntax-vidir-ls

dircolors in your vidir session
Vim Script
36
star
12

File-LsColor

Colorize input filenames just like ls(1) does
Perl
34
star
13

screenfo

Screenshot info tool
Perl
31
star
14

clipbored

Daemon that continuously collects all selections in Xorg's clipboard buffers and saves them in a plaintext file for later retrieval. Can be used with dmenu.
Perl
30
star
15

rmshit

Keep $HOME or other dir clean from unwanted tempfiles, configs and other crap you'll never use that's autocreated upon execution of bad behaving applications
Perl
26
star
16

ttycolor

Quickly switch colorscheme in the Linux Console / TTY
Perl
24
star
17

xkcd

View XKCD comics in your console
Perl
20
star
18

Term-ExtendedColor

Color screen output using extended escape sequences
Perl
17
star
19

pickyfont

Change your console/terminal font on the fly
Perl
17
star
20

Documentation

Docs and notes for Vim, Zsh, Git, Terminal emulators, Perl ... that I've either written or collected over time
Vim Script
17
star
21

vimcat

cat files in style with vim
Shell
14
star
22

hr

<hr> for your terminal; define a thematic change in content
Perl
13
star
23

id3shit

Less sucky commandline-based ID3-editor.
Perl
12
star
24

pnfo

Vim NFO Viewer
Perl
12
star
25

rmcd

Run mplayer as a daemon and control it remotely
Perl
10
star
26

Term-ExtendedColor-Xresources

Query and set various X resources
Perl
7
star
27

irc.vim

syntax file for irc logs
Vim Script
7
star
28

vim-after-syntax-vim

after/syntax/vim.vim
Vim Script
6
star
29

time-spent-in-vim

Vim wrapper collecting statistics of the usage; time spent per project/file
Perl
6
star
30

vim-extendedcolors

Highlight extended color name strings with their color (vim)
Vim Script
6
star
31

rxvt-unicode

urxvt fork with support for defining colors > 16 using X resources
C
5
star
32

vim-highlight-default-highlight-groups

Highlight all the default highlighting groups in Vim by matching the group's literal name and placing it in its group (colorscheme preview)
Vim Script
5
star
33

colortest-256-ng

prints table of available colors or colorize arbitary input for terminals supporting 256 colors
Perl
5
star
34

dzen-scripts

Various scripts for dzen2
Perl
4
star
35

re.pl

Read, Eval, Print, Loop with tabcompletion
Perl
4
star
36

n900

scripts controlling the n900
Shell
4
star
37

vim-after-syntax-perl

after/syntax/perl.vim
Vim Script
4
star
38

rgbterm

Show RGB values of defined terminal colors
Perl
4
star
39

fileutils-color

basic file management utils with color
Perl
4
star
40

RPD

Radio Playing Daemon - Daemon that plays radio streams, using Mplayer as the backend.
Perl
4
star
41

vim-xclipboard

Yank text from Vim to the X clipboard transparently
Perl
4
star
42

x11colors.vim

Highlight X11 color name strings with appropriate colors (vim, gvim)
Vim Script
4
star
43

uberpaint

fork of uberpaint, a Deluxe Paint clone, patched for building on linux
C
3
star
44

pimpd

Perl Interface for the Music Player Daemon
Perl
3
star
45

currentline.vim

A Vim plugin that highlights the current line; like a marker pen
Vim Script
3
star
46

cgrep

grep with colors without the grep
Perl
3
star
47

sdorfehs-config

configuration and scripts for the sdorfehs window manager
Perl
3
star
48

accesstail

like tail -f, but prettier, for your access.log
Perl
3
star
49

sexpac

Makes the Archlinux package manager 'pacman' sexy. Well, at least her output.
Perl
3
star
50

vim-syntax-todo

Simple syntax file for TODO lists
Vim Script
3
star
51

vim

wim
C
2
star
52

ratpoison_hacks

hacks and utilities relevant for (c|r)atpoison
Perl
2
star
53

trapd00r.se

My personal site
Python
2
star
54

firefox-remote

Control Mozilla Firefox remotely
Perl
2
star
55

programmers_qwerty

Make characters often used in programming, Vim and the shell more accessible
Perl
2
star
56

themes

Random themes for applications / pages
CSS
2
star
57

matrix

C
2
star
58

beet2mpd

beets advanced queries -> mpd
Perl
2
star
59

apt-cache-search-color

ยท
Perl
2
star
60

makedist

make perl distribution making automatic
Perl
2
star
61

vim-syntax-ratpoison

An updated version of ratpoison.vim
Vim Script
2
star
62

pentadactyl-neverland

Neverland colorscheme for Pentadactyl
2
star
63

pamixer

curses interface for pulseaudio, personal fork
Python
2
star
64

Term-ExtendedColor-TTY

Functions for changing and querying the TTY for various resources, such as colors
Perl
2
star
65

github-clone-all

clone all GITHUB_USER repos and gists in one go
Shell
2
star
66

vimpager-perlmod

Use VIM as a PAGER. Custom syntax file for perldoc.
Vim Script
2
star
67

vim-formatprg

A collection of useful formatprg's for Vim
2
star
68

vim-syntax-github-recent

Vim syntax file for the Github (dashboard|recent) feed
Vim Script
2
star
69

windows

Shell
1
star
70

perl-test-suite

My tests, the base suite for all projects
Perl
1
star
71

SeTTY

Set terminal properties in XTerm compatible terminals
Perl
1
star
72

String-Utils

Perl
1
star
73

dontbeahero

Don't worry, someone else will save the planet
Perl
1
star
74

with

Execute Perl code on files matching pattern
Perl
1
star
75

App-sync_cpantesters

Sync CPAN testers failure reports to local directories
Perl
1
star
76

urxvt-change-bg-on-focus-event

change bg color on focus lost/gained
Perl
1
star
77

cc256

C
1
star
78

picam

RPi based surv cam that autoposts on twitter
Perl
1
star
79

abs

Archlinux ABS Git
C
1
star
80

File-Media-Sort

Perl Module that sorts a list of incoming names as music/musicvideos/tv-episodes etc
Perl
1
star
81

rel

rel uses Flexget::Parse, Flexget::PatternMatch and Media::Sort to show and sort new media in log/dir by genre/type etc
1
star
82

Term-hr

Perl module that lets you define a thematic change in content of a terminal session
Perl
1
star
83

zcompdef

zsh completion definitions
1
star
84

Mplayer-NowPlaying

Query a running mplayer process for metadata and other information
Perl
1
star
85

Daemon-Mplayer

Library that helps you run mplayer daemonized
Perl
1
star
86

Acme-CPANAuthors-Swedish

We are swedish CPAN authors
Perl
1
star
87

99-Problems

99 Prolog problems in Perl
Perl
1
star
88

recheck

Regular expression checker with submatches splitting
Perl
1
star
89

vim-ansicolors

Highlight ANSI color name strings with appropriate colors (vim, gvim)
Vim Script
1
star
90

Acme-DependOnEverything

depend on everything
Perl
1
star
91

Yoghurt

Yoghurt is a fork of Yaourt for personal use only
Shell
1
star
92

vim-syntax-tidningsbud

vim syntax file for tidningsbud
Vim Script
1
star
93

vim-after-syntax-zsh

Vim Script
1
star
94

perlinpython3

how to access the power of perl inside your python3 code
Python
1
star
95

cv

my cv
CSS
1
star
96

configs-n950

configs and random hacks for the nokia n950
Shell
1
star
97

Mock-Person-SV

Generate random sets of Swedish names
Perl
1
star
98

mpdcp

copy track or album from an mpd server to destination
Perl
1
star
99

go_player_ripper

for cbus
Perl
1
star
100

git-today

what did I accomplish today?
Perl
1
star