Go to file
aditya-K2 459b6b2f02 Added Caching Module
The Caching Module Caches the images that have been extracted and for
persistence writes the images to a cache file.

In the cache file the data is stored by tab separated values

        `%s\t%s\t%s`

the cache is first loaded in the memory ( CACHE_LIST ) during the start of application
and then extracted images are added to the map CACHE_LIST which is
writtern to the cache file before exiting the program.
2021-11-13 14:37:07 +05:30
cache Added Caching Module 2021-11-13 14:37:07 +05:30
config minor changes 2021-11-12 14:32:06 +05:30
.gitignore minor changes 2021-11-05 15:06:42 +05:30
App.go Rename conn -> CONN ( Also made it Global ) 2021-11-13 11:32:00 +05:30
LICENSE Initial commit 2021-10-08 20:22:09 +05:30
README.md Update README 2021-11-13 00:37:37 +05:30
client.go Rename conn -> CONN ( Also made it Global ) 2021-11-13 11:32:00 +05:30
fileBrowser.go Updated FileNode Struct 2021-10-17 21:51:01 +05:30
go.mod Updated go Modules 2021-11-13 11:34:56 +05:30
go.sum Updated go Modules 2021-11-13 11:34:56 +05:30
imageUtils.go Rewriting image Rendering 2021-11-08 11:48:49 +05:30
lastfm.go Connecting LastFm Api to get Image Urls which is then rendered 2021-11-13 01:34:24 +05:30
main.go Rename conn -> CONN ( Also made it Global ) 2021-11-13 11:32:00 +05:30
progressBar.go Rename conn -> CONN ( Also made it Global ) 2021-11-13 11:32:00 +05:30
render.go Update to Rendering Routine. 2021-11-13 11:44:49 +05:30
sample_config.yml Added functionality to set image paths 2021-11-05 14:11:14 +05:30
utils.go Making a config package for Generating keymappings 2021-11-11 21:57:01 +05:30

README.md

goMP

MPD client inspired by ncmpcpp written in GO

https://user-images.githubusercontent.com/51816057/140478368-5b724b2f-2499-4150-9569-c54734b3d4c1.mp4

Roadmap

  • Add Functionality to Sort out most played songs
  • Add a config parser
  • Image Previews
  • User Key Mappings
  • Fuzzy Searching
  • Visual Mode (like vim) for updating playlists

Setting Up

  • Music Player Daemon must be setup
  • Go Should Be Installed ( for building )
  • Make a YAML/TOML file in $HOME/.config/goMP named config.yml / config.toml
  • Read the sample_config.yml for config options

Installing / Building

git clone https://github.com/aditya-K2/goMP &&
cd goMP &&
go build

Configuration

Key Mappings

Following Keys can be used for Mappings

Keys Using them in Config
a-z a-z
A-Z A-z
{,},(,),[,],<,> {,},(,),[,],<,>
Enter(Return) ENTER/RETURN
Tab TAB
Space SPACE

See config/kMap.go for more information

For mapping a key to some function use the following format:

Function: [ firstMapping, secondMapping, thirdMapping]

for.eg

togglePlayBack : [ "p", "TAB", "[" ] # using the quotes is neccessary.

Following functions are provided :

Functions
showChildrenContent
togglePlayBack
showParentContent
nextSong
clearPlaylist
previousSong
addToPlaylist
toggleRandom
toggleRepeat
decreaseVolume
increaseVolume
navigateToFiles
navigateToPlaylist
navigateToMostPlayed
quit
stop
updateDB
deleteSongFromPlaylist

Tested on following terminals:

  • Alacritty
  • ST
  • URXVT