Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

golang TUI music player

License

NotificationsYou must be signed in to change notification settings

issadarkthing/gomu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go Report CardBuild StatusBuy Me A Coffee

Gomu is intuitive, powerful CLI music player. It has embedded scripting languageand event hook to enable user to customize their config extensively.

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
  • download lyric
  • id3v2 tag editor

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

usingyay:

$ yay -S gomu

usingaura:

$ 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 fileand changemusic_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
tabchange panel
spacetoggle play/pause
escclose popup
nskip
qquit
+volume up
-volume down
f/Fforward 10/60 seconds
b/Brewind 10/60 seconds
?toggle help
mopen repl
Tswitch lyrics
cshow colors
Key (Playlist)Description
jdown
kup
hclose node in playlist
acreate playlist
l (lowercase L)add song to queue
Ladd playlist to queue
ddelete file from filesystemd
Ddelete playlist from filesystem
Ydownload audio
rrefresh
Rrename
y/pyank/paste file
/find in playlist
ssearch audio from youtube
tedit mp3 tags
1/2find lyric if available
Key (Queue)Description
jdown
kup
l (lowercase L)play selected song
dremove from queue
Ddelete playlist
ztoggle loop
sshuffle
/find in queue
tlyric delay increase 0.5 second
rlyric delay decrease 0.5 second

Scripting

Gomu usesanko as its scripting language. You can readmore about scripting at ourwiki

Keybinds.def_g("ctrl_x",func() {out,err=shell(`echo "hello world"`)iferr!=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

Similar Projects

  • termusic (Written in rust and well maintained)

Album Photo

For songs downloaded by Gomu, the thumbnail will be embeded as Album cover. If you're not satisfied with the cover, you can edit it with kid3 and attach an image as album cover. Jpeg is tested, but other formats should work as well.

Donation

Hi! If you guys think the project is cool, you can buy me a coffee ;)

Buy Me A Coffee

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


[8]ページ先頭

©2009-2025 Movatter.jp