Skip to main content

A simple music player for the command line

Project description

Contents

qobra

Simple music player for the command line written in Python 🐍.

qobra player

Why qobra?

When it comes to minimal software, you want to use programs that do one thing, and do it well. This is exactly what qobra does: play music, and nothing else.

As of version 1.3.0, with qobra you can:

  • Display a list of your music.
  • Play selected song.
  • Play next or previous song.
  • Pause a song.
  • Toggle between Shuffle and Normal mode.
  • Search for a song.

Installation

qobra is available in the PyPI. To install it run:

pip install qobra

Dependencies

  • pygame

Usage {#usage}

qobra [options] [path to your music directory]

Controls

Key Function
k go up a song
j go down a song
l play selected song
p toggle pause state
q exit qobra
o play next song
i play previous song
s switch to shuffle mode
n switch to normal mode
/ bring up the search box
Enter submit search
Esc close the search box

Configuration

qobra will look for a configuration file in ~/.config/qobra/config.py or use the default configuration if it can't find one. You can copy the sample config.py file in this repository to ~/.config/qobra/config.py if you want to have your configuration.

You can customize qobra's colors in the config.py file, as well as set your music directory to avoid having to write it out on the command line:

music_dir = "~/music"

TO DO's

  • Make next song play after current one finishes.
  • Shuffle mode.
  • Resume song after pausing.
  • Format usage message
  • Accept individual files as input.
  • Handle window resizing.
  • Handle unsupported file formats
  • Filter songs
  • Add a config file

Current Issues

  • qobra may misbehave if you resize the window while the search bar is showing (why would you want to do that anyway?).
  • qobra may engage in erratic behaviour if you try to play a song with an unsupported file format.
  • qobra will crash if you attempt to run it in a terminal with height less than or equal to 33 lines.
  • You won't see current playing status nor song if you resize your terminal after executing qobra.

Bugs

Please, feel free to report any bugs at alexander@alexandergoussas.com, or make a pull request.

Contribute

If you'd like to contribute, e-mail me at alexander@alexandergoussas.com 😀.

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

qobra-1.0.3.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qobra-1.0.3-py3-none-any.whl (23.4 kB view details)

Uploaded Python 3

File details

Details for the file qobra-1.0.3.tar.gz.

File metadata

  • Download URL: qobra-1.0.3.tar.gz
  • Upload date:
  • Size: 9.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for qobra-1.0.3.tar.gz
Algorithm Hash digest
SHA256 9e781374dcc93d0650efca9cacc57a0d3b941c814ca6b42c7f7a3c988b9749a6
MD5 53da51176278022c550a785c12ff8c3b
BLAKE2b-256 d83613090b29c5160c450fb8beddfbfc0a404963b7b4f32e1bfe9f825c8ac79b

See more details on using hashes here.

File details

Details for the file qobra-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: qobra-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 23.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for qobra-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 beac8701eea14faecf4b7e95f1365ba2c641f85b2a7aeb1ec3c8743ef73ff16f
MD5 930675a86499ccfe501459fd665e6ac7
BLAKE2b-256 3734139401da406a80d3bfd07ab05dea635d9bb305b1eb0cc754e600a01842e3

See more details on using hashes here.

Supported by

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