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.2.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.2-py3-none-any.whl (23.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: qobra-1.0.2.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.2.tar.gz
Algorithm Hash digest
SHA256 4fc5224390558cf601e47940ec065bbc75ac97190a51051b0d4330e4ed86f499
MD5 8ffdd1f3b22ba54fb312d145ada89f06
BLAKE2b-256 ce0a077bc74982e8a8a67325381b03c68a6e839e27f2d957026e7787633c5c5d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qobra-1.0.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6263017914d4884c3cb9cfd93948198b1047ebf3caffe2fc49cf1b057ef1f153
MD5 79ae54da4d7d16b72a4b68627af7d59f
BLAKE2b-256 782e975157412562003e204775b2b5ca2e3a5f7bf9ec77c2f7a204986d8990df

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