2021-02-22 12:35:43 +08:00
2021-02-20 11:18:03 +08:00
2021-02-19 22:22:36 +08:00
2021-02-18 10:23:34 +08:00
2021-02-16 16:54:43 +08:00
2020-08-22 22:04:00 +08:00
2021-02-16 16:54:27 +08:00
2021-02-18 10:23:15 +08:00
2021-02-20 22:56:55 +08:00
2021-02-21 15:18:19 +08:00
2021-02-21 15:18:19 +08:00
2021-02-20 11:18:03 +08:00
2020-06-22 00:05:56 +08:00
2021-02-17 21:52:29 +08:00
2021-02-22 00:02:08 +08:00
2021-02-22 10:43:29 +08:00
2021-02-22 10:49:07 +08:00
2021-02-15 20:32:50 +08:00
2021-02-21 15:18:19 +08:00
2021-02-22 12:35:43 +08:00
2021-02-18 10:23:15 +08:00
2021-02-21 09:58:55 +08:00
2021-02-18 10:23:15 +08:00
2021-02-20 11:18:33 +08:00
2021-02-20 11:18:33 +08:00
2020-08-11 22:16:55 +08:00
2021-02-18 09:49:41 +08:00

Gomu (Go Music Player)

Go Report Card Build Status

Gomu is a Terminal User Interface TUI music player to play mp3 files from your local machine.

gomu

Features

  • lightweight
  • simple
  • fast
  • show audio files as tree
  • queue cache
  • vim keybindings
  • youtube-dl integration
  • audio file management
  • customizable
  • find music from youtube
  • scriptable config

Dependencies

If you are using ubuntu, you need to install alsa and required dependencies

$ sudo apt install libasound2-dev go

Optional dependencies can be installed by this command

$ sudo apt install youtube-dl

Installation

$ go get -u github.com/issadarkthing/gomu

For arch users, you can install from the AUR

using yay:

$ yay -S gomu

using aura:

$ sudo aura -A gomu

Configuration

By default, gomu will look for audio files in ~/music directory. If you wish to change to your desired location, edit ~/.config/gomu/config file and change music_dir = path/to/your/musicDir.

Keybindings

Each panel has it's own additional keybinding. To view the available keybinding for the specific panel use ?

Key (General) Description
tab change panel
space toggle play/pause
esc close popup
n skip
q quit
+ volume up
- volume down
f/F forward 10/60 seconds
b/B rewind 10/60 seconds
? toggle help
Key (Playlist) Description
j down
k up
h close node in playlist
a create playlist
l (lowercase L) add song to queue
L add playlist to queue
d delete file from filesystemd
D delete playlist from filesystem
Y download audio
r refresh
R rename
y yank file
p paste file
/ find in playlist
s search audio from youtube
Key (Queue) Description
j down
k up
l (lowercase L) play selected song
d remove from queue
D delete playlist
z toggle loop
s shuffle
/ find in queue

Scripting

Gomu uses anko as its scripting language. You can read more about scripting at our wiki


Keybinds.def_g("ctrl_x", func() {
    out, err = shell(`echo "hello world"`)
    if err != nil {
        debug_popup("an error occured")
    }
    info_popup(out)
})

Project Background

I just wanted to implement my own music player with a programming language i'm currently learning (Go). Gomu might not be stable as it in constant development. For now, it can fulfill basic music player functions such as:

  • add and delete songs from queue
  • create playlists
  • skip
  • play
  • pause
  • forward and rewind

Seeking and more advanced stuff has not yet been implemented; feel free to contribute :)

Description
No description provided
Readme GPL-2.0 20 MiB
Languages
Go 99.4%
Makefile 0.5%
Shell 0.1%