From c765e68f05bfe9f0d2e4990bdc8dfabf11cdbc87 Mon Sep 17 00:00:00 2001 From: trainytrain Date: Sun, 9 May 2021 01:29:07 -0700 Subject: init --- GIMP/2.10/action-history | 104 + GIMP/2.10/colorrc | 36 + GIMP/2.10/contextrc | 15 + GIMP/2.10/controllerrc | 40 + GIMP/2.10/devicerc | 288 + GIMP/2.10/dockrc | 4 + GIMP/2.10/internal-data/custom.ggr | 5 + GIMP/2.10/menurc | 1296 +++++ GIMP/2.10/parasiterc | 6 + GIMP/2.10/pluginrc | 4317 ++++++++++++++ GIMP/2.10/sessionrc | 110 + GIMP/2.10/tags.xml | 3816 +++++++++++++ GIMP/2.10/templaterc | 760 +++ GIMP/2.10/themerc | 17 + GIMP/2.10/tool-options/gimp-airbrush-tool | 12 + GIMP/2.10/tool-options/gimp-align-tool | 5 + .../tool-options/gimp-brightness-contrast-tool | 5 + GIMP/2.10/tool-options/gimp-bucket-fill-tool | 8 + GIMP/2.10/tool-options/gimp-by-color-select-tool | 7 + GIMP/2.10/tool-options/gimp-cage-tool | 4 + GIMP/2.10/tool-options/gimp-clone-tool | 11 + GIMP/2.10/tool-options/gimp-color-picker-tool | 5 + GIMP/2.10/tool-options/gimp-convolve-tool | 11 + GIMP/2.10/tool-options/gimp-crop-tool | 10 + GIMP/2.10/tool-options/gimp-curves-tool | 4 + GIMP/2.10/tool-options/gimp-dodge-burn-tool | 10 + GIMP/2.10/tool-options/gimp-ellipse-select-tool | 5 + GIMP/2.10/tool-options/gimp-eraser-tool | 11 + GIMP/2.10/tool-options/gimp-flip-tool | 5 + GIMP/2.10/tool-options/gimp-foreground-select-tool | 5 + GIMP/2.10/tool-options/gimp-free-select-tool | 4 + GIMP/2.10/tool-options/gimp-fuzzy-select-tool | 6 + GIMP/2.10/tool-options/gimp-gegl-tool | 4 + GIMP/2.10/tool-options/gimp-gradient-tool | 10 + GIMP/2.10/tool-options/gimp-handle-transform-tool | 4 + GIMP/2.10/tool-options/gimp-heal-tool | 10 + GIMP/2.10/tool-options/gimp-ink-tool | 9 + GIMP/2.10/tool-options/gimp-iscissors-tool | 4 + GIMP/2.10/tool-options/gimp-levels-tool | 4 + GIMP/2.10/tool-options/gimp-measure-tool | 5 + GIMP/2.10/tool-options/gimp-move-tool | 4 + GIMP/2.10/tool-options/gimp-mypaint-brush-tool | 10 + GIMP/2.10/tool-options/gimp-offset-tool | 4 + GIMP/2.10/tool-options/gimp-operation-tool | 5 + GIMP/2.10/tool-options/gimp-paintbrush-tool | 12 + GIMP/2.10/tool-options/gimp-pencil-tool | 12 + GIMP/2.10/tool-options/gimp-perspective-clone-tool | 11 + GIMP/2.10/tool-options/gimp-perspective-tool | 4 + GIMP/2.10/tool-options/gimp-rect-select-tool | 5 + GIMP/2.10/tool-options/gimp-rotate-tool | 5 + GIMP/2.10/tool-options/gimp-scale-tool | 5 + GIMP/2.10/tool-options/gimp-shear-tool | 4 + GIMP/2.10/tool-options/gimp-smudge-tool | 12 + GIMP/2.10/tool-options/gimp-text-tool | 10 + GIMP/2.10/tool-options/gimp-threshold-tool | 4 + GIMP/2.10/tool-options/gimp-unified-transform-tool | 4 + GIMP/2.10/tool-options/gimp-vector-tool | 10 + GIMP/2.10/tool-options/gimp-warp-tool | 4 + GIMP/2.10/tool-options/gimp-zoom-tool | 4 + GIMP/2.10/toolrc | 185 + GIMP/2.10/unitrc | 51 + README.md | 1 + Xmodmap | 6 + Xresources | 51 + aliases | 46 + bashrc | 18 + beets/config.yaml | 1 + beets/library.db | Bin 0 -> 73728 bytes beets/state.pickle | Bin 0 -> 31 bytes bspwm/bspwm_colors.sh | 4 + bspwm/bspwmrc | 52 + bspwm/noswallow | 1 + bspwm/terminals | 2 + cava/config | 139 + cmus/autosave | 209 + cmus/cache | Bin 0 -> 1740460 bytes cmus/command-history | 10 + cmus/lib.pl | 2239 ++++++++ cmus/playlists/default | 0 cmus/queue.pl | 0 cmus/resume | 7 + cmus/search-history | 16 + compton.conf | 105 + dunst/dunstrc | 92 + dunst/dunstrc.bak | 92 + fontconfig/fonts.conf | 42 + herbstluftwm/autostart | 198 + herbstluftwm/scripts/hide.sh | 18 + herbstluftwm/scripts/lasttag.sh | 25 + htop/htoprc | 39 + i3/config | 269 + inputrc | 1 + irssi/config | 306 + jellyfin-mpv-shim/conf.json | 96 + jellyfin-mpv-shim/cred.json | 1 + jellyfin-mpv-shim/input.conf | 0 jellyfin-mpv-shim/mpv.conf | 1 + keepassxc/keepassxc.ini | 18 + live-latex-preview/activepid | 1 + live-latex-preview/lastresult | 1 + mpd/mpd.conf | 274 + mpdasrc | 4 + mpv/input.conf | 209 + mpv/mpv.conf | 65 + mpv/scripts/autoloop.lua | 53 + mpv/scripts/autosave.lua | 38 + mpv/scripts/autospeed.lua | 420 ++ mpv/scripts/autosub.lua | 254 + mpv/scripts/autosubsync.lua | 44 + mpv/scripts/quack.lua | 44 + mpv/scripts/uosc.lua | 3230 +++++++++++ mpv/scripts/webm.lua | 2689 +++++++++ mpv/scripts/youtube-quality.lua | 275 + mutt/.mailsynclastrun | 0 mutt/signature | 1 + ncmpcpp/bindings | 46 + ncmpcpp/config | 92 + ncmpcpp/error.log | 1 + ncmpcpp/lyrics/100 gecs - 745 sticky.txt | 48 + ncmpcpp/lyrics/100 gecs - 800db cloud.txt | 52 + ncmpcpp/lyrics/100 gecs - money machine.txt | 51 + ...gecs - xXXi_wud_nvrst\303\270p_\303\234XXx.txt" | 142 + ...Death Grips - Bass Rattle Stars Out the Sky.txt | 47 + ncmpcpp/lyrics/Death Grips - Black Dice.txt | 52 + ncmpcpp/lyrics/Death Grips - Get Got.txt | 93 + ncmpcpp/lyrics/Death Grips - Lil Boy.txt | 65 + ncmpcpp/lyrics/Death Grips - No Love.txt | 87 + ncmpcpp/lyrics/Death Grips - Pop.txt | 28 + ncmpcpp/lyrics/Death Grips - Stockton.txt | 51 + ...izuno, Jessica Rothe - Someone in the Crowd.txt | 84 + ...eed You! Black Emperor - Antennas to Heaven.txt | 33 + .../lyrics/Godspeed You! Black Emperor - Sleep.txt | 6 + .../Godspeed You! Black Emperor - Static.txt | 67 + .../lyrics/Godspeed You! Black Emperor - Storm.txt | 15 + .../John Coltrane - Part I - Acknowledgement.txt | 10 + ...rwitz - Mia & Sebastian\342\200\231s Theme.txt" | 48 + .../Kanye West - All of the Lights (interlude).txt | 10 + ncmpcpp/lyrics/Kanye West - All of the Lights.txt | 101 + ncmpcpp/lyrics/Kanye West - Dark Fantasy.txt | 96 + ncmpcpp/lyrics/Kanye West - Power.txt | 86 + ...he Prynce, Swizz Beatz & RZA - So Appalled.txt" | 156 + ...ick Ross, Nicki Minaj & Bon Iver - Monster.txt" | 140 + ...ye West feat. Kid Cudi & Raekwon - Gorgeous.txt | 115 + ncmpcpp/lyrics/Kendrick Lamar - Alright.txt | 80 + ncmpcpp/lyrics/Kendrick Lamar - FEAR..txt | 131 + ncmpcpp/lyrics/Kendrick Lamar - HUMBLE..txt | 75 + ncmpcpp/lyrics/Kendrick Lamar - King Kunta.txt | 94 + ncmpcpp/lyrics/Kendrick Lamar - LUST..txt | 127 + ncmpcpp/lyrics/Kendrick Lamar - Mortal Man.txt | 256 + ncmpcpp/lyrics/Kendrick Lamar - PRIDE..txt | 75 + .../Kendrick Lamar - The Blacker the Berry.txt | 97 + ncmpcpp/lyrics/Kendrick Lamar - i.txt | 147 + ncmpcpp/lyrics/Kendrick Lamar - u.txt | 74 + ncmpcpp/lyrics/Kendrick Lamar feat. U2 - XXX..txt | 92 + .../lyrics/Kendrick Lamar feat. Zacari - LOVE..txt | 99 + ...ilal, Anna Wise, & Thundercat - These Walls.txt | 86 + ...Kero Kero Bonito - If I\342\200\231d Known.txt" | 37 + ncmpcpp/lyrics/Kero Kero Bonito - Trampoline.txt | 69 + ...ch for No Reason and Tomorrow and Tomorrow).txt | 23 + ...hild (including The Dream and The Illusion).txt | 19 + ...he Fire Witch and The Dance of the Puppets).txt | 14 + ncmpcpp/lyrics/Marko Polo - Speedy Speed Boys.txt | 63 + ncmpcpp/lyrics/NUMBER GIRL - delayed brain.txt | 96 + ... Beaver - I'm Tired of Your Repeating Story.txt | 39 + ncmpcpp/lyrics/Panchiko - DEATHMETAL.txt | 44 + ...awayama - Comme des garcons (Like the Boys).txt | 70 + ...ground - All Tomorrow\342\200\231s Parties.txt" | 23 + .../The Velvet Underground - Femme Fatale.txt | 19 + ...round - I\342\200\231m Waiting for the Man.txt" | 24 + .../The Velvet Underground - Run Run Run.txt | 35 + .../The Velvet Underground - Sunday Morning.txt | 17 + ...e Velvet Underground - There She Goes Again.txt | 27 + .../The Velvet Underground - Venus in Furs.txt | 34 + ncmpcpp/lyrics/mus.hiba - Darkness.txt | 118 + ...3\201\277\343\202\205 - Ninja Re Bang Bang.txt" | 30 + ...5\217\351\207\214 - A HOPE FROM SAD STREET.txt" | 21 + ...235\217\351\207\214 - CAT'S EYE (NEW TAKE).txt" | 51 + .../\346\235\217\351\207\214 - STAY BY ME.txt" | 92 + .../\346\235\217\351\207\214 - WINDY SUMMER.txt" | 33 + ...46\235\217\351\207\214 - YOU ARE NOT ALONE.txt" | 43 + ncmpcpp/ncmpcpp-ueberzug/LICENSE | 674 +++ ncmpcpp/ncmpcpp-ueberzug/README.md | 44 + ncmpcpp/ncmpcpp-ueberzug/img/demo.gif | Bin 0 -> 947780 bytes ncmpcpp/ncmpcpp-ueberzug/img/demo.png | Bin 0 -> 77378 bytes ncmpcpp/ncmpcpp-ueberzug/img/demo_left_aligned.png | Bin 0 -> 92078 bytes ncmpcpp/ncmpcpp-ueberzug/img/fallback.png | Bin 0 -> 89627 bytes .../ncmpcpp-ueberzug/img/settings_explained.png | Bin 0 -> 99131 bytes .../img/truncate_reserved_cols.gif | Bin 0 -> 2047288 bytes .../ncmpcpp-ueberzug/img/ueberzug_columns_mode.gif | Bin 0 -> 1321323 bytes ncmpcpp/ncmpcpp-ueberzug/ncmpcpp-ueberzug | 18 + ncmpcpp/ncmpcpp-ueberzug/ncmpcpp_cover_art.sh | 246 + ncmpcpp/patterns.list | 0 newsboat/cache.db | Bin 0 -> 2629632 bytes newsboat/config | 12 + newsboat/history.cmdline | 100 + newsboat/history.search | 46 + newsboat/urls | 54 + obs-studio/global.ini | 36 + obs-studio/plugin_config/rtmp-services/meta.json | 3 + .../plugin_config/rtmp-services/package.json | 1 + .../plugin_config/rtmp-services/services.json | 1 + .../rtmp-services/twitch_ingests.json | 388 ++ polybar/config | 393 ++ polybar/launch.sh | 11 + profile | 36 + qutebrowser/autoconfig.yml | 96 + qutebrowser/bookmarks/urls | 29 + qutebrowser/qsettings/QtProject.conf | 8 + qutebrowser/quickmarks | 1 + sxhkd/sxhkdrc | 181 + user-dirs.dirs | 15 + user-dirs.locale | 1 + vifm/colors/Default.vifm | 80 + vifm/scripts/README | 6 + vifm/scripts/vifmimg | 53 + vifm/scripts/vifmrun | 15 + vifm/vifm-help.txt | 5899 ++++++++++++++++++++ vifm/vifmimgpdffile | 0 vifm/vifmimgpdfpage | 1 + vifm/vifmrc | 454 ++ vim/.netrwhist | 12 + vim/swap/.swp | Bin 0 -> 12288 bytes vim/viminfo | 1435 +++++ vim/vimrc | 83 + xinitrc | 56 + xprofile | 18 + zathura/zathurarc | 48 + 227 files changed, 37914 insertions(+) create mode 100755 GIMP/2.10/action-history create mode 100755 GIMP/2.10/colorrc create mode 100755 GIMP/2.10/contextrc create mode 100755 GIMP/2.10/controllerrc create mode 100755 GIMP/2.10/devicerc create mode 100755 GIMP/2.10/dockrc create mode 100644 GIMP/2.10/internal-data/custom.ggr create mode 100755 GIMP/2.10/menurc create mode 100755 GIMP/2.10/parasiterc create mode 100644 GIMP/2.10/pluginrc create mode 100755 GIMP/2.10/sessionrc create mode 100755 GIMP/2.10/tags.xml create mode 100755 GIMP/2.10/templaterc create mode 100755 GIMP/2.10/themerc create mode 100644 GIMP/2.10/tool-options/gimp-airbrush-tool create mode 100644 GIMP/2.10/tool-options/gimp-align-tool create mode 100644 GIMP/2.10/tool-options/gimp-brightness-contrast-tool create mode 100644 GIMP/2.10/tool-options/gimp-bucket-fill-tool create mode 100644 GIMP/2.10/tool-options/gimp-by-color-select-tool create mode 100644 GIMP/2.10/tool-options/gimp-cage-tool create mode 100644 GIMP/2.10/tool-options/gimp-clone-tool create mode 100644 GIMP/2.10/tool-options/gimp-color-picker-tool create mode 100644 GIMP/2.10/tool-options/gimp-convolve-tool create mode 100644 GIMP/2.10/tool-options/gimp-crop-tool create mode 100644 GIMP/2.10/tool-options/gimp-curves-tool create mode 100644 GIMP/2.10/tool-options/gimp-dodge-burn-tool create mode 100644 GIMP/2.10/tool-options/gimp-ellipse-select-tool create mode 100644 GIMP/2.10/tool-options/gimp-eraser-tool create mode 100644 GIMP/2.10/tool-options/gimp-flip-tool create mode 100644 GIMP/2.10/tool-options/gimp-foreground-select-tool create mode 100644 GIMP/2.10/tool-options/gimp-free-select-tool create mode 100644 GIMP/2.10/tool-options/gimp-fuzzy-select-tool create mode 100644 GIMP/2.10/tool-options/gimp-gegl-tool create mode 100644 GIMP/2.10/tool-options/gimp-gradient-tool create mode 100644 GIMP/2.10/tool-options/gimp-handle-transform-tool create mode 100644 GIMP/2.10/tool-options/gimp-heal-tool create mode 100644 GIMP/2.10/tool-options/gimp-ink-tool create mode 100644 GIMP/2.10/tool-options/gimp-iscissors-tool create mode 100644 GIMP/2.10/tool-options/gimp-levels-tool create mode 100644 GIMP/2.10/tool-options/gimp-measure-tool create mode 100644 GIMP/2.10/tool-options/gimp-move-tool create mode 100644 GIMP/2.10/tool-options/gimp-mypaint-brush-tool create mode 100644 GIMP/2.10/tool-options/gimp-offset-tool create mode 100644 GIMP/2.10/tool-options/gimp-operation-tool create mode 100644 GIMP/2.10/tool-options/gimp-paintbrush-tool create mode 100644 GIMP/2.10/tool-options/gimp-pencil-tool create mode 100644 GIMP/2.10/tool-options/gimp-perspective-clone-tool create mode 100644 GIMP/2.10/tool-options/gimp-perspective-tool create mode 100644 GIMP/2.10/tool-options/gimp-rect-select-tool create mode 100644 GIMP/2.10/tool-options/gimp-rotate-tool create mode 100644 GIMP/2.10/tool-options/gimp-scale-tool create mode 100644 GIMP/2.10/tool-options/gimp-shear-tool create mode 100644 GIMP/2.10/tool-options/gimp-smudge-tool create mode 100644 GIMP/2.10/tool-options/gimp-text-tool create mode 100644 GIMP/2.10/tool-options/gimp-threshold-tool create mode 100644 GIMP/2.10/tool-options/gimp-unified-transform-tool create mode 100644 GIMP/2.10/tool-options/gimp-vector-tool create mode 100644 GIMP/2.10/tool-options/gimp-warp-tool create mode 100644 GIMP/2.10/tool-options/gimp-zoom-tool create mode 100755 GIMP/2.10/toolrc create mode 100755 GIMP/2.10/unitrc create mode 100644 README.md create mode 100644 Xmodmap create mode 100644 Xresources create mode 100644 aliases create mode 100644 bashrc create mode 100644 beets/config.yaml create mode 100644 beets/library.db create mode 100644 beets/state.pickle create mode 100644 bspwm/bspwm_colors.sh create mode 100755 bspwm/bspwmrc create mode 100644 bspwm/noswallow create mode 100644 bspwm/terminals create mode 100644 cava/config create mode 100644 cmus/autosave create mode 100644 cmus/cache create mode 100644 cmus/command-history create mode 100644 cmus/lib.pl create mode 100644 cmus/playlists/default create mode 100644 cmus/queue.pl create mode 100644 cmus/resume create mode 100644 cmus/search-history create mode 100644 compton.conf create mode 100644 dunst/dunstrc create mode 100644 dunst/dunstrc.bak create mode 100644 fontconfig/fonts.conf create mode 100755 herbstluftwm/autostart create mode 100755 herbstluftwm/scripts/hide.sh create mode 100755 herbstluftwm/scripts/lasttag.sh create mode 100644 htop/htoprc create mode 100644 i3/config create mode 100644 inputrc create mode 100644 irssi/config create mode 100644 jellyfin-mpv-shim/conf.json create mode 100644 jellyfin-mpv-shim/cred.json create mode 100644 jellyfin-mpv-shim/input.conf create mode 100644 jellyfin-mpv-shim/mpv.conf create mode 100644 keepassxc/keepassxc.ini create mode 100644 live-latex-preview/activepid create mode 100644 live-latex-preview/lastresult create mode 100644 mpd/mpd.conf create mode 100644 mpdasrc create mode 100644 mpv/input.conf create mode 100644 mpv/mpv.conf create mode 100644 mpv/scripts/autoloop.lua create mode 100644 mpv/scripts/autosave.lua create mode 100644 mpv/scripts/autospeed.lua create mode 100644 mpv/scripts/autosub.lua create mode 100644 mpv/scripts/autosubsync.lua create mode 100644 mpv/scripts/quack.lua create mode 100644 mpv/scripts/uosc.lua create mode 100644 mpv/scripts/webm.lua create mode 100644 mpv/scripts/youtube-quality.lua create mode 100644 mutt/.mailsynclastrun create mode 100644 mutt/signature create mode 100644 ncmpcpp/bindings create mode 100644 ncmpcpp/config create mode 100644 ncmpcpp/error.log create mode 100644 ncmpcpp/lyrics/100 gecs - 745 sticky.txt create mode 100644 ncmpcpp/lyrics/100 gecs - 800db cloud.txt create mode 100644 ncmpcpp/lyrics/100 gecs - money machine.txt create mode 100644 "ncmpcpp/lyrics/100 gecs - xXXi_wud_nvrst\303\270p_\303\234XXx.txt" create mode 100644 ncmpcpp/lyrics/Death Grips - Bass Rattle Stars Out the Sky.txt create mode 100644 ncmpcpp/lyrics/Death Grips - Black Dice.txt create mode 100644 ncmpcpp/lyrics/Death Grips - Get Got.txt create mode 100644 ncmpcpp/lyrics/Death Grips - Lil Boy.txt create mode 100644 ncmpcpp/lyrics/Death Grips - No Love.txt create mode 100644 ncmpcpp/lyrics/Death Grips - Pop.txt create mode 100644 ncmpcpp/lyrics/Death Grips - Stockton.txt create mode 100644 ncmpcpp/lyrics/Emma Stone, Callie Hernandez, Sonoya Mizuno, Jessica Rothe - Someone in the Crowd.txt create mode 100644 ncmpcpp/lyrics/Godspeed You! Black Emperor - Antennas to Heaven.txt create mode 100644 ncmpcpp/lyrics/Godspeed You! Black Emperor - Sleep.txt create mode 100644 ncmpcpp/lyrics/Godspeed You! Black Emperor - Static.txt create mode 100644 ncmpcpp/lyrics/Godspeed You! Black Emperor - Storm.txt create mode 100644 ncmpcpp/lyrics/John Coltrane - Part I - Acknowledgement.txt create mode 100644 "ncmpcpp/lyrics/Justin Hurwitz - Mia & Sebastian\342\200\231s Theme.txt" create mode 100644 ncmpcpp/lyrics/Kanye West - All of the Lights (interlude).txt create mode 100644 ncmpcpp/lyrics/Kanye West - All of the Lights.txt create mode 100644 ncmpcpp/lyrics/Kanye West - Dark Fantasy.txt create mode 100644 ncmpcpp/lyrics/Kanye West - Power.txt create mode 100644 "ncmpcpp/lyrics/Kanye West feat. JAY\342\200\220Z, Pusha T, Cyhi the Prynce, Swizz Beatz & RZA - So Appalled.txt" create mode 100644 "ncmpcpp/lyrics/Kanye West feat. JAY\342\200\220Z, Rick Ross, Nicki Minaj & Bon Iver - Monster.txt" create mode 100644 ncmpcpp/lyrics/Kanye West feat. Kid Cudi & Raekwon - Gorgeous.txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar - Alright.txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar - FEAR..txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar - HUMBLE..txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar - King Kunta.txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar - LUST..txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar - Mortal Man.txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar - PRIDE..txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar - The Blacker the Berry.txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar - i.txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar - u.txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar feat. U2 - XXX..txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar feat. Zacari - LOVE..txt create mode 100644 ncmpcpp/lyrics/Kendrick Lamar ft. Bilal, Anna Wise, & Thundercat - These Walls.txt create mode 100644 "ncmpcpp/lyrics/Kero Kero Bonito - If I\342\200\231d Known.txt" create mode 100644 ncmpcpp/lyrics/Kero Kero Bonito - Trampoline.txt create mode 100644 ncmpcpp/lyrics/King Crimson - Epitaph (including March for No Reason and Tomorrow and Tomorrow).txt create mode 100644 ncmpcpp/lyrics/King Crimson - Moonchild (including The Dream and The Illusion).txt create mode 100644 ncmpcpp/lyrics/King Crimson - The Court of the Crimson King (including The Return of the Fire Witch and The Dance of the Puppets).txt create mode 100644 ncmpcpp/lyrics/Marko Polo - Speedy Speed Boys.txt create mode 100644 ncmpcpp/lyrics/NUMBER GIRL - delayed brain.txt create mode 100644 ncmpcpp/lyrics/Otoboke Beaver - I'm Tired of Your Repeating Story.txt create mode 100644 ncmpcpp/lyrics/Panchiko - DEATHMETAL.txt create mode 100644 ncmpcpp/lyrics/Rina Sawayama - Comme des garcons (Like the Boys).txt create mode 100644 "ncmpcpp/lyrics/The Velvet Underground - All Tomorrow\342\200\231s Parties.txt" create mode 100644 ncmpcpp/lyrics/The Velvet Underground - Femme Fatale.txt create mode 100644 "ncmpcpp/lyrics/The Velvet Underground - I\342\200\231m Waiting for the Man.txt" create mode 100644 ncmpcpp/lyrics/The Velvet Underground - Run Run Run.txt create mode 100644 ncmpcpp/lyrics/The Velvet Underground - Sunday Morning.txt create mode 100644 ncmpcpp/lyrics/The Velvet Underground - There She Goes Again.txt create mode 100644 ncmpcpp/lyrics/The Velvet Underground - Venus in Furs.txt create mode 100644 ncmpcpp/lyrics/mus.hiba - Darkness.txt create mode 100644 "ncmpcpp/lyrics/\343\201\215\343\202\203\343\202\212\343\203\274\343\201\261\343\201\277\343\202\205\343\201\261\343\201\277\343\202\205 - Ninja Re Bang Bang.txt" create mode 100644 "ncmpcpp/lyrics/\346\235\217\351\207\214 - A HOPE FROM SAD STREET.txt" create mode 100644 "ncmpcpp/lyrics/\346\235\217\351\207\214 - CAT'S EYE (NEW TAKE).txt" create mode 100644 "ncmpcpp/lyrics/\346\235\217\351\207\214 - STAY BY ME.txt" create mode 100644 "ncmpcpp/lyrics/\346\235\217\351\207\214 - WINDY SUMMER.txt" create mode 100644 "ncmpcpp/lyrics/\346\235\217\351\207\214 - YOU ARE NOT ALONE.txt" create mode 100644 ncmpcpp/ncmpcpp-ueberzug/LICENSE create mode 100644 ncmpcpp/ncmpcpp-ueberzug/README.md create mode 100644 ncmpcpp/ncmpcpp-ueberzug/img/demo.gif create mode 100644 ncmpcpp/ncmpcpp-ueberzug/img/demo.png create mode 100644 ncmpcpp/ncmpcpp-ueberzug/img/demo_left_aligned.png create mode 100644 ncmpcpp/ncmpcpp-ueberzug/img/fallback.png create mode 100644 ncmpcpp/ncmpcpp-ueberzug/img/settings_explained.png create mode 100644 ncmpcpp/ncmpcpp-ueberzug/img/truncate_reserved_cols.gif create mode 100644 ncmpcpp/ncmpcpp-ueberzug/img/ueberzug_columns_mode.gif create mode 100755 ncmpcpp/ncmpcpp-ueberzug/ncmpcpp-ueberzug create mode 100755 ncmpcpp/ncmpcpp-ueberzug/ncmpcpp_cover_art.sh create mode 100644 ncmpcpp/patterns.list create mode 100644 newsboat/cache.db create mode 100644 newsboat/config create mode 100644 newsboat/history.cmdline create mode 100644 newsboat/history.search create mode 100644 newsboat/urls create mode 100644 obs-studio/global.ini create mode 100644 obs-studio/plugin_config/rtmp-services/meta.json create mode 100644 obs-studio/plugin_config/rtmp-services/package.json create mode 100644 obs-studio/plugin_config/rtmp-services/services.json create mode 100644 obs-studio/plugin_config/rtmp-services/twitch_ingests.json create mode 100644 polybar/config create mode 100755 polybar/launch.sh create mode 100644 profile create mode 100644 qutebrowser/autoconfig.yml create mode 100644 qutebrowser/bookmarks/urls create mode 100644 qutebrowser/qsettings/QtProject.conf create mode 100644 qutebrowser/quickmarks create mode 100644 sxhkd/sxhkdrc create mode 100644 user-dirs.dirs create mode 100644 user-dirs.locale create mode 100644 vifm/colors/Default.vifm create mode 100644 vifm/scripts/README create mode 100755 vifm/scripts/vifmimg create mode 100755 vifm/scripts/vifmrun create mode 100644 vifm/vifm-help.txt create mode 100644 vifm/vifmimgpdffile create mode 100644 vifm/vifmimgpdfpage create mode 100644 vifm/vifmrc create mode 100644 vim/.netrwhist create mode 100644 vim/swap/.swp create mode 100644 vim/viminfo create mode 100644 vim/vimrc create mode 100644 xinitrc create mode 100644 xprofile create mode 100644 zathura/zathurarc diff --git a/GIMP/2.10/action-history b/GIMP/2.10/action-history new file mode 100755 index 0000000..74bc883 --- /dev/null +++ b/GIMP/2.10/action-history @@ -0,0 +1,104 @@ +# GIMP action-history + +(history-item "file-open" 1) +(history-item "tools-scale" 2) +(history-item "file-quit" 1) +(history-item "edit-cut" 4) +(history-item "tools-size-increase" 1) +(history-item "file-export-as" 0) +(history-item "select-none" 3) +(history-item "tools-size-decrease" 0) +(history-item "view-close" 3) +(history-item "file-overwrite" 1) +(history-item "tools-move" 1) +(history-item "layers-delete" 2) +(history-item "layers-new" 0) +(history-item "file-save" 0) +(history-item "image-new" 2) +(history-item "layers-duplicate" 0) +(history-item "edit-clear" 2) +(history-item "python-fu-heal-selection" 0) +(history-item "layers-new-last-values" 0) +(history-item "file-open-as-layers" 0) +(history-item "select-all" 1) +(history-item "file-export" 0) +(history-item "plug-in-resynth-controls" 0) +(history-item "image-duplicate" 0) +(history-item "tools-text" 1) +(history-item "layers-alpha-selection-replace" 0) +(history-item "layers-edit" 0) +(history-item "filters-brightness-contrast" 0) +(history-item "script-fu-selection-rounded-rectangle" 0) +(history-item "filters-color-exchange" 0) +(history-item "tools-rect-select" 0) +(history-item "file-open-recent-01" 0) +(history-item "tools-paintbrush" 0) +(history-item "file-save-as" 0) +(history-item "tools-fuzzy-select" 0) +(history-item "layers-alpha-add" 0) +(history-item "tools-color-picker" 0) +(history-item "tools-crop" 0) +(history-item "windows-tab-position" 0) +(history-item "dialogs-preferences" 0) +(history-item "view-zoom-revert" 0) +(history-item "tools-rotate" 0) +(history-item "image-resize" 0) +(history-item "tools-pencil" 0) +(history-item "select-invert" 0) +(history-item "tools-bucket-fill" 0) +(history-item "drawable-rotate-90" 0) +(history-item "edit-paste" 0) +(history-item "tools-free-select" 0) +(history-item "tools-by-color-select" 0) +(history-item "dialogs-toolbox" 0) +(history-item "tools-align" 0) +(history-item "tools-airbrush" 0) +(history-item "tools-ink" 0) +(history-item "tools-iscissors" 0) +(history-item "layers-new-from-visible" 0) +(history-item "view-zoom-fit-in" 0) +(history-item "filters-long-shadow" 0) +(history-item "filters-color-balance" 0) +(history-item "filters-invert-perceptual" 0) +(history-item "python-fu-heal-transparency" 0) +(history-item "plug-in-destripe" 0) +(history-item "filters-curves" 0) +(history-item "tools-unified-transform" 0) +(history-item "select-border" 0) +(history-item "vectors-selection-replace" 0) +(history-item "filters-exposure" 0) +(history-item "dialogs-device-status" 0) +(history-item "dialogs-colors" 0) +(history-item "tools-ellipse-select" 0) +(history-item "python-fu-uncrop" 0) +(history-item "edit-copy" 0) +(history-item "tools-eraser" 0) +(history-item "filters-levels" 0) +(history-item "filters-color-temperature" 0) +(history-item "filters-saturation" 0) +(history-item "filters-median-blur" 0) +(history-item "filters-hue-chroma" 0) +(history-item "filters-desaturate" 0) +(history-item "layers-mask-add" 0) +(history-item "tools-gradient" 0) +(history-item "filters-dropshadow" 0) +(history-item "filters-variable-blur" 0) +(history-item "filters-lens-distortion" 0) +(history-item "layers-anchor" 0) +(history-item "tools-flip" 0) +(history-item "layers-merge-down" 0) +(history-item "tool-options-reset" 0) +(history-item "filters-edge-neon" 0) +(history-item "plug-in-lighting" 0) +(history-item "filters-lens-flare" 0) +(history-item "filters-video-degradation" 0) +(history-item "filters-waves" 0) +(history-item "filters-spherize" 0) +(history-item "filters-polar-coordinates" 0) +(history-item "filters-newsprint" 0) +(history-item "plug-in-despeckle" 0) +(history-item "filters-kaleidoscope" 0) +(history-item "tools-handle-transform" 0) +(history-item "filters-shift" 0) + +# end of action-history diff --git a/GIMP/2.10/colorrc b/GIMP/2.10/colorrc new file mode 100755 index 0000000..0b6e86d --- /dev/null +++ b/GIMP/2.10/colorrc @@ -0,0 +1,36 @@ +# GIMP colorrc +# +# This file holds a list of recently used colors. + +(color-history + (color-rgba 1 1 1 1) + (color-rgba 0.073913043478260887 0.073913043478260887 0.073913043478260887 1) + (color-rgba 0 0 0 1) + (color-rgba 0.078947368421052655 0.078947368421052655 0.078947368421052655 1) + (color-rgba 0.078431372549019607 0.078431372549019607 0.078431372549019607 4.6506662183690262e-310) + (color-rgba 0.37735849056603776 0.37735849056603776 0.37735849056603776 1) + (color-rgba 1 1 1 4.6663864120431995e-310) + (color-rgba 0.023529411764705882 0 0.10980392156862745 1) + (color-rgba 0.019014734774827957 0 0.1061900332570076 1) + (color-rgba 0.023529411764705882 0 0 1) + (color-rgba 0.91764705882352937 0.32941176470588235 0.12941176470588237 1) + (color-rgba 0.97254901960784312 0.97647058823529409 0 1) + (color-rgba 0.97254901960784312 0.97647058823529409 0 6.9530811095319396e-310) + (color-rgba 0 0.55882352941176494 1 1) + (color-rgba 0.10196078431372549 0.10196078431372549 0.10196078431372549 1) + (color-rgba 0.52549019607843139 0.74509803921568629 0.2627450980392157 1) + (color-rgba 0.28235294117647058 0.72549019607843135 0.7803921568627451 1) + (color-rgba 1 0 0 1) + (color-rgba 0.67647058823529438 0 1 1) + (color-rgba 0.02166064981949456 0.0015991083759358401 0.0015991083759358401 1) + (color-rgba 0.87058800000000003 0.32549 0.27843099999999998 1) + (color-rgba 0 0.47058823529411764 1 1) + (color-rgba 0.17647099999999999 0.78039199999999997 0.99215699999999996 0) + (color-rgba 0.73725499999999999 0.24313699999999999 0.16470599999999999 1) + (color-rgba 0.20000000000000001 0.20000000000000001 0.20000000000000001 1) + (color-rgba 0.129412 0.45882400000000001 0.60784300000000002 1) + (color-rgba 0.78039199999999997 0.403922 0.40784300000000001 1) + (color-rgba 1 1 1 1) + (color-rgba 1 1 1 1)) + +# end of colorrc diff --git a/GIMP/2.10/contextrc b/GIMP/2.10/contextrc new file mode 100755 index 0000000..202ca2f --- /dev/null +++ b/GIMP/2.10/contextrc @@ -0,0 +1,15 @@ +# GIMP user context + +(tool "gimp-scale-tool") +(paint-info "gimp-paintbrush") +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush "2. Hardness 100") +(dynamics "Dynamics Off") +(mybrush "100% Opaque") +(pattern "Pine") +(gradient "FG to BG (RGB)") +(palette "Standard") +(font "Standard Symbols PS") +(tool-preset "Core Pointer") + +# end of user context diff --git a/GIMP/2.10/controllerrc b/GIMP/2.10/controllerrc new file mode 100755 index 0000000..3e2a7da --- /dev/null +++ b/GIMP/2.10/controllerrc @@ -0,0 +1,40 @@ +# GIMP controllerrc +# +# This file will be entirely rewritten each time you exit. + +(GimpControllerInfo "Main Mouse Wheel" + (icon-name "gimp-controller-wheel") + (enabled yes) + (debug-events no) + (controller "GimpControllerWheel") + (mapping + (map "scroll-down-shift-primary" "context-brush-select-previous") + (map "scroll-up-shift-alt" "context-pattern-select-next") + (map "scroll-up-alt" "tools-value-1-increase-skip") + (map "scroll-down-shift-alt" "context-pattern-select-previous") + (map "scroll-down-primary-alt" "context-gradient-select-previous") + (map "scroll-up-shift-primary-alt" "context-font-select-next") + (map "scroll-down-alt" "tools-value-1-decrease-skip") + (map "scroll-up-primary-alt" "context-gradient-select-next") + (map "scroll-up-shift-primary" "context-brush-select-next") + (map "scroll-down-shift-primary-alt" "context-font-select-previous"))) +(GimpControllerInfo "Main Keyboard" + (icon-name "gimp-controller-keyboard") + (enabled yes) + (debug-events no) + (controller "GimpControllerKeyboard") + (mapping + (map "cursor-right-alt" "tools-value-1-increase") + (map "cursor-left-shift" "view-scroll-page-left") + (map "cursor-right-shift" "view-scroll-page-right") + (map "cursor-up-shift" "view-scroll-page-up") + (map "cursor-up-primary" "view-scroll-top-border") + (map "cursor-down-primary" "view-scroll-bottom-border") + (map "cursor-up-alt" "tools-value-1-increase-skip") + (map "cursor-left-alt" "tools-value-1-decrease") + (map "cursor-down-shift" "view-scroll-page-down") + (map "cursor-right-primary" "view-scroll-right-border") + (map "cursor-left-primary" "view-scroll-left-border") + (map "cursor-down-alt" "tools-value-1-decrease-skip"))) + +# end of controllerrc diff --git a/GIMP/2.10/devicerc b/GIMP/2.10/devicerc new file mode 100755 index 0000000..619274a --- /dev/null +++ b/GIMP/2.10/devicerc @@ -0,0 +1,288 @@ +# GIMP devicerc + +(GimpDeviceInfo "Core Pointer" + (icon-name "gimp-cursor") + (name "Core Pointer") + (tool-options "GimpTransformGridOptions" + (tool "gimp-scale-tool") + (interpolation linear)) + (use-fg-bg yes) + (use-opacity-paint-mode no) + (use-brush no) + (use-dynamics no) + (use-mypaint-brush no) + (use-gradient no) + (use-pattern no) + (use-palette no) + (use-font no) + (mode screen) + (axes 2 x y) + (keys 0) + (pressure-curve + (curve-type smooth) + (points 4 0 0 1 1) + (point-types 2 smooth smooth) + (n-samples 256) + (samples 256 0 0.0039220000000000001 0.0078429999999999993 0.011764999999999999 0.015685999999999999 0.019608 0.023529000000000001 0.027451 0.031372999999999998 0.035293999999999999 0.039216000000000001 0.043137000000000002 0.047058999999999997 0.050979999999999998 0.054901999999999999 0.058824000000000001 0.062744999999999995 0.066667000000000004 0.070587999999999998 0.074510000000000007 0.078431000000000001 0.082352999999999996 0.086275000000000004 0.090195999999999998 0.094117999999999993 0.098039000000000001 0.101961 0.105882 0.109804 0.11372500000000001 0.117647 0.121569 0.12548999999999999 0.129412 0.13333300000000001 0.13725499999999999 0.141176 0.145098 0.14902000000000001 0.15294099999999999 0.156863 0.16078400000000001 0.16470599999999999 0.168627 0.17254900000000001 0.17647099999999999 0.180392 0.18431400000000001 0.18823500000000001 0.19215699999999999 0.196078 0.20000000000000001 0.20392199999999999 0.207843 0.21176500000000001 0.21568599999999999 0.219608 0.22352900000000001 0.22745099999999999 0.231373 0.235294 0.23921600000000001 0.24313699999999999 0.247059 0.25097999999999998 0.25490200000000002 0.258824 0.26274500000000001 0.26666699999999999 0.270588 0.27450999999999998 0.27843099999999998 0.28235300000000002 0.286275 0.29019600000000001 0.29411799999999999 0.298039 0.30196099999999998 0.30588199999999999 0.30980400000000002 0.31372499999999998 0.31764700000000001 0.32156899999999999 0.32549 0.32941199999999998 0.33333299999999999 0.33725500000000003 0.34117599999999998 0.34509800000000002 0.34902 0.352941 0.35686299999999999 0.36078399999999999 0.36470599999999997 0.36862699999999998 0.37254900000000002 0.376471 0.38039200000000001 0.38431399999999999 0.388235 0.39215699999999998 0.39607799999999999 0.40000000000000002 0.403922 0.40784300000000001 0.41176499999999999 0.415686 0.41960799999999998 0.42352899999999999 0.42745100000000003 0.43137300000000001 0.43529400000000001 0.439216 0.443137 0.44705899999999998 0.45097999999999999 0.45490199999999997 0.45882400000000001 0.46274500000000002 0.466667 0.47058800000000001 0.47450999999999999 0.478431 0.48235299999999998 0.48627500000000001 0.49019600000000002 0.494118 0.49803900000000001 0.50196099999999999 0.50588200000000005 0.50980400000000003 0.51372499999999999 0.51764699999999997 0.52156899999999995 0.52549000000000001 0.52941199999999999 0.53333299999999995 0.53725500000000004 0.54117599999999999 0.54509799999999997 0.54901999999999995 0.55294100000000002 0.556863 0.56078399999999995 0.56470600000000004 0.56862699999999999 0.57254899999999997 0.57647099999999996 0.58039200000000002 0.584314 0.58823499999999995 0.59215700000000004 0.596078 0.59999999999999998 0.60392199999999996 0.60784300000000002 0.611765 0.61568599999999996 0.61960800000000005 0.623529 0.62745099999999998 0.63137299999999996 0.63529400000000003 0.63921600000000001 0.64313699999999996 0.64705900000000005 0.65098 0.65490199999999998 0.65882399999999997 0.66274500000000003 0.66666700000000001 0.67058799999999996 0.67451000000000005 0.67843100000000001 0.68235299999999999 0.68627499999999997 0.69019600000000003 0.69411800000000001 0.69803899999999997 0.70196099999999995 0.70588200000000001 0.70980399999999999 0.71372500000000005 0.71764700000000003 0.72156900000000002 0.72548999999999997 0.72941199999999995 0.73333300000000001 0.73725499999999999 0.74117599999999995 0.74509800000000004 0.74902000000000002 0.75294099999999997 0.75686299999999995 0.76078400000000002 0.764706 0.76862699999999995 0.77254900000000004 0.77647100000000002 0.78039199999999997 0.78431399999999996 0.78823500000000002 0.792157 0.79607799999999995 0.80000000000000004 0.80392200000000003 0.80784299999999998 0.81176499999999996 0.81568600000000002 0.819608 0.82352899999999996 0.82745100000000005 0.83137300000000003 0.83529399999999998 0.83921599999999996 0.84313700000000003 0.84705900000000001 0.85097999999999996 0.85490200000000005 0.85882400000000003 0.86274499999999998 0.86666699999999997 0.87058800000000003 0.87451000000000001 0.87843099999999996 0.88235300000000005 0.88627500000000003 0.89019599999999999 0.89411799999999997 0.89803900000000003 0.90196100000000001 0.90588199999999997 0.90980399999999995 0.91372500000000001 0.91764699999999999 0.92156899999999997 0.92549000000000003 0.92941200000000002 0.93333299999999997 0.93725499999999995 0.94117600000000001 0.94509799999999999 0.94901999999999997 0.95294100000000004 0.95686300000000002 0.96078399999999997 0.96470599999999995 0.96862700000000002 0.972549 0.97647099999999998 0.98039200000000004 0.98431400000000002 0.98823499999999997 0.99215699999999996 0.99607800000000002 1))) +(GimpDeviceInfo "Logitech M570" + (name "Logitech M570") + (tool-options "GimpBucketFillOptions" + (tool "gimp-bucket-fill-tool") + (foreground (color-rgb 1 1 1)) + (background (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) + (pattern "Pine") + (brush-size 51) + (brush-hardness 0.5)) + (use-fg-bg yes) + (use-opacity-paint-mode no) + (use-brush no) + (use-dynamics no) + (use-mypaint-brush no) + (use-gradient no) + (use-pattern yes) + (use-palette no) + (use-font no) + (mode disabled) + (axes 4 x y pressure xtilt) + (keys 0) + (pressure-curve + (curve-type smooth) + (points 0) + (point-types 0) + (n-samples 256) + (samples 256 0 0.0039215686274509803 0.0078431372549019607 0.011764705882352941 0.015686274509803921 0.019607843137254902 0.023529411764705882 0.027450980392156862 0.031372549019607843 0.035294117647058823 0.039215686274509803 0.043137254901960784 0.047058823529411764 0.050980392156862744 0.054901960784313725 0.058823529411764705 0.062745098039215685 0.066666666666666666 0.070588235294117646 0.074509803921568626 0.078431372549019607 0.082352941176470587 0.086274509803921567 0.090196078431372548 0.094117647058823528 0.098039215686274508 0.10196078431372549 0.10588235294117647 0.10980392156862745 0.11372549019607843 0.11764705882352941 0.12156862745098039 0.12549019607843137 0.12941176470588237 0.13333333333333333 0.13725490196078433 0.14117647058823529 0.14509803921568629 0.14901960784313725 0.15294117647058825 0.15686274509803921 0.16078431372549021 0.16470588235294117 0.16862745098039217 0.17254901960784313 0.17647058823529413 0.1803921568627451 0.18431372549019609 0.18823529411764706 0.19215686274509805 0.19607843137254902 0.20000000000000001 0.20392156862745098 0.20784313725490197 0.21176470588235294 0.21568627450980393 0.2196078431372549 0.22352941176470589 0.22745098039215686 0.23137254901960785 0.23529411764705882 0.23921568627450981 0.24313725490196078 0.24705882352941178 0.25098039215686274 0.25490196078431371 0.25882352941176473 0.2627450980392157 0.26666666666666666 0.27058823529411763 0.27450980392156865 0.27843137254901962 0.28235294117647058 0.28627450980392155 0.29019607843137257 0.29411764705882354 0.29803921568627451 0.30196078431372547 0.30588235294117649 0.30980392156862746 0.31372549019607843 0.31764705882352939 0.32156862745098042 0.32549019607843138 0.32941176470588235 0.33333333333333331 0.33725490196078434 0.3411764705882353 0.34509803921568627 0.34901960784313724 0.35294117647058826 0.35686274509803922 0.36078431372549019 0.36470588235294116 0.36862745098039218 0.37254901960784315 0.37647058823529411 0.38039215686274508 0.3843137254901961 0.38823529411764707 0.39215686274509803 0.396078431372549 0.40000000000000002 0.40392156862745099 0.40784313725490196 0.41176470588235292 0.41568627450980394 0.41960784313725491 0.42352941176470588 0.42745098039215684 0.43137254901960786 0.43529411764705883 0.4392156862745098 0.44313725490196076 0.44705882352941179 0.45098039215686275 0.45490196078431372 0.45882352941176469 0.46274509803921571 0.46666666666666667 0.47058823529411764 0.47450980392156861 0.47843137254901963 0.4823529411764706 0.48627450980392156 0.49019607843137253 0.49411764705882355 0.49803921568627452 0.50196078431372548 0.50588235294117645 0.50980392156862742 0.51372549019607838 0.51764705882352946 0.52156862745098043 0.52549019607843139 0.52941176470588236 0.53333333333333333 0.53725490196078429 0.54117647058823526 0.54509803921568623 0.5490196078431373 0.55294117647058827 0.55686274509803924 0.5607843137254902 0.56470588235294117 0.56862745098039214 0.5725490196078431 0.57647058823529407 0.58039215686274515 0.58431372549019611 0.58823529411764708 0.59215686274509804 0.59607843137254901 0.59999999999999998 0.60392156862745094 0.60784313725490191 0.61176470588235299 0.61568627450980395 0.61960784313725492 0.62352941176470589 0.62745098039215685 0.63137254901960782 0.63529411764705879 0.63921568627450975 0.64313725490196083 0.6470588235294118 0.65098039215686276 0.65490196078431373 0.6588235294117647 0.66274509803921566 0.66666666666666663 0.6705882352941176 0.67450980392156867 0.67843137254901964 0.68235294117647061 0.68627450980392157 0.69019607843137254 0.69411764705882351 0.69803921568627447 0.70196078431372544 0.70588235294117652 0.70980392156862748 0.71372549019607845 0.71764705882352942 0.72156862745098038 0.72549019607843135 0.72941176470588232 0.73333333333333328 0.73725490196078436 0.74117647058823533 0.74509803921568629 0.74901960784313726 0.75294117647058822 0.75686274509803919 0.76078431372549016 0.76470588235294112 0.7686274509803922 0.77254901960784317 0.77647058823529413 0.7803921568627451 0.78431372549019607 0.78823529411764703 0.792156862745098 0.79607843137254897 0.80000000000000004 0.80392156862745101 0.80784313725490198 0.81176470588235294 0.81568627450980391 0.81960784313725488 0.82352941176470584 0.82745098039215681 0.83137254901960789 0.83529411764705885 0.83921568627450982 0.84313725490196079 0.84705882352941175 0.85098039215686272 0.85490196078431369 0.85882352941176465 0.86274509803921573 0.8666666666666667 0.87058823529411766 0.87450980392156863 0.8784313725490196 0.88235294117647056 0.88627450980392153 0.8901960784313725 0.89411764705882357 0.89803921568627454 0.90196078431372551 0.90588235294117647 0.90980392156862744 0.9137254901960784 0.91764705882352937 0.92156862745098034 0.92549019607843142 0.92941176470588238 0.93333333333333335 0.93725490196078431 0.94117647058823528 0.94509803921568625 0.94901960784313721 0.95294117647058818 0.95686274509803926 0.96078431372549022 0.96470588235294119 0.96862745098039216 0.97254901960784312 0.97647058823529409 0.98039215686274506 0.98431372549019602 0.9882352941176471 0.99215686274509807 0.99607843137254903 1))) +(GimpDeviceInfo "SynPS/2 Synaptics TouchPad" + (icon-name "gimp-cursor") + (name "SynPS/2 Synaptics TouchPad") + (tool-options "GimpRectangleSelectOptions" + (tool "gimp-rect-select-tool") + (corner-radius 46.200000000000003)) + (use-fg-bg no) + (use-opacity-paint-mode no) + (use-brush no) + (use-dynamics no) + (use-mypaint-brush no) + (use-gradient no) + (use-pattern no) + (use-palette no) + (use-font no) + (mode disabled) + (axes 4 x y pressure xtilt) + (keys 0) + (pressure-curve + (curve-type smooth) + (points 0) + (point-types 0) + (n-samples 256) + (samples 256 0 0.0039215686274509803 0.0078431372549019607 0.011764705882352941 0.015686274509803921 0.019607843137254902 0.023529411764705882 0.027450980392156862 0.031372549019607843 0.035294117647058823 0.039215686274509803 0.043137254901960784 0.047058823529411764 0.050980392156862744 0.054901960784313725 0.058823529411764705 0.062745098039215685 0.066666666666666666 0.070588235294117646 0.074509803921568626 0.078431372549019607 0.082352941176470587 0.086274509803921567 0.090196078431372548 0.094117647058823528 0.098039215686274508 0.10196078431372549 0.10588235294117647 0.10980392156862745 0.11372549019607843 0.11764705882352941 0.12156862745098039 0.12549019607843137 0.12941176470588237 0.13333333333333333 0.13725490196078433 0.14117647058823529 0.14509803921568629 0.14901960784313725 0.15294117647058825 0.15686274509803921 0.16078431372549021 0.16470588235294117 0.16862745098039217 0.17254901960784313 0.17647058823529413 0.1803921568627451 0.18431372549019609 0.18823529411764706 0.19215686274509805 0.19607843137254902 0.20000000000000001 0.20392156862745098 0.20784313725490197 0.21176470588235294 0.21568627450980393 0.2196078431372549 0.22352941176470589 0.22745098039215686 0.23137254901960785 0.23529411764705882 0.23921568627450981 0.24313725490196078 0.24705882352941178 0.25098039215686274 0.25490196078431371 0.25882352941176473 0.2627450980392157 0.26666666666666666 0.27058823529411763 0.27450980392156865 0.27843137254901962 0.28235294117647058 0.28627450980392155 0.29019607843137257 0.29411764705882354 0.29803921568627451 0.30196078431372547 0.30588235294117649 0.30980392156862746 0.31372549019607843 0.31764705882352939 0.32156862745098042 0.32549019607843138 0.32941176470588235 0.33333333333333331 0.33725490196078434 0.3411764705882353 0.34509803921568627 0.34901960784313724 0.35294117647058826 0.35686274509803922 0.36078431372549019 0.36470588235294116 0.36862745098039218 0.37254901960784315 0.37647058823529411 0.38039215686274508 0.3843137254901961 0.38823529411764707 0.39215686274509803 0.396078431372549 0.40000000000000002 0.40392156862745099 0.40784313725490196 0.41176470588235292 0.41568627450980394 0.41960784313725491 0.42352941176470588 0.42745098039215684 0.43137254901960786 0.43529411764705883 0.4392156862745098 0.44313725490196076 0.44705882352941179 0.45098039215686275 0.45490196078431372 0.45882352941176469 0.46274509803921571 0.46666666666666667 0.47058823529411764 0.47450980392156861 0.47843137254901963 0.4823529411764706 0.48627450980392156 0.49019607843137253 0.49411764705882355 0.49803921568627452 0.50196078431372548 0.50588235294117645 0.50980392156862742 0.51372549019607838 0.51764705882352946 0.52156862745098043 0.52549019607843139 0.52941176470588236 0.53333333333333333 0.53725490196078429 0.54117647058823526 0.54509803921568623 0.5490196078431373 0.55294117647058827 0.55686274509803924 0.5607843137254902 0.56470588235294117 0.56862745098039214 0.5725490196078431 0.57647058823529407 0.58039215686274515 0.58431372549019611 0.58823529411764708 0.59215686274509804 0.59607843137254901 0.59999999999999998 0.60392156862745094 0.60784313725490191 0.61176470588235299 0.61568627450980395 0.61960784313725492 0.62352941176470589 0.62745098039215685 0.63137254901960782 0.63529411764705879 0.63921568627450975 0.64313725490196083 0.6470588235294118 0.65098039215686276 0.65490196078431373 0.6588235294117647 0.66274509803921566 0.66666666666666663 0.6705882352941176 0.67450980392156867 0.67843137254901964 0.68235294117647061 0.68627450980392157 0.69019607843137254 0.69411764705882351 0.69803921568627447 0.70196078431372544 0.70588235294117652 0.70980392156862748 0.71372549019607845 0.71764705882352942 0.72156862745098038 0.72549019607843135 0.72941176470588232 0.73333333333333328 0.73725490196078436 0.74117647058823533 0.74509803921568629 0.74901960784313726 0.75294117647058822 0.75686274509803919 0.76078431372549016 0.76470588235294112 0.7686274509803922 0.77254901960784317 0.77647058823529413 0.7803921568627451 0.78431372549019607 0.78823529411764703 0.792156862745098 0.79607843137254897 0.80000000000000004 0.80392156862745101 0.80784313725490198 0.81176470588235294 0.81568627450980391 0.81960784313725488 0.82352941176470584 0.82745098039215681 0.83137254901960789 0.83529411764705885 0.83921568627450982 0.84313725490196079 0.84705882352941175 0.85098039215686272 0.85490196078431369 0.85882352941176465 0.86274509803921573 0.8666666666666667 0.87058823529411766 0.87450980392156863 0.8784313725490196 0.88235294117647056 0.88627450980392153 0.8901960784313725 0.89411764705882357 0.89803921568627454 0.90196078431372551 0.90588235294117647 0.90980392156862744 0.9137254901960784 0.91764705882352937 0.92156862745098034 0.92549019607843142 0.92941176470588238 0.93333333333333335 0.93725490196078431 0.94117647058823528 0.94509803921568625 0.94901960784313721 0.95294117647058818 0.95686274509803926 0.96078431372549022 0.96470588235294119 0.96862745098039216 0.97254901960784312 0.97647058823529409 0.98039215686274506 0.98431372549019602 0.9882352941176471 0.99215686274509807 0.99607843137254903 1))) +(GimpDeviceInfo "TPPS/2 IBM TrackPoint" + (icon-name "gimp-cursor") + (name "TPPS/2 IBM TrackPoint") + (tool-options "GimpMoveOptions" + (tool "gimp-move-tool")) + (use-fg-bg no) + (use-opacity-paint-mode no) + (use-brush no) + (use-dynamics no) + (use-mypaint-brush no) + (use-gradient no) + (use-pattern no) + (use-palette no) + (use-font no) + (mode disabled) + (axes 4 x y pressure xtilt) + (keys 0) + (pressure-curve + (curve-type smooth) + (points 0) + (point-types 0) + (n-samples 256) + (samples 256 0 0.0039215686274509803 0.0078431372549019607 0.011764705882352941 0.015686274509803921 0.019607843137254902 0.023529411764705882 0.027450980392156862 0.031372549019607843 0.035294117647058823 0.039215686274509803 0.043137254901960784 0.047058823529411764 0.050980392156862744 0.054901960784313725 0.058823529411764705 0.062745098039215685 0.066666666666666666 0.070588235294117646 0.074509803921568626 0.078431372549019607 0.082352941176470587 0.086274509803921567 0.090196078431372548 0.094117647058823528 0.098039215686274508 0.10196078431372549 0.10588235294117647 0.10980392156862745 0.11372549019607843 0.11764705882352941 0.12156862745098039 0.12549019607843137 0.12941176470588237 0.13333333333333333 0.13725490196078433 0.14117647058823529 0.14509803921568629 0.14901960784313725 0.15294117647058825 0.15686274509803921 0.16078431372549021 0.16470588235294117 0.16862745098039217 0.17254901960784313 0.17647058823529413 0.1803921568627451 0.18431372549019609 0.18823529411764706 0.19215686274509805 0.19607843137254902 0.20000000000000001 0.20392156862745098 0.20784313725490197 0.21176470588235294 0.21568627450980393 0.2196078431372549 0.22352941176470589 0.22745098039215686 0.23137254901960785 0.23529411764705882 0.23921568627450981 0.24313725490196078 0.24705882352941178 0.25098039215686274 0.25490196078431371 0.25882352941176473 0.2627450980392157 0.26666666666666666 0.27058823529411763 0.27450980392156865 0.27843137254901962 0.28235294117647058 0.28627450980392155 0.29019607843137257 0.29411764705882354 0.29803921568627451 0.30196078431372547 0.30588235294117649 0.30980392156862746 0.31372549019607843 0.31764705882352939 0.32156862745098042 0.32549019607843138 0.32941176470588235 0.33333333333333331 0.33725490196078434 0.3411764705882353 0.34509803921568627 0.34901960784313724 0.35294117647058826 0.35686274509803922 0.36078431372549019 0.36470588235294116 0.36862745098039218 0.37254901960784315 0.37647058823529411 0.38039215686274508 0.3843137254901961 0.38823529411764707 0.39215686274509803 0.396078431372549 0.40000000000000002 0.40392156862745099 0.40784313725490196 0.41176470588235292 0.41568627450980394 0.41960784313725491 0.42352941176470588 0.42745098039215684 0.43137254901960786 0.43529411764705883 0.4392156862745098 0.44313725490196076 0.44705882352941179 0.45098039215686275 0.45490196078431372 0.45882352941176469 0.46274509803921571 0.46666666666666667 0.47058823529411764 0.47450980392156861 0.47843137254901963 0.4823529411764706 0.48627450980392156 0.49019607843137253 0.49411764705882355 0.49803921568627452 0.50196078431372548 0.50588235294117645 0.50980392156862742 0.51372549019607838 0.51764705882352946 0.52156862745098043 0.52549019607843139 0.52941176470588236 0.53333333333333333 0.53725490196078429 0.54117647058823526 0.54509803921568623 0.5490196078431373 0.55294117647058827 0.55686274509803924 0.5607843137254902 0.56470588235294117 0.56862745098039214 0.5725490196078431 0.57647058823529407 0.58039215686274515 0.58431372549019611 0.58823529411764708 0.59215686274509804 0.59607843137254901 0.59999999999999998 0.60392156862745094 0.60784313725490191 0.61176470588235299 0.61568627450980395 0.61960784313725492 0.62352941176470589 0.62745098039215685 0.63137254901960782 0.63529411764705879 0.63921568627450975 0.64313725490196083 0.6470588235294118 0.65098039215686276 0.65490196078431373 0.6588235294117647 0.66274509803921566 0.66666666666666663 0.6705882352941176 0.67450980392156867 0.67843137254901964 0.68235294117647061 0.68627450980392157 0.69019607843137254 0.69411764705882351 0.69803921568627447 0.70196078431372544 0.70588235294117652 0.70980392156862748 0.71372549019607845 0.71764705882352942 0.72156862745098038 0.72549019607843135 0.72941176470588232 0.73333333333333328 0.73725490196078436 0.74117647058823533 0.74509803921568629 0.74901960784313726 0.75294117647058822 0.75686274509803919 0.76078431372549016 0.76470588235294112 0.7686274509803922 0.77254901960784317 0.77647058823529413 0.7803921568627451 0.78431372549019607 0.78823529411764703 0.792156862745098 0.79607843137254897 0.80000000000000004 0.80392156862745101 0.80784313725490198 0.81176470588235294 0.81568627450980391 0.81960784313725488 0.82352941176470584 0.82745098039215681 0.83137254901960789 0.83529411764705885 0.83921568627450982 0.84313725490196079 0.84705882352941175 0.85098039215686272 0.85490196078431369 0.85882352941176465 0.86274509803921573 0.8666666666666667 0.87058823529411766 0.87450980392156863 0.8784313725490196 0.88235294117647056 0.88627450980392153 0.8901960784313725 0.89411764705882357 0.89803921568627454 0.90196078431372551 0.90588235294117647 0.90980392156862744 0.9137254901960784 0.91764705882352937 0.92156862745098034 0.92549019607843142 0.92941176470588238 0.93333333333333335 0.93725490196078431 0.94117647058823528 0.94509803921568625 0.94901960784313721 0.95294117647058818 0.95686274509803926 0.96078431372549022 0.96470588235294119 0.96862745098039216 0.97254901960784312 0.97647058823529409 0.98039215686274506 0.98431372549019602 0.9882352941176471 0.99215686274509807 0.99607843137254903 1))) +(GimpDeviceInfo "Virtual core XTEST pointer" + (icon-name "gimp-cursor") + (name "Virtual core XTEST pointer") + (tool-options "GimpCropOptions" + (tool "gimp-crop-tool") + (pattern "Pine")) + (use-fg-bg no) + (use-opacity-paint-mode no) + (use-brush no) + (use-dynamics no) + (use-mypaint-brush no) + (use-gradient no) + (use-pattern no) + (use-palette no) + (use-font no) + (mode disabled) + (axes 2 x y) + (keys 0) + (pressure-curve + (curve-type smooth) + (points 4 0 0 1 1) + (point-types 2 smooth smooth) + (n-samples 256) + (samples 256 0 0.0039220000000000001 0.0078429999999999993 0.011764999999999999 0.015685999999999999 0.019608 0.023529000000000001 0.027451 0.031372999999999998 0.035293999999999999 0.039216000000000001 0.043137000000000002 0.047058999999999997 0.050979999999999998 0.054901999999999999 0.058824000000000001 0.062744999999999995 0.066667000000000004 0.070587999999999998 0.074510000000000007 0.078431000000000001 0.082352999999999996 0.086275000000000004 0.090195999999999998 0.094117999999999993 0.098039000000000001 0.101961 0.105882 0.109804 0.11372500000000001 0.117647 0.121569 0.12548999999999999 0.129412 0.13333300000000001 0.13725499999999999 0.141176 0.145098 0.14902000000000001 0.15294099999999999 0.156863 0.16078400000000001 0.16470599999999999 0.168627 0.17254900000000001 0.17647099999999999 0.180392 0.18431400000000001 0.18823500000000001 0.19215699999999999 0.196078 0.20000000000000001 0.20392199999999999 0.207843 0.21176500000000001 0.21568599999999999 0.219608 0.22352900000000001 0.22745099999999999 0.231373 0.235294 0.23921600000000001 0.24313699999999999 0.247059 0.25097999999999998 0.25490200000000002 0.258824 0.26274500000000001 0.26666699999999999 0.270588 0.27450999999999998 0.27843099999999998 0.28235300000000002 0.286275 0.29019600000000001 0.29411799999999999 0.298039 0.30196099999999998 0.30588199999999999 0.30980400000000002 0.31372499999999998 0.31764700000000001 0.32156899999999999 0.32549 0.32941199999999998 0.33333299999999999 0.33725500000000003 0.34117599999999998 0.34509800000000002 0.34902 0.352941 0.35686299999999999 0.36078399999999999 0.36470599999999997 0.36862699999999998 0.37254900000000002 0.376471 0.38039200000000001 0.38431399999999999 0.388235 0.39215699999999998 0.39607799999999999 0.40000000000000002 0.403922 0.40784300000000001 0.41176499999999999 0.415686 0.41960799999999998 0.42352899999999999 0.42745100000000003 0.43137300000000001 0.43529400000000001 0.439216 0.443137 0.44705899999999998 0.45097999999999999 0.45490199999999997 0.45882400000000001 0.46274500000000002 0.466667 0.47058800000000001 0.47450999999999999 0.478431 0.48235299999999998 0.48627500000000001 0.49019600000000002 0.494118 0.49803900000000001 0.50196099999999999 0.50588200000000005 0.50980400000000003 0.51372499999999999 0.51764699999999997 0.52156899999999995 0.52549000000000001 0.52941199999999999 0.53333299999999995 0.53725500000000004 0.54117599999999999 0.54509799999999997 0.54901999999999995 0.55294100000000002 0.556863 0.56078399999999995 0.56470600000000004 0.56862699999999999 0.57254899999999997 0.57647099999999996 0.58039200000000002 0.584314 0.58823499999999995 0.59215700000000004 0.596078 0.59999999999999998 0.60392199999999996 0.60784300000000002 0.611765 0.61568599999999996 0.61960800000000005 0.623529 0.62745099999999998 0.63137299999999996 0.63529400000000003 0.63921600000000001 0.64313699999999996 0.64705900000000005 0.65098 0.65490199999999998 0.65882399999999997 0.66274500000000003 0.66666700000000001 0.67058799999999996 0.67451000000000005 0.67843100000000001 0.68235299999999999 0.68627499999999997 0.69019600000000003 0.69411800000000001 0.69803899999999997 0.70196099999999995 0.70588200000000001 0.70980399999999999 0.71372500000000005 0.71764700000000003 0.72156900000000002 0.72548999999999997 0.72941199999999995 0.73333300000000001 0.73725499999999999 0.74117599999999995 0.74509800000000004 0.74902000000000002 0.75294099999999997 0.75686299999999995 0.76078400000000002 0.764706 0.76862699999999995 0.77254900000000004 0.77647100000000002 0.78039199999999997 0.78431399999999996 0.78823500000000002 0.792157 0.79607799999999995 0.80000000000000004 0.80392200000000003 0.80784299999999998 0.81176499999999996 0.81568600000000002 0.819608 0.82352899999999996 0.82745100000000005 0.83137300000000003 0.83529399999999998 0.83921599999999996 0.84313700000000003 0.84705900000000001 0.85097999999999996 0.85490200000000005 0.85882400000000003 0.86274499999999998 0.86666699999999997 0.87058800000000003 0.87451000000000001 0.87843099999999996 0.88235300000000005 0.88627500000000003 0.89019599999999999 0.89411799999999997 0.89803900000000003 0.90196100000000001 0.90588199999999997 0.90980399999999995 0.91372500000000001 0.91764699999999999 0.92156899999999997 0.92549000000000003 0.92941200000000002 0.93333299999999997 0.93725499999999995 0.94117600000000001 0.94509799999999999 0.94901999999999997 0.95294100000000004 0.95686300000000002 0.96078399999999997 0.96470599999999995 0.96862700000000002 0.972549 0.97647099999999998 0.98039200000000004 0.98431400000000002 0.98823499999999997 0.99215699999999996 0.99607800000000002 1))) +(GimpDeviceInfo "Logitech G203 Prodigy Gaming Mouse" + (icon-name "gimp-cursor") + (name "Logitech G203 Prodigy Gaming Mouse") + (tool-options "GimpMoveOptions" + (tool "gimp-move-tool")) + (use-fg-bg no) + (use-opacity-paint-mode no) + (use-brush no) + (use-dynamics no) + (use-mypaint-brush no) + (use-gradient no) + (use-pattern no) + (use-palette no) + (use-font no) + (mode disabled) + (axes 4 x y pressure xtilt) + (keys 0) + (pressure-curve + (curve-type smooth) + (points 0) + (point-types 0) + (n-samples 256) + (samples 256 0 0.0039215686274509803 0.0078431372549019607 0.011764705882352941 0.015686274509803921 0.019607843137254902 0.023529411764705882 0.027450980392156862 0.031372549019607843 0.035294117647058823 0.039215686274509803 0.043137254901960784 0.047058823529411764 0.050980392156862744 0.054901960784313725 0.058823529411764705 0.062745098039215685 0.066666666666666666 0.070588235294117646 0.074509803921568626 0.078431372549019607 0.082352941176470587 0.086274509803921567 0.090196078431372548 0.094117647058823528 0.098039215686274508 0.10196078431372549 0.10588235294117647 0.10980392156862745 0.11372549019607843 0.11764705882352941 0.12156862745098039 0.12549019607843137 0.12941176470588237 0.13333333333333333 0.13725490196078433 0.14117647058823529 0.14509803921568629 0.14901960784313725 0.15294117647058825 0.15686274509803921 0.16078431372549021 0.16470588235294117 0.16862745098039217 0.17254901960784313 0.17647058823529413 0.1803921568627451 0.18431372549019609 0.18823529411764706 0.19215686274509805 0.19607843137254902 0.20000000000000001 0.20392156862745098 0.20784313725490197 0.21176470588235294 0.21568627450980393 0.2196078431372549 0.22352941176470589 0.22745098039215686 0.23137254901960785 0.23529411764705882 0.23921568627450981 0.24313725490196078 0.24705882352941178 0.25098039215686274 0.25490196078431371 0.25882352941176473 0.2627450980392157 0.26666666666666666 0.27058823529411763 0.27450980392156865 0.27843137254901962 0.28235294117647058 0.28627450980392155 0.29019607843137257 0.29411764705882354 0.29803921568627451 0.30196078431372547 0.30588235294117649 0.30980392156862746 0.31372549019607843 0.31764705882352939 0.32156862745098042 0.32549019607843138 0.32941176470588235 0.33333333333333331 0.33725490196078434 0.3411764705882353 0.34509803921568627 0.34901960784313724 0.35294117647058826 0.35686274509803922 0.36078431372549019 0.36470588235294116 0.36862745098039218 0.37254901960784315 0.37647058823529411 0.38039215686274508 0.3843137254901961 0.38823529411764707 0.39215686274509803 0.396078431372549 0.40000000000000002 0.40392156862745099 0.40784313725490196 0.41176470588235292 0.41568627450980394 0.41960784313725491 0.42352941176470588 0.42745098039215684 0.43137254901960786 0.43529411764705883 0.4392156862745098 0.44313725490196076 0.44705882352941179 0.45098039215686275 0.45490196078431372 0.45882352941176469 0.46274509803921571 0.46666666666666667 0.47058823529411764 0.47450980392156861 0.47843137254901963 0.4823529411764706 0.48627450980392156 0.49019607843137253 0.49411764705882355 0.49803921568627452 0.50196078431372548 0.50588235294117645 0.50980392156862742 0.51372549019607838 0.51764705882352946 0.52156862745098043 0.52549019607843139 0.52941176470588236 0.53333333333333333 0.53725490196078429 0.54117647058823526 0.54509803921568623 0.5490196078431373 0.55294117647058827 0.55686274509803924 0.5607843137254902 0.56470588235294117 0.56862745098039214 0.5725490196078431 0.57647058823529407 0.58039215686274515 0.58431372549019611 0.58823529411764708 0.59215686274509804 0.59607843137254901 0.59999999999999998 0.60392156862745094 0.60784313725490191 0.61176470588235299 0.61568627450980395 0.61960784313725492 0.62352941176470589 0.62745098039215685 0.63137254901960782 0.63529411764705879 0.63921568627450975 0.64313725490196083 0.6470588235294118 0.65098039215686276 0.65490196078431373 0.6588235294117647 0.66274509803921566 0.66666666666666663 0.6705882352941176 0.67450980392156867 0.67843137254901964 0.68235294117647061 0.68627450980392157 0.69019607843137254 0.69411764705882351 0.69803921568627447 0.70196078431372544 0.70588235294117652 0.70980392156862748 0.71372549019607845 0.71764705882352942 0.72156862745098038 0.72549019607843135 0.72941176470588232 0.73333333333333328 0.73725490196078436 0.74117647058823533 0.74509803921568629 0.74901960784313726 0.75294117647058822 0.75686274509803919 0.76078431372549016 0.76470588235294112 0.7686274509803922 0.77254901960784317 0.77647058823529413 0.7803921568627451 0.78431372549019607 0.78823529411764703 0.792156862745098 0.79607843137254897 0.80000000000000004 0.80392156862745101 0.80784313725490198 0.81176470588235294 0.81568627450980391 0.81960784313725488 0.82352941176470584 0.82745098039215681 0.83137254901960789 0.83529411764705885 0.83921568627450982 0.84313725490196079 0.84705882352941175 0.85098039215686272 0.85490196078431369 0.85882352941176465 0.86274509803921573 0.8666666666666667 0.87058823529411766 0.87450980392156863 0.8784313725490196 0.88235294117647056 0.88627450980392153 0.8901960784313725 0.89411764705882357 0.89803921568627454 0.90196078431372551 0.90588235294117647 0.90980392156862744 0.9137254901960784 0.91764705882352937 0.92156862745098034 0.92549019607843142 0.92941176470588238 0.93333333333333335 0.93725490196078431 0.94117647058823528 0.94509803921568625 0.94901960784313721 0.95294117647058818 0.95686274509803926 0.96078431372549022 0.96470588235294119 0.96862745098039216 0.97254901960784312 0.97647058823529409 0.98039215686274506 0.98431372549019602 0.9882352941176471 0.99215686274509807 0.99607843137254903 1))) +(GimpDeviceInfo "Logitech G203 Prodigy Gaming Mouse Consumer Control" + (icon-name "gimp-cursor") + (name "Logitech G203 Prodigy Gaming Mouse Consumer Control") + (tool-options "GimpMoveOptions" + (tool "gimp-move-tool")) + (use-fg-bg no) + (use-opacity-paint-mode no) + (use-brush no) + (use-dynamics no) + (use-mypaint-brush no) + (use-gradient no) + (use-pattern no) + (use-palette no) + (use-font no) + (mode disabled) + (axes 4 x y pressure xtilt) + (keys 0) + (pressure-curve + (curve-type smooth) + (points 0) + (point-types 0) + (n-samples 256) + (samples 256 0 0.0039215686274509803 0.0078431372549019607 0.011764705882352941 0.015686274509803921 0.019607843137254902 0.023529411764705882 0.027450980392156862 0.031372549019607843 0.035294117647058823 0.039215686274509803 0.043137254901960784 0.047058823529411764 0.050980392156862744 0.054901960784313725 0.058823529411764705 0.062745098039215685 0.066666666666666666 0.070588235294117646 0.074509803921568626 0.078431372549019607 0.082352941176470587 0.086274509803921567 0.090196078431372548 0.094117647058823528 0.098039215686274508 0.10196078431372549 0.10588235294117647 0.10980392156862745 0.11372549019607843 0.11764705882352941 0.12156862745098039 0.12549019607843137 0.12941176470588237 0.13333333333333333 0.13725490196078433 0.14117647058823529 0.14509803921568629 0.14901960784313725 0.15294117647058825 0.15686274509803921 0.16078431372549021 0.16470588235294117 0.16862745098039217 0.17254901960784313 0.17647058823529413 0.1803921568627451 0.18431372549019609 0.18823529411764706 0.19215686274509805 0.19607843137254902 0.20000000000000001 0.20392156862745098 0.20784313725490197 0.21176470588235294 0.21568627450980393 0.2196078431372549 0.22352941176470589 0.22745098039215686 0.23137254901960785 0.23529411764705882 0.23921568627450981 0.24313725490196078 0.24705882352941178 0.25098039215686274 0.25490196078431371 0.25882352941176473 0.2627450980392157 0.26666666666666666 0.27058823529411763 0.27450980392156865 0.27843137254901962 0.28235294117647058 0.28627450980392155 0.29019607843137257 0.29411764705882354 0.29803921568627451 0.30196078431372547 0.30588235294117649 0.30980392156862746 0.31372549019607843 0.31764705882352939 0.32156862745098042 0.32549019607843138 0.32941176470588235 0.33333333333333331 0.33725490196078434 0.3411764705882353 0.34509803921568627 0.34901960784313724 0.35294117647058826 0.35686274509803922 0.36078431372549019 0.36470588235294116 0.36862745098039218 0.37254901960784315 0.37647058823529411 0.38039215686274508 0.3843137254901961 0.38823529411764707 0.39215686274509803 0.396078431372549 0.40000000000000002 0.40392156862745099 0.40784313725490196 0.41176470588235292 0.41568627450980394 0.41960784313725491 0.42352941176470588 0.42745098039215684 0.43137254901960786 0.43529411764705883 0.4392156862745098 0.44313725490196076 0.44705882352941179 0.45098039215686275 0.45490196078431372 0.45882352941176469 0.46274509803921571 0.46666666666666667 0.47058823529411764 0.47450980392156861 0.47843137254901963 0.4823529411764706 0.48627450980392156 0.49019607843137253 0.49411764705882355 0.49803921568627452 0.50196078431372548 0.50588235294117645 0.50980392156862742 0.51372549019607838 0.51764705882352946 0.52156862745098043 0.52549019607843139 0.52941176470588236 0.53333333333333333 0.53725490196078429 0.54117647058823526 0.54509803921568623 0.5490196078431373 0.55294117647058827 0.55686274509803924 0.5607843137254902 0.56470588235294117 0.56862745098039214 0.5725490196078431 0.57647058823529407 0.58039215686274515 0.58431372549019611 0.58823529411764708 0.59215686274509804 0.59607843137254901 0.59999999999999998 0.60392156862745094 0.60784313725490191 0.61176470588235299 0.61568627450980395 0.61960784313725492 0.62352941176470589 0.62745098039215685 0.63137254901960782 0.63529411764705879 0.63921568627450975 0.64313725490196083 0.6470588235294118 0.65098039215686276 0.65490196078431373 0.6588235294117647 0.66274509803921566 0.66666666666666663 0.6705882352941176 0.67450980392156867 0.67843137254901964 0.68235294117647061 0.68627450980392157 0.69019607843137254 0.69411764705882351 0.69803921568627447 0.70196078431372544 0.70588235294117652 0.70980392156862748 0.71372549019607845 0.71764705882352942 0.72156862745098038 0.72549019607843135 0.72941176470588232 0.73333333333333328 0.73725490196078436 0.74117647058823533 0.74509803921568629 0.74901960784313726 0.75294117647058822 0.75686274509803919 0.76078431372549016 0.76470588235294112 0.7686274509803922 0.77254901960784317 0.77647058823529413 0.7803921568627451 0.78431372549019607 0.78823529411764703 0.792156862745098 0.79607843137254897 0.80000000000000004 0.80392156862745101 0.80784313725490198 0.81176470588235294 0.81568627450980391 0.81960784313725488 0.82352941176470584 0.82745098039215681 0.83137254901960789 0.83529411764705885 0.83921568627450982 0.84313725490196079 0.84705882352941175 0.85098039215686272 0.85490196078431369 0.85882352941176465 0.86274509803921573 0.8666666666666667 0.87058823529411766 0.87450980392156863 0.8784313725490196 0.88235294117647056 0.88627450980392153 0.8901960784313725 0.89411764705882357 0.89803921568627454 0.90196078431372551 0.90588235294117647 0.90980392156862744 0.9137254901960784 0.91764705882352937 0.92156862745098034 0.92549019607843142 0.92941176470588238 0.93333333333333335 0.93725490196078431 0.94117647058823528 0.94509803921568625 0.94901960784313721 0.95294117647058818 0.95686274509803926 0.96078431372549022 0.96470588235294119 0.96862745098039216 0.97254901960784312 0.97647058823529409 0.98039215686274506 0.98431372549019602 0.9882352941176471 0.99215686274509807 0.99607843137254903 1))) +(GimpDeviceInfo "Microsoft Microsoft 3-Button Mouse with IntelliEye(TM)" + (icon-name "gimp-cursor") + (name "Microsoft Microsoft 3-Button Mouse with IntelliEye(TM)") + (tool-options "GimpRectangleSelectOptions" + (tool "gimp-rect-select-tool") + (corner-radius 46.200000000000003)) + (use-fg-bg no) + (use-opacity-paint-mode no) + (use-brush no) + (use-dynamics no) + (use-mypaint-brush no) + (use-gradient no) + (use-pattern no) + (use-palette no) + (use-font no) + (mode disabled) + (axes 4 x y pressure xtilt) + (keys 0) + (pressure-curve + (curve-type smooth) + (points 0) + (point-types 0) + (n-samples 256) + (samples 256 0 0.0039215686274509803 0.0078431372549019607 0.011764705882352941 0.015686274509803921 0.019607843137254902 0.023529411764705882 0.027450980392156862 0.031372549019607843 0.035294117647058823 0.039215686274509803 0.043137254901960784 0.047058823529411764 0.050980392156862744 0.054901960784313725 0.058823529411764705 0.062745098039215685 0.066666666666666666 0.070588235294117646 0.074509803921568626 0.078431372549019607 0.082352941176470587 0.086274509803921567 0.090196078431372548 0.094117647058823528 0.098039215686274508 0.10196078431372549 0.10588235294117647 0.10980392156862745 0.11372549019607843 0.11764705882352941 0.12156862745098039 0.12549019607843137 0.12941176470588237 0.13333333333333333 0.13725490196078433 0.14117647058823529 0.14509803921568629 0.14901960784313725 0.15294117647058825 0.15686274509803921 0.16078431372549021 0.16470588235294117 0.16862745098039217 0.17254901960784313 0.17647058823529413 0.1803921568627451 0.18431372549019609 0.18823529411764706 0.19215686274509805 0.19607843137254902 0.20000000000000001 0.20392156862745098 0.20784313725490197 0.21176470588235294 0.21568627450980393 0.2196078431372549 0.22352941176470589 0.22745098039215686 0.23137254901960785 0.23529411764705882 0.23921568627450981 0.24313725490196078 0.24705882352941178 0.25098039215686274 0.25490196078431371 0.25882352941176473 0.2627450980392157 0.26666666666666666 0.27058823529411763 0.27450980392156865 0.27843137254901962 0.28235294117647058 0.28627450980392155 0.29019607843137257 0.29411764705882354 0.29803921568627451 0.30196078431372547 0.30588235294117649 0.30980392156862746 0.31372549019607843 0.31764705882352939 0.32156862745098042 0.32549019607843138 0.32941176470588235 0.33333333333333331 0.33725490196078434 0.3411764705882353 0.34509803921568627 0.34901960784313724 0.35294117647058826 0.35686274509803922 0.36078431372549019 0.36470588235294116 0.36862745098039218 0.37254901960784315 0.37647058823529411 0.38039215686274508 0.3843137254901961 0.38823529411764707 0.39215686274509803 0.396078431372549 0.40000000000000002 0.40392156862745099 0.40784313725490196 0.41176470588235292 0.41568627450980394 0.41960784313725491 0.42352941176470588 0.42745098039215684 0.43137254901960786 0.43529411764705883 0.4392156862745098 0.44313725490196076 0.44705882352941179 0.45098039215686275 0.45490196078431372 0.45882352941176469 0.46274509803921571 0.46666666666666667 0.47058823529411764 0.47450980392156861 0.47843137254901963 0.4823529411764706 0.48627450980392156 0.49019607843137253 0.49411764705882355 0.49803921568627452 0.50196078431372548 0.50588235294117645 0.50980392156862742 0.51372549019607838 0.51764705882352946 0.52156862745098043 0.52549019607843139 0.52941176470588236 0.53333333333333333 0.53725490196078429 0.54117647058823526 0.54509803921568623 0.5490196078431373 0.55294117647058827 0.55686274509803924 0.5607843137254902 0.56470588235294117 0.56862745098039214 0.5725490196078431 0.57647058823529407 0.58039215686274515 0.58431372549019611 0.58823529411764708 0.59215686274509804 0.59607843137254901 0.59999999999999998 0.60392156862745094 0.60784313725490191 0.61176470588235299 0.61568627450980395 0.61960784313725492 0.62352941176470589 0.62745098039215685 0.63137254901960782 0.63529411764705879 0.63921568627450975 0.64313725490196083 0.6470588235294118 0.65098039215686276 0.65490196078431373 0.6588235294117647 0.66274509803921566 0.66666666666666663 0.6705882352941176 0.67450980392156867 0.67843137254901964 0.68235294117647061 0.68627450980392157 0.69019607843137254 0.69411764705882351 0.69803921568627447 0.70196078431372544 0.70588235294117652 0.70980392156862748 0.71372549019607845 0.71764705882352942 0.72156862745098038 0.72549019607843135 0.72941176470588232 0.73333333333333328 0.73725490196078436 0.74117647058823533 0.74509803921568629 0.74901960784313726 0.75294117647058822 0.75686274509803919 0.76078431372549016 0.76470588235294112 0.7686274509803922 0.77254901960784317 0.77647058823529413 0.7803921568627451 0.78431372549019607 0.78823529411764703 0.792156862745098 0.79607843137254897 0.80000000000000004 0.80392156862745101 0.80784313725490198 0.81176470588235294 0.81568627450980391 0.81960784313725488 0.82352941176470584 0.82745098039215681 0.83137254901960789 0.83529411764705885 0.83921568627450982 0.84313725490196079 0.84705882352941175 0.85098039215686272 0.85490196078431369 0.85882352941176465 0.86274509803921573 0.8666666666666667 0.87058823529411766 0.87450980392156863 0.8784313725490196 0.88235294117647056 0.88627450980392153 0.8901960784313725 0.89411764705882357 0.89803921568627454 0.90196078431372551 0.90588235294117647 0.90980392156862744 0.9137254901960784 0.91764705882352937 0.92156862745098034 0.92549019607843142 0.92941176470588238 0.93333333333333335 0.93725490196078431 0.94117647058823528 0.94509803921568625 0.94901960784313721 0.95294117647058818 0.95686274509803926 0.96078431372549022 0.96470588235294119 0.96862745098039216 0.97254901960784312 0.97647058823529409 0.98039215686274506 0.98431372549019602 0.9882352941176471 0.99215686274509807 0.99607843137254903 1))) +(GimpDeviceInfo "SINOWEALTH Game Mouse" + (icon-name "gimp-cursor") + (name "SINOWEALTH Game Mouse") + (tool-options "GimpCropOptions" + (tool "gimp-crop-tool") + (pattern "Pine")) + (use-fg-bg no) + (use-opacity-paint-mode no) + (use-brush no) + (use-dynamics no) + (use-mypaint-brush no) + (use-gradient no) + (use-pattern no) + (use-palette no) + (use-font no) + (mode disabled) + (axes 4 x y pressure xtilt) + (keys 0) + (pressure-curve + (curve-type smooth) + (points 4 0 0 1 1) + (point-types 2 smooth smooth) + (n-samples 256) + (samples 256 0 0.0039220000000000001 0.0078429999999999993 0.011764999999999999 0.015685999999999999 0.019608 0.023529000000000001 0.027451 0.031372999999999998 0.035293999999999999 0.039216000000000001 0.043137000000000002 0.047058999999999997 0.050979999999999998 0.054901999999999999 0.058824000000000001 0.062744999999999995 0.066667000000000004 0.070587999999999998 0.074510000000000007 0.078431000000000001 0.082352999999999996 0.086275000000000004 0.090195999999999998 0.094117999999999993 0.098039000000000001 0.101961 0.105882 0.109804 0.11372500000000001 0.117647 0.121569 0.12548999999999999 0.129412 0.13333300000000001 0.13725499999999999 0.141176 0.145098 0.14902000000000001 0.15294099999999999 0.156863 0.16078400000000001 0.16470599999999999 0.168627 0.17254900000000001 0.17647099999999999 0.180392 0.18431400000000001 0.18823500000000001 0.19215699999999999 0.196078 0.20000000000000001 0.20392199999999999 0.207843 0.21176500000000001 0.21568599999999999 0.219608 0.22352900000000001 0.22745099999999999 0.231373 0.235294 0.23921600000000001 0.24313699999999999 0.247059 0.25097999999999998 0.25490200000000002 0.258824 0.26274500000000001 0.26666699999999999 0.270588 0.27450999999999998 0.27843099999999998 0.28235300000000002 0.286275 0.29019600000000001 0.29411799999999999 0.298039 0.30196099999999998 0.30588199999999999 0.30980400000000002 0.31372499999999998 0.31764700000000001 0.32156899999999999 0.32549 0.32941199999999998 0.33333299999999999 0.33725500000000003 0.34117599999999998 0.34509800000000002 0.34902 0.352941 0.35686299999999999 0.36078399999999999 0.36470599999999997 0.36862699999999998 0.37254900000000002 0.376471 0.38039200000000001 0.38431399999999999 0.388235 0.39215699999999998 0.39607799999999999 0.40000000000000002 0.403922 0.40784300000000001 0.41176499999999999 0.415686 0.41960799999999998 0.42352899999999999 0.42745100000000003 0.43137300000000001 0.43529400000000001 0.439216 0.443137 0.44705899999999998 0.45097999999999999 0.45490199999999997 0.45882400000000001 0.46274500000000002 0.466667 0.47058800000000001 0.47450999999999999 0.478431 0.48235299999999998 0.48627500000000001 0.49019600000000002 0.494118 0.49803900000000001 0.50196099999999999 0.50588200000000005 0.50980400000000003 0.51372499999999999 0.51764699999999997 0.52156899999999995 0.52549000000000001 0.52941199999999999 0.53333299999999995 0.53725500000000004 0.54117599999999999 0.54509799999999997 0.54901999999999995 0.55294100000000002 0.556863 0.56078399999999995 0.56470600000000004 0.56862699999999999 0.57254899999999997 0.57647099999999996 0.58039200000000002 0.584314 0.58823499999999995 0.59215700000000004 0.596078 0.59999999999999998 0.60392199999999996 0.60784300000000002 0.611765 0.61568599999999996 0.61960800000000005 0.623529 0.62745099999999998 0.63137299999999996 0.63529400000000003 0.63921600000000001 0.64313699999999996 0.64705900000000005 0.65098 0.65490199999999998 0.65882399999999997 0.66274500000000003 0.66666700000000001 0.67058799999999996 0.67451000000000005 0.67843100000000001 0.68235299999999999 0.68627499999999997 0.69019600000000003 0.69411800000000001 0.69803899999999997 0.70196099999999995 0.70588200000000001 0.70980399999999999 0.71372500000000005 0.71764700000000003 0.72156900000000002 0.72548999999999997 0.72941199999999995 0.73333300000000001 0.73725499999999999 0.74117599999999995 0.74509800000000004 0.74902000000000002 0.75294099999999997 0.75686299999999995 0.76078400000000002 0.764706 0.76862699999999995 0.77254900000000004 0.77647100000000002 0.78039199999999997 0.78431399999999996 0.78823500000000002 0.792157 0.79607799999999995 0.80000000000000004 0.80392200000000003 0.80784299999999998 0.81176499999999996 0.81568600000000002 0.819608 0.82352899999999996 0.82745100000000005 0.83137300000000003 0.83529399999999998 0.83921599999999996 0.84313700000000003 0.84705900000000001 0.85097999999999996 0.85490200000000005 0.85882400000000003 0.86274499999999998 0.86666699999999997 0.87058800000000003 0.87451000000000001 0.87843099999999996 0.88235300000000005 0.88627500000000003 0.89019599999999999 0.89411799999999997 0.89803900000000003 0.90196100000000001 0.90588199999999997 0.90980399999999995 0.91372500000000001 0.91764699999999999 0.92156899999999997 0.92549000000000003 0.92941200000000002 0.93333299999999997 0.93725499999999995 0.94117600000000001 0.94509799999999999 0.94901999999999997 0.95294100000000004 0.95686300000000002 0.96078399999999997 0.96470599999999995 0.96862700000000002 0.972549 0.97647099999999998 0.98039200000000004 0.98431400000000002 0.98823499999999997 0.99215699999999996 0.99607800000000002 1))) +(GimpDeviceInfo "SONiX USB DEVICE" + (name "SONiX USB DEVICE") + (tool-options "GimpCropOptions" + (tool "gimp-crop-tool") + (pattern "Pine")) + (use-fg-bg no) + (use-opacity-paint-mode no) + (use-brush no) + (use-dynamics no) + (use-mypaint-brush no) + (use-gradient no) + (use-pattern no) + (use-palette no) + (use-font no) + (mode disabled) + (axes 4 x y pressure xtilt) + (keys 0) + (pressure-curve + (curve-type smooth) + (points 4 0 0 1 1) + (point-types 2 smooth smooth) + (n-samples 256) + (samples 256 0 0.0039220000000000001 0.0078429999999999993 0.011764999999999999 0.015685999999999999 0.019608 0.023529000000000001 0.027451 0.031372999999999998 0.035293999999999999 0.039216000000000001 0.043137000000000002 0.047058999999999997 0.050979999999999998 0.054901999999999999 0.058824000000000001 0.062744999999999995 0.066667000000000004 0.070587999999999998 0.074510000000000007 0.078431000000000001 0.082352999999999996 0.086275000000000004 0.090195999999999998 0.094117999999999993 0.098039000000000001 0.101961 0.105882 0.109804 0.11372500000000001 0.117647 0.121569 0.12548999999999999 0.129412 0.13333300000000001 0.13725499999999999 0.141176 0.145098 0.14902000000000001 0.15294099999999999 0.156863 0.16078400000000001 0.16470599999999999 0.168627 0.17254900000000001 0.17647099999999999 0.180392 0.18431400000000001 0.18823500000000001 0.19215699999999999 0.196078 0.20000000000000001 0.20392199999999999 0.207843 0.21176500000000001 0.21568599999999999 0.219608 0.22352900000000001 0.22745099999999999 0.231373 0.235294 0.23921600000000001 0.24313699999999999 0.247059 0.25097999999999998 0.25490200000000002 0.258824 0.26274500000000001 0.26666699999999999 0.270588 0.27450999999999998 0.27843099999999998 0.28235300000000002 0.286275 0.29019600000000001 0.29411799999999999 0.298039 0.30196099999999998 0.30588199999999999 0.30980400000000002 0.31372499999999998 0.31764700000000001 0.32156899999999999 0.32549 0.32941199999999998 0.33333299999999999 0.33725500000000003 0.34117599999999998 0.34509800000000002 0.34902 0.352941 0.35686299999999999 0.36078399999999999 0.36470599999999997 0.36862699999999998 0.37254900000000002 0.376471 0.38039200000000001 0.38431399999999999 0.388235 0.39215699999999998 0.39607799999999999 0.40000000000000002 0.403922 0.40784300000000001 0.41176499999999999 0.415686 0.41960799999999998 0.42352899999999999 0.42745100000000003 0.43137300000000001 0.43529400000000001 0.439216 0.443137 0.44705899999999998 0.45097999999999999 0.45490199999999997 0.45882400000000001 0.46274500000000002 0.466667 0.47058800000000001 0.47450999999999999 0.478431 0.48235299999999998 0.48627500000000001 0.49019600000000002 0.494118 0.49803900000000001 0.50196099999999999 0.50588200000000005 0.50980400000000003 0.51372499999999999 0.51764699999999997 0.52156899999999995 0.52549000000000001 0.52941199999999999 0.53333299999999995 0.53725500000000004 0.54117599999999999 0.54509799999999997 0.54901999999999995 0.55294100000000002 0.556863 0.56078399999999995 0.56470600000000004 0.56862699999999999 0.57254899999999997 0.57647099999999996 0.58039200000000002 0.584314 0.58823499999999995 0.59215700000000004 0.596078 0.59999999999999998 0.60392199999999996 0.60784300000000002 0.611765 0.61568599999999996 0.61960800000000005 0.623529 0.62745099999999998 0.63137299999999996 0.63529400000000003 0.63921600000000001 0.64313699999999996 0.64705900000000005 0.65098 0.65490199999999998 0.65882399999999997 0.66274500000000003 0.66666700000000001 0.67058799999999996 0.67451000000000005 0.67843100000000001 0.68235299999999999 0.68627499999999997 0.69019600000000003 0.69411800000000001 0.69803899999999997 0.70196099999999995 0.70588200000000001 0.70980399999999999 0.71372500000000005 0.71764700000000003 0.72156900000000002 0.72548999999999997 0.72941199999999995 0.73333300000000001 0.73725499999999999 0.74117599999999995 0.74509800000000004 0.74902000000000002 0.75294099999999997 0.75686299999999995 0.76078400000000002 0.764706 0.76862699999999995 0.77254900000000004 0.77647100000000002 0.78039199999999997 0.78431399999999996 0.78823500000000002 0.792157 0.79607799999999995 0.80000000000000004 0.80392200000000003 0.80784299999999998 0.81176499999999996 0.81568600000000002 0.819608 0.82352899999999996 0.82745100000000005 0.83137300000000003 0.83529399999999998 0.83921599999999996 0.84313700000000003 0.84705900000000001 0.85097999999999996 0.85490200000000005 0.85882400000000003 0.86274499999999998 0.86666699999999997 0.87058800000000003 0.87451000000000001 0.87843099999999996 0.88235300000000005 0.88627500000000003 0.89019599999999999 0.89411799999999997 0.89803900000000003 0.90196100000000001 0.90588199999999997 0.90980399999999995 0.91372500000000001 0.91764699999999999 0.92156899999999997 0.92549000000000003 0.92941200000000002 0.93333299999999997 0.93725499999999995 0.94117600000000001 0.94509799999999999 0.94901999999999997 0.95294100000000004 0.95686300000000002 0.96078399999999997 0.96470599999999995 0.96862700000000002 0.972549 0.97647099999999998 0.98039200000000004 0.98431400000000002 0.98823499999999997 0.99215699999999996 0.99607800000000002 1))) +(GimpDeviceInfo "SONiX USB DEVICE Consumer Control" + (name "SONiX USB DEVICE Consumer Control") + (tool-options "GimpMoveOptions" + (tool "gimp-move-tool")) + (use-fg-bg no) + (use-opacity-paint-mode no) + (use-brush no) + (use-dynamics no) + (use-mypaint-brush no) + (use-gradient no) + (use-pattern no) + (use-palette no) + (use-font no) + (mode disabled) + (axes 4 x y pressure xtilt) + (keys 0) + (pressure-curve + (curve-type smooth) + (points 0) + (point-types 0) + (n-samples 256) + (samples 256 0 0.0039215686274509803 0.0078431372549019607 0.011764705882352941 0.015686274509803921 0.019607843137254902 0.023529411764705882 0.027450980392156862 0.031372549019607843 0.035294117647058823 0.039215686274509803 0.043137254901960784 0.047058823529411764 0.050980392156862744 0.054901960784313725 0.058823529411764705 0.062745098039215685 0.066666666666666666 0.070588235294117646 0.074509803921568626 0.078431372549019607 0.082352941176470587 0.086274509803921567 0.090196078431372548 0.094117647058823528 0.098039215686274508 0.10196078431372549 0.10588235294117647 0.10980392156862745 0.11372549019607843 0.11764705882352941 0.12156862745098039 0.12549019607843137 0.12941176470588237 0.13333333333333333 0.13725490196078433 0.14117647058823529 0.14509803921568629 0.14901960784313725 0.15294117647058825 0.15686274509803921 0.16078431372549021 0.16470588235294117 0.16862745098039217 0.17254901960784313 0.17647058823529413 0.1803921568627451 0.18431372549019609 0.18823529411764706 0.19215686274509805 0.19607843137254902 0.20000000000000001 0.20392156862745098 0.20784313725490197 0.21176470588235294 0.21568627450980393 0.2196078431372549 0.22352941176470589 0.22745098039215686 0.23137254901960785 0.23529411764705882 0.23921568627450981 0.24313725490196078 0.24705882352941178 0.25098039215686274 0.25490196078431371 0.25882352941176473 0.2627450980392157 0.26666666666666666 0.27058823529411763 0.27450980392156865 0.27843137254901962 0.28235294117647058 0.28627450980392155 0.29019607843137257 0.29411764705882354 0.29803921568627451 0.30196078431372547 0.30588235294117649 0.30980392156862746 0.31372549019607843 0.31764705882352939 0.32156862745098042 0.32549019607843138 0.32941176470588235 0.33333333333333331 0.33725490196078434 0.3411764705882353 0.34509803921568627 0.34901960784313724 0.35294117647058826 0.35686274509803922 0.36078431372549019 0.36470588235294116 0.36862745098039218 0.37254901960784315 0.37647058823529411 0.38039215686274508 0.3843137254901961 0.38823529411764707 0.39215686274509803 0.396078431372549 0.40000000000000002 0.40392156862745099 0.40784313725490196 0.41176470588235292 0.41568627450980394 0.41960784313725491 0.42352941176470588 0.42745098039215684 0.43137254901960786 0.43529411764705883 0.4392156862745098 0.44313725490196076 0.44705882352941179 0.45098039215686275 0.45490196078431372 0.45882352941176469 0.46274509803921571 0.46666666666666667 0.47058823529411764 0.47450980392156861 0.47843137254901963 0.4823529411764706 0.48627450980392156 0.49019607843137253 0.49411764705882355 0.49803921568627452 0.50196078431372548 0.50588235294117645 0.50980392156862742 0.51372549019607838 0.51764705882352946 0.52156862745098043 0.52549019607843139 0.52941176470588236 0.53333333333333333 0.53725490196078429 0.54117647058823526 0.54509803921568623 0.5490196078431373 0.55294117647058827 0.55686274509803924 0.5607843137254902 0.56470588235294117 0.56862745098039214 0.5725490196078431 0.57647058823529407 0.58039215686274515 0.58431372549019611 0.58823529411764708 0.59215686274509804 0.59607843137254901 0.59999999999999998 0.60392156862745094 0.60784313725490191 0.61176470588235299 0.61568627450980395 0.61960784313725492 0.62352941176470589 0.62745098039215685 0.63137254901960782 0.63529411764705879 0.63921568627450975 0.64313725490196083 0.6470588235294118 0.65098039215686276 0.65490196078431373 0.6588235294117647 0.66274509803921566 0.66666666666666663 0.6705882352941176 0.67450980392156867 0.67843137254901964 0.68235294117647061 0.68627450980392157 0.69019607843137254 0.69411764705882351 0.69803921568627447 0.70196078431372544 0.70588235294117652 0.70980392156862748 0.71372549019607845 0.71764705882352942 0.72156862745098038 0.72549019607843135 0.72941176470588232 0.73333333333333328 0.73725490196078436 0.74117647058823533 0.74509803921568629 0.74901960784313726 0.75294117647058822 0.75686274509803919 0.76078431372549016 0.76470588235294112 0.7686274509803922 0.77254901960784317 0.77647058823529413 0.7803921568627451 0.78431372549019607 0.78823529411764703 0.792156862745098 0.79607843137254897 0.80000000000000004 0.80392156862745101 0.80784313725490198 0.81176470588235294 0.81568627450980391 0.81960784313725488 0.82352941176470584 0.82745098039215681 0.83137254901960789 0.83529411764705885 0.83921568627450982 0.84313725490196079 0.84705882352941175 0.85098039215686272 0.85490196078431369 0.85882352941176465 0.86274509803921573 0.8666666666666667 0.87058823529411766 0.87450980392156863 0.8784313725490196 0.88235294117647056 0.88627450980392153 0.8901960784313725 0.89411764705882357 0.89803921568627454 0.90196078431372551 0.90588235294117647 0.90980392156862744 0.9137254901960784 0.91764705882352937 0.92156862745098034 0.92549019607843142 0.92941176470588238 0.93333333333333335 0.93725490196078431 0.94117647058823528 0.94509803921568625 0.94901960784313721 0.95294117647058818 0.95686274509803926 0.96078431372549022 0.96470588235294119 0.96862745098039216 0.97254901960784312 0.97647058823529409 0.98039215686274506 0.98431372549019602 0.9882352941176471 0.99215686274509807 0.99607843137254903 1))) +(GimpDeviceInfo "eGalax Inc. eGalaxTouch EXC3000-0367-44.01.00" + (name "eGalax Inc. eGalaxTouch EXC3000-0367-44.01.00") + (tool-options "GimpRectangleSelectOptions" + (tool "gimp-rect-select-tool") + (corner-radius 46.200000000000003)) + (use-fg-bg no) + (use-opacity-paint-mode no) + (use-brush no) + (use-dynamics no) + (use-mypaint-brush no) + (use-gradient no) + (use-pattern no) + (use-palette no) + (use-font no) + (mode disabled) + (axes 4 x y pressure xtilt) + (keys 0) + (pressure-curve + (curve-type smooth) + (points 0) + (point-types 0) + (n-samples 256) + (samples 256 0 0.0039215686274509803 0.0078431372549019607 0.011764705882352941 0.015686274509803921 0.019607843137254902 0.023529411764705882 0.027450980392156862 0.031372549019607843 0.035294117647058823 0.039215686274509803 0.043137254901960784 0.047058823529411764 0.050980392156862744 0.054901960784313725 0.058823529411764705 0.062745098039215685 0.066666666666666666 0.070588235294117646 0.074509803921568626 0.078431372549019607 0.082352941176470587 0.086274509803921567 0.090196078431372548 0.094117647058823528 0.098039215686274508 0.10196078431372549 0.10588235294117647 0.10980392156862745 0.11372549019607843 0.11764705882352941 0.12156862745098039 0.12549019607843137 0.12941176470588237 0.13333333333333333 0.13725490196078433 0.14117647058823529 0.14509803921568629 0.14901960784313725 0.15294117647058825 0.15686274509803921 0.16078431372549021 0.16470588235294117 0.16862745098039217 0.17254901960784313 0.17647058823529413 0.1803921568627451 0.18431372549019609 0.18823529411764706 0.19215686274509805 0.19607843137254902 0.20000000000000001 0.20392156862745098 0.20784313725490197 0.21176470588235294 0.21568627450980393 0.2196078431372549 0.22352941176470589 0.22745098039215686 0.23137254901960785 0.23529411764705882 0.23921568627450981 0.24313725490196078 0.24705882352941178 0.25098039215686274 0.25490196078431371 0.25882352941176473 0.2627450980392157 0.26666666666666666 0.27058823529411763 0.27450980392156865 0.27843137254901962 0.28235294117647058 0.28627450980392155 0.29019607843137257 0.29411764705882354 0.29803921568627451 0.30196078431372547 0.30588235294117649 0.30980392156862746 0.31372549019607843 0.31764705882352939 0.32156862745098042 0.32549019607843138 0.32941176470588235 0.33333333333333331 0.33725490196078434 0.3411764705882353 0.34509803921568627 0.34901960784313724 0.35294117647058826 0.35686274509803922 0.36078431372549019 0.36470588235294116 0.36862745098039218 0.37254901960784315 0.37647058823529411 0.38039215686274508 0.3843137254901961 0.38823529411764707 0.39215686274509803 0.396078431372549 0.40000000000000002 0.40392156862745099 0.40784313725490196 0.41176470588235292 0.41568627450980394 0.41960784313725491 0.42352941176470588 0.42745098039215684 0.43137254901960786 0.43529411764705883 0.4392156862745098 0.44313725490196076 0.44705882352941179 0.45098039215686275 0.45490196078431372 0.45882352941176469 0.46274509803921571 0.46666666666666667 0.47058823529411764 0.47450980392156861 0.47843137254901963 0.4823529411764706 0.48627450980392156 0.49019607843137253 0.49411764705882355 0.49803921568627452 0.50196078431372548 0.50588235294117645 0.50980392156862742 0.51372549019607838 0.51764705882352946 0.52156862745098043 0.52549019607843139 0.52941176470588236 0.53333333333333333 0.53725490196078429 0.54117647058823526 0.54509803921568623 0.5490196078431373 0.55294117647058827 0.55686274509803924 0.5607843137254902 0.56470588235294117 0.56862745098039214 0.5725490196078431 0.57647058823529407 0.58039215686274515 0.58431372549019611 0.58823529411764708 0.59215686274509804 0.59607843137254901 0.59999999999999998 0.60392156862745094 0.60784313725490191 0.61176470588235299 0.61568627450980395 0.61960784313725492 0.62352941176470589 0.62745098039215685 0.63137254901960782 0.63529411764705879 0.63921568627450975 0.64313725490196083 0.6470588235294118 0.65098039215686276 0.65490196078431373 0.6588235294117647 0.66274509803921566 0.66666666666666663 0.6705882352941176 0.67450980392156867 0.67843137254901964 0.68235294117647061 0.68627450980392157 0.69019607843137254 0.69411764705882351 0.69803921568627447 0.70196078431372544 0.70588235294117652 0.70980392156862748 0.71372549019607845 0.71764705882352942 0.72156862745098038 0.72549019607843135 0.72941176470588232 0.73333333333333328 0.73725490196078436 0.74117647058823533 0.74509803921568629 0.74901960784313726 0.75294117647058822 0.75686274509803919 0.76078431372549016 0.76470588235294112 0.7686274509803922 0.77254901960784317 0.77647058823529413 0.7803921568627451 0.78431372549019607 0.78823529411764703 0.792156862745098 0.79607843137254897 0.80000000000000004 0.80392156862745101 0.80784313725490198 0.81176470588235294 0.81568627450980391 0.81960784313725488 0.82352941176470584 0.82745098039215681 0.83137254901960789 0.83529411764705885 0.83921568627450982 0.84313725490196079 0.84705882352941175 0.85098039215686272 0.85490196078431369 0.85882352941176465 0.86274509803921573 0.8666666666666667 0.87058823529411766 0.87450980392156863 0.8784313725490196 0.88235294117647056 0.88627450980392153 0.8901960784313725 0.89411764705882357 0.89803921568627454 0.90196078431372551 0.90588235294117647 0.90980392156862744 0.9137254901960784 0.91764705882352937 0.92156862745098034 0.92549019607843142 0.92941176470588238 0.93333333333333335 0.93725490196078431 0.94117647058823528 0.94509803921568625 0.94901960784313721 0.95294117647058818 0.95686274509803926 0.96078431372549022 0.96470588235294119 0.96862745098039216 0.97254901960784312 0.97647058823529409 0.98039215686274506 0.98431372549019602 0.9882352941176471 0.99215686274509807 0.99607843137254903 1))) + +# end of devicerc diff --git a/GIMP/2.10/dockrc b/GIMP/2.10/dockrc new file mode 100755 index 0000000..bb1944b --- /dev/null +++ b/GIMP/2.10/dockrc @@ -0,0 +1,4 @@ +# recently closed docks + + +# end of recently closed docks diff --git a/GIMP/2.10/internal-data/custom.ggr b/GIMP/2.10/internal-data/custom.ggr new file mode 100644 index 0000000..ab2b3a6 --- /dev/null +++ b/GIMP/2.10/internal-data/custom.ggr @@ -0,0 +1,5 @@ +GIMP Gradient +Name: Custom +2 +0 0.26039777684111548 0.52079555368222941 0 0 0 1 0.022415173491766974 0.00034873996086867313 0.10440560888171176 1 0 0 1 0 +0.52079555368222941 0.76039777684111642 1 0.022415173491766974 0.00034873996086867313 0.10440560888171176 1 1 1 1 1 0 0 0 3 diff --git a/GIMP/2.10/menurc b/GIMP/2.10/menurc new file mode 100755 index 0000000..445c9de --- /dev/null +++ b/GIMP/2.10/menurc @@ -0,0 +1,1296 @@ +; gimp GtkAccelMap rc-file -*- scheme -*- +; this file is an automated accelerator map dump +; +; (gtk_accel_path "/tools/tools-rotate-image-arbitrary" "") +; (gtk_accel_path "/file/file-menu" "") +; (gtk_accel_path "/view/view-show-canvas-boundary" "") +; (gtk_accel_path "/tools/tools-opacity-set-to-default" "") +; (gtk_accel_path "/context/context-background-value-decrease" "") +; (gtk_accel_path "/windows/windows-display-0005" "") +; (gtk_accel_path "/vectors/vectors-color-tag-brown" "") +; (gtk_accel_path "/tools/tools-opacity-increase-skip" "greater") +(gtk_accel_path "/tools/tools-vector" "") +; (gtk_accel_path "/windows/windows-display-0004" "") +; (gtk_accel_path "/view/view-scroll-left" "") +; (gtk_accel_path "/image/image-convert-u8" "") +; (gtk_accel_path "/tools/tools-airbrush-rate-increase" "") +; (gtk_accel_path "/tools/tools-spacing-set-to-default" "") +; (gtk_accel_path "/view/view-show-statusbar" "") +; (gtk_accel_path "/layers/layers-opacity-transparent" "") +; (gtk_accel_path "/vectors/vectors-color-tag-orange" "") +; (gtk_accel_path "/view/view-zoom-8-1-accel" "KP_4") +; (gtk_accel_path "/context/context-background-value-set" "") +; (gtk_accel_path "/windows/windows-display-0003" "") +; (gtk_accel_path "/context/context-paint-mode-menu" "") +; (gtk_accel_path "/filters/filters-motion-blur-linear" "") +; (gtk_accel_path "/filters/filters-gegl-graph" "") +; (gtk_accel_path "/windows/windows-display-0002" "") +; (gtk_accel_path "/context/context-brush-select-set" "") +; (gtk_accel_path "/edit/edit-copy" "c") +; (gtk_accel_path "/context/context-brush-shape-circle" "") +; (gtk_accel_path "/windows/windows-display-0001" "") +; (gtk_accel_path "/vectors/vectors-lock-content" "") +; (gtk_accel_path "/context/context-opacity-opaque" "") +; (gtk_accel_path "/view/view-color-management-menu" "") +; (gtk_accel_path "/filters/filters-spherize" "") +; (gtk_accel_path "/channels/channels-new-last-values" "") +; (gtk_accel_path "/vectors/vectors-merge-visible" "") +; (gtk_accel_path "/plug-in/script-fu-slide" "") +; (gtk_accel_path "/plug-in/plug-in-spheredesigner" "") +(gtk_accel_path "/filters/filters-curves" "m") +; (gtk_accel_path "/channels/channels-lock-position" "") +; (gtk_accel_path "/context/context-brush-menu" "") +; (gtk_accel_path "/context/context-foreground-blue-decrease" "") +; (gtk_accel_path "/context/context-colors-menu" "") +; (gtk_accel_path "/edit/edit-undo-clear" "") +; (gtk_accel_path "/context/context-gradient-select-first" "") +; (gtk_accel_path "/layers/layers-color-tag-brown" "") +; (gtk_accel_path "/plug-in/plug-in-imagemap" "") +; (gtk_accel_path "/filters/filters-recent-menu" "") +; (gtk_accel_path "/plug-in/plug-in-map-object" "") +; (gtk_accel_path "/layers/layers-text-along-vectors" "") +; (gtk_accel_path "/view/view-zoom-revert" "grave") +; (gtk_accel_path "/dialogs/dialogs-symmetry" "") +; (gtk_accel_path "/plug-in/plug-in-script-fu-console" "") +; (gtk_accel_path "/filters/filters-plasma" "") +; (gtk_accel_path "/view/view-color-management-enable" "") +(gtk_accel_path "/dialogs/dialogs-undo-history" "y") +; (gtk_accel_path "/edit/edit-cut" "x") +; (gtk_accel_path "/context/context-foreground-value-increase-skip" "") +; (gtk_accel_path "/plug-in/script-fu-addborder" "") +; (gtk_accel_path "/view/view-display-intent-absolute-colorimetric" "") +; (gtk_accel_path "/filters/filters-focus-blur" "") +; (gtk_accel_path "/context/context-background-red-decrease" "") +; (gtk_accel_path "/tools/tools-airbrush-rate-maximum" "") +; (gtk_accel_path "/vectors/vectors-color-tag-menu" "") +; (gtk_accel_path "/view/view-fullscreen" "F11") +; (gtk_accel_path "/dialogs/dialogs-brushes" "b") +; (gtk_accel_path "/context/context-brush-radius-decrease-skip" "") +; (gtk_accel_path "/view/view-zoom-2-1" "2") +; (gtk_accel_path "/tools/tools-spacing-minimum" "") +; (gtk_accel_path "/context/context-foreground-blue-maximum" "") +; (gtk_accel_path "/context/context-foreground-red-increase" "") +; (gtk_accel_path "/view/view-snap-to-vectors" "") +; (gtk_accel_path "/image/image-properties" "Return") +; (gtk_accel_path "/drawable/drawable-rotate-270" "") +; (gtk_accel_path "/tools/tools-hardness-increase-percent" "") +; (gtk_accel_path "/plug-in/script-fu-predator" "") +; (gtk_accel_path "/plug-in/plug-in-colorify" "") +; (gtk_accel_path "/view/view-show-grid" "") +; (gtk_accel_path "/image/image-color-management-enabled" "") +; (gtk_accel_path "/tools/tools-angle-increase" "") +; (gtk_accel_path "/vectors/vectors-color-tag-violet" "") +; (gtk_accel_path "/context/context-background-saturation-decrease-skip" "") +; (gtk_accel_path "/layers/layers-composite-mode-union" "") +; (gtk_accel_path "/channels/channels-color-tag-blue" "") +; (gtk_accel_path "/windows/windows-dialogs-menu" "") +; (gtk_accel_path "/tools/tools-gegl" "") +; (gtk_accel_path "/tool-options/tool-options-reset" "") +; (gtk_accel_path "/layers/layers-delete" "") +; (gtk_accel_path "/view/view-display-intent-menu" "") +; (gtk_accel_path "/vectors/vectors-edit" "") +; (gtk_accel_path "/filters/filters-illusion" "") +; (gtk_accel_path "/context/context-colormap-foreground-previous" "") +; (gtk_accel_path "/layers/layers-lock-content" "") +; (gtk_accel_path "/file/file-create-menu" "") +; (gtk_accel_path "/tools/tools-spacing-decrease-skip" "") +; (gtk_accel_path "/filters/filters-dropshadow" "") +; (gtk_accel_path "/context/context-background-green-increase" "") +; (gtk_accel_path "/layers/layers-alpha-selection-add" "") +; (gtk_accel_path "/plug-in/script-fu-make-brush-rectangular-feathered" "") +; (gtk_accel_path "/view/view-scroll-page-right" "") +; (gtk_accel_path "/context/context-brush-radius-menu" "") +; (gtk_accel_path "/layers/layers-blend-space-menu" "") +; (gtk_accel_path "/dockable/dialogs-histogram" "") +; (gtk_accel_path "/layers/layers-opacity-opaque" "") +; (gtk_accel_path "/context/context-background-saturation-increase" "") +; (gtk_accel_path "/dialogs/dialogs-dynamics-editor" "") +; (gtk_accel_path "/layers/layers-composite-space-menu" "") +; (gtk_accel_path "/file/file-revert" "") +; (gtk_accel_path "/filters/filters-fattal-2002" "") +; (gtk_accel_path "/tools/tools-color-average-radius-set" "") +; (gtk_accel_path "/filters/filters-distorts-menu" "") +; (gtk_accel_path "/tools/tools-fuzzy-select" "u") +; (gtk_accel_path "/debug/debug-show-image-graph" "") +; (gtk_accel_path "/context/context-brush-angle-maximum" "") +; (gtk_accel_path "/view/view-zoom-selection" "") +; (gtk_accel_path "/tools/tools-cage" "g") +; (gtk_accel_path "/file/file-open-location" "") +; (gtk_accel_path "/plug-in/plug-in-blur" "") +; (gtk_accel_path "/layers/layers-opacity-decrease" "") +; (gtk_accel_path "/context/context-foreground-hue-decrease-skip" "") +; (gtk_accel_path "/layers/layers-mask-add" "") +; (gtk_accel_path "/filters/filters-diffraction-patterns" "") +; (gtk_accel_path "/image/image-convert-rgb" "") +; (gtk_accel_path "/tools/tools-spacing-decrease-percent" "") +; (gtk_accel_path "/context/context-gradient-select-last" "") +; (gtk_accel_path "/file/file-create-template" "") +; (gtk_accel_path "/vectors/vectors-color-tag-yellow" "") +; (gtk_accel_path "/plug-in/plug-in-emboss" "") +; (gtk_accel_path "/dockable/dockable-view-type-grid" "") +; (gtk_accel_path "/view/view-navigation-window" "") +; (gtk_accel_path "/windows/windows-tabs-position-bottom" "") +; (gtk_accel_path "/context/context-brush-angle-set" "") +; (gtk_accel_path "/context/context-background-blue-decrease" "") +; (gtk_accel_path "/filters/filters-linear-sinusoid" "") +; (gtk_accel_path "/context/context-foreground-green-set" "") +; (gtk_accel_path "/tools/tools-levels" "") +; (gtk_accel_path "/plug-in/plug-in-script-fu-server" "") +; (gtk_accel_path "/dock/dock-move-to-screen-menu" "") +; (gtk_accel_path "/windows/windows-tabs-position-right" "") +; (gtk_accel_path "/plug-in/script-fu-line-nova" "") +; (gtk_accel_path "/layers/layers-color-tag-blue" "") +; (gtk_accel_path "/dialogs/dialogs-indexed-palette" "") +; (gtk_accel_path "/tools/tools-object-1-set" "") +; (gtk_accel_path "/channels/channels-new" "") +; (gtk_accel_path "/edit/edit-named-paste" "") +; (gtk_accel_path "/tools/tools-hardness-minimum" "") +; (gtk_accel_path "/filters/filters-menu" "") +; (gtk_accel_path "/tools/tools-opacity-set" "") +; (gtk_accel_path "/dockable/dialogs-toolbox" "b") +; (gtk_accel_path "/plug-in/gimp-help-using-fileformats" "") +; (gtk_accel_path "/edit/edit-strong-redo" "y") +; (gtk_accel_path "/filters/filters-alien-map" "") +; (gtk_accel_path "/plug-in/gimp-online-bugs-features" "") +; (gtk_accel_path "/tools/tools-object-2-last" "") +; (gtk_accel_path "/tools/tools-paintbrush-force-set" "") +; (gtk_accel_path "/vectors/vectors-linked" "") +; (gtk_accel_path "/filters/filters-gaussian-blur-selective" "") +; (gtk_accel_path "/filters/filters-unsharp-mask" "") +; (gtk_accel_path "/fonts/fonts-refresh" "") +; (gtk_accel_path "/file/file-open-recent-menu" "") +; (gtk_accel_path "/tools/tools-hardness-decrease" "") +; (gtk_accel_path "/layers/layers-mask-show" "") +; (gtk_accel_path "/view/view-softproof-intent-absolute-colorimetric" "") +; (gtk_accel_path "/tools/tools-angle-decrease" "") +; (gtk_accel_path "/layers/layers-merge-layers-last-values" "") +; (gtk_accel_path "/context/context-background-blue-set" "") +; (gtk_accel_path "/tools/tools-opacity-increase-percent" "") +; (gtk_accel_path "/context/context-background-value-decrease-skip" "") +; (gtk_accel_path "/plug-in/script-fu-spinning-globe" "") +; (gtk_accel_path "/windows/windows-menu" "") +; (gtk_accel_path "/tools/tools-object-1-first" "") +; (gtk_accel_path "/image/image-flip-horizontal" "") +; (gtk_accel_path "/plug-in/plug-in-sharpen" "") +; (gtk_accel_path "/tools/tools-force-decrease-percent" "") +; (gtk_accel_path "/context/context-brush-hardness-set" "") +; (gtk_accel_path "/select/select-stroke-last-values" "") +; (gtk_accel_path "/filters/filters-long-shadow" "") +; (gtk_accel_path "/context/context-brush-radius-increase-percent" "") +; (gtk_accel_path "/plug-in/plug-in-animationoptimize-diff" "") +; (gtk_accel_path "/tools/tools-perspective-clone" "") +; (gtk_accel_path "/filters/filters-color-temperature" "") +; (gtk_accel_path "/image/colors-auto-menu" "") +; (gtk_accel_path "/vectors/vectors-selection-to-vectors-advanced" "") +; (gtk_accel_path "/context/context-background-saturation-decrease" "") +; (gtk_accel_path "/plug-in/script-fu-unsharp-mask" "") +(gtk_accel_path "/tools/tools-rect-select" "m") +; (gtk_accel_path "/tools/tools-angle-set-to-default" "") +; (gtk_accel_path "/filters/filters-semi-flatten" "") +; (gtk_accel_path "/tools/tools-opacity-maximum" "") +; (gtk_accel_path "/dockable/dockable-tab-style-preview-name" "") +; (gtk_accel_path "/view/view-zoom-in-skip" "") +; (gtk_accel_path "/tools/tools-airbrush-flow-decrease" "") +; (gtk_accel_path "/plug-in/plug-in-dog" "") +; (gtk_accel_path "/debug/debug-mem-profile" "") +; (gtk_accel_path "/channels/channels-visible" "") +; (gtk_accel_path "/edit/edit-paste-as-new-layer" "") +; (gtk_accel_path "/context/context-foreground-hue-maximum" "") +; (gtk_accel_path "/tool-options/tool-options-restore-preset-menu" "") +; (gtk_accel_path "/dockable/dialogs-undo-history" "") +; (gtk_accel_path "/tools/tools-paintbrush-hardness-set" "") +; (gtk_accel_path "/filters/filters-stretch-contrast" "") +; (gtk_accel_path "/filters/filters-color-to-alpha" "") +; (gtk_accel_path "/context/context-brush-aspect-maximum" "") +; (gtk_accel_path "/dockable/dialogs-templates" "") +; (gtk_accel_path "/plug-in/script-fu-ripply-anim" "") +; (gtk_accel_path "/view/view-show-menubar" "") +; (gtk_accel_path "/filters/filters-web-menu" "") +; (gtk_accel_path "/dockable/dialogs-cursor" "") +; (gtk_accel_path "/filters/filters-exposure" "") +; (gtk_accel_path "/tools/tools-foreground-select-brush-size-set" "") +; (gtk_accel_path "/tools/tools-spacing-increase" "") +; (gtk_accel_path "/context/context-background-hue-decrease-skip" "") +; (gtk_accel_path "/select/select-shrink" "") +; (gtk_accel_path "/view/view-scroll-horizontal" "") +; (gtk_accel_path "/select/select-fill-last-values" "") +; (gtk_accel_path "/image/image-resize-to-selection" "") +; (gtk_accel_path "/filters/filters-bloom" "") +; (gtk_accel_path "/plug-in/script-fu-paste-as-pattern" "") +; (gtk_accel_path "/tools/tools-paintbrush-aspect-ratio-set" "") +; (gtk_accel_path "/plug-in/script-fu-tile-blur" "") +; (gtk_accel_path "/plug-in/plug-in-gfig" "") +; (gtk_accel_path "/context/context-foreground-hue-set" "") +; (gtk_accel_path "/tools/tools-gradient" "g") +(gtk_accel_path "/select/select-none" "d") +; (gtk_accel_path "/edit/edit-named-cut" "") +; (gtk_accel_path "/context/context-palette-select-set" "") +; (gtk_accel_path "/channels/channels-select-next" "") +; (gtk_accel_path "/image/image-precision-menu" "") +; (gtk_accel_path "/layers/layers-mask-menu" "") +; (gtk_accel_path "/layers/layers-alpha-selection-replace" "") +; (gtk_accel_path "/plug-in/gimp-palette-export-php" "") +; (gtk_accel_path "/filters/filters-noise-hsv" "") +; (gtk_accel_path "/filters/filters-noise-simplex" "") +; (gtk_accel_path "/help/help-help" "F1") +; (gtk_accel_path "/context/context-opacity-increase-skip" "") +; (gtk_accel_path "/view/view-padding-color-light-check" "") +; (gtk_accel_path "/context/context-brush-spikes-minimum" "") +; (gtk_accel_path "/plug-in/plug-in-gflare" "") +; (gtk_accel_path "/context/context-brush-aspect-set" "") +; (gtk_accel_path "/plug-in/plug-in-zealouscrop" "") +; (gtk_accel_path "/dockable/dialogs-gradient-editor" "") +; (gtk_accel_path "/tools/tools-color-menu" "") +; (gtk_accel_path "/tools/tools-airbrush-flow-maximum" "") +; (gtk_accel_path "/view/view-flip-horizontally" "") +; (gtk_accel_path "/layers/layers-composite-mode-auto" "") +; (gtk_accel_path "/plug-in/gimp-online-developer-web-site" "") +; (gtk_accel_path "/dockable/dockable-tab-style-name" "") +; (gtk_accel_path "/vectors/vectors-raise-to-top" "") +; (gtk_accel_path "/view/view-scroll-page-left" "") +; (gtk_accel_path "/tools/tools-threshold" "") +; (gtk_accel_path "/filters/filters-threshold" "") +; (gtk_accel_path "/tools/tools-airbrush-flow-set" "") +; (gtk_accel_path "/context/context-brush-spacing-minimum" "") +; (gtk_accel_path "/layers/layers-select-bottom" "End") +; (gtk_accel_path "/dockable/dockable-tab-style-preview" "") +; (gtk_accel_path "/dockable/dialogs-channels" "") +; (gtk_accel_path "/channels/channels-color-tag-none" "") +(gtk_accel_path "/tools/tools-paintbrush" "b") +; (gtk_accel_path "/vectors/vectors-color-tag-gray" "") +; (gtk_accel_path "/context/context-brush-spacing-increase-skip" "") +; (gtk_accel_path "/vectors/vectors-stroke-last-values" "") +; (gtk_accel_path "/view/view-show-sample-points" "") +; (gtk_accel_path "/filters/filters-antialias" "") +; (gtk_accel_path "/dockable/dockable-preview-size-medium" "") +; (gtk_accel_path "/dockable/dialogs-colors" "") +; (gtk_accel_path "/view/view-show-all" "") +; (gtk_accel_path "/debug/debug-benchmark-projection" "") +; (gtk_accel_path "/context/context-brush-spikes-decrease" "") +; (gtk_accel_path "/filters/filters-noise-hurl" "") +; (gtk_accel_path "/file/file-save-and-close" "") +; (gtk_accel_path "/dialogs/dialogs-document-history" "") +; (gtk_accel_path "/context/context-opacity-set" "") +; (gtk_accel_path "/plug-in/script-fu-blend-anim" "") +; (gtk_accel_path "/view/view-zoom-in" "plus") +; (gtk_accel_path "/plug-in/plug-in-smooth-palette" "") +; (gtk_accel_path "/context/context-swatch-background-set" "") +; (gtk_accel_path "/windows/windows-tab-position" "") +; (gtk_accel_path "/dialogs/dialogs-error-console" "") +; (gtk_accel_path "/view/view-rotate-15" "") +; (gtk_accel_path "/view/view-zoom" "") +; (gtk_accel_path "/view/view-scroll-top-border" "") +; (gtk_accel_path "/layers/layers-new" "n") +; (gtk_accel_path "/plug-in/gimp-palette-export-java" "") +; (gtk_accel_path "/context/context-foreground-blue-increase-skip" "") +; (gtk_accel_path "/plug-in/script-fu-burn-in-anim" "") +; (gtk_accel_path "/tools/tools-paint-menu" "") +; (gtk_accel_path "/plug-in/plug-in-colormap-swap" "") +; (gtk_accel_path "/dockable/dialogs-mypaint-brushes" "") +; (gtk_accel_path "/dockable/dockable-preview-size-menu" "") +; (gtk_accel_path "/image/colors-menu" "") +; (gtk_accel_path "/vectors/vectors-lock-position" "") +; (gtk_accel_path "/vectors/vectors-visible" "") +; (gtk_accel_path "/image/image-flatten" "") +; (gtk_accel_path "/tools/tools-spacing-decrease" "") +; (gtk_accel_path "/filters/filters-dither" "") +; (gtk_accel_path "/plug-in/plug-in-decompose-registered" "") +; (gtk_accel_path "/channels/channels-selection-intersect" "") +; (gtk_accel_path "/plug-in/plug-in-cartoon" "") +; (gtk_accel_path "/view/view-softproof-intent-perceptual" "") +; (gtk_accel_path "/tools/tools-offset" "") +; (gtk_accel_path "/image/image-convert-float" "") +; (gtk_accel_path "/edit/edit-clear" "Delete") +; (gtk_accel_path "/view/view-scroll-down" "") +; (gtk_accel_path "/context/context-foreground-green-increase" "") +; (gtk_accel_path "/color-button/color-button-use-white" "") +; (gtk_accel_path "/image/image-scale" "") +; (gtk_accel_path "/tools/tools-aspect-increase-skip" "") +; (gtk_accel_path "/context/context-colormap-background-previous" "") +; (gtk_accel_path "/image/colors-info-menu" "") +; (gtk_accel_path "/plug-in/plug-in-lic" "") +; (gtk_accel_path "/context/context-background-value-increase" "") +; (gtk_accel_path "/dialogs/dialogs-channels" "") +; (gtk_accel_path "/filters/filters-component-extract" "") +; (gtk_accel_path "/tools/tools-size-maximum" "") +; (gtk_accel_path "/dockable/dialogs-dashboard" "") +; (gtk_accel_path "/vectors/vectors-select-previous" "") +; (gtk_accel_path "/layers/layers-mode-menu" "") +; (gtk_accel_path "/filters/filters-render-nature-menu" "") +; (gtk_accel_path "/layers/layers-color-tag-none" "") +; (gtk_accel_path "/dockable/dialogs-gradients" "g") +; (gtk_accel_path "/tools/tools-heal" "h") +; (gtk_accel_path "/view/view-scroll-right" "") +; (gtk_accel_path "/dialogs/dialogs-cursor" "") +; (gtk_accel_path "/context/context-foreground-saturation-minimum" "") +; (gtk_accel_path "/context/context-background-red-maximum" "") +; (gtk_accel_path "/context/context-brush-spikes-menu" "") +; (gtk_accel_path "/filters/filters-recent-10" "") +; (gtk_accel_path "/plug-in/file-gif-save2" "") +; (gtk_accel_path "/drawable/drawable-flip-horizontal" "") +; (gtk_accel_path "/layers/layers-merge-group" "") +; (gtk_accel_path "/color-button/color-button-use-background" "") +; (gtk_accel_path "/file/file-open" "o") +; (gtk_accel_path "/plug-in/script-fu-font-map" "") +; (gtk_accel_path "/tools/tools-transform-preview-opacity-set" "") +; (gtk_accel_path "/dialogs/dialogs-histogram" "") +; (gtk_accel_path "/filters/filters-lens-blur" "") +; (gtk_accel_path "/view/view-rotate-set-absolute" "") +; (gtk_accel_path "/layers/layers-mask-apply" "") +; (gtk_accel_path "/context/context-brush-radius-increase-less" "") +; (gtk_accel_path "/dialogs/dialogs-brush-editor" "") +; (gtk_accel_path "/context/context-background-saturation-maximum" "") +; (gtk_accel_path "/context/context-foreground-blue-increase" "") +; (gtk_accel_path "/layers/layers-duplicate" "d") +; (gtk_accel_path "/context/context-palette-select-next" "") +; (gtk_accel_path "/context/context-palette-foreground-next-skip" "") +; (gtk_accel_path "/layers/layers-mask-selection-add" "") +(gtk_accel_path "/tools/tools-dodge-burn" "o") +; (gtk_accel_path "/edit/edit-copy-visible" "c") +; (gtk_accel_path "/layers/layers-select-previous" "Page_Up") +; (gtk_accel_path "/tools/tools-angle-maximum" "") +; (gtk_accel_path "/dockable/dockable-lock-tab" "") +; (gtk_accel_path "/context/context-foreground-value-minimum" "") +; (gtk_accel_path "/file/file-close-all" "w") +; (gtk_accel_path "/dialogs/dialogs-sample-points" "") +; (gtk_accel_path "/layers/layers-opacity-menu" "") +; (gtk_accel_path "/plug-in/plug-in-metadata-editor" "") +; (gtk_accel_path "/tools/tools-angle-increase-percent" "") +; (gtk_accel_path "/plug-in/script-fu-drop-shadow" "") +; (gtk_accel_path "/filters/filters-render-menu" "") +; (gtk_accel_path "/plug-in/plug-in-jigsaw" "") +; (gtk_accel_path "/dockable/dockable-tab-style-menu" "") +; (gtk_accel_path "/context/context-brush-hardness-decrease-skip" "") +; (gtk_accel_path "/plug-in/file-pdf-load" "") +; (gtk_accel_path "/plug-in/script-fu-guides-from-selection" "") +; (gtk_accel_path "/plug-in/script-fu-selection-to-brush" "") +; (gtk_accel_path "/layers/layers-blend-space-rgb-linear" "") +; (gtk_accel_path "/context/context-background-blue-maximum" "") +; (gtk_accel_path "/tools/tools-zoom" "z") +; (gtk_accel_path "/context/context-swatch-foreground-previous-skip" "") +; (gtk_accel_path "/context/context-background-red-increase" "") +; (gtk_accel_path "/plug-in/plug-in-checkerboard" "") +; (gtk_accel_path "/dockable/dockable-popup" "") +; (gtk_accel_path "/dockable/dockable-preview-size-extra-small" "") +; (gtk_accel_path "/filters/filters-render-clouds-menu" "") +; (gtk_accel_path "/context/context-palette-foreground-first" "") +; (gtk_accel_path "/view/view-zoom-4-1" "3") +; (gtk_accel_path "/channels/channels-duplicate" "") +; (gtk_accel_path "/context/context-brush-aspect-menu" "") +; (gtk_accel_path "/tools/tools-object-2-set" "") +; (gtk_accel_path "/context/context-brush-radius-increase" "") +; (gtk_accel_path "/view/view-display-black-point-compensation" "") +; (gtk_accel_path "/tools/tools-size-decrease" "bracketleft") +; (gtk_accel_path "/dialogs/dialogs-colors" "") +; (gtk_accel_path "/context/context-swatch-background-next" "") +; (gtk_accel_path "/filters/filters-edge" "") +; (gtk_accel_path "/image/image-rotate-180" "") +; (gtk_accel_path "/image/image-new" "n") +; (gtk_accel_path "/tool-options/tool-options-delete-preset-menu" "") +; (gtk_accel_path "/tools/tools-ink-blob-size-set" "") +; (gtk_accel_path "/filters/filters-value-propagate" "") +; (gtk_accel_path "/image/image-color-profile-assign" "") +; (gtk_accel_path "/layers/layers-scale" "") +; (gtk_accel_path "/context/context-foreground-green-decrease" "") +; (gtk_accel_path "/layers/layers-composite-space-rgb-perceptual" "") +; (gtk_accel_path "/layers/layers-transparency-menu" "") +; (gtk_accel_path "/layers/layers-alpha-remove" "") +; (gtk_accel_path "/context/context-pattern-select-set" "") +; (gtk_accel_path "/filters/filters-image-gradient" "") +; (gtk_accel_path "/select/select-all" "a") +; (gtk_accel_path "/plug-in/plug-in-filter-pack" "") +; (gtk_accel_path "/context/context-brush-hardness-maximum" "") +; (gtk_accel_path "/plug-in/plug-in-recompose" "") +; (gtk_accel_path "/view/view-zoom-menu" "") +; (gtk_accel_path "/image/image-convert-u16" "") +; (gtk_accel_path "/filters/filters-kaleidoscope" "") +; (gtk_accel_path "/context/context-colormap-foreground-previous-skip" "") +; (gtk_accel_path "/view/view-snap-to-grid" "") +; (gtk_accel_path "/vectors/vectors-fill" "") +; (gtk_accel_path "/view/view-color-management-reset" "") +; (gtk_accel_path "/context/context-background-green-set" "") +; (gtk_accel_path "/tools/tools-force-maximum" "") +; (gtk_accel_path "/context/context-foreground-saturation-increase" "") +; (gtk_accel_path "/dockable/dialogs-device-status" "") +; (gtk_accel_path "/edit/edit-named-copy" "") +; (gtk_accel_path "/filters/filters-video-degradation" "") +; (gtk_accel_path "/edit/edit-paste-as-new-layer-in-place" "") +; (gtk_accel_path "/layers/layers-resize" "") +; (gtk_accel_path "/layers/layers-blend-space-rgb-perceptual" "") +; (gtk_accel_path "/layers/layers-stack-menu" "") +; (gtk_accel_path "/dockable/dockable-show-button-bar" "") +; (gtk_accel_path "/view/view-zoom-fill" "") +; (gtk_accel_path "/filters/filters-stretch-contrast-hsv" "") +; (gtk_accel_path "/view/view-padding-color-prefs" "") +; (gtk_accel_path "/plug-in/plug-in-depth-merge" "") +; (gtk_accel_path "/tools/tools-opacity-decrease-skip" "less") +; (gtk_accel_path "/plug-in/plug-in-guillotine" "") +; (gtk_accel_path "/windows/windows-tabs-position-left" "") +; (gtk_accel_path "/layers/layers-opacity-increase" "") +; (gtk_accel_path "/view/view-padding-color-in-show-all" "") +; (gtk_accel_path "/image/colors-tone-mapping-menu" "") +; (gtk_accel_path "/tools/tools-size-set" "") +; (gtk_accel_path "/context/context-brush-angle-increase-skip" "") +; (gtk_accel_path "/dialogs/dialogs-fonts" "") +; (gtk_accel_path "/channels/channels-linked" "") +; (gtk_accel_path "/dockable/dockable-preview-size-gigantic" "") +; (gtk_accel_path "/plug-in/script-fu-difference-clouds" "") +; (gtk_accel_path "/plug-in/plug-in-dbbrowser" "") +; (gtk_accel_path "/context/context-background-hue-set" "") +; (gtk_accel_path "/plug-in/plug-in-align-layers" "") +; (gtk_accel_path "/context/context-background-blue-increase" "") +; (gtk_accel_path "/dockable/dialogs-palettes" "") +; (gtk_accel_path "/filters/filters-hue-chroma" "") +; (gtk_accel_path "/plug-in/plug-in-blinds" "") +; (gtk_accel_path "/dockable/dockable-preview-size-enormous" "") +; (gtk_accel_path "/filters/filters-edge-detect-menu" "") +; (gtk_accel_path "/channels/channels-lock-content" "") +(gtk_accel_path "/tools/tools-color-picker" "i") +; (gtk_accel_path "/context/context-paint-mode-next" "") +(gtk_accel_path "/tools/tools-clone" "s") +; (gtk_accel_path "/plug-in/script-fu-make-brush-elliptical-feathered" "") +; (gtk_accel_path "/context/context-background-value-minimum" "") +; (gtk_accel_path "/drawable/drawable-linked" "") +; (gtk_accel_path "/select/select-sharpen" "") +; (gtk_accel_path "/context/context-colormap-foreground-next" "") +; (gtk_accel_path "/view/view-zoom-4-1-accel" "KP_3") +; (gtk_accel_path "/edit/edit-undo" "z") +; (gtk_accel_path "/plug-in/script-fu-paste-as-brush" "") +; (gtk_accel_path "/filters/filters-noise-cie-lch" "") +; (gtk_accel_path "/filters/filters-invert-perceptual" "") +; (gtk_accel_path "/vectors/vectors-selection-replace" "") +; (gtk_accel_path "/file/file-save-a-copy" "") +; (gtk_accel_path "/vectors/vectors-delete" "") +; (gtk_accel_path "/vectors/vectors-color-tag-blue" "") +; (gtk_accel_path "/channels/channels-edit-attributes" "") +; (gtk_accel_path "/tools/tools-transform-3d" "w") +; (gtk_accel_path "/file/file-show-in-file-manager" "f") +; (gtk_accel_path "/context/context-swatch-background-previous-skip" "") +; (gtk_accel_path "/windows/windows-tabs-position-top" "") +; (gtk_accel_path "/context/context-brush-radius-decrease" "") +; (gtk_accel_path "/filters/filters-light-shadow-menu" "") +; (gtk_accel_path "/vectors/vectors-export" "") +; (gtk_accel_path "/layers/layers-mode-previous" "") +; (gtk_accel_path "/tools/tools-hardness-increase" "") +; (gtk_accel_path "/tools/tools-size-increase-percent" "") +; (gtk_accel_path "/view/view-zoom-16-1-accel" "KP_5") +; (gtk_accel_path "/filters/filters-deinterlace" "") +; (gtk_accel_path "/plug-in/plug-in-compose" "") +; (gtk_accel_path "/context/context-colors-swap" "x") +; (gtk_accel_path "/context/context-foreground-value-decrease-skip" "") +; (gtk_accel_path "/drawable/drawable-lock-position" "") +; (gtk_accel_path "/context/context-palette-background-first" "") +; (gtk_accel_path "/select/select-grow" "") +; (gtk_accel_path "/filters/filters-invert-linear" "") +; (gtk_accel_path "/filters/filters-recent-09" "") +; (gtk_accel_path "/help/help-context-help" "F1") +; (gtk_accel_path "/dockable/dialogs-images" "") +; (gtk_accel_path "/tools/tools-opacity-decrease-percent" "") +; (gtk_accel_path "/plug-in/plug-in-gimpressionist" "") +; (gtk_accel_path "/filters/filters-recent-08" "") +; (gtk_accel_path "/plug-in/script-fu-selection-rounded-rectangle" "") +; (gtk_accel_path "/plug-in/script-fu-grid-system" "") +; (gtk_accel_path "/dialogs/dialogs-tool-options" "") +; (gtk_accel_path "/context/context-colormap-background-previous-skip" "") +; (gtk_accel_path "/dockable/dialogs-vectors" "") +; (gtk_accel_path "/dockable/dialogs-navigation" "") +; (gtk_accel_path "/context/context-colormap-foreground-first" "") +; (gtk_accel_path "/tools/tools-unified-transform" "t") +; (gtk_accel_path "/view/view-zoom-in-accel" "KP_Add") +; (gtk_accel_path "/dialogs/dialogs-palettes" "") +; (gtk_accel_path "/file/file-quit" "q") +; (gtk_accel_path "/context/context-foreground-saturation-decrease" "") +; (gtk_accel_path "/image/image-menubar" "") +; (gtk_accel_path "/dockable/dockable-tab-style-icon" "") +; (gtk_accel_path "/filters/filters-recent-07" "") +; (gtk_accel_path "/plug-in/script-fu-circuit" "") +; (gtk_accel_path "/plug-in/script-fu-make-brush-rectangular" "") +; (gtk_accel_path "/plug-in/script-fu-erase-rows" "") +(gtk_accel_path "/tools/tools-ellipse-select" "") +; (gtk_accel_path "/filters/filters-noise-pick" "") +; (gtk_accel_path "/tools/tools-curves" "") +; (gtk_accel_path "/file/file-export-as" "e") +; (gtk_accel_path "/layers/layers-color-tag-red" "") +; (gtk_accel_path "/view/view-scroll-center" "j") +; (gtk_accel_path "/image/image-popup" "") +; (gtk_accel_path "/filters/filters-recent-06" "") +; (gtk_accel_path "/tools/tools-airbrush-flow-increase" "") +; (gtk_accel_path "/dialogs/dialogs-toolbox" "b") +; (gtk_accel_path "/view/view-scroll-bottom-border" "") +; (gtk_accel_path "/plug-in/plug-in-palettemap" "") +; (gtk_accel_path "/plug-in/plug-in-softglow" "") +; (gtk_accel_path "/context/context-pattern-select-previous" "") +; (gtk_accel_path "/edit/edit-menu" "") +; (gtk_accel_path "/filters/filters-recent-05" "") +; (gtk_accel_path "/image/image-color-profile-convert" "") +; (gtk_accel_path "/plug-in/plug-in-wavelet-decompose" "") +; (gtk_accel_path "/context/context-palette-select-last" "") +; (gtk_accel_path "/view/view-scroll-page-down" "") +; (gtk_accel_path "/filters/filters-recent-04" "") +; (gtk_accel_path "/image/image-convert-linear" "") +; (gtk_accel_path "/context/context-foreground-value-increase" "") +; (gtk_accel_path "/view/view-zoom-out-accel" "KP_Subtract") +; (gtk_accel_path "/image/image-crop-to-selection" "") +; (gtk_accel_path "/context/context-brush-radius-maximum" "") +; (gtk_accel_path "/filters/filters-oilify" "") +; (gtk_accel_path "/layers/layers-opacity-increase-skip" "") +; (gtk_accel_path "/windows/windows-docks-menu" "") +; (gtk_accel_path "/filters/filters-emboss" "") +; (gtk_accel_path "/dockable/dockable-menu" "") +; (gtk_accel_path "/filters/filters-recent-03" "") +; (gtk_accel_path "/plug-in/plug-in-qbist" "") +; (gtk_accel_path "/layers/layers-lower" "") +(gtk_accel_path "/tools/tools-align" "") +; (gtk_accel_path "/context/context-brush-aspect-increase-skip" "") +; (gtk_accel_path "/tools/tools-handle-transform" "l") +; (gtk_accel_path "/layers/layers-new-group" "") +; (gtk_accel_path "/filters/filters-waves" "") +; (gtk_accel_path "/context/context-opacity-menu" "") +; (gtk_accel_path "/filters/filters-recent-02" "") +; (gtk_accel_path "/layers/layers-crop-to-content" "") +; (gtk_accel_path "/filters/filters-whirl-pinch" "") +; (gtk_accel_path "/filters/filters-render-pattern-menu" "") +(gtk_accel_path "/tools/tools-measure" "") +; (gtk_accel_path "/dockable/dialogs-tool-presets" "") +; (gtk_accel_path "/tools/tools-aspect-maximum" "") +; (gtk_accel_path "/tools/tools-flip" "f") +; (gtk_accel_path "/tools/tools-airbrush-rate-minimum" "") +; (gtk_accel_path "/help/help-menu" "") +; (gtk_accel_path "/filters/filters-recent-01" "") +; (gtk_accel_path "/image/image-color-profile-save" "") +; (gtk_accel_path "/filters/filters-median-blur" "") +; (gtk_accel_path "/vectors/vectors-paste" "") +; (gtk_accel_path "/context/context-foreground-blue-minimum" "") +; (gtk_accel_path "/filters/filters-apply-canvas" "") +; (gtk_accel_path "/plug-in/file-png-save2" "") +; (gtk_accel_path "/drawable/drawable-levels-stretch" "") +; (gtk_accel_path "/filters/filters-difference-of-gaussians" "") +; (gtk_accel_path "/tools/tools-angle-increase-skip" "") +; (gtk_accel_path "/context/context-swatch-background-last" "") +(gtk_accel_path "/tools/tools-move" "v") +; (gtk_accel_path "/tools/tools-convolve" "u") +; (gtk_accel_path "/tools/tools-airbrush-flow-increase-skip" "") +; (gtk_accel_path "/context/context-foreground-saturation-increase-skip" "") +; (gtk_accel_path "/channels/channels-color-tag-green" "") +; (gtk_accel_path "/tools/tools-aspect-decrease-percent" "") +; (gtk_accel_path "/plug-in/gimp-help-using-photography" "") +; (gtk_accel_path "/dialogs/dialogs-dashboard" "") +; (gtk_accel_path "/layers/layers-crop-to-selection" "") +; (gtk_accel_path "/layers/layers-mask-selection-subtract" "") +; (gtk_accel_path "/plug-in/script-fu-guides-remove" "") +; (gtk_accel_path "/dialogs/dialogs-palette-editor" "") +; (gtk_accel_path "/filters/filters-channel-mixer" "") +; (gtk_accel_path "/plug-in/script-fu-waves-anim" "") +; (gtk_accel_path "/context/context-foreground-green-maximum" "") +; (gtk_accel_path "/view/view-menu" "") +; (gtk_accel_path "/view/view-dot-for-dot" "") +; (gtk_accel_path "/context/context-gradient-select-set" "") +; (gtk_accel_path "/dockable/dockable-close-tab" "") +; (gtk_accel_path "/dockable/dialogs-dynamics-editor" "") +; (gtk_accel_path "/vectors/vectors-selection-intersect" "") +; (gtk_accel_path "/vectors/vectors-stroke" "") +; (gtk_accel_path "/filters/filters-little-planet" "") +; (gtk_accel_path "/context/context-pattern-menu" "") +; (gtk_accel_path "/view/view-show-rulers" "r") +; (gtk_accel_path "/context/context-brush-spikes-increase" "") +; (gtk_accel_path "/view/view-snap-to-guides" "") +; (gtk_accel_path "/layers/layers-alpha-selection-subtract" "") +; (gtk_accel_path "/channels/channels-select-top" "") +; (gtk_accel_path "/plug-in/script-fu-sota-chrome-it" "") +; (gtk_accel_path "/view/view-move-to-screen-:0.0" "") +; (gtk_accel_path "/plug-in/gimp-palette-export-python" "") +; (gtk_accel_path "/context/context-swatch-foreground-next" "0") +; (gtk_accel_path "/select/selection-popup" "") +; (gtk_accel_path "/edit/edit-paste-into" "") +; (gtk_accel_path "/tools/tools-opacity-decrease" "less") +; (gtk_accel_path "/filters/filters-bayer-matrix" "") +; (gtk_accel_path "/context/context-brush-angle-minimum" "") +; (gtk_accel_path "/tools/tools-aspect-increase" "") +; (gtk_accel_path "/vectors/vectors-selection-to-vectors-short" "") +; (gtk_accel_path "/context/context-brush-spikes-maximum" "") +; (gtk_accel_path "/tools/tools-aspect-set" "") +; (gtk_accel_path "/fonts/fonts-popup" "") +; (gtk_accel_path "/layers/layers-popup" "") +; (gtk_accel_path "/context/context-foreground-green-increase-skip" "") +; (gtk_accel_path "/filters/filters-generic-menu" "") +; (gtk_accel_path "/image/image-resize-to-layers" "") +; (gtk_accel_path "/windows/windows-use-single-window-mode" "") +; (gtk_accel_path "/channels/channels-lower-to-bottom" "") +; (gtk_accel_path "/context/context-colormap-background-first" "") +; (gtk_accel_path "/edit/edit-fill-pattern" "semicolon") +; (gtk_accel_path "/context/context-paint-mode-first" "") +; (gtk_accel_path "/plug-in/script-fu-reverse-layers" "") +; (gtk_accel_path "/dockable/dockable-preview-size-extra-large" "") +; (gtk_accel_path "/dockable/dialogs-indexed-palette" "") +; (gtk_accel_path "/context/context-brush-spikes-set" "") +; (gtk_accel_path "/vectors/vectors-new-last-values" "") +; (gtk_accel_path "/tools/tools-object-2-previous" "") +; (gtk_accel_path "/plug-in/plug-in-retinex" "") +; (gtk_accel_path "/context/context-swatch-foreground-previous" "9") +; (gtk_accel_path "/context/context-foreground-value-decrease" "") +; (gtk_accel_path "/context/context-brush-select-first" "") +; (gtk_accel_path "/context/context-swatch-foreground-next-skip" "") +; (gtk_accel_path "/tools/tools-force-increase-skip" "") +; (gtk_accel_path "/dockable/dockable-detach-tab" "") +; (gtk_accel_path "/image/image-print-size" "") +; (gtk_accel_path "/filters/filters-fractal-trace" "") +; (gtk_accel_path "/filters/filters-panorama-projection" "") +; (gtk_accel_path "/context/context-paint-mode-last" "") +; (gtk_accel_path "/image/colors-components-menu" "") +; (gtk_accel_path "/context/context-colormap-foreground-last" "") +; (gtk_accel_path "/view/view-zoom-out" "minus") +; (gtk_accel_path "/plug-in/plug-in-colormap-remap" "") +; (gtk_accel_path "/context/context-palette-background-next-skip" "") +; (gtk_accel_path "/tools/tools-force-decrease" "") +; (gtk_accel_path "/context/context-background-hue-maximum" "") +; (gtk_accel_path "/plug-in/plug-in-mail-image" "") +; (gtk_accel_path "/filters/filters-mantiuk-2006" "") +; (gtk_accel_path "/plug-in/plug-in-small-tiles" "") +; (gtk_accel_path "/layers/layers-composite-mode-clip-to-layer" "") +; (gtk_accel_path "/filters/filters-noise-menu" "") +; (gtk_accel_path "/layers/layers-mask-disable" "") +; (gtk_accel_path "/tools/tools-brightness-contrast" "") +; (gtk_accel_path "/filters/filters-erode" "") +; (gtk_accel_path "/context/context-brush-spikes-increase-skip" "") +; (gtk_accel_path "/context/context-palette-select-previous" "") +; (gtk_accel_path "/vectors/vectors-color-tag-none" "") +; (gtk_accel_path "/context/context-pattern-select-first" "") +; (gtk_accel_path "/layers/layers-transform-menu" "") +; (gtk_accel_path "/tools/tools-spacing-increase-percent" "") +; (gtk_accel_path "/select/select-border" "") +; (gtk_accel_path "/plug-in/script-fu-clothify" "") +; (gtk_accel_path "/edit/edit-paste-into-in-place" "") +(gtk_accel_path "/layers/layers-new-last-values" "j") +; (gtk_accel_path "/context/context-opacity-transparent" "") +; (gtk_accel_path "/plug-in/plug-in-animationoptimize" "") +; (gtk_accel_path "/context/context-colormap-background-next" "") +; (gtk_accel_path "/layers/layers-blend-space-auto" "") +; (gtk_accel_path "/plug-in/file-pdf-save-multi" "") +; (gtk_accel_path "/layers/layers-merge-layers" "") +; (gtk_accel_path "/layers/layers-composite-space-auto" "") +; (gtk_accel_path "/context/context-opacity-decrease-skip" "") +; (gtk_accel_path "/dockable/dialogs-buffers" "") +; (gtk_accel_path "/tools/tools-perspective" "p") +; (gtk_accel_path "/context/context-foreground-red-increase-skip" "") +; (gtk_accel_path "/context/context-colormap-foreground-set" "") +; (gtk_accel_path "/plug-in/script-fu-copy-visible" "") +; (gtk_accel_path "/filters/filters-high-pass" "") +; (gtk_accel_path "/layers/layers-composite-mode-clip-to-backdrop" "") +; (gtk_accel_path "/tools/tools-menu" "") +; (gtk_accel_path "/context/context-background-green-maximum" "") +; (gtk_accel_path "/filters/filters-brightness-contrast" "") +; (gtk_accel_path "/filters/filters-shadows-highlights" "") +; (gtk_accel_path "/channels/channels-color-tag-brown" "") +; (gtk_accel_path "/filters/filters-desaturate" "") +; (gtk_accel_path "/context/context-palette-foreground-previous" "") +; (gtk_accel_path "/plug-in/plug-in-nlfilt" "") +; (gtk_accel_path "/plug-in/gimp-palette-export-text" "") +; (gtk_accel_path "/context/context-palette-foreground-set" "") +; (gtk_accel_path "/tools/tools-paintbrush-spacing-set" "") +; (gtk_accel_path "/filters/filters-offset" "o") +; (gtk_accel_path "/filters/filters-softglow" "") +; (gtk_accel_path "/context/context-brush-shape-square" "") +; (gtk_accel_path "/vectors/vectors-select-top" "") +; (gtk_accel_path "/tools/tools-opacity-minimum" "") +; (gtk_accel_path "/channels/channels-raise-to-top" "") +; (gtk_accel_path "/filters/filters-reinhard-2005" "") +; (gtk_accel_path "/filters/filters-threshold-alpha" "") +; (gtk_accel_path "/view/view-zoom-2-1-accel" "KP_2") +; (gtk_accel_path "/context/context-foreground-hue-minimum" "") +; (gtk_accel_path "/tools/tools-aspect-decrease" "") +; (gtk_accel_path "/context/context-brush-spacing-decrease-skip" "") +; (gtk_accel_path "/plug-in/plug-in-fractal-trace" "") +; (gtk_accel_path "/tools/tools-mypaint-brush-radius-set" "") +; (gtk_accel_path "/context/context-tool-select-first" "") +; (gtk_accel_path "/vectors/vectors-lower" "") +; (gtk_accel_path "/context/context-brush-aspect-minimum" "") +; (gtk_accel_path "/layers/layers-mask-delete" "") +; (gtk_accel_path "/tools/tools-angle-decrease-percent" "") +; (gtk_accel_path "/context/context-background-green-increase-skip" "") +; (gtk_accel_path "/plug-in/plug-in-ccanalyze" "") +; (gtk_accel_path "/filters/filters-artistic-menu" "") +; (gtk_accel_path "/select/select-flood" "") +; (gtk_accel_path "/tools/tools-hardness-set-to-default" "") +; (gtk_accel_path "/tools/tools-bucket-fill" "b") +; (gtk_accel_path "/tools/tools-angle-set" "") +; (gtk_accel_path "/tools/tools-ink-blob-aspect-set" "") +; (gtk_accel_path "/tools/tools-size-increase" "bracketright") +; (gtk_accel_path "/tools/tools-force-increase-percent" "") +; (gtk_accel_path "/image/image-color-management-menu" "") +; (gtk_accel_path "/channels/channels-selection-replace" "") +; (gtk_accel_path "/dockable/dialogs-layers" "l") +; (gtk_accel_path "/view/view-zoom-fit-in" "j") +; (gtk_accel_path "/filters/filters-repeat" "f") +; (gtk_accel_path "/filters/filters-maze" "") +; (gtk_accel_path "/context/context-brush-shape-menu" "") +; (gtk_accel_path "/dockable/dialogs-palette-editor" "") +; (gtk_accel_path "/context/context-foreground-blue-decrease-skip" "") +; (gtk_accel_path "/drawable/drawable-flip-vertical" "") +; (gtk_accel_path "/filters/filters-color-balance" "") +; (gtk_accel_path "/tools/tools-size-set-to-default" "backslash") +; (gtk_accel_path "/context/context-colors-default" "d") +; (gtk_accel_path "/layers/layers-raise-to-top" "") +; (gtk_accel_path "/plug-in/plug-in-gradmap" "") +; (gtk_accel_path "/filters/filters-checkerboard" "") +; (gtk_accel_path "/image/image-convert-grayscale" "") +; (gtk_accel_path "/plug-in/script-fu-fuzzy-border" "") +; (gtk_accel_path "/filters/filters-tile-paper" "") +; (gtk_accel_path "/dialogs/dialogs-selection-editor" "") +; (gtk_accel_path "/layers/layers-edit" "") +; (gtk_accel_path "/image/colors-desaturate-menu" "") +; (gtk_accel_path "/layers/layers-flatten-image" "") +; (gtk_accel_path "/tools/tools-airbrush-rate-increase-skip" "") +; (gtk_accel_path "/channels/channels-select-bottom" "") +; (gtk_accel_path "/dialogs/dialogs-preferences" "") +; (gtk_accel_path "/plug-in/plug-in-animationplay" "") +; (gtk_accel_path "/context/context-brush-angle-menu" "") +; (gtk_accel_path "/tools/tools-airbrush-flow-minimum" "") +; (gtk_accel_path "/view/view-rotate-menu" "") +; (gtk_accel_path "/vectors/vectors-import" "") +; (gtk_accel_path "/plug-in/script-fu-xach-effect" "") +; (gtk_accel_path "/view/view-rotate-345" "") +; (gtk_accel_path "/plug-in/plug-in-decompose" "") +; (gtk_accel_path "/plug-in/gimp-palette-export-css" "") +; (gtk_accel_path "/filters/filters-color-exchange" "") +; (gtk_accel_path "/tools/tools-warp-effect-size-set" "") +; (gtk_accel_path "/view/view-display-intent-perceptual" "") +; (gtk_accel_path "/dialogs/dialogs-navigation" "") +; (gtk_accel_path "/dock/dock-open-display" "") +; (gtk_accel_path "/context/context-paint-mode-previous" "") +; (gtk_accel_path "/plug-in/plug-in-hot" "") +; (gtk_accel_path "/tools/tools-aspect-decrease-skip" "") +; (gtk_accel_path "/view/view-zoom-out-skip" "") +; (gtk_accel_path "/dialogs/dialogs-keyboard-shortcuts" "") +; (gtk_accel_path "/view/view-zoom-maximum" "") +; (gtk_accel_path "/dialogs/dialogs-input-devices" "") +; (gtk_accel_path "/dockable/dialogs-document-history" "") +; (gtk_accel_path "/quick-mask/quick-mask-invert-on" "") +; (gtk_accel_path "/context/context-swatch-foreground-first" "") +; (gtk_accel_path "/file/file-export" "e") +; (gtk_accel_path "/plug-in/script-fu-set-cmap" "") +; (gtk_accel_path "/layers/layers-text-discard" "") +; (gtk_accel_path "/context/context-foreground-red-maximum" "") +; (gtk_accel_path "/filters/filters-edge-sobel" "") +; (gtk_accel_path "/dockable/dockable-preview-size-tiny" "") +; (gtk_accel_path "/plug-in/script-fu-guide-new-percent" "") +; (gtk_accel_path "/view/view-show-scrollbars" "") +; (gtk_accel_path "/filters/filters-render-noise-menu" "") +; (gtk_accel_path "/channels/channels-delete" "") +; (gtk_accel_path "/image/image-flip-vertical" "") +; (gtk_accel_path "/layers/layers-opacity-set" "") +; (gtk_accel_path "/context/context-font-select-next" "") +; (gtk_accel_path "/context/context-menu" "") +; (gtk_accel_path "/image/image-convert-half" "") +; (gtk_accel_path "/tools/tools-size-increase-skip" "bracketright") +; (gtk_accel_path "/file/file-overwrite" "") +; (gtk_accel_path "/context/context-background-red-increase-skip" "") +; (gtk_accel_path "/vectors/vectors-popup" "") +; (gtk_accel_path "/image/image-rotate-90" "") +; (gtk_accel_path "/edit/edit-fill-bg" "period") +; (gtk_accel_path "/layers/layers-mode-next" "") +; (gtk_accel_path "/context/context-palette-menu" "") +; (gtk_accel_path "/layers/layers-properties-menu" "") +; (gtk_accel_path "/view/view-flip-vertically" "") +; (gtk_accel_path "/context/context-foreground-hue-increase" "") +; (gtk_accel_path "/select/select-invert" "i") +(gtk_accel_path "/tools/tools-iscissors" "") +; (gtk_accel_path "/file/file-save-as" "s") +; (gtk_accel_path "/context/context-swatch-foreground-last" "") +; (gtk_accel_path "/context/context-palette-background-next" "") +; (gtk_accel_path "/image/image-rotate-270" "") +; (gtk_accel_path "/tools/tools-warp" "w") +; (gtk_accel_path "/context/context-brush-hardness-menu" "") +; (gtk_accel_path "/plug-in/script-fu-erase-nth-rows" "") +; (gtk_accel_path "/context/context-brush-radius-decrease-less" "") +; (gtk_accel_path "/quick-mask/quick-mask-popup" "") +; (gtk_accel_path "/plug-in/plug-in-sparkle" "") +; (gtk_accel_path "/vectors/vectors-selection-subtract" "") +; (gtk_accel_path "/filters/filters-combine-menu" "") +; (gtk_accel_path "/layers/layers-raise" "") +; (gtk_accel_path "/edit/edit-strong-undo" "z") +; (gtk_accel_path "/context/context-colormap-foreground-next-skip" "") +; (gtk_accel_path "/context/context-brush-aspect-increase" "") +; (gtk_accel_path "/filters/filters-invert-value" "") +; (gtk_accel_path "/context/context-foreground-blue-set" "") +; (gtk_accel_path "/filters/filters-bump-map" "") +; (gtk_accel_path "/plug-in/file-gih-save-internal" "") +; (gtk_accel_path "/context/context-background-blue-increase-skip" "") +; (gtk_accel_path "/plug-in/script-fu-old-photo" "") +; (gtk_accel_path "/dialogs/dialogs-module-dialog" "") +; (gtk_accel_path "/image/image-configure-grid" "") +; (gtk_accel_path "/context/context-tool-menu" "") +; (gtk_accel_path "/view/view-zoom-1-1-accel" "KP_1") +; (gtk_accel_path "/filters/filters-noise-spread" "") +; (gtk_accel_path "/plug-in/script-fu-round-corners" "") +; (gtk_accel_path "/tools/tools-hardness-increase-skip" "") +; (gtk_accel_path "/select/select-save" "") +; (gtk_accel_path "/context/context-background-saturation-set" "") +; (gtk_accel_path "/plug-in/script-fu-guide-new" "") +; (gtk_accel_path "/tools/tools-hardness-decrease-percent" "") +; (gtk_accel_path "/tools/tools-size-minimum" "") +; (gtk_accel_path "/plug-in/gimp-help-concepts-paths" "") +; (gtk_accel_path "/vectors/vectors-select-next" "") +; (gtk_accel_path "/filters/filters-noise-cell" "") +; (gtk_accel_path "/quick-mask/quick-mask-toggle" "q") +; (gtk_accel_path "/filters/filters-gaussian-blur" "") +; (gtk_accel_path "/plug-in/plug-in-screenshot" "") +; (gtk_accel_path "/view/view-rotate-180" "") +; (gtk_accel_path "/tools/tools-text" "t") +; (gtk_accel_path "/filters/filters-newsprint" "") +; (gtk_accel_path "/filters/filters-noise-solid" "") +; (gtk_accel_path "/file/file-open-as-layers" "o") +; (gtk_accel_path "/context/context-background-red-minimum" "") +; (gtk_accel_path "/plug-in/gimp-online-wiki" "") +; (gtk_accel_path "/layers/layers-merge-down-button" "") +; (gtk_accel_path "/plug-in/script-fu-refresh" "") +; (gtk_accel_path "/layers/layers-text-to-vectors" "") +; (gtk_accel_path "/vectors/vectors-fill-last-values" "") +; (gtk_accel_path "/view/view-padding-color-menu" "") +(gtk_accel_path "/tools/tools-smudge" "") +; (gtk_accel_path "/context/context-font-menu" "") +; (gtk_accel_path "/tools/tools-mypaint-brush-hardness-set" "") +; (gtk_accel_path "/plug-in/plug-in-pagecurl" "") +; (gtk_accel_path "/dialogs/dialogs-layers" "l") +; (gtk_accel_path "/context/context-colormap-background-last" "") +; (gtk_accel_path "/plug-in/script-fu-selection-to-image" "") +; (gtk_accel_path "/channels/channels-selection-add" "") +; (gtk_accel_path "/context/context-palette-select-first" "") +; (gtk_accel_path "/layers/layers-lock-position" "") +; (gtk_accel_path "/tools/tools-object-1-next" "") +; (gtk_accel_path "/dialogs/dialogs-device-status" "") +; (gtk_accel_path "/view/view-scroll-vertical" "") +(gtk_accel_path "/view/view-show-selection" "") +; (gtk_accel_path "/tools/tools-spacing-maximum" "") +; (gtk_accel_path "/color-button/color-button-use-foreground" "") +; (gtk_accel_path "/filters/filters-photocopy" "") +; (gtk_accel_path "/channels/channels-color-tag-orange" "") +; (gtk_accel_path "/tools/tools-ink-blob-angle-set" "") +; (gtk_accel_path "/context/context-background-saturation-minimum" "") +; (gtk_accel_path "/layers/layers-lock-alpha" "") +; (gtk_accel_path "/tools/tools-transform-menu" "") +; (gtk_accel_path "/view/view-padding-color-theme" "") +; (gtk_accel_path "/plug-in/plug-in-borderaverage" "") +; (gtk_accel_path "/plug-in/script-fu-gradient-example" "") +; (gtk_accel_path "/filters/filters-color-rotate" "") +; (gtk_accel_path "/dockable/dialogs-dynamics" "") +; (gtk_accel_path "/plug-in/gimp-online-roadmap" "") +; (gtk_accel_path "/filters/filters-vignette" "") +; (gtk_accel_path "/filters/filters-apply-lens" "") +; (gtk_accel_path "/tools/tools-angle-minimum" "") +; (gtk_accel_path "/tools/tools-ink" "k") +; (gtk_accel_path "/tools/tools-airbrush-rate-set" "") +; (gtk_accel_path "/layers/layers-mask-add-button" "") +; (gtk_accel_path "/layers/layers-color-tag-orange" "") +; (gtk_accel_path "/view/view-display-filters" "") +; (gtk_accel_path "/plug-in/script-fu-coffee-stain" "") +; (gtk_accel_path "/context/context-swatch-background-first" "") +; (gtk_accel_path "/layers/layers-composite-mode-intersection" "") +; (gtk_accel_path "/filters/filters-noise-rgb" "") +; (gtk_accel_path "/context/context-foreground-hue-decrease" "") +; (gtk_accel_path "/plug-in/plug-in-tile" "") +; (gtk_accel_path "/filters/filters-edge-neon" "") +; (gtk_accel_path "/dialogs/dialogs-about" "") +; (gtk_accel_path "/plug-in/plug-in-despeckle" "") +; (gtk_accel_path "/tools/tools-spacing-set" "") +; (gtk_accel_path "/tools/tools-object-2-first" "") +; (gtk_accel_path "/dialogs/dialogs-templates" "") +; (gtk_accel_path "/context/context-background-blue-minimum" "") +; (gtk_accel_path "/filters/filters-tile-seamless" "") +; (gtk_accel_path "/filters/filters-red-eye-removal" "") +(gtk_accel_path "/quick-mask/quick-mask-invert-off" "q") +; (gtk_accel_path "/layers/layers-resize-to-image" "") +; (gtk_accel_path "/filters/filters-lens-flare" "") +; (gtk_accel_path "/filters/filters-render-fractals-menu" "") +; (gtk_accel_path "/context/context-brush-angle-decrease-skip" "") +; (gtk_accel_path "/plug-in/gimp-help-using-web" "") +; (gtk_accel_path "/view/view-color-management-softproof" "") +; (gtk_accel_path "/dialogs/dialogs-vectors" "") +; (gtk_accel_path "/edit/edit-buffer-menu" "") +; (gtk_accel_path "/plug-in/script-fu-make-brush-elliptical" "") +; (gtk_accel_path "/plug-in/plug-in-grid" "") +; (gtk_accel_path "/plug-in/file-pdf-save" "") +; (gtk_accel_path "/filters/filters-color-enhance" "") +; (gtk_accel_path "/plug-in/file-png-save" "") +; (gtk_accel_path "/view/view-padding-color-custom" "") +; (gtk_accel_path "/plug-in/script-fu-weave" "") +; (gtk_accel_path "/filters/filters-blur-menu" "") +; (gtk_accel_path "/context/context-brush-aspect-decrease" "") +; (gtk_accel_path "/tools/tools-paintbrush-angle-set" "") +; (gtk_accel_path "/context/context-pattern-select-next" "") +; (gtk_accel_path "/channels/channels-lower" "") +; (gtk_accel_path "/view/view-rotate-other" "") +; (gtk_accel_path "/context/context-brush-hardness-minimum" "") +; (gtk_accel_path "/filters/filters-mosaic" "") +; (gtk_accel_path "/debug/debug-menu" "") +; (gtk_accel_path "/context/context-brush-radius-increase-skip" "") +; (gtk_accel_path "/view/view-softproof-black-point-compensation" "") +; (gtk_accel_path "/select/select-menu" "") +; (gtk_accel_path "/color-button/color-button-use-black" "") +; (gtk_accel_path "/plug-in/plug-in-sample-colorize" "") +; (gtk_accel_path "/file/file-open-recent-10" "0") +; (gtk_accel_path "/tools/tools-by-color-select" "o") +; (gtk_accel_path "/context/context-palette-background-previous" "") +; (gtk_accel_path "/tools/tools-force-minimum" "") +; (gtk_accel_path "/channels/channels-color-tag-violet" "") +; (gtk_accel_path "/context/context-swatch-background-next-skip" "") +; (gtk_accel_path "/dockable/dialogs-brush-editor" "") +; (gtk_accel_path "/plug-in/gimp-help-using-simpleobjects" "") +; (gtk_accel_path "/filters/filters-recursive-transform" "") +; (gtk_accel_path "/plug-in/script-fu-add-bevel" "") +; (gtk_accel_path "/dialogs/dialogs-dynamics" "") +; (gtk_accel_path "/plug-in/plug-in-curve-bend" "") +; (gtk_accel_path "/context/context-background-saturation-increase-skip" "") +; (gtk_accel_path "/view/view-scroll-page-up" "") +; (gtk_accel_path "/filters/filters-convolution-matrix" "") +; (gtk_accel_path "/tools/tools-pencil" "n") +; (gtk_accel_path "/filters/filters-levels" "") +; (gtk_accel_path "/layers/layers-color-tag-violet" "") +; (gtk_accel_path "/tools/tools-opacity-increase" "greater") +; (gtk_accel_path "/context/context-brush-radius-decrease-percent" "") +; (gtk_accel_path "/context/context-foreground-red-set" "") +; (gtk_accel_path "/select/select-fill" "") +; (gtk_accel_path "/filters/filters-colorize" "") +; (gtk_accel_path "/view/view-padding-color-dark-check" "") +; (gtk_accel_path "/tools/tools-hardness-maximum" "") +; (gtk_accel_path "/tool-options/tool-options-save-new-preset" "") +; (gtk_accel_path "/tools/tools-spacing-increase-skip" "") +; (gtk_accel_path "/context/context-gradient-select-previous" "") +; (gtk_accel_path "/layers/layers-new-from-visible" "") +; (gtk_accel_path "/filters/filters-saturation" "") +(gtk_accel_path "/tools/tools-crop" "c") +; (gtk_accel_path "/plug-in/plug-in-flame" "") +; (gtk_accel_path "/context/context-font-select-last" "") +; (gtk_accel_path "/vectors/vectors-new" "") +; (gtk_accel_path "/tool-options/tool-options-popup" "") +; (gtk_accel_path "/filters/filters-posterize" "") +; (gtk_accel_path "/dockable/dockable-view-type-list" "") +; (gtk_accel_path "/filters/filters-slic" "") +; (gtk_accel_path "/view/view-rotate-reset" "exclam") +; (gtk_accel_path "/filters/filters-shift" "") +; (gtk_accel_path "/drawable/drawable-rotate-90" "") +; (gtk_accel_path "/plug-in/plug-in-lighting" "") +(gtk_accel_path "/tools/tools-mypaint-brush" "") +; (gtk_accel_path "/channels/channels-color-tag-menu" "") +; (gtk_accel_path "/layers/layers-merge-down" "") +; (gtk_accel_path "/dialogs/dialogs-tips" "") +; (gtk_accel_path "/layers/layers-mode-last" "") +; (gtk_accel_path "/tools/tools-warp-effect-hardness-set" "") +; (gtk_accel_path "/layers/layers-alpha-add" "") +; (gtk_accel_path "/filters/filters-map-menu" "") +; (gtk_accel_path "/context/context-palette-foreground-previous-skip" "") +; (gtk_accel_path "/context/context-tool-select-set" "") +; (gtk_accel_path "/plug-in/plug-in-color-enhance" "") +; (gtk_accel_path "/filters/filters-dilate" "") +; (gtk_accel_path "/context/context-palette-background-last" "") +; (gtk_accel_path "/image/image-mode-menu" "") +; (gtk_accel_path "/vectors/vectors-raise" "") +; (gtk_accel_path "/vectors/vectors-selection-to-vectors" "") +; (gtk_accel_path "/edit/edit-named-copy-visible" "") +; (gtk_accel_path "/dockable/dialogs-brushes" "b") +; (gtk_accel_path "/dockable/dockable-preview-size-small" "") +; (gtk_accel_path "/drawable/drawable-rotate-180" "") +; (gtk_accel_path "/layers/layers-composite-mode-menu" "") +; (gtk_accel_path "/tools/tools-airbrush-rate-decrease" "") +; (gtk_accel_path "/image/image-convert-gamma" "") +; (gtk_accel_path "/context/context-foreground-hue-increase-skip" "") +; (gtk_accel_path "/filters/filters-decor-menu" "") +; (gtk_accel_path "/channels/channels-color-tag-yellow" "") +; (gtk_accel_path "/layers/layers-alpha-selection-intersect" "") +; (gtk_accel_path "/image/image-guides-menu" "") +; (gtk_accel_path "/tools/tools-force-increase" "") +; (gtk_accel_path "/channels/channels-popup" "") +; (gtk_accel_path "/context/context-brush-select-next" "") +; (gtk_accel_path "/filters/filters-waterpixels" "") +; (gtk_accel_path "/context/context-brush-spacing-increase" "") +; (gtk_accel_path "/dialogs/dialogs-action-search" "slash") +; (gtk_accel_path "/layers/layers-select-next" "Page_Down") +(gtk_accel_path "/tools/tools-rotate-arbitrary" "r") +; (gtk_accel_path "/layers/layers-opacity-decrease-skip" "") +; (gtk_accel_path "/view/view-zoom-16-1" "5") +; (gtk_accel_path "/plug-in/gimp-help-concepts-usage" "") +; (gtk_accel_path "/debug/debug-dump-keyboard-shortcuts" "") +; (gtk_accel_path "/image/image-color-profile-discard" "") +; (gtk_accel_path "/filters/filters-mean-curvature-blur" "") +; (gtk_accel_path "/layers/layers-color-tag-yellow" "") +; (gtk_accel_path "/context/context-brush-aspect-decrease-skip" "") +; (gtk_accel_path "/dock/dock-move-to-screen-:0.0" "") +; (gtk_accel_path "/filters/filters-animation-menu" "") +; (gtk_accel_path "/filters/filters-noise-reduction" "") +; (gtk_accel_path "/dialogs/dialogs-gradients" "g") +; (gtk_accel_path "/tools/tools-object-1-previous" "") +(gtk_accel_path "/image/image-duplicate" "") +; (gtk_accel_path "/dockable/dialogs-patterns" "p") +; (gtk_accel_path "/view/view-scroll-right-border" "") +; (gtk_accel_path "/edit/edit-paste" "v") +; (gtk_accel_path "/context/context-palette-foreground-next" "") +; (gtk_accel_path "/channels/channels-color-tag-red" "") +; (gtk_accel_path "/filters/filters-mono-mixer" "") +; (gtk_accel_path "/context/context-font-select-set" "") +; (gtk_accel_path "/filters/filters-spiral" "") +; (gtk_accel_path "/plug-in/plug-in-unit-editor" "") +; (gtk_accel_path "/tools/tools-angle-decrease-skip" "") +; (gtk_accel_path "/tools/tools-airbrush-flow-decrease-skip" "") +; (gtk_accel_path "/vectors/vectors-select-bottom" "") +; (gtk_accel_path "/context/context-foreground-value-set" "") +; (gtk_accel_path "/debug/debug-dump-items" "") +; (gtk_accel_path "/view/view-scroll-up" "") +; (gtk_accel_path "/plug-in/gimp-help-using-selections" "") +; (gtk_accel_path "/plug-in/plug-in-cml-explorer" "") +; (gtk_accel_path "/select/select-stroke" "") +; (gtk_accel_path "/context/context-foreground-saturation-decrease-skip" "") +; (gtk_accel_path "/tool-options/tool-options-reset-all" "") +; (gtk_accel_path "/drawable/drawable-visible" "") +; (gtk_accel_path "/image/image-metadata-menu" "") +; (gtk_accel_path "/channels/channels-select-previous" "") +; (gtk_accel_path "/context/context-brush-angle-increase" "") +; (gtk_accel_path "/filters/filters-snn-mean" "") +; (gtk_accel_path "/tools/tools-hardness-set" "") +; (gtk_accel_path "/tools/tools-object-1-last" "") +; (gtk_accel_path "/layers/layers-color-tag-menu" "") +; (gtk_accel_path "/context/context-background-value-increase-skip" "") +; (gtk_accel_path "/view/view-display-intent-relative-colorimetric" "") +; (gtk_accel_path "/tools/tools-aspect-set-to-default" "") +; (gtk_accel_path "/filters/filters-supernova" "") +; (gtk_accel_path "/image/image-transform-menu" "") +(gtk_accel_path "/view/view-shrink-wrap" "") +; (gtk_accel_path "/context/context-swatch-foreground-set" "") +; (gtk_accel_path "/plug-in/file-pat-save-internal" "") +; (gtk_accel_path "/context/context-foreground-red-decrease" "") +; (gtk_accel_path "/view/view-zoom-8-1" "4") +; (gtk_accel_path "/context/context-brush-radius-minimum" "") +; (gtk_accel_path "/filters/filters-sepia" "") +; (gtk_accel_path "/debug/debug-dump-attached-data" "") +; (gtk_accel_path "/context/context-brush-hardness-increase" "") +; (gtk_accel_path "/context/context-foreground-saturation-set" "") +; (gtk_accel_path "/view/view-softproof-gamut-check" "") +; (gtk_accel_path "/dialogs/dialogs-images" "") +; (gtk_accel_path "/layers/layers-mask-selection-intersect" "") +(gtk_accel_path "/plug-in/file-print-gtk" "p") +; (gtk_accel_path "/filters/filters-reshow" "f") +; (gtk_accel_path "/dialogs/dialogs-gradient-editor" "") +; (gtk_accel_path "/view/view-move-to-screen-menu" "") +; (gtk_accel_path "/windows/windows-display-0016" "") +; (gtk_accel_path "/plug-in/file-tiff-save2" "") +; (gtk_accel_path "/view/view-open-display" "") +; (gtk_accel_path "/layers/layers-linked" "") +; (gtk_accel_path "/tool-options/tool-options-save-preset-menu" "") +; (gtk_accel_path "/context/context-brush-spacing-maximum" "") +; (gtk_accel_path "/file/file-copy-location" "") +; (gtk_accel_path "/dialogs/dialogs-buffers" "") +; (gtk_accel_path "/layers/layers-menu" "") +; (gtk_accel_path "/tools/tools-aspect-minimum" "") +; (gtk_accel_path "/windows/windows-display-0015" "") +; (gtk_accel_path "/context/context-foreground-green-decrease-skip" "") +; (gtk_accel_path "/context/context-palette-background-previous-skip" "") +; (gtk_accel_path "/edit/edit-paste-as-new-image" "v") +; (gtk_accel_path "/filters/filters-stress" "") +; (gtk_accel_path "/dialogs/dialogs-patterns" "p") +; (gtk_accel_path "/filters/filters-edge-laplace" "") +; (gtk_accel_path "/context/context-background-green-decrease" "") +; (gtk_accel_path "/view/view-rotate-90" "") +; (gtk_accel_path "/windows/windows-display-0014" "") +; (gtk_accel_path "/context/context-brush-spacing-decrease" "") +; (gtk_accel_path "/filters/filters-variable-blur" "") +; (gtk_accel_path "/plug-in/plug-in-ifscompose" "") +; (gtk_accel_path "/context/context-background-hue-increase-skip" "") +; (gtk_accel_path "/filters/filters-ripple" "") +; (gtk_accel_path "/tools/tools-airbrush" "a") +; (gtk_accel_path "/view/view-softproof-intent-menu" "") +; (gtk_accel_path "/filters/filters-sinus" "") +; (gtk_accel_path "/filters/filters-c2g" "") +; (gtk_accel_path "/windows/windows-display-0013" "") +; (gtk_accel_path "/plug-in/plug-in-metadata-viewer" "") +; (gtk_accel_path "/tool-options/tool-options-edit-preset-menu" "") +; (gtk_accel_path "/view/view-close" "w") +; (gtk_accel_path "/layers/layers-edit-text" "") +; (gtk_accel_path "/context/context-brush-shape-diamond" "") +; (gtk_accel_path "/tools/tools-force-decrease-skip" "") +; (gtk_accel_path "/plug-in/gimp-online-main-web-site" "") +; (gtk_accel_path "/vectors/vectors-edit-attributes" "") +; (gtk_accel_path "/windows/windows-display-0012" "") +; (gtk_accel_path "/context/context-opacity-increase" "") +; (gtk_accel_path "/dockable/dialogs-tool-options" "") +; (gtk_accel_path "/context/context-brush-spacing-set" "") +; (gtk_accel_path "/context/context-pattern-select-last" "") +; (gtk_accel_path "/filters/filters-distance-map" "") +(gtk_accel_path "/tools/tools-free-select" "l") +; (gtk_accel_path "/context/context-foreground-green-minimum" "") +; (gtk_accel_path "/windows/windows-display-0011" "") +; (gtk_accel_path "/file/file-open-recent-09" "9") +; (gtk_accel_path "/dockable/dialogs-fonts" "") +; (gtk_accel_path "/context/context-tool-select-next" "") +; (gtk_accel_path "/windows/windows-display-0010" "") +; (gtk_accel_path "/layers/layers-select-top" "Home") +; (gtk_accel_path "/channels/channels-selection-subtract" "") +; (gtk_accel_path "/file/file-open-recent-08" "8") +; (gtk_accel_path "/context/context-background-hue-increase" "") +; (gtk_accel_path "/context/context-colormap-background-next-skip" "") +; (gtk_accel_path "/context/context-brush-spikes-decrease-skip" "") +; (gtk_accel_path "/dialogs/dialogs-mypaint-brushes" "") +; (gtk_accel_path "/context/context-font-select-previous" "") +; (gtk_accel_path "/file/file-open-recent-07" "7") +; (gtk_accel_path "/plug-in/plug-in-film" "") +; (gtk_accel_path "/layers/layers-anchor" "h") +; (gtk_accel_path "/view/view-new" "") +; (gtk_accel_path "/edit/edit-redo" "y") +; (gtk_accel_path "/context/context-brush-angle-decrease" "") +; (gtk_accel_path "/file/file-open-recent-06" "6") +; (gtk_accel_path "/plug-in/plug-in-goat-exercise" "") +; (gtk_accel_path "/plug-in/file-gbr-save-internal" "") +; (gtk_accel_path "/file/file-open-recent-05" "5") +; (gtk_accel_path "/edit/edit-paste-in-place" "v") +; (gtk_accel_path "/vectors/vectors-selection-add" "") +; (gtk_accel_path "/tools/tools-aspect-increase-percent" "") +; (gtk_accel_path "/plug-in/plug-in-reset-all" "") +; (gtk_accel_path "/layers/layers-edit-attributes" "") +; (gtk_accel_path "/drawable/drawable-lock-content" "") +; (gtk_accel_path "/plug-in/gimp-help-using-docks" "") +; (gtk_accel_path "/filters/filters-hue-saturation" "") +; (gtk_accel_path "/context/context-foreground-red-decrease-skip" "") +; (gtk_accel_path "/filters/filters-lens-distortion" "") +; (gtk_accel_path "/image/image-convert-indexed" "") +; (gtk_accel_path "/filters/filters-tile-glass" "") +; (gtk_accel_path "/plug-in/script-fu-lava" "") +; (gtk_accel_path "/file/file-open-recent-04" "4") +; (gtk_accel_path "/dock/dock-auto-follow-active" "") +; (gtk_accel_path "/plug-in/script-fu-spyrogimp" "") +; (gtk_accel_path "/context/context-foreground-saturation-maximum" "") +; (gtk_accel_path "/image/colors-map-menu" "") +; (gtk_accel_path "/context/context-brush-radius-set" "") +; (gtk_accel_path "/file/file-open-recent-03" "3") +; (gtk_accel_path "/context/context-brush-hardness-decrease" "") +; (gtk_accel_path "/windows/windows-show-display-previous" "Tab") +; (gtk_accel_path "/view/view-softproof-intent-relative-colorimetric" "") +; (gtk_accel_path "/tools/tools-force-set-to-default" "") +; (gtk_accel_path "/file/file-open-recent-02" "2") +; (gtk_accel_path "/drawable/drawable-equalize" "") +; (gtk_accel_path "/context/context-font-select-first" "") +; (gtk_accel_path "/plug-in/plug-in-animationunoptimize" "") +; (gtk_accel_path "/layers/layers-mask-selection-replace" "") +; (gtk_accel_path "/file/file-open-recent-01" "1") +; (gtk_accel_path "/image/image-crop-to-content" "") +; (gtk_accel_path "/filters/filters-polar-coordinates" "") +; (gtk_accel_path "/context/context-background-hue-minimum" "") +; (gtk_accel_path "/tools/tools-rotate" "r") +; (gtk_accel_path "/image/image-convert-double" "") +; (gtk_accel_path "/view/view-zoom-1-8" "4") +; (gtk_accel_path "/context/context-background-green-decrease-skip" "") +; (gtk_accel_path "/edit/edit-fill-fg" "comma") +(gtk_accel_path "/tools/tools-scale" "t") +; (gtk_accel_path "/context/context-brush-select-last" "") +; (gtk_accel_path "/plug-in/script-fu-distress-selection" "") +; (gtk_accel_path "/edit/undo-popup" "") +; (gtk_accel_path "/layers/layers-mode-first" "") +; (gtk_accel_path "/view/view-zoom-1-16" "5") +; (gtk_accel_path "/dockable/dockable-add-tab-menu" "") +; (gtk_accel_path "/context/context-tool-select-previous" "") +; (gtk_accel_path "/channels/channels-color-tag-gray" "") +; (gtk_accel_path "/dockable/dialogs-error-console" "") +; (gtk_accel_path "/context/context-foreground-value-maximum" "") +; (gtk_accel_path "/channels/channels-raise" "") +; (gtk_accel_path "/context/context-background-red-set" "") +; (gtk_accel_path "/plug-in/script-fu-perspective-shadow" "") +; (gtk_accel_path "/context/context-opacity-decrease" "") +; (gtk_accel_path "/filters/filters-cubism" "") +; (gtk_accel_path "/filters/filters-motion-blur-circular" "") +; (gtk_accel_path "/context/context-gradient-menu" "") +; (gtk_accel_path "/plug-in/plug-in-max-rgb" "") +; (gtk_accel_path "/vectors/vectors-copy" "") +; (gtk_accel_path "/filters/filters-normal-map" "") +; (gtk_accel_path "/vectors/vectors-color-tag-green" "") +; (gtk_accel_path "/plug-in/gimp-online-docs-web-site" "") +; (gtk_accel_path "/view/view-zoom-1-4" "3") +; (gtk_accel_path "/image/image-resize" "") +; (gtk_accel_path "/context/context-palette-foreground-last" "") +; (gtk_accel_path "/tools/tools-airbrush-rate-decrease-skip" "") +; (gtk_accel_path "/tools/tools-shear" "h") +; (gtk_accel_path "/context/context-background-green-minimum" "") +; (gtk_accel_path "/view/view-snap-to-canvas" "") +; (gtk_accel_path "/view/view-scroll-left-border" "") +; (gtk_accel_path "/filters/filters-pixelize" "") +; (gtk_accel_path "/dock/dock-close" "") +; (gtk_accel_path "/windows/windows-hide-docks" "Tab") +; (gtk_accel_path "/view/view-show-layer-boundary" "") +; (gtk_accel_path "/file/file-save" "s") +; (gtk_accel_path "/layers/layers-composite-space-rgb-linear" "") +; (gtk_accel_path "/windows/windows-show-display-next" "Tab") +; (gtk_accel_path "/context/context-background-hue-decrease" "") +; (gtk_accel_path "/filters/filters-noise-slur" "") +; (gtk_accel_path "/view/view-zoom-1-2" "2") +; (gtk_accel_path "/image/image-menu" "") +; (gtk_accel_path "/plug-in/plug-in-photocopy" "") +; (gtk_accel_path "/edit/edit-paste-as-menu" "") +; (gtk_accel_path "/tools/tools-select-menu" "") +; (gtk_accel_path "/view/view-zoom-1-1" "1") +; (gtk_accel_path "/plug-in/plug-in-warp" "") +; (gtk_accel_path "/dockable/dockable-preview-size-huge" "") +; (gtk_accel_path "/dockable/dockable-tab-style-automatic" "") +; (gtk_accel_path "/layers/layers-mask-edit" "") +; (gtk_accel_path "/windows/windows-show-tabs" "") +; (gtk_accel_path "/layers/layers-mask-add-last-values" "") +; (gtk_accel_path "/plug-in/file-raw-save" "") +(gtk_accel_path "/image/image-merge-layers" "") +; (gtk_accel_path "/filters/filters-noise-perlin" "") +; (gtk_accel_path "/plug-in/plug-in-destripe" "") +; (gtk_accel_path "/dockable/dockable-tab-style-icon-name" "") +; (gtk_accel_path "/dockable/dockable-preview-size-large" "") +; (gtk_accel_path "/layers/layers-color-tag-green" "") +; (gtk_accel_path "/context/context-background-red-decrease-skip" "") +; (gtk_accel_path "/tools/tools-size-decrease-skip" "bracketleft") +; (gtk_accel_path "/dockable/dialogs-selection-editor" "") +; (gtk_accel_path "/quick-mask/quick-mask-configure" "") +; (gtk_accel_path "/filters/filters-cartoon" "") +; (gtk_accel_path "/plug-in/plug-in-fractalexplorer" "") +; (gtk_accel_path "/view/view-softproof-profile" "") +; (gtk_accel_path "/view/view-rotate-270" "") +; (gtk_accel_path "/vectors/vectors-lower-to-bottom" "") +; (gtk_accel_path "/context/context-colormap-background-set" "") +; (gtk_accel_path "/tools/tools-paintbrush-size-set" "") +; (gtk_accel_path "/layers/layers-color-tag-gray" "") +; (gtk_accel_path "/dock/dock-show-image-menu" "") +; (gtk_accel_path "/context/context-brush-hardness-increase-skip" "") +; (gtk_accel_path "/plug-in/script-fu-selection-to-pattern" "") +; (gtk_accel_path "/plug-in/script-fu-carve-it" "") +; (gtk_accel_path "/plug-in/plug-in-plug-in-details" "") +; (gtk_accel_path "/context/context-brush-select-previous" "") +; (gtk_accel_path "/context/context-palette-background-set" "") +(gtk_accel_path "/tools/tools-eraser" "e") +; (gtk_accel_path "/select/select-float" "l") +; (gtk_accel_path "/context/context-gradient-select-next" "") +; (gtk_accel_path "/filters/filters-grid" "") +; (gtk_accel_path "/tools/tools-size-decrease-percent" "") +; (gtk_accel_path "/layers/layers-visible" "") +; (gtk_accel_path "/dockable/dialogs-sample-points" "") +; (gtk_accel_path "/context/context-background-blue-decrease-skip" "") +; (gtk_accel_path "/view/view-softproof-intent-saturation" "") +; (gtk_accel_path "/view/view-zoom-minimum" "") +; (gtk_accel_path "/windows/windows-display-0009" "") +; (gtk_accel_path "/tools/tools-hardness-decrease-skip" "") +; (gtk_accel_path "/filters/filters-rgb-clip" "") +; (gtk_accel_path "/context/context-background-value-maximum" "") +; (gtk_accel_path "/layers/layers-lower-to-bottom" "") +; (gtk_accel_path "/tools/tools-force-set" "") +; (gtk_accel_path "/filters/filters-wind" "") +; (gtk_accel_path "/context/context-foreground-red-minimum" "") +; (gtk_accel_path "/windows/windows-display-0007" "") +; (gtk_accel_path "/debug/debug-dump-managers" "") +; (gtk_accel_path "/context/context-tool-select-last" "") +; (gtk_accel_path "/windows/windows-display-0008" "") +; (gtk_accel_path "/filters/filters-displace" "") +; (gtk_accel_path "/filters/filters-enhance-menu" "") +; (gtk_accel_path "/filters/filters-engrave" "") +; (gtk_accel_path "/tools/tools-object-2-next" "") +; (gtk_accel_path "/view/view-show-guides" "t") +; (gtk_accel_path "/vectors/vectors-color-tag-red" "") +; (gtk_accel_path "/vectors/vectors-selection-from-vectors" "v") +; (gtk_accel_path "/view/view-zoom-other" "") +; (gtk_accel_path "/image/image-convert-u32" "") +; (gtk_accel_path "/dockable/dialogs-symmetry" "") +; (gtk_accel_path "/context/context-swatch-background-previous" "") +; (gtk_accel_path "/select/select-feather" "") +; (gtk_accel_path "/filters/filters-motion-blur-zoom" "") +; (gtk_accel_path "/dialogs/dialogs-tool-presets" "") +; (gtk_accel_path "/windows/windows-display-0006" "") +; (gtk_accel_path "/vectors/vectors-duplicate" "") +; (gtk_accel_path "/view/view-display-intent-saturation" "") +; (gtk_accel_path "/tools/tools-foreground-select" "") diff --git a/GIMP/2.10/parasiterc b/GIMP/2.10/parasiterc new file mode 100755 index 0000000..6cfb1be --- /dev/null +++ b/GIMP/2.10/parasiterc @@ -0,0 +1,6 @@ +# GIMP parasiterc +# +# This file will be entirely rewritten each time you exit. + + +# end of parasiterc diff --git a/GIMP/2.10/pluginrc b/GIMP/2.10/pluginrc new file mode 100644 index 0000000..0b6b701 --- /dev/null +++ b/GIMP/2.10/pluginrc @@ -0,0 +1,4317 @@ +# GIMP pluginrc +# +# This file can safely be removed and will be automatically regenerated by +# querying the installed plug-ins. + +(protocol-version 26) +(file-version 5) + +(plug-in-def "${gimp_plug_in_dir}/plug-ins/web-browser/web-browser" 1619534562 + (proc-def "plug-in-web-browser" 1 + "Open an URL in the user specified web browser" + "Opens the given URL in the user specified web browser." + "Henrik Brix Andersen " + "2003" + "2003/09/16" + "" + 0 + (icon icon-name -1 "") + "" + 1 0 + (proc-arg 4 "url" "URL to open"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/wavelet-decompose/wavelet-decompose" 1619534562 + (proc-def "plug-in-wavelet-decompose" 1 + "Wavelet decompose" + "Compute and render wavelet scales" + "Miroslav Talasek " + "Miroslav Talasek " + "19january 2017" + "_Wavelet-decompose..." + 1 + (menu-path "/Filters/Enhance") + (icon icon-name -1 "") + "RGB*, GRAY*" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "scales" "Number of scales (1-7)") + (proc-arg 0 "create-group" "Create a layer group to store the decomposition") + (proc-arg 0 "create-masks" "Add a layer mask to each scales layers"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/warp/warp" 1619534562 + (proc-def "plug-in-warp" 1 + "Twist or smear image in many different ways" + "Smears an image along vector paths calculated as the gradient of a separate control matrix. The effect can look like brushstrokes of acrylic or watercolor paint, in some cases." + "John P. Beale" + "John P. Beale" + "1997" + "_Warp..." + 1 + (menu-path "/Filters/Map") + (icon icon-name -1 "") + "RGB*, GRAY*" + 17 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 3 "amount" "Pixel displacement multiplier") + (proc-arg 16 "warp-map" "Displacement control map") + (proc-arg 0 "iter" "Iteration count (last required argument)") + (proc-arg 3 "dither" "Random dither amount (first optional argument)") + (proc-arg 3 "angle" "Angle of gradient vector rotation") + (proc-arg 0 "wrap-type" "Edge behavior: { WRAP (0), SMEAR (1), BLACK (2), COLOR (3) }") + (proc-arg 16 "mag-map" "Magnitude control map") + (proc-arg 0 "mag-use" "Use magnitude map: { FALSE (0), TRUE (1) }") + (proc-arg 0 "substeps" "Substeps between image updates") + (proc-arg 0 "grad-map" "Gradient control map") + (proc-arg 3 "grad-scale" "Scaling factor for gradient map (0=don't use)") + (proc-arg 0 "vector-map" "Fixed vector control map") + (proc-arg 3 "vector-scale" "Scaling factor for fixed vector map (0=don't use)") + (proc-arg 3 "vector-angle" "Angle for fixed vector map"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/van-gogh-lic/van-gogh-lic" 1619534562 + (proc-def "plug-in-lic" 1 + "Special effects that nobody understands" + "No help yet" + "Tom Bech & Federico Mena Quintero" + "Tom Bech & Federico Mena Quintero" + "Version 0.14, September 24 1997" + "_Van Gogh (LIC)..." + 1 + (menu-path "/Filters/Artistic") + (icon icon-name -1 "") + "RGB*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/unit-editor/unit-editor" 1619534562 + (proc-def "plug-in-unit-editor" 1 + "Create or alter units used in GIMP" + "The GIMP unit editor" + "Michael Natterer " + "Michael Natterer " + "2000" + "U_nits" + 1 + (menu-path "/Edit/Preferences") + (icon icon-name -1 "gimp-tool-measure") + "" + 1 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/tile-small/tile-small" 1619534562 + (proc-def "plug-in-small-tiles" 1 + "Tile image into smaller versions of the original" + "More here later" + "Andy Thomas" + "Andy Thomas" + "1997" + "_Small Tiles..." + 0 + (icon icon-name -1 "") + "RGB*, GRAY*" + 4 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "num-tiles" "Number of tiles to make"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/tile/tile" 1619534562 + (proc-def "plug-in-tile" 1 + "Create an array of copies of the image" + "This function creates a new image with a single layer sized to the specified 'new_width' and 'new_height' parameters. The specified drawable is tiled into this layer. The new layer will have the same type as the specified drawable and the new image will have a corresponding base type." + "Spencer Kimball & Peter Mattis" + "Spencer Kimball & Peter Mattis" + "1996-1997" + "_Tile..." + 1 + (menu-path "/Filters/Map") + (icon icon-name -1 "") + "RGB*, GRAY*, INDEXED*" + 6 2 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "new-width" "New (tiled) image width") + (proc-arg 0 "new-height" "New (tiled) image height") + (proc-arg 0 "new-image" "Create a new image?") + (proc-arg 13 "new-image" "Output image (-1 if new-image == FALSE)") + (proc-arg 14 "new-layer" "Output layer (-1 if new-image == FALSE)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/sphere-designer/sphere-designer" 1619534562 + (proc-def "plug-in-spheredesigner" 1 + "Create an image of a textured sphere" + "This plug-in can be used to create textured and/or bumpmapped spheres, and uses a small lightweight raytracer to perform the task with good quality" + "Vidar Madsen" + "Vidar Madsen" + "1999" + "Sphere _Designer..." + 1 + (menu-path "/Filters/Render") + (icon icon-name -1 "") + "RGB*, GRAY*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/sparkle/sparkle" 1619534562 + (proc-def "plug-in-sparkle" 1 + "Turn bright spots into starry sparkles" + "Uses a percentage based luminoisty threhsold to find candidate pixels for adding some sparkles (spikes). " + "John Beale, & (ported to GIMP v0.54) Michael J. Hammel & ted to GIMP v1.0) & Seth Burgess & Spencer Kimball" + "John Beale" + "Version 1.27, September 2003" + "_Sparkle..." + 1 + (menu-path "/Filters/Light and Shadow/Light") + (icon icon-name -1 "") + "RGB*, GRAY*" + 16 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 3 "lum-threshold" "Luminosity threshold (0.0 - 1.0)") + (proc-arg 3 "flare-inten" "Flare intensity (0.0 - 1.0)") + (proc-arg 0 "spike-len" "Spike length (in pixels)") + (proc-arg 0 "spike-pts" "# of spike points") + (proc-arg 0 "spike-angle" "Spike angle (0-360 degrees, -1: random)") + (proc-arg 3 "density" "Spike density (0.0 - 1.0)") + (proc-arg 3 "transparency" "Transparency (0.0 - 1.0)") + (proc-arg 3 "random-hue" "Random hue (0.0 - 1.0)") + (proc-arg 3 "random-saturation" "Random saturation (0.0 - 1.0)") + (proc-arg 0 "preserve-luminosity" "Preserve luminosity (TRUE/FALSE)") + (proc-arg 0 "inverse" "Inverse (TRUE/FALSE)") + (proc-arg 0 "border" "Add border (TRUE/FALSE)") + (proc-arg 0 "color-type" "Color of sparkles: { NATURAL (0), FOREGROUND (1), BACKGROUND (2) }"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/softglow/softglow" 1619534562 + (proc-def "plug-in-softglow" 1 + "Simulate glow by making highlights intense and fuzzy" + "Gives an image a softglow effect by intensifying the highlights in the image. This is done by screening a modified version of the drawable with itself. The modified version is desaturated and then a sigmoidal transfer function is applied to force the distribution of intensities into very small and very large only. This desaturated version is then blurred to give it a fuzzy 'vaseline-on-the-lens' effect. The glow radius parameter controls the sharpness of the glow effect. The brightness parameter controls the degree of intensification applied to image highlights. The sharpness parameter controls how defined or alternatively, diffuse, the glow effect should be." + "Spencer Kimball" + "Bit Specialists, Inc." + "2001" + "_Softglow (legacy)..." + 1 + (menu-path "/Filters/Artistic") + (icon icon-name -1 "") + "RGB*, GRAY*" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 3 "glow-radius" "Glow radius (radius in pixels)") + (proc-arg 3 "brightness" "Glow brightness (0.0 - 1.0)") + (proc-arg 3 "sharpness" "Glow sharpness (0.0 - 1.0)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/smooth-palette/smooth-palette" 1619534562 + (proc-def "plug-in-smooth-palette" 1 + "Derive a smooth color palette from the image" + "help!" + "Scott Draves" + "Scott Draves" + "1997" + "Smoo_th Palette..." + 1 + (menu-path "/Colors/Info") + (icon icon-name -1 "") + "RGB*" + 7 2 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "width" "Width") + (proc-arg 0 "height" "Height") + (proc-arg 0 "ntries" "Search Depth") + (proc-arg 0 "show-image" "Show Image?") + (proc-arg 13 "new-image" "Output image") + (proc-arg 14 "new-layer" "Output layer"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/sharpen/sharpen" 1619534562 + (proc-def "plug-in-sharpen" 1 + "Make image sharper (less powerful than Unsharp Mask)" + "This plug-in selectively performs a convolution filter on an image." + "Michael Sweet " + "Copyright 1997-1998 by Michael Sweet" + "1.4.2 - 3 June 1998" + "_Sharpen..." + 0 + (icon icon-name -1 "") + "RGB*, GRAY*" + 4 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "percent" "Percent sharpening (default = 10)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/selection-to-path/selection-to-path" 1619534562 + (proc-def "plug-in-sel2path" 1 + "Converts a selection to a path" + "Converts a selection to a path" + "Andy Thomas" + "Andy Thomas" + "1999" + "" + 0 + (icon icon-name -1 "") + "RGB*, INDEXED*, GRAY*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable (unused)")) + (proc-def "plug-in-sel2path-advanced" 1 + "Converts a selection to a path (with advanced user menu)" + "Converts a selection to a path (with advanced user menu)" + "Andy Thomas" + "Andy Thomas" + "1999" + "" + 0 + (icon icon-name -1 "") + "RGB*, INDEXED*, GRAY*" + 23 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable (unused)") + (proc-arg 3 "align-threshold" "align_threshold") + (proc-arg 3 "corner-always-threshold" "corner_always_threshold") + (proc-arg 2 "corner-surround" "corner_surround") + (proc-arg 3 "corner-threshold" "corner_threshold") + (proc-arg 3 "error-threshold" "error_threshold") + (proc-arg 2 "filter-alternative-surround" "filter_alternative_surround") + (proc-arg 3 "filter-epsilon" "filter_epsilon") + (proc-arg 2 "filter-iteration-count" "filter_iteration_count") + (proc-arg 3 "filter-percent" "filter_percent") + (proc-arg 2 "filter-secondary-surround" "filter_secondary_surround") + (proc-arg 2 "filter-surround" "filter_surround") + (proc-arg 2 "keep-knees" "{1-Yes, 0-No}") + (proc-arg 3 "line-reversion-threshold" "line_reversion_threshold") + (proc-arg 3 "line-threshold" "line_threshold") + (proc-arg 3 "reparameterize-improvement" "reparameterize_improvement") + (proc-arg 3 "reparameterize-threshold" "reparameterize_threshold") + (proc-arg 3 "subdivide-search" "subdivide_search") + (proc-arg 2 "subdivide-surround" "subdivide_surround") + (proc-arg 3 "subdivide-threshold" "subdivide_threshold") + (proc-arg 2 "tangent-surround" "tangent_surround"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/script-fu/script-fu" 1619534562 + (proc-def "extension-script-fu" 2 + "A scheme interpreter for scripting GIMP operations" + "More help here later" + "Spencer Kimball & Peter Mattis" + "Spencer Kimball & Peter Mattis" + "1997" + "" + 0 + (icon icon-name -1 "") + "" + 0 0) + (proc-def "plug-in-script-fu-console" 1 + "Interactive console for Script-Fu development" + "Provides an interface which allows interactive scheme development." + "Spencer Kimball & Peter Mattis" + "Spencer Kimball & Peter Mattis" + "1997" + "_Console" + 1 + (menu-path "/Filters/Languages/Script-Fu") + (icon icon-name -1 "") + "" + 1 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }")) + (proc-def "plug-in-script-fu-text-console" 1 + "Provides a text console mode for script-fu development" + "Provides an interface which allows interactive scheme development." + "Spencer Kimball & Peter Mattis" + "Spencer Kimball & Peter Mattis" + "1997" + "" + 0 + (icon icon-name -1 "") + "" + 1 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }")) + (proc-def "plug-in-script-fu-server" 1 + "Server for remote Script-Fu operation" + "Provides a server for remote script-fu operation. NOTE that for security reasons this procedure's API was changed in an incompatible way since GIMP 2.8.12. You now have to pass the IP to listen on as first parameter. Calling this procedure with the old API will fail on purpose." + "Spencer Kimball & Peter Mattis" + "Spencer Kimball & Peter Mattis" + "1997" + "_Start Server..." + 1 + (menu-path "/Filters/Languages/Script-Fu") + (icon icon-name -1 "") + "" + 4 0 + (proc-arg 0 "run-mode" "The run mode { RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "ip" "The ip on which to listen for requests") + (proc-arg 0 "port" "The port on which to listen for requests") + (proc-arg 4 "logfile" "The file to log server activity to")) + (proc-def "plug-in-script-fu-eval" 1 + "Evaluate scheme code" + "Evaluate the code under the scheme interpreter (primarily for batch mode)" + "Manish Singh" + "Manish Singh" + "1998" + "" + 0 + (icon icon-name -1 "") + "" + 2 0 + (proc-arg 0 "run-mode" "The run mode { RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "code" "The code to evaluate")) + (locale-def "gimp20-script-fu")) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/screenshot/screenshot" 1619534562 + (proc-def "plug-in-screenshot" 1 + "Create an image from an area of the screen" + "The plug-in takes screenshots of an interactively selected window or of the desktop, either the whole desktop or an interactively selected region. When called non-interactively, it may grab the root window or use the window-id passed as a parameter. The last four parameters are optional and can be used to specify the corners of the region to be grabbed.On Mac OS X or on gnome-shell, when called non-interactively, the plug-inonly can take screenshots of the entire root window.Grabbing a window or a region is not supportednon-interactively. To grab a region or a particularwindow, you need to use the interactive mode." + "Sven Neumann , Henrik Brix Andersen ,Simone Karin Lehmann" + "1998 - 2008" + "v1.1 (2008/04)" + "_Screenshot..." + 1 + (menu-path "/File/Create/Acquire") + (icon inline-pixbuf 1606 "GdkP\0\0\6F\2\1\0\2\0\0\0X\0\0\0\26\0\0\0\26\213\0\0\0\0\1\242\242\242\5\203\242\242\242\31\221\0\0\0\0\2\27\27\26D\40\40\40\372\203\51\51\51\375\2\32\32\32\362\26\26\25\60\217\0\0\0\0\2\2\2\2\322\307\310\307\377\203\377\377\377\377\2\263\263\262\363\0\0\0\314\217\0\0\0\0\2\6\6\6\334\206\207\205\377\202\252\253\251\377\3\252\252\251\377ghe\376\1\1\1\320\217\0\0\0\0\2\11\11\11\346\56\57\55\345\202GHE\25\3JKH\32\60\61\57\364\5\5\5\333\212\0\0\0\0\17\26\26\25\31\26\26\25\60\26\26\25g\0\0\0\314\53\54\53\331LMK\375EFD\362ffe\347iig\346lmk\346RSQ\362\13\13\13\360\0\0\0\314\2\2\2\321\26\26\25V\203\0\0\0\0\43\26\26\25\31\26\26\25\60\26\26\25n\3\3\3\331\2\2\2\332JJI\355\215\215\215\372\246\246\246\347\267\270\266\362\177\202\176\377BC\77\377TUR\377\134\135Y\377gid\377\133\135X\377\204\206\204\374wxw\276\224\225\224\314LLK\343\26\26\25D\0\0\0\0\26\26\25D\3\3\3\341\17\17\17\373ghg\377\237\240\236\377\273\274\272\377\302\303\300\377\272\273\270\377\200\201\177\377zzz\377tws\377\220\223\217\377\221\225\221\377\224\227\223\377\202\226\232\226\377K\177\202\175\377xyu\377\217\221\215\377\226\227\226\365\0\0\0\371\0\0\0\0\2\2\2\330\257\261\257\377\275\276\273\377\262\263\260\377UWT\377QSP\377suq\377\135\136\133\377\304\304\304\377\303\303\303\377kmi\377MNJ\377WZX\377\133\140\137\377aeb\377gid\377\175\200\173\377SUQ\377FGE\377\200\201\200\377\12\12\12\357\0\0\0\0\4\4\4\345xyv\377\241\242\236\377\210\212\205\377vxt\377\220\222\217\377GIF\377\53\54\51\377\140\140\140\377jji\377UXV\377y\204\210\377\203\215\220\377\176\204\207\377flo\377PW\134\377SWU\377JLI\377\64\65\62\377tut\377\12\12\12\357\0\0\0\0\4\4\4\344opm\377\221\223\217\377\175\177\173\377\215\217\213\377\140b\137\377\50\51\47\377\52\53\51\377\67\70\65\377VXV\377u\176\202\377nsu\377VYZ\377OST\377OQS\377JOP\377\136cd\377\66\71\70\377\41\42\41\377llk\377\12\12\12\357\0\0\0\0\3\3\3\345npl\377\220\221\216\377\202UWS\377\24GIF\377\40\41\37\377\52\53\51\377\71\72\67\377\136ce\377NRT\377UXY\377\50\54\56\377\22\24\25\377\41\44\46\377ILM\377\70\75\77\377RVX\377\47\47\46\377klk\377\12\12\12\357\0\0\0\1\3\3\3\345nol\377\220\221\216\377\202UWS\377\24GIF\377\40\41\37\377\52\53\51\377\70\72\70\377TXY\377\62\70\71\377\23\25\26\377\16\16\16\377\1\1\1\377\2\2\2\377\24\25\25\377\56\63\64\377\62\70\71\377\60\61\61\377aa\140\377\11\11\11\360\0\0\0\3\3\3\3\345nol\377\204\205\202\377\202UWS\377\24GIF\377\40\41\37\377\52\53\51\377\77BA\377\62\70\72\377\34\40\41\377\31\32\32\377\377\377\377\377hhh\377\40\40\40\377\22\22\22\377\56\60\60\377\56\64\66\377\72\76\77\377\140a\140\377\11\11\10\361\0\0\0\7\3\3\3\345mok\377z\173x\377\202UWS\377\24GIF\377\40\41\37\377\52\53\51\377HJI\377\56\64\66\377\25\27\30\377\40\40\40\377hhh\377\232\232\232\377\175\175\175\377\47\47\47\377\71\73\73\377\57\65\67\377\65\71\71\377\140\140\137\377\11\11\10\362\0\0\0\15\3\3\3\345lnk\377rsp\377\202UWS\377\24GIF\377\40\41\37\377\54\55\52\377\76\100\76\377\56\64\66\377\35\37\40\377\1\1\1\377\70\70\70\377\214\214\214\377\213\213\213\377AAA\377JKK\377\57\65\67\377\66\72\73\377WXV\377\6\6\6\364\0\0\0\21\0\0\0\371\201\202\177\377mok\377\202UWS\377iGIF\377MNM\377RRR\372ghg\364\133\140b\377\53\57\60\377\17\17\17\377\42\42\42\377\47\47\47\377HHH\377\263\263\263\377SUU\377W\134\136\377CFF\374\74\74\74\376\20\20\17\317\0\0\0\20\24\24\23\135\4\4\4\353\177\177\176\375\174\175z\373\175\176\174\374hih\376\71\72\71\371\0\0\0\347\0\0\0\351\7\7\7\367\56\64\66\377\62\65\66\377\40\40\40\377\50\50\50\377\72\72\72\377\140ab\377\71\76\77\377\11\13\13\376\0\0\0\353\0\0\0\300\14\14\13H\0\0\0\15\0\0\0\4\23\23\22L\0\0\0\332\0\0\0\341\0\0\0\346\0\0\0\341\14\14\13\173\0\0\0V\0\0\0a\0\0\0l\10\11\11\371\134\136\137\377LOP\377ILL\377LOQ\377QUV\377\16\17\17\377\34\37\40\244\0\0\0\140\0\0\0\64\0\0\0\27\0\0\0\7\0\0\0\1\0\0\0\3\0\0\0\10\0\0\0\21\0\0\0\34\0\0\0\47\0\0\0\60\0\0\0\66\0\0\0\75\0\0\0A\0\0\0F\4\5\5\355\12\13\13\371\17\20\20\376\15\16\16\375\10\10\11\365\7\10\11j\0\0\0G\0\0\0\55\0\0\0\30\0\0\0\13\0\0\0\4\0\0\0\0\0\0\0\1\0\0\0\2\0\0\0\4\0\0\0\11\0\0\0\16\0\0\0\23\0\0\0\31\0\0\0\35\0\0\0\41\0\0\0\43\0\0\0\44\0\0\0\45\0\0\0\44\0\0\0\46\0\0\0\45\0\0\0\36\0\0\0\27\0\0\0\20\0\0\0\10\0\0\0\3\0\0\0\1\204\0\0\0\0\5\0\0\0\1\0\0\0\2\0\0\0\4\0\0\0\5\0\0\0\6\202\0\0\0\10\11\0\0\0\11\0\0\0\7\0\0\0\10\0\0\0\5\0\0\0\7\0\0\0\6\0\0\0\5\0\0\0\3\0\0\0\1\202\0\0\0\0") + "" + 7 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 0 "shoot-type" "The Shoot type { SHOOT-WINDOW (0), SHOOT-ROOT (1), SHOOT-REGION (2) }") + (proc-arg 0 "window-id" "Window id for SHOOT-WINDOW") + (proc-arg 0 "x1" "Region left x coord for SHOOT-REGION") + (proc-arg 0 "y1" "Region top y coord for SHOOT-REGION") + (proc-arg 0 "x2" "Region right x coord for SHOOT-REGION") + (proc-arg 0 "y2" "Region bottom y coord for SHOOT-REGION") + (proc-arg 13 "image" "Output image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/sample-colorize/sample-colorize" 1619534562 + (proc-def "plug-in-sample-colorize" 1 + "Colorize image using a sample image as a guide" + "This plug-in colorizes the contents of the specified (gray) layer with the help of a sample (color) layer. It analyzes all colors in the sample layer. The sample colors are sorted by brightness (== intentisty) and amount and stored in a sample colortable (where brightness is the index) The pixels of the destination layer are remapped with the help of the sample colortable. If use_subcolors is TRUE, the remapping process uses all sample colors of the corresponding brightness-intensity and distributes the subcolors according to their amount in the sample (If the sample has 5 green, 3 yellow, and 1 red pixel of the intensity value 105, the destination pixels at intensity value 105 are randomly painted in green, yellow and red in a relation of 5:3:1 If use_subcolors is FALSE only one sample color per intensity is used. (green will be used in this example) The brightness intensity value is transformed at the remapping process according to the levels: out_lo, out_hi, in_lo, in_high and gamma The in_low / in_high levels specify an initial mapping of the intensity. The gamma value determines how intensities are interpolated between the in_lo and in_high levels. A gamma value of 1.0 results in linear interpolation. Higher gamma values results in more high-level intensities Lower gamma values results in more low-level intensities The out_low/out_high levels constrain the resulting intensity index The intensity index is used to pick the corresponding color in the sample colortable. If hold_inten is FALSE the picked color is used 1:1 as resulting remap_color. If hold_inten is TRUE The brightness of the picked color is adjusted back to the origial intensity value (only hue and saturation are taken from the picked sample color) (or to the input level, if orig_inten is set FALSE) Works on both Grayscale and RGB image with/without alpha channel. (the image with the dst_drawable is converted to RGB if necessary) The sample_drawable should be of type RGB or RGBA" + "Wolfgang Hofer" + "hof@hotbot.com" + "02/2000" + "_Sample Colorize..." + 1 + (menu-path "/Colors/Map") + (icon icon-name -1 "") + "RGB*, GRAY*" + 13 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "dst-drawable" "The drawable to be colorized (Type GRAY* or RGB*)") + (proc-arg 16 "sample-drawable" "Sample drawable (should be of Type RGB or RGBA)") + (proc-arg 0 "hold-inten" "hold brightness intensity levels (TRUE, FALSE)") + (proc-arg 0 "orig-inten" "TRUE: hold brightness of original intensity levels. FALSE: Hold Intensity of input levels") + (proc-arg 0 "rnd-subcolors" "TRUE: Use all subcolors of same intensity, FALSE: use only one color per intensity") + (proc-arg 0 "guess-missing" "TRUE: guess samplecolors for the missing intensity values FALSE: use only colors found in the sample") + (proc-arg 0 "in-low" "intensity of lowest input (0 <= in_low <= 254)") + (proc-arg 0 "in-high" "intensity of highest input (1 <= in_high <= 255)") + (proc-arg 3 "gamma" "gamma adjustment factor (0.1 <= gamma <= 10) where 1.0 is linear") + (proc-arg 0 "out-low" "lowest sample color intensity (0 <= out_low <= 254)") + (proc-arg 0 "out-high" "highest sample color intensity (1 <= out_high <= 255)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/qbist/qbist" 1619534562 + (proc-def "plug-in-qbist" 1 + "Generate a huge variety of abstract patterns" + "This Plug-in is based on an article by Jörn Loviscach (appeared in c't 10/95, page 326). It generates modern art pictures from a random genetic formula." + "Jörn Loviscach, Jens Ch. Restemeier" + "Jörn Loviscach, Jens Ch. Restemeier" + "January 2001, 1.12" + "_Qbist..." + 1 + (menu-path "/Filters/Render/Pattern") + (icon icon-name -1 "") + "RGB*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/procedure-browser/procedure-browser" 1619534562 + (proc-def "plug-in-dbbrowser" 1 + "List available procedures in the PDB" + "" + "Thomas Noel" + "Thomas Noel" + "23th june 1997" + "Procedure _Browser" + 1 + (menu-path "/Help/Programming") + (icon icon-name -1 "") + "" + 1 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/print/print" 1619534562 + (proc-def "file-print-gtk" 1 + "Print the image" + "Print the image using the GTK+ Print API." + "Bill Skaggs, Sven Neumann, Stefan Röllin" + "Bill Skaggs " + "2006 - 2008" + "_Print..." + 1 + (menu-path "/File/Send") + (icon icon-name -1 "document-print") + "*" + 2 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }") + (proc-arg 13 "image" "Image to print"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/plugin-browser/plugin-browser" 1619534562 + (proc-def "plug-in-plug-in-details" 1 + "Display information about plug-ins" + "Allows one to browse the plug-in menus system. You can search for plug-in names, sort by name or menu location and you can view a tree representation of the plug-in menus. Can also be of help to find where new plug-ins have installed themselves in the menus." + "Andy Thomas" + "Andy Thomas" + "1999" + "_Plug-in Browser" + 1 + (menu-path "/Help/Programming") + (icon icon-name -1 "gimp-plugin") + "" + 1 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/photocopy/photocopy" 1619534562 + (proc-def "plug-in-photocopy" 1 + "Simulate color distortion produced by a copy machine" + "Propagates dark values in an image based on each pixel's relative darkness to a neighboring average. The idea behind this filter is to give the look of a photocopied version of the image, with toner transferred based on the relative darkness of a particular region. This is achieved by darkening areas of the image which are measured to be darker than a neighborhood average and setting other pixels to white. In this way, sufficiently large shifts in intensity are darkened to black. The rate at which they are darkened to black is determined by the second pct_black parameter. The mask_radius parameter controls the size of the pixel neighborhood over which the average intensity is computed and then compared to each pixel in the neighborhood to decide whether or not to darken it to black. Large values for mask_radius result in very thick black areas bordering the regions of white and much less detail for black areas everywhere including inside regions of color. Small values result in less toner overall and more detail everywhere. Small values for the pct_black make the blend from the white regions to the black border lines smoother and the toner regions themselves thinner and less noticeable; larger values achieve the opposite effect." + "Spencer Kimball" + "Bit Specialists, Inc." + "2001" + "_Photocopy (legacy)..." + 1 + (menu-path "/Filters/Artistic") + (icon icon-name -1 "") + "RGB*, GRAY*" + 7 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 3 "mask-radius" "Photocopy mask radius (radius of pixel neighborhood)") + (proc-arg 3 "sharpness" "Sharpness (detail level) (0.0 - 1.0)") + (proc-arg 3 "pct-black" "Percentage of darkened pixels to set to black (0.0 - 1.0)") + (proc-arg 3 "pct-white" "Percentage of non-darkened pixels left white (0.0 - 1.0)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/pagecurl/pagecurl" 1619534562 + (proc-def "plug-in-pagecurl" 1 + "Curl up one of the image corners" + "This plug-in creates a pagecurl-effect." + "Federico Mena Quintero and Simon Budig" + "Federico Mena Quintero and Simon Budig" + "July 2004, 1.0" + "_Pagecurl..." + 1 + (menu-path "/Filters/Distorts") + (icon icon-name -1 "") + "RGB*, GRAY*" + 7 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "colors" "FG- and BG-Color (0), Current gradient (1), Current gradient reversed (2)") + (proc-arg 0 "edge" "Edge to curl (1-4, clockwise, starting in the lower right edge)") + (proc-arg 0 "orientation" "Vertical (0), Horizontal (1)") + (proc-arg 0 "shade" "Shade the region under the curl (1) or not (0)") + (proc-arg 14 "curl-layer" "The new layer with the curl."))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/nl-filter/nl-filter" 1619534562 + (proc-def "plug-in-nlfilt" 1 + "Nonlinear swiss army knife filter" + "This is the pnmnlfilt, in gimp's clothing. See the pnmnlfilt manpage for details." + "Graeme W. Gill, gimp 0.99 plug-in by Eric L. Hernes" + "Graeme W. Gill, Eric L. Hernes" + "1997" + "_NL Filter..." + 1 + (menu-path "/Filters/Enhance") + (icon icon-name -1 "") + "RGB,GRAY" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "img" "The Image to Filter") + (proc-arg 16 "drw" "The Drawable") + (proc-arg 3 "alpha" "The amount of the filter to apply") + (proc-arg 3 "radius" "The filter radius") + (proc-arg 0 "filter" "The Filter to Run, 0 - alpha trimmed mean; 1 - optimal estimation (alpha controls noise variance); 2 - edge enhancement"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/metadata-viewer/metadata-viewer" 1619534562 + (proc-def "plug-in-metadata-viewer" 1 + "View metadata (Exif, IPTC, XMP)" + "View metadata information attached to the current image. This can include Exif, IPTC and/or XMP information." + "Hartmut Kuhse, Michael Natterer, Ben Touchette" + "Hartmut Kuhse, Michael Natterer, Ben Touchette" + "2013, 2017" + "_View Metadata" + 1 + (menu-path "/Image/Metadata") + (icon icon-name -1 "") + "*" + 2 0 + (proc-arg 0 "run-mode" "Run mode { RUN-INTERACTIVE (0) }") + (proc-arg 13 "image" "Input image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/metadata-editor/metadata-editor" 1619534562 + (proc-def "plug-in-metadata-editor" 1 + "Edit metadata (IPTC, EXIF, XMP)" + "Edit metadata information attached to the current image. Some or all of this metadata will be saved in the file, depending on the output file format." + "Ben Touchette" + "Ben Touchette" + "2017" + "_Edit Metadata" + 1 + (menu-path "/Image/Metadata") + (icon icon-name -1 "") + "*" + 2 0 + (proc-arg 0 "run-mode" "Run mode { RUN-INTERACTIVE (0) }") + (proc-arg 13 "image" "Input image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/max-rgb/max-rgb" 1619534562 + (proc-def "plug-in-max-rgb" 1 + "Reduce image to pure red, green, and blue" + "There's no help yet." + "Shuji Narazaki (narazaki@InetQ.or.jp)" + "Shuji Narazaki" + "May 2000" + "Maxim_um RGB..." + 0 + (icon icon-name -1 "") + "RGB*" + 4 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (not used)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "max-p" "{ MINIMIZE (0), MAXIMIZE (1) }"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/map-object/map-object" 1619534562 + (proc-def "plug-in-map-object" 1 + "Map the image to an object (plane, sphere, box or cylinder)" + "No help yet" + "Tom Bech & Federico Mena Quintero" + "Tom Bech & Federico Mena Quintero" + "Version 1.2.0, July 16 1998" + "Map _Object..." + 1 + (menu-path "/Filters/Map") + (icon icon-name -1 "") + "RGB*" + 49 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "maptype" "Type of mapping (0=plane,1=sphere,2=box,3=cylinder)") + (proc-arg 3 "viewpoint-x" "Position of viewpoint (x,y,z)") + (proc-arg 3 "viewpoint-y" "Position of viewpoint (x,y,z)") + (proc-arg 3 "viewpoint-z" "Position of viewpoint (x,y,z)") + (proc-arg 3 "position-x" "Object position (x,y,z)") + (proc-arg 3 "position-y" "Object position (x,y,z)") + (proc-arg 3 "position-z" "Object position (x,y,z)") + (proc-arg 3 "firstaxis-x" "First axis of object [x,y,z]") + (proc-arg 3 "firstaxis-y" "First axis of object [x,y,z]") + (proc-arg 3 "firstaxis-z" "First axis of object [x,y,z]") + (proc-arg 3 "secondaxis-x" "Second axis of object [x,y,z]") + (proc-arg 3 "secondaxis-y" "Second axis of object [x,y,z]") + (proc-arg 3 "secondaxis-z" "Second axis of object [x,y,z]") + (proc-arg 3 "rotationangle-x" "Rotation about X axis in degrees") + (proc-arg 3 "rotationangle-y" "Rotation about Y axis in degrees") + (proc-arg 3 "rotationangle-z" "Rotation about Z axis in degrees") + (proc-arg 0 "lighttype" "Type of lightsource (0=point,1=directional,2=none)") + (proc-arg 10 "lightcolor" "Lightsource color (r,g,b)") + (proc-arg 3 "lightposition-x" "Lightsource position (x,y,z)") + (proc-arg 3 "lightposition-y" "Lightsource position (x,y,z)") + (proc-arg 3 "lightposition-z" "Lightsource position (x,y,z)") + (proc-arg 3 "lightdirection-x" "Lightsource direction [x,y,z]") + (proc-arg 3 "lightdirection-y" "Lightsource direction [x,y,z]") + (proc-arg 3 "lightdirection-z" "Lightsource direction [x,y,z]") + (proc-arg 3 "ambient-intensity" "Material ambient intensity (0..1)") + (proc-arg 3 "diffuse-intensity" "Material diffuse intensity (0..1)") + (proc-arg 3 "diffuse-reflectivity" "Material diffuse reflectivity (0..1)") + (proc-arg 3 "specular-reflectivity" "Material specular reflectivity (0..1)") + (proc-arg 3 "highlight" "Material highlight (0..->), note: it's exponential") + (proc-arg 0 "antialiasing" "Apply antialiasing (TRUE/FALSE)") + (proc-arg 0 "tiled" "Tile source image (TRUE/FALSE)") + (proc-arg 0 "newimage" "Create a new image (TRUE/FALSE)") + (proc-arg 0 "transparentbackground" "Make background transparent (TRUE/FALSE)") + (proc-arg 3 "radius" "Sphere/cylinder radius (only used when maptype=1 or 3)") + (proc-arg 3 "x-scale" "Box x size (0..->)") + (proc-arg 3 "y-scale" "Box y size (0..->)") + (proc-arg 3 "z-scale" "Box z size (0..->)") + (proc-arg 3 "cylinder-length" "Cylinder length (0..->)") + (proc-arg 16 "box-front-drawable" "Box front face (set these to -1 if not used)") + (proc-arg 16 "box-back-drawable" "Box back face") + (proc-arg 16 "box-top-drawable" "Box top face") + (proc-arg 16 "box-bottom-drawable" "Box bottom face") + (proc-arg 16 "box-left-drawable" "Box left face") + (proc-arg 16 "box-right-drawable" "Box right face") + (proc-arg 16 "cyl-top-drawable" "Cylinder top face (set these to -1 if not used)") + (proc-arg 16 "cyl-bottom-drawable" "Cylinder bottom face"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/mail/mail" 1619534562 + (proc-def "plug-in-mail-image" 1 + "Send the image by email" + "The preferred email composer is used to send emails and must be properly configured." + "Adrian Likins, Reagan Blundell" + "Adrian Likins, Reagan Blundell, Daniel Risacher, Spencer Kimball and Peter Mattis" + "1995-1997" + "Send by E_mail..." + 1 + (menu-path "/File/Send") + (icon icon-name -1 "gtk-edit") + "*" + 9 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "to-address" "The email address to send to") + (proc-arg 4 "from-address" "The email address for the From: field") + (proc-arg 4 "subject" "The subject") + (proc-arg 4 "comment" "The Comment") + (proc-arg 0 "encapsulation" "ignored"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/lighting/lighting" 1619534562 + (proc-def "plug-in-lighting" 1 + "Apply various lighting effects to an image" + "No help yet" + "Tom Bech & Federico Mena Quintero" + "Tom Bech & Federico Mena Quintero" + "Version 0.2.0, March 15 1998" + "_Lighting Effects..." + 1 + (menu-path "/Filters/Light and Shadow/Light") + (icon icon-name -1 "") + "RGB*" + 24 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 16 "bumpdrawable" "Bumpmap drawable (set to 0 if disabled)") + (proc-arg 16 "envdrawable" "Environmentmap drawable (set to 0 if disabled)") + (proc-arg 0 "dobumpmap" "Enable bumpmapping (TRUE/FALSE)") + (proc-arg 0 "doenvmap" "Enable envmapping (TRUE/FALSE)") + (proc-arg 0 "bumpmaptype" "Type of mapping (0=linear,1=log, 2=sinusoidal, 3=spherical)") + (proc-arg 0 "lighttype" "Type of lightsource (0=point,1=directional,3=spot,4=none)") + (proc-arg 10 "lightcolor" "Lightsource color (r,g,b)") + (proc-arg 3 "lightposition-x" "Lightsource position (x,y,z)") + (proc-arg 3 "lightposition-y" "Lightsource position (x,y,z)") + (proc-arg 3 "lightposition-z" "Lightsource position (x,y,z)") + (proc-arg 3 "lightdirection-x" "Lightsource direction [x,y,z]") + (proc-arg 3 "lightdirection-y" "Lightsource direction [x,y,z]") + (proc-arg 3 "lightdirection-z" "Lightsource direction [x,y,z]") + (proc-arg 3 "ambient-intensity" "Material ambient intensity (0..1)") + (proc-arg 3 "diffuse-intensity" "Material diffuse intensity (0..1)") + (proc-arg 3 "diffuse-reflectivity" "Material diffuse reflectivity (0..1)") + (proc-arg 3 "specular-reflectivity" "Material specular reflectivity (0..1)") + (proc-arg 3 "highlight" "Material highlight (0..->), note: it's exponential") + (proc-arg 0 "antialiasing" "Apply antialiasing (TRUE/FALSE)") + (proc-arg 0 "newimage" "Create a new image (TRUE/FALSE)") + (proc-arg 0 "transparentbackground" "Make background transparent (TRUE/FALSE)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/jigsaw/jigsaw" 1619534562 + (proc-def "plug-in-jigsaw" 1 + "Add a jigsaw-puzzle pattern to the image" + "Jigsaw puzzle look" + "Nigel Wetten" + "Nigel Wetten" + "May 2000" + "_Jigsaw..." + 1 + (menu-path "/Filters/Render/Pattern") + (icon icon-name -1 "") + "RGB*" + 8 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "x" "Number of tiles across > 0") + (proc-arg 0 "y" "Number of tiles down > 0") + (proc-arg 0 "style" "The style/shape of the jigsaw puzzle { 0, 1 }") + (proc-arg 0 "blend-lines" "Number of lines for shading bevels >= 0") + (proc-arg 3 "blend-amount" "The power of the light highlights 0 =< 5"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/imagemap/imagemap" 1619534562 + (proc-def "plug-in-imagemap" 1 + "Create a clickable imagemap" + "" + "Maurits Rijk" + "Maurits Rijk" + "1998-2005" + "_Image Map..." + 1 + (menu-path "/Filters/Web") + (icon icon-name -1 "") + "RGB*, GRAY*, INDEXED*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/ifs-compose/ifs-compose" 1619534562 + (proc-def "plug-in-ifscompose" 1 + "Create an Iterated Function System (IFS) fractal" + "Interactively create an Iterated Function System fractal. Use the window on the upper left to adjust the component transformations of the fractal. The operation that is performed is selected by the buttons underneath the window, or from a menu popped up by the right mouse button. The fractal will be rendered with a transparent background if the current image has an alpha channel." + "Owen Taylor" + "Owen Taylor" + "1997" + "_IFS Fractal..." + 1 + (menu-path "/Filters/Render/Fractals") + (icon icon-name -1 "") + "*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/hot/hot" 1619534562 + (proc-def "plug-in-hot" 1 + "Find and fix pixels that may be unsafely bright" + "hot scans an image for pixels that will give unsave values of chrominance or composite signale amplitude when encoded into an NTSC or PAL signal. Three actions can be performed on these ``hot'' pixels. (0) reduce luminance, (1) reduce saturation, or (2) Blacken." + "Eric L. Hernes, Alan Wm Paeth" + "Eric L. Hernes" + "1997" + "_Hot..." + 1 + (menu-path "/Colors/Modify") + (icon icon-name -1 "") + "RGB" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "The Image") + (proc-arg 16 "drawable" "The Drawable") + (proc-arg 0 "mode" "Mode { NTSC (0), PAL (1) }") + (proc-arg 0 "action" "The action to perform") + (proc-arg 0 "new-layer" "Create a new layer { TRUE, FALSE }"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/help/help" 1619534562 + (proc-def "extension-gimp-help" 2 + "" + "" + "Sven Neumann , Michael Natterer , Henrik Brix Andersen " + "Sven Neumann, Michael Natterer & Henrik Brix Andersen" + "1999-2008" + "" + 0 + (icon icon-name -1 "") + "" + 4 0 + (proc-arg 0 "num-domain-names" "") + (proc-arg 9 "domain-names" "") + (proc-arg 0 "num-domain-uris" "") + (proc-arg 9 "domain-uris" ""))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/guillotine/guillotine" 1619534562 + (proc-def "plug-in-guillotine" 1 + "Slice the image into subimages using guides" + "This function takes an image and slices it along its guides, creating new images. The original image is not modified." + "Adam D. Moss (adam@foxbox.org)" + "Adam D. Moss (adam@foxbox.org)" + "1998" + "Slice Using G_uides" + 1 + (menu-path "/Image/Crop") + (icon icon-name -1 "") + "RGB*, INDEXED*, GRAY*" + 3 2 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable (unused)") + (proc-arg 0 "image-count" "Number of images created") + (proc-arg 5 "image-ids" "Output images"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/grid/grid" 1619534562 + (proc-def "plug-in-grid" 1 + "Draw a grid on the image" + "Draws a grid using the specified colors. The grid origin is the upper left corner." + "Tim Newsome" + "Tim Newsome, Sven Neumann, Tom Rathborne, TC" + "1997 - 2000" + "_Grid (legacy)..." + 1 + (menu-path "/Filters/Render/Pattern") + (icon icon-name -1 "") + "RGB*, GRAY*, INDEXED*" + 18 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "hwidth" "Horizontal Width (>= 0)") + (proc-arg 0 "hspace" "Horizontal Spacing (>= 1)") + (proc-arg 0 "hoffset" "Horizontal Offset (>= 0)") + (proc-arg 10 "hcolor" "Horizontal Colour") + (proc-arg 2 "hopacity" "Horizontal Opacity (0...255)") + (proc-arg 0 "vwidth" "Vertical Width (>= 0)") + (proc-arg 0 "vspace" "Vertical Spacing (>= 1)") + (proc-arg 0 "voffset" "Vertical Offset (>= 0)") + (proc-arg 10 "vcolor" "Vertical Colour") + (proc-arg 2 "vopacity" "Vertical Opacity (0...255)") + (proc-arg 0 "iwidth" "Intersection Width (>= 0)") + (proc-arg 0 "ispace" "Intersection Spacing (>= 0)") + (proc-arg 0 "ioffset" "Intersection Offset (>= 0)") + (proc-arg 10 "icolor" "Intersection Colour") + (proc-arg 2 "iopacity" "Intersection Opacity (0...255)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/gradient-map/gradient-map" 1619534562 + (proc-def "plug-in-gradmap" 1 + "Recolor the image using colors from the active gradient" + "This plug-in maps the contents of the specified drawable with active gradient. It calculates luminosity of each pixel and replaces the pixel by the sample of active gradient at the position proportional to that luminosity. Complete black pixel becomes the leftmost color of the gradient, and complete white becomes the rightmost. Works on both Grayscale and RGB image with/without alpha channel." + "Eiichi Takamori" + "Eiichi Takamori" + "1997" + "_Gradient Map" + 1 + (menu-path "/Colors/Map") + (icon icon-name -1 "") + "RGB*, GRAY*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable")) + (proc-def "plug-in-palettemap" 1 + "Recolor the image using colors from the active palette" + "This plug-in maps the contents of the specified drawable with the active palette. It calculates luminosity of each pixel and replaces the pixel by the palette sample at the corresponding index. A complete black pixel becomes the lowest palette entry, and complete white becomes the highest. Works on both Grayscale and RGB image with/without alpha channel." + "Bill Skaggs" + "Bill Skaggs" + "2004" + "_Palette Map" + 1 + (menu-path "/Colors/Map") + (icon icon-name -1 "") + "RGB*, GRAY*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/gradient-flare/gradient-flare" 1619534562 + (proc-def "plug-in-gflare" 1 + "Produce a lense flare effect using gradients" + "This plug-in produces a lense flare effect using custom gradients. In interactive call, the user can edit his/her own favorite lense flare (GFlare) and render it. Edited gflare is saved automatically to the folder in gflare-path, if it is defined in gimprc. In non-interactive call, the user can only render one of GFlare which has been stored in gflare-path already." + "Eiichi Takamori" + "Eiichi Takamori, and a lot of GIMP people" + "1997" + "_Gradient Flare..." + 1 + (menu-path "/Filters/Light and Shadow/Light") + (icon icon-name -1 "") + "RGB*, GRAY*" + 14 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 4 "gflare-name" "The name of GFlare") + (proc-arg 0 "xcenter" "X coordinate of center of GFlare") + (proc-arg 0 "ycenter" "Y coordinate of center of GFlare") + (proc-arg 3 "radius" "Radius of GFlare (pixel)") + (proc-arg 3 "rotation" "Rotation of GFlare (degree)") + (proc-arg 3 "hue" "Hue rotation of GFlare (degree)") + (proc-arg 3 "vangle" "Vector angle for second flares (degree)") + (proc-arg 3 "vlength" "Vector length for second flares (percentage to Radius)") + (proc-arg 0 "use-asupsample" "Whether it uses or not adaptive supersampling while rendering (boolean)") + (proc-arg 0 "asupsample-max-depth" "Max depth for adaptive supersampling") + (proc-arg 3 "asupsample-threshold" "Threshold for adaptive supersampling"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/goat-exercise/goat-exercise" 1619534562 + (proc-def "plug-in-goat-exercise" 1 + "Exercise a goat" + "takes a goat for a walk" + "Øyvind Kolås " + "Øyvind Kolås " + "21march 2012" + "Goat-e_xercise" + 1 + (menu-path "/Filters") + (icon icon-name -1 "") + "RGB*, INDEXED*, GRAY*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/gimpressionist/gimpressionist" 1619534562 + (proc-def "plug-in-gimpressionist" 1 + "Performs various artistic operations" + "Performs various artistic operations on an image" + "Vidar Madsen " + "Vidar Madsen" + "v1.0, November 2003" + "_GIMPressionist..." + 1 + (menu-path "/Filters/Artistic") + (icon icon-name -1 "") + "RGB*, GRAY*" + 4 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 4 "preset" "Preset Name"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/gfig/gfig" 1619534562 + (proc-def "plug-in-gfig" 1 + "Create geometric shapes" + "Draw Vector Graphics and paint them onto your images. Gfig allows you to draw many types of objects including Lines, Circles, Ellipses, Curves, Polygons, pointed stars, Bezier curves, and Spirals. Objects can be painted using Brushes or other toolsor filled using colors or patterns. Gfig objects can also be used to create selections. " + "Andy Thomas" + "Andy Thomas" + "1997" + "_Gfig..." + 1 + (menu-path "/Filters/Render") + (icon icon-name -1 "") + "RGB*, GRAY*" + 4 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "dummy" "dummy"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/fractal-trace/fractal-trace" 1619534562 + (proc-def "plug-in-fractal-trace" 1 + "Transform image with the Mandelbrot Fractal" + "transform image with the Mandelbrot Fractal" + "Hirotsuna Mizuno " + "Copyright (C) 1997 Hirotsuna Mizuno" + "v0.4 test version (Dec. 25 1997)" + "_Fractal Trace (legacy)..." + 1 + (menu-path "/Filters/Map") + (icon icon-name -1 "") + "RGB*, GRAY*" + 9 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 3 "xmin" "xmin fractal image delimiter") + (proc-arg 3 "xmax" "xmax fractal image delimiter") + (proc-arg 3 "ymin" "ymin fractal image delimiter") + (proc-arg 3 "ymax" "ymax fractal image delimiter") + (proc-arg 0 "depth" "Trace depth") + (proc-arg 0 "outside-type" "Outside type { WRAP (0), TRANS (1), BLACK (2), WHITE (3) }"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/fractal-explorer/fractal-explorer" 1619534562 + (proc-def "plug-in-fractalexplorer" 1 + "Render fractal art" + "No help yet." + "Daniel Cotting (cotting@multimania.com, www.multimania.com/cotting)" + "Daniel Cotting (cotting@multimania.com, www.multimania.com/cotting)" + "December, 1998" + "_Fractal Explorer..." + 1 + (menu-path "/Filters/Render/Fractals") + (icon icon-name -1 "") + "RGB*, GRAY*" + 22 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 2 "fractaltype" "0: Mandelbrot; 1: Julia; 2: Barnsley 1; 3: Barnsley 2; 4: Barnsley 3; 5: Spider; 6: ManOWar; 7: Lambda; 8: Sierpinski") + (proc-arg 3 "xmin" "xmin fractal image delimiter") + (proc-arg 3 "xmax" "xmax fractal image delimiter") + (proc-arg 3 "ymin" "ymin fractal image delimiter") + (proc-arg 3 "ymax" "ymax fractal image delimiter") + (proc-arg 3 "iter" "Iteration value") + (proc-arg 3 "cx" "cx value ( only Julia)") + (proc-arg 3 "cy" "cy value ( only Julia)") + (proc-arg 2 "colormode" "0: Apply colormap as specified by the parameters below; 1: Apply active gradient to final image") + (proc-arg 3 "redstretch" "Red stretching factor") + (proc-arg 3 "greenstretch" "Green stretching factor") + (proc-arg 3 "bluestretch" "Blue stretching factor") + (proc-arg 2 "redmode" "Red application mode (0:SIN;1:COS;2:NONE)") + (proc-arg 2 "greenmode" "Green application mode (0:SIN;1:COS;2:NONE)") + (proc-arg 2 "bluemode" "Blue application mode (0:SIN;1:COS;2:NONE)") + (proc-arg 2 "redinvert" "Red inversion mode (1: enabled; 0: disabled)") + (proc-arg 2 "greeninvert" "Green inversion mode (1: enabled; 0: disabled)") + (proc-arg 2 "blueinvert" "Green inversion mode (1: enabled; 0: disabled)") + (proc-arg 0 "ncolors" "Number of Colors for mapping (2<=ncolors<=8192)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/flame/flame" 1619534562 + (proc-def "plug-in-flame" 1 + "Create cosmic recursive fractal flames" + "Create cosmic recursive fractal flames" + "Scott Draves" + "Scott Draves" + "1997" + "_Flame..." + 1 + (menu-path "/Filters/Render/Fractals") + (icon icon-name -1 "") + "RGB*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/filter-pack/filter-pack" 1619534562 + (proc-def "plug-in-filter-pack" 1 + "Interactively modify the image colors" + "Interactively modify the image colors." + "Pavel Grinfeld (pavel@ml.com)" + "Pavel Grinfeld (pavel@ml.com)" + "27th March 1997" + "_Filter Pack..." + 0 + (icon icon-name -1 "") + "RGB*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (used for indexed images)") + (proc-arg 16 "drawable" "Input drawable"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/film/film" 1619534562 + (proc-def "plug-in-film" 1 + "Combine several images on a film strip" + "Compose several images to a roll film" + "Peter Kirchgessner" + "Peter Kirchgessner (peter@kirchgessner.net)" + "1997" + "_Filmstrip..." + 1 + (menu-path "/Filters/Combine") + (icon icon-name -1 "") + "INDEXED*, GRAY*, RGB*" + 12 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (only used as default image in interactive mode)") + (proc-arg 16 "drawable" "Input drawable (not used)") + (proc-arg 0 "film-height" "Height of film (0: fit to images)") + (proc-arg 10 "film-color" "Color of the film") + (proc-arg 0 "number-start" "Start index for numbering") + (proc-arg 4 "number-font" "Font for drawing numbers") + (proc-arg 10 "number-color" "Color for numbers") + (proc-arg 0 "at-top" "Flag for drawing numbers at top of film") + (proc-arg 0 "at-bottom" "Flag for drawing numbers at bottom of film") + (proc-arg 0 "num-images" "Number of images to be used for film") + (proc-arg 5 "image-ids" "num-images image IDs to be used for film") + (proc-arg 13 "new-image" "Output image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-xwd/file-xwd" 1619534562 + (proc-def "file-xwd-load" 1 + "Loads files in the XWD (X Window Dump) format" + "Loads files in the XWD (X Window Dump) format. XWD image files are produced by the program xwd. Xwd is an X Window System window dumping utility." + "Peter Kirchgessner" + "Peter Kirchgessner" + "1996" + "X window dump" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "xwd") + (magics "4,long,0x00000007") + (mime-types "image/x-xwindowdump")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-xwd-save" 1 + "Exports files in the XWD (X Window Dump) format" + "XWD exporting handles all image types except those with alpha channels." + "Peter Kirchgessner" + "Peter Kirchgessner" + "1996" + "X window dump" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "xwd") + (mime-types "image/x-xwindowdump") + (handles-uri)) + "RGB, GRAY, INDEXED" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-xpm/file-xpm" 1619534562 + (proc-def "file-xpm-load" 1 + "Load files in XPM (X11 Pixmap) format." + "Load files in XPM (X11 Pixmap) format. XPM is a portable image format designed to be included in C source code. XLib provides utility functions to read this format. Newer code should however be using gdk-pixbuf-csource instead. XPM supports colored images, unlike the XBM format which XPM was designed to replace." + "Spencer Kimball & Peter Mattis & Ray Lehtiniemi" + "Spencer Kimball & Peter Mattis" + "1997" + "X PixMap image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "xpm") + (magics "0, string,/*\\040XPM\\040*/") + (mime-types "image/x-xpixmap")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-xpm-save" 1 + "Export files in XPM (X11 Pixmap) format." + "Export files in XPM (X11 Pixmap) format. XPM is a portable image format designed to be included in C source code. XLib provides utility functions to read this format. Newer code should however be using gdk-pixbuf-csource instead. XPM supports colored images, unlike the XBM format which XPM was designed to replace." + "Spencer Kimball & Peter Mattis & Ray Lehtiniemi & Nathan Summers" + "Spencer Kimball & Peter Mattis" + "1997" + "X PixMap image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "xpm") + (mime-types "image/x-xpixmap")) + "RGB*, GRAY*, INDEXED*" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in") + (proc-arg 0 "threshold" "Alpha threshold (0-255)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-xmc/file-xmc" 1619534562 + (proc-def "file-xmc-load" 1 + "Loads files of X11 Mouse Cursor file format" + "This plug-in loads X11 Mouse Cursor (XMC) files." + "Takeshi Matsuyama " + "Takeshi Matsuyama" + "26 May 2009" + "X11 Mouse Cursor" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "xmc") + (magics "0,string,Xcur") + (mime-types "image/x-xcursor") + (thumb-loader "file-xmc-load-thumb")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-xmc-load-thumb" 1 + "Loads only first frame of X11 Mouse Cursor's animation sequence which nominal size is the closest of thumb-size to be used as a thumbnail" + "" + "Takeshi Matsuyama " + "Takeshi Matsuyama" + "26 May 2009" + "" + 0 + (icon icon-name -1 "") + "" + 2 5 + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 0 "thumb-size" "Preferred thumbnail size") + (proc-arg 13 "image" "Thumbnail image") + (proc-arg 0 "image-width" "The width of image") + (proc-arg 0 "image-height" "The height of image") + (proc-arg 0 "image-type" "The color type of image") + (proc-arg 0 "image-num-layers" "The number of layeres")) + (proc-def "file-xmc-save" 1 + "Exports files of X11 cursor file" + "This plug-in exports X11 Mouse Cursor (XMC) files" + "Takeshi Matsuyama " + "Takeshi Matsuyama" + "26 May 2009" + "X11 Mouse Cursor" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "xmc") + (mime-types "image/x-xcursor")) + "RGBA" + 15 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 0 "x-hot" "X-coordinate of hot spot") + (proc-arg 0 "y-hot" "Y-coordinate of hot spot\nUse (-1, -1) to keep original hot spot.") + (proc-arg 0 "crop" "Auto-crop or not") + (proc-arg 0 "size" "Default nominal size") + (proc-arg 0 "size-replace" "Replace existent size or not.") + (proc-arg 0 "delay" "Default delay") + (proc-arg 0 "delay-replace" "Replace existent delay or not.") + (proc-arg 4 "copyright" "Copyright information.") + (proc-arg 4 "license" "License information.") + (proc-arg 4 "other" "Other comment.(taken from \"gimp-comment\" parasite)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-xbm/file-xbm" 1619534562 + (proc-def "file-xbm-load" 1 + "Load a file in X10 or X11 bitmap (XBM) file format" + "Load a file in X10 or X11 bitmap (XBM) file format. XBM is a lossless format for flat black-and-white (two color indexed) images." + "Gordon Matzigkeit" + "Gordon Matzigkeit" + "1998" + "X BitMap image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "xbm,icon,bitmap") + (mime-types "image/x-xbitmap")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-xbm-save" 1 + "Export a file in X10 or X11 bitmap (XBM) file format" + "Export a file in X10 or X11 bitmap (XBM) file format. XBM is a lossless format for flat black-and-white (two color indexed) images." + "Gordon Matzigkeit" + "Gordon Matzigkeit" + "1998" + "X BitMap image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "xbm,icon,bitmap") + (mime-types "image/x-xbitmap") + (handles-uri)) + "INDEXED" + 12 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 4 "comment" "Image description (maximum 72 bytes)") + (proc-arg 0 "x10" "Export in X10 format") + (proc-arg 0 "x-hot" "X coordinate of hotspot") + (proc-arg 0 "y-hot" "Y coordinate of hotspot") + (proc-arg 4 "prefix" "Identifier prefix [determined from filename]") + (proc-arg 0 "write-mask" "(0 = ignore, 1 = save as extra file)") + (proc-arg 4 "mask-extension" "Extension of the mask file"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-wmf/file-wmf" 1619534562 + (proc-def "file-wmf-load" 1 + "Loads files in the WMF file format" + "Loads files in the WMF file format" + "Dom Lachowicz " + "Dom Lachowicz " + "(c) 2003 - Version 0.3.0" + "Microsoft WMF file" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "wmf,apm") + (magics "0,string,\\327\\315\\306\\232,0,string,\\1\\0\\11\\0") + (mime-types "image/x-wmf") + (thumb-loader "file-wmf-load-thumb")) + "" + 6 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 3 "resolution" "Resolution to use for rendering the WMF (defaults to 72 dpi") + (proc-arg 0 "width" "Width (in pixels) to load the WMF in, 0 for original width") + (proc-arg 0 "height" "Height (in pixels) to load the WMF in, 0 for original height") + (proc-arg 13 "image" "Output image")) + (proc-def "file-wmf-load-thumb" 1 + "Loads a small preview from a WMF image" + "" + "Dom Lachowicz " + "Dom Lachowicz " + "(c) 2003 - Version 0.3.0" + "" + 0 + (icon icon-name -1 "") + "" + 2 3 + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 0 "thumb-size" "Preferred thumbnail size") + (proc-arg 13 "image" "Thumbnail image") + (proc-arg 0 "image-width" "Width of full-sized image") + (proc-arg 0 "image-height" "Height of full-sized image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-webp/file-webp" 1619534562 + (proc-def "file-webp-load" 1 + "Loads images in the WebP file format" + "Loads images in the WebP file format" + "Nathan Osman, Ben Touchette" + "(C) 2015-2016 Nathan Osman, (C) 2016 Ben Touchette" + "2015,2016" + "WebP image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "webp") + (magics "8,string,WEBP") + (mime-types "image/webp")) + "" + 3 1 + (proc-arg 0 "run-mode" "Interactive, non-interactive") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-webp-save" 1 + "Saves files in the WebP image format" + "Saves files in the WebP image format" + "Nathan Osman, Ben Touchette" + "(C) 2015-2016 Nathan Osman, (C) 2016 Ben Touchette" + "2015,2016" + "WebP image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "webp") + (mime-types "image/webp")) + "RGB*, GRAY*, INDEXED*" + 18 0 + (proc-arg 0 "run-mode" "Interactive, non-interactive") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image to") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 0 "preset" "preset (Default=0, Picture=1, Photo=2, Drawing=3, Icon=4, Text=5)") + (proc-arg 0 "lossless" "Use lossless encoding (0/1)") + (proc-arg 3 "quality" "Quality of the image (0 <= quality <= 100)") + (proc-arg 3 "alpha-quality" "Quality of the image's alpha channel (0 <= alpha-quality <= 100)") + (proc-arg 0 "animation" "Use layers for animation (0/1)") + (proc-arg 0 "anim-loop" "Loop animation infinitely (0/1)") + (proc-arg 0 "minimize-size" "Minimize animation size (0/1)") + (proc-arg 0 "kf-distance" "Maximum distance between key-frames (>=0)") + (proc-arg 0 "exif" "Toggle saving exif data (0/1)") + (proc-arg 0 "iptc" "Toggle saving iptc data (0/1)") + (proc-arg 0 "xmp" "Toggle saving xmp data (0/1)") + (proc-arg 0 "delay" "Delay to use when timestamps are not available or forced") + (proc-arg 0 "force-delay" "Force delay on all frames"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-tiff/file-tiff" 1619534562 + (proc-def "file-tiff-load" 1 + "loads files of the tiff file format" + "FIXME: write help for tiff_load" + "Spencer Kimball, Peter Mattis & Nick Lamb" + "Nick Lamb " + "1995-1996,1998-2003" + "TIFF image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "tif,tiff") + (magics "0,string,II*\\0,0,string,MM\\0*") + (mime-types "image/tiff") + (handles-uri)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-tiff-save" 1 + "saves files in the tiff file format" + "Saves files in the Tagged Image File Format. The value for the saved comment is taken from the 'gimp-comment' parasite." + "Spencer Kimball & Peter Mattis" + "Spencer Kimball & Peter Mattis" + "1995-1996,2000-2003" + "TIFF image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "tif,tiff") + (mime-types "image/tiff") + (handles-uri)) + "RGB*, GRAY*, INDEXED*" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name of the file to save the image in") + (proc-arg 0 "compression" "Compression type: { NONE (0), LZW (1), PACKBITS (2), DEFLATE (3), JPEG (4), CCITT G3 Fax (5), CCITT G4 Fax (6) }")) + (proc-def "file-tiff-save2" 1 + "saves files in the tiff file format" + "Saves files in the Tagged Image File Format. The value for the saved comment is taken from the 'gimp-comment' parasite." + "Spencer Kimball & Peter Mattis" + "Spencer Kimball & Peter Mattis" + "1995-1996,2000-2003" + "TIFF image" + 0 + (icon icon-name -1 "") + "RGB*, GRAY*, INDEXED*" + 7 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name of the file to save the image in") + (proc-arg 0 "compression" "Compression type: { NONE (0), LZW (1), PACKBITS (2), DEFLATE (3), JPEG (4), CCITT G3 Fax (5), CCITT G4 Fax (6) }") + (proc-arg 0 "save-transp-pixels" "Keep the color data masked by an alpha channel intact (do not store premultiplied components)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-tga/file-tga" 1619534562 + (proc-def "file-tga-load" 1 + "Loads files of Targa file format" + "FIXME: write help for tga_load" + "Raphael FRANCOIS, Gordon Matzigkeit" + "Raphael FRANCOIS, Gordon Matzigkeit" + "1997,2000,2007" + "TarGA image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "tga,vda,icb,vst") + (magics "-18&,string,TRUEVISION-XFILE.,-1,byte,0") + (mime-types "image/x-tga")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-tga-save" 1 + "exports files in the Targa file format" + "FIXME: write help for tga_save" + "Raphael FRANCOIS, Gordon Matzigkeit" + "Raphael FRANCOIS, Gordon Matzigkeit" + "1997,2000" + "TarGA image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "tga") + (mime-types "image/x-tga")) + "RGB*, GRAY*, INDEXED*" + 7 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in") + (proc-arg 0 "rle" "Use RLE compression") + (proc-arg 0 "origin" "Image origin (0 = top-left, 1 = bottom-left)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-svg/file-svg" 1619534562 + (proc-def "file-svg-load" 1 + "Loads files in the SVG file format" + "Renders SVG files to raster graphics using librsvg." + "Dom Lachowicz, Sven Neumann" + "Dom Lachowicz " + "2.5.0" + "SVG image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "svg") + (magics "0,string," + "2.5.0" + "" + 0 + (icon icon-name -1 "") + "" + 2 3 + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 0 "thumb-size" "Preferred thumbnail size") + (proc-arg 13 "image" "Thumbnail image") + (proc-arg 0 "image-width" "Width of full-sized image") + (proc-arg 0 "image-height" "Height of full-sized image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-sunras/file-sunras" 1619534562 + (proc-def "file-sunras-load" 1 + "load file of the SunRaster file format" + "load file of the SunRaster file format" + "Peter Kirchgessner" + "Peter Kirchgessner" + "1996" + "SUN Rasterfile image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "im1,im8,im24,im32,rs,ras") + (magics "0,long,0x59a66a95") + (mime-types "image/x-sun-raster")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-sunras-save" 1 + "export file in the SunRaster file format" + "SUNRAS exporting handles all image types except those with alpha channels." + "Peter Kirchgessner" + "Peter Kirchgessner" + "1996" + "SUN Rasterfile image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "im1,im8,im24,im32,rs,ras") + (mime-types "image/x-sun-raster")) + "RGB, GRAY, INDEXED" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in") + (proc-arg 0 "rle" "Specify non-zero for rle output, zero for standard output"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-sgi/file-sgi" 1619534562 + (proc-def "file-sgi-load" 1 + "Loads files in SGI image file format" + "This plug-in loads SGI image files." + "Michael Sweet " + "Copyright 1997-1998 by Michael Sweet" + "1.1.1 - 17 May 1998" + "Silicon Graphics IRIS image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "sgi,rgb,rgba,bw,icon") + (magics "0,short,474") + (mime-types "image/x-sgi")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-sgi-save" 1 + "Exports files in SGI image file format" + "This plug-in exports SGI image files." + "Michael Sweet " + "Copyright 1997-1998 by Michael Sweet" + "1.1.1 - 17 May 1998" + "Silicon Graphics IRIS image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "sgi,rgb,rgba,bw,icon") + (mime-types "image/x-sgi")) + "RGB*, GRAY*, INDEXED*" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in") + (proc-arg 0 "compression" "Compression level (0 = none, 1 = RLE, 2 = ARLE)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-raw-placeholder/file-raw-placeholder" 1619534562 + (proc-def "file-raw-placeholder-canon-load" 1 + "Load files in the Canon raw formats via raw-placeholder" + "This plug-in loads files in Canon's raw formats by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Canon" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "cr2,crw,cr3") + (magics "0,string,II*\\0\\020\\0\\0\\0CR,0,string,II\\024\\0\\0\\0HEAPCCDR,4,string,ftypcrx ") + (mime-types "image/x-canon-cr2,image/x-canon-crw,image/x-canon-cr3") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-nikon-load" 1 + "Load files in the Nikon raw formats via raw-placeholder" + "This plug-in loads files in Nikon's raw formats by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Nikon" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "nef,nrw") + (mime-types "image/x-nikon-nef,image/x-nikon-nrw") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-hasselblad-load" 1 + "Load files in the Hasselblad raw formats via raw-placeholder" + "This plug-in loads files in Hasselblad's raw formats by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Hasselblad" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "3fr,fff") + (mime-types "image/x-hasselblad-3fr,image/x-hasselblad-fff") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-sony-load" 1 + "Load files in the Sony raw formats via raw-placeholder" + "This plug-in loads files in Sony's raw formats by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Sony" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "arw,srf,sr2") + (mime-types "image/x-sony-arw,image/x-sony-srf,image/x-sony-sr2") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-bay-load" 1 + "Load files in the BAY raw format via raw-placeholder" + "This plug-in loads files in Casio's raw BAY format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Casio BAY" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "bay") + (mime-types "image/x-casio-bay") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-cine-load" 1 + "Load files in the CINE raw format via raw-placeholder" + "This plug-in loads files in Phantom Software's raw CINE format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Phantom Software CINE" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "cine,cin") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-sinar-load" 1 + "Load files in the Sinar raw formats via raw-placeholder" + "This plug-in loads files in Sinar's raw formats by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Sinar" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "cs1,ia,sti") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-kodak-load" 1 + "Load files in the Kodak raw formats via raw-placeholder" + "This plug-in loads files in Kodak's raw formats by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Kodak" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "dc2,dcr,kdc,k25,kc2") + (mime-types "image/x-kodak-dc2,image/x-kodak-dcr,image/x-kodak-kdc,image/x-kodak-k25,image/x-kodak-kc2") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-dng-load" 1 + "Load files in the DNG raw format via raw-placeholder" + "This plug-in loads files in the Adobe Digital Negative DNG format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Adobe DNG Digital Negative" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "dng") + (mime-types "image/x-adobe-dng") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-erf-load" 1 + "Load files in the ERF raw format via raw-placeholder" + "This plug-in loads files in Epson's raw ERF format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Epson ERF" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "erf") + (mime-types "image/x-epson-erf") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-phaseone-load" 1 + "Load files in the Phase One raw formats via raw-placeholder" + "This plug-in loads files in Phase One's raw formats by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Phase One" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "cap,iiq") + (mime-types "image/x-phaseone-cap,image/x-phaseone-iiq") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-minolta-load" 1 + "Load files in the Minolta raw formats via raw-placeholder" + "This plug-in loads files in Minolta's raw formats by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Minolta" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "mdc,mrw") + (mime-types "image/x-minolta-mdc,image/x-minolta-mrw") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-mef-load" 1 + "Load files in the MEF raw format via raw-placeholder" + "This plug-in loads files in Mamiya's raw MEF format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Mamiya MEF" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "mef") + (mime-types "image/x-mamiya-mef") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-mos-load" 1 + "Load files in the MOS raw format via raw-placeholder" + "This plug-in loads files in Leaf's raw MOS format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Leaf MOS" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "mos") + (mime-types "image/x-leaf-mos") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-orf-load" 1 + "Load files in the ORF raw format via raw-placeholder" + "This plug-in loads files in Olympus' raw ORF format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Olympus ORF" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "orf") + (magics "0,string,IIRO,0,string,MMOR,0,string,IIRS") + (mime-types "image/x-olympus-orf") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-pef-load" 1 + "Load files in the PEF raw format via raw-placeholder" + "This plug-in loads files in Pentax' raw PEF format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Pentax PEF" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "pef,raw") + (mime-types "image/x-pentax-pef,image/x-pentax-raw") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-pxn-load" 1 + "Load files in the PXN raw format via raw-placeholder" + "This plug-in loads files in Logitech's raw PXN format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Logitech PXN" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "pxn") + (mime-types "image/x-pxn") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-qtk-load" 1 + "Load files in the QTK raw format via raw-placeholder" + "This plug-in loads files in Apple's QuickTake QTK raw format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Apple QuickTake QTK" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "qtk") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-raf-load" 1 + "Load files in the RAF raw format via raw-placeholder" + "This plug-in loads files in Fujifilm's raw RAF format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Fujifilm RAF" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "raf") + (magics "0,string,FUJIFILMCCD-RAW") + (mime-types "image/x-fuji-raf") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-panasonic-load" 1 + "Load files in the Panasonic raw formats via raw-placeholder" + "This plug-in loads files in Panasonic's raw formats by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Panasonic" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "raw,rw2") + (magics "0,string,IIU\\0") + (mime-types "image/x-panasonic-raw,image/x-panasonic-rw2") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-rdc-load" 1 + "Load files in the RDC raw format via raw-placeholder" + "This plug-in loads files in Digital Foto Maker's raw RDC format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Digital Foto Maker RDC" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "rdc") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-rwl-load" 1 + "Load files in the RWL raw format via raw-placeholder" + "This plug-in loads files in Leica's raw RWL format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Leica RWL" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "rwl") + (mime-types "image/x-leica-rwl") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-srw-load" 1 + "Load files in the SRW raw format via raw-placeholder" + "This plug-in loads files in Samsung's raw SRW format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Samsung SRW" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "srw") + (mime-types "image/x-samsung-srw") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-x3f-load" 1 + "Load files in the X3F raw format via raw-placeholder" + "This plug-in loads files in Sigma's raw X3F format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Sigma X3F" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "x3f") + (magics "0,string,FOVb") + (mime-types "image/x-sigma-x3f") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-placeholder-ari-load" 1 + "Load files in the ARI raw format via raw-placeholder" + "This plug-in loads files in Arriflex' raw ARI format by calling raw-placeholder." + "Tobias Ellinghaus" + "Tobias Ellinghaus" + "2016" + "Raw Arriflex ARI" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "ari") + (handles-raw)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-raw-data/file-raw-data" 1619534562 + (proc-def "file-raw-load" 1 + "Load raw images, specifying image information" + "Load raw images, specifying image information" + "timecop, pg@futureware.at" + "timecop, pg@futureware.at" + "Aug 2004" + "Raw image data" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "data")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-hgt-load" 1 + "Load HGT data as images" + "Load Digital Elevation Model data in HGT format from the Shuttle Radar Topography Mission as images. Though the output image will be RGB, all colors are grayscale by default and the contrast will be quite low on most earth relief. Therefore You will likely want to remap elevation to colors as a second step, for instance with the \"Gradient Map\" plug-in." + "" + "" + "2017-12-09" + "Digital Elevation Model data" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "hgt")) + "" + 4 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 0 "samplespacing" "The sample spacing of the data. Only supported values are 0, 1 and 3 (respectively auto-detect, SRTM-1 and SRTM-3 data)") + (proc-arg 13 "image" "Output image")) + (proc-def "file-raw-save" 1 + "Dump images to disk in raw format" + "This plug-in dumps images to disk in raw format, using the default settings stored as a parasite." + "timecop, pg@futureware.at" + "timecop, pg@futureware.at" + "Aug 2004" + "Raw image data" + 0 + (icon icon-name -1 "") + "INDEXED, GRAY, RGB, RGBA" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name entered")) + (proc-def "file-raw-save2" 1 + "Dump images to disk in raw format" + "Dump images to disk in raw format" + "Björn Kautler, Bjoern@Kautler.net" + "Björn Kautler, Bjoern@Kautler.net" + "April 2014" + "Raw image data" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "data,raw")) + "INDEXED, GRAY, RGB, RGBA" + 7 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 0 "image-type" "The image type { RAW_RGB (0), RAW_PLANAR (3) }") + (proc-arg 0 "palette-type" "The palette type { RAW_PALETTE_RGB (0), RAW_PALETTE_BGR (1) }")) + (proc-def "file-raw-get-defaults" 1 + "Get the current set of defaults used by the raw image data dump plug-in" + "This procedure returns the current set of defaults stored as a parasite for the raw image data dump plug-in. These defaults are used to seed the UI, by the file_raw_save_defaults procedure, and by gimp_file_save when it detects to use RAW." + "Björn Kautler, Bjoern@Kautler.net" + "Björn Kautler, Bjoern@Kautler.net" + "April 2014" + "" + 0 + (icon icon-name -1 "") + "" + 0 2 + (proc-arg 0 "image-type" "The image type { RAW_RGB (0), RAW_PLANAR (3) }") + (proc-arg 0 "palette-type" "The palette type { RAW_PALETTE_RGB (0), RAW_PALETTE_BGR (1) }")) + (proc-def "file-raw-set-defaults" 1 + "Set the current set of defaults used by the raw image dump plug-in" + "This procedure sets the current set of defaults stored as a parasite for the raw image data dump plug-in. These defaults are used to seed the UI, by the file_raw_save_defaults procedure, and by gimp_file_save when it detects to use RAW." + "Björn Kautler, Bjoern@Kautler.net" + "Björn Kautler, Bjoern@Kautler.net" + "April 2014" + "" + 0 + (icon icon-name -1 "") + "" + 2 0 + (proc-arg 0 "image-type" "The image type { RAW_RGB (0), RAW_PLANAR (3) }") + (proc-arg 0 "palette-type" "The palette type { RAW_PALETTE_RGB (0), RAW_PALETTE_BGR (1) }"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-psp/file-psp" 1619534562 + (proc-def "file-psp-load" 1 + "loads images from the Paint Shop Pro PSP file format" + "This plug-in loads and exports images in Paint Shop Pro's native PSP format. Vector layers aren't handled. Exporting isn't yet implemented." + "Tor Lillqvist" + "Tor Lillqvist" + "1999" + "Paint Shop Pro image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "psp,tub,pspimage") + (magics "0,string,Paint\\040Shop\\040Pro\\040Image\\040File\n\032") + (mime-types "image/x-psp")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-psd/file-psd" 1619534562 + (proc-def "file-psd-load" 1 + "Loads images from the Photoshop PSD file format" + "This plug-in loads images in Adobe Photoshop (TM) native PSD format." + "John Marshall" + "John Marshall" + "2007" + "Photoshop image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "psd") + (magics "0,string,8BPS") + (mime-types "image/x-psd") + (thumb-loader "file-psd-load-thumb")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-psd-load-merged" 1 + "Loads merged images from the Photoshop PSD file format" + "This plug-in loads the merged image data in Adobe Photoshop (TM) native PSD format." + "Ell" + "Ell" + "2018" + "Photoshop image (merged)" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "psd") + (magics "0,string,8BPS") + (priority 1) + (mime-types "image/x-psd") + (priority 1)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-psd-load-thumb" 1 + "Loads thumbnails from the Photoshop PSD file format" + "This plug-in loads thumbnail images from Adobe Photoshop (TM) native PSD format files." + "John Marshall" + "John Marshall" + "2007" + "" + 0 + (icon icon-name -1 "") + "" + 2 3 + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 0 "thumb-size" "Preferred thumbnail size") + (proc-arg 13 "image" "Thumbnail image") + (proc-arg 0 "image-width" "Width of full-sized image") + (proc-arg 0 "image-height" "Height of full-sized image")) + (proc-def "file-psd-save" 1 + "saves files in the Photoshop(tm) PSD file format" + "This filter saves files of Adobe Photoshop(tm) native PSD format. These files may be of any image type supported by GIMP, with or without layers, layer masks, aux channels and guides." + "Monigotes" + "Monigotes" + "2000" + "Photoshop image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "psd") + (mime-types "image/x-psd")) + "RGB*, GRAY*, INDEXED*" + 7 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name of the file to save the image in") + (proc-arg 0 "compression" "Compression type: { NONE (0), LZW (1), PACKBITS (2)") + (proc-arg 0 "fill-order" "Fill Order: { MSB to LSB (0), LSB to MSB (1)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-ps/file-ps" 1619534562 + (proc-def "file-ps-load" 1 + "load PostScript documents" + "load PostScript documents" + "Peter Kirchgessner " + "Peter Kirchgessner" + "v1.17 19-Sep-2004" + "PostScript document" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "ps") + (magics "0,string,%!,0,long,0xc5d0d3c6") + (mime-types "application/postscript") + (thumb-loader "file-ps-load-thumb")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-eps-load" 1 + "load Encapsulated PostScript images" + "load Encapsulated PostScript images" + "Peter Kirchgessner " + "Peter Kirchgessner" + "v1.17 19-Sep-2004" + "Encapsulated PostScript image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "eps") + (magics "0,string,%!,0,long,0xc5d0d3c6") + (mime-types "image/x-eps") + (thumb-loader "file-ps-load-thumb")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-ps-load-setargs" 1 + "set additional parameters for procedure file-ps-load" + "set additional parameters for procedure file-ps-load" + "Peter Kirchgessner " + "Peter Kirchgessner" + "v1.17 19-Sep-2004" + "" + 0 + (icon icon-name -1 "") + "" + 8 0 + (proc-arg 0 "resolution" "Resolution to interpret image (dpi)") + (proc-arg 0 "width" "Desired width") + (proc-arg 0 "height" "Desired height") + (proc-arg 0 "check-bbox" "0: Use width/height, 1: Use BoundingBox") + (proc-arg 4 "pages" "Pages to load (e.g.: 1,3,5-7)") + (proc-arg 0 "coloring" "4: b/w, 5: grey, 6: color image, 7: automatic") + (proc-arg 0 "text-alpha-bits" "1, 2, or 4") + (proc-arg 0 "graphic-alpha-bits" "1, 2, or 4")) + (proc-def "file-ps-load-thumb" 1 + "Loads a small preview from a PostScript or PDF document" + "" + "Peter Kirchgessner " + "Peter Kirchgessner" + "v1.17 19-Sep-2004" + "" + 0 + (icon icon-name -1 "") + "" + 2 1 + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 0 "thumb-size" "Preferred thumbnail size") + (proc-arg 13 "image" "Output image")) + (proc-def "file-ps-save" 1 + "export image as PostScript document" + "PostScript exporting handles all image types except those with alpha channels." + "Peter Kirchgessner " + "Peter Kirchgessner" + "v1.17 19-Sep-2004" + "PostScript document" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "ps") + (mime-types "application/postscript") + (handles-uri)) + "RGB, GRAY, INDEXED" + 15 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in") + (proc-arg 3 "width" "Width of the image in PostScript file (0: use input image size)") + (proc-arg 3 "height" "Height of image in PostScript file (0: use input image size)") + (proc-arg 3 "x-offset" "X-offset to image from lower left corner") + (proc-arg 3 "y-offset" "Y-offset to image from lower left corner") + (proc-arg 0 "unit" "Unit for width/height/offset. 0: inches, 1: millimeters") + (proc-arg 0 "keep-ratio" "0: use width/height, 1: keep aspect ratio") + (proc-arg 0 "rotation" "0, 90, 180, 270") + (proc-arg 0 "eps-flag" "0: PostScript, 1: Encapsulated PostScript") + (proc-arg 0 "preview" "0: no preview, >0: max. size of preview") + (proc-arg 0 "level" "1: PostScript Level 1, 2: PostScript Level 2")) + (proc-def "file-eps-save" 1 + "export image as Encapsulated PostScript image" + "PostScript exporting handles all image types except those with alpha channels." + "Peter Kirchgessner " + "Peter Kirchgessner" + "v1.17 19-Sep-2004" + "Encapsulated PostScript image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "eps") + (mime-types "application/x-eps") + (handles-uri)) + "RGB, GRAY, INDEXED" + 15 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in") + (proc-arg 3 "width" "Width of the image in PostScript file (0: use input image size)") + (proc-arg 3 "height" "Height of image in PostScript file (0: use input image size)") + (proc-arg 3 "x-offset" "X-offset to image from lower left corner") + (proc-arg 3 "y-offset" "Y-offset to image from lower left corner") + (proc-arg 0 "unit" "Unit for width/height/offset. 0: inches, 1: millimeters") + (proc-arg 0 "keep-ratio" "0: use width/height, 1: keep aspect ratio") + (proc-arg 0 "rotation" "0, 90, 180, 270") + (proc-arg 0 "eps-flag" "0: PostScript, 1: Encapsulated PostScript") + (proc-arg 0 "preview" "0: no preview, >0: max. size of preview") + (proc-arg 0 "level" "1: PostScript Level 1, 2: PostScript Level 2"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-pnm/file-pnm" 1619534562 + (proc-def "file-pnm-load" 1 + "Loads files in the PNM file format" + "This plug-in loads files in the various Netpbm portable file formats." + "Erik Nygren" + "Erik Nygren" + "1996" + "PNM Image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "pnm,ppm,pgm,pbm,pfm") + (magics "0,string,P1,0,string,P2,0,string,P3,0,string,P4,0,string,P5,0,string,P6,0,string,PF,0,string,Pf") + (mime-types "image/x-portable-anymap") + (handles-uri)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-pnm-save" 1 + "Exports files in the PNM file format" + "PNM exporting handles all image types without transparency." + "Erik Nygren" + "Erik Nygren" + "1996" + "PNM image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "pnm") + (mime-types "image/x-portable-anymap") + (handles-uri)) + "RGB, GRAY, INDEXED" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in") + (proc-arg 0 "raw" "TRUE for raw output, FALSE for ascii output")) + (proc-def "file-pbm-save" 1 + "Exports files in the PBM file format" + "PBM exporting produces mono images without transparency." + "Martin K Collins" + "Erik Nygren" + "2006" + "PBM image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "pbm") + (mime-types "image/x-portable-bitmap") + (handles-uri)) + "RGB, GRAY, INDEXED" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in") + (proc-arg 0 "raw" "TRUE for raw output, FALSE for ascii output")) + (proc-def "file-pgm-save" 1 + "Exports files in the PGM file format" + "PGM exporting produces grayscale images without transparency." + "Erik Nygren" + "Erik Nygren" + "1996" + "PGM image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "pgm") + (mime-types "image/x-portable-graymap") + (handles-uri)) + "RGB, GRAY, INDEXED" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in") + (proc-arg 0 "raw" "TRUE for raw output, FALSE for ascii output")) + (proc-def "file-ppm-save" 1 + "Exports files in the PPM file format" + "PPM exporting handles RGB images without transparency." + "Erik Nygren" + "Erik Nygren" + "1996" + "PPM image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "ppm") + (mime-types "image/x-portable-floatmap") + (handles-uri)) + "RGB, GRAY, INDEXED" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in") + (proc-arg 0 "raw" "TRUE for raw output, FALSE for ascii output")) + (proc-def "file-pfm-save" 1 + "Exports files in the PFM file format" + "PFM exporting handles all images without transparency." + "Mukund Sivaraman" + "Mukund Sivaraman" + "2015" + "PFM image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "pfm") + (handles-uri)) + "RGB, GRAY, INDEXED" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-png/file-png" 1619534562 + (proc-def "file-png-load" 1 + "Loads files in PNG file format" + "This plug-in loads Portable Network Graphics (PNG) files." + "Michael Sweet , Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>" + "Michael Sweet , Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>, Nick Lamb " + "1.3.4 - 03 September 2002" + "PNG image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "png") + (magics "0,string,‰PNG\r\n\032\n") + (mime-types "image/png")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-png-save" 1 + "Exports files in PNG file format" + "This plug-in exports Portable Network Graphics (PNG) files." + "Michael Sweet , Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>" + "Michael Sweet , Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>, Nick Lamb " + "1.3.4 - 03 September 2002" + "PNG image" + 0 + (icon icon-name -1 "") + "RGB*,GRAY*,INDEXED*" + 12 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in") + (proc-arg 0 "interlace" "Use Adam7 interlacing?") + (proc-arg 0 "compression" "Deflate Compression factor (0--9)") + (proc-arg 0 "bkgd" "Write bKGD chunk?") + (proc-arg 0 "gama" "Write gAMA chunk?") + (proc-arg 0 "offs" "Write oFFs chunk?") + (proc-arg 0 "phys" "Write pHYs chunk?") + (proc-arg 0 "time" "Write tIME chunk?")) + (proc-def "file-png-save2" 1 + "Exports files in PNG file format" + "This plug-in exports Portable Network Graphics (PNG) files. This procedure adds 2 extra parameters to file-png-save that control whether image comments are saved and whether transparent pixels are saved or nullified." + "Michael Sweet , Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>" + "Michael Sweet , Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>, Nick Lamb " + "1.3.4 - 03 September 2002" + "PNG image" + 0 + (icon icon-name -1 "") + "RGB*,GRAY*,INDEXED*" + 14 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in") + (proc-arg 0 "interlace" "Use Adam7 interlacing?") + (proc-arg 0 "compression" "Deflate Compression factor (0--9)") + (proc-arg 0 "bkgd" "Write bKGD chunk?") + (proc-arg 0 "gama" "Write gAMA chunk?") + (proc-arg 0 "offs" "Write oFFs chunk?") + (proc-arg 0 "phys" "Write pHYs chunk?") + (proc-arg 0 "time" "Write tIME chunk?") + (proc-arg 0 "comment" "Write comment?") + (proc-arg 0 "svtrans" "Preserve color of transparent pixels?")) + (proc-def "file-png-save-defaults" 1 + "Exports files in PNG file format" + "This plug-in exports Portable Network Graphics (PNG) files, using the default settings stored as a parasite." + "Michael Sweet , Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>" + "Michael Sweet , Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>, Nick Lamb " + "1.3.4 - 03 September 2002" + "PNG image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "png") + (mime-types "image/png")) + "RGB*,GRAY*,INDEXED*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in")) + (proc-def "file-png-get-defaults" 1 + "Get the current set of defaults used by the PNG file export plug-in" + "This procedure returns the current set of defaults stored as a parasite for the PNG export plug-in. These defaults are used to seed the UI, by the file_png_save_defaults procedure, and by gimp_file_save when it detects to use PNG." + "Michael Sweet , Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>" + "Michael Sweet , Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>, Nick Lamb " + "1.3.4 - 03 September 2002" + "" + 0 + (icon icon-name -1 "") + "" + 0 9 + (proc-arg 0 "interlace" "Use Adam7 interlacing?") + (proc-arg 0 "compression" "Deflate Compression factor (0--9)") + (proc-arg 0 "bkgd" "Write bKGD chunk?") + (proc-arg 0 "gama" "Write gAMA chunk?") + (proc-arg 0 "offs" "Write oFFs chunk?") + (proc-arg 0 "phys" "Write pHYs chunk?") + (proc-arg 0 "time" "Write tIME chunk?") + (proc-arg 0 "comment" "Write comment?") + (proc-arg 0 "svtrans" "Preserve color of transparent pixels?")) + (proc-def "file-png-set-defaults" 1 + "Set the current set of defaults used by the PNG file export plug-in" + "This procedure set the current set of defaults stored as a parasite for the PNG export plug-in. These defaults are used to seed the UI, by the file_png_save_defaults procedure, and by gimp_file_save when it detects to use PNG." + "Michael Sweet , Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>" + "Michael Sweet , Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>, Nick Lamb " + "1.3.4 - 03 September 2002" + "" + 0 + (icon icon-name -1 "") + "" + 9 0 + (proc-arg 0 "interlace" "Use Adam7 interlacing?") + (proc-arg 0 "compression" "Deflate Compression factor (0--9)") + (proc-arg 0 "bkgd" "Write bKGD chunk?") + (proc-arg 0 "gama" "Write gAMA chunk?") + (proc-arg 0 "offs" "Write oFFs chunk?") + (proc-arg 0 "phys" "Write pHYs chunk?") + (proc-arg 0 "time" "Write tIME chunk?") + (proc-arg 0 "comment" "Write comment?") + (proc-arg 0 "svtrans" "Preserve color of transparent pixels?"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-pix/file-pix" 1619534562 + (proc-def "file-pix-load" 1 + "loads files of the Alias|Wavefront Pix file format" + "loads files of the Alias|Wavefront Pix file format" + "Michael Taylor" + "Michael Taylor" + "1997" + "Alias Pix image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "pix,matte,mask,alpha,als") + (handles-uri)) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-pix-save" 1 + "export file in the Alias|Wavefront pix/matte file format" + "export file in the Alias|Wavefront pix/matte file format" + "Michael Taylor" + "Michael Taylor" + "1997" + "Alias Pix image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "pix,matte,mask,alpha,als") + (handles-uri)) + "RGB*, GRAY*, INDEXED*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-pdf-save/file-pdf-save" 1619534562 + (proc-def "file-pdf-save" 1 + "Save files in PDF format" + "Saves files in Adobe's Portable Document Format. PDF is designed to be easily processed by a variety of different platforms, and is a distant cousin of PostScript." + "Barak Itkin" + "Copyright Barak Itkin" + "August 2009" + "Portable Document Format" + 0 + (icon icon-name -1 "") + "RGB*, GRAY*, INDEXED*" + 8 0 + (proc-arg 0 "run-mode" "Run mode") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name of the file to save the image in") + (proc-arg 0 "vectorize" "Convert bitmaps to vector graphics where possible. TRUE or FALSE") + (proc-arg 0 "ignore-hidden" "Omit hidden layers and layers with zero opacity. TRUE or FALSE") + (proc-arg 0 "apply-masks" "Apply layer masks before saving. TRUE or FALSE (Keeping them will not change the output)")) + (proc-def "file-pdf-save2" 1 + "Save files in PDF format" + "Saves files in Adobe's Portable Document Format. PDF is designed to be easily processed by a variety of different platforms, and is a distant cousin of PostScript.\nThis procedure adds an extra parameter to file-pdf-save to save layers as pages." + "Barak Itkin, Lionel N., Jehan" + "Copyright Barak Itkin, Lionel N., Jehan" + "August 2009, 2017" + "Portable Document Format" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "pdf") + (mime-types "application/pdf")) + "RGB*, GRAY*, INDEXED*" + 10 0 + (proc-arg 0 "run-mode" "Run mode") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name of the file to save the image in") + (proc-arg 0 "vectorize" "Convert bitmaps to vector graphics where possible. TRUE or FALSE") + (proc-arg 0 "ignore-hidden" "Omit hidden layers and layers with zero opacity. TRUE or FALSE") + (proc-arg 0 "apply-masks" "Apply layer masks before saving. TRUE or FALSE (Keeping them will not change the output)") + (proc-arg 0 "layers-as-pages" "Layers as pages (bottom layers first). TRUE or FALSE") + (proc-arg 0 "reverse-order" "Reverse the pages order (top layers first). TRUE or FALSE")) + (proc-def "file-pdf-save-multi" 1 + "Save files in PDF format" + "Saves files in Adobe's Portable Document Format. PDF is designed to be easily processed by a variety of different platforms, and is a distant cousin of PostScript." + "Barak Itkin" + "Copyright Barak Itkin" + "August 2009" + "_Create multipage PDF..." + 0 + (icon icon-name -1 "") + "RGB*, GRAY*, INDEXED*" + 8 0 + (proc-arg 0 "run-mode" "Run mode") + (proc-arg 0 "count" "The amount of images entered (This will be the amount of pages). 1 <= count <= MAX_PAGE_COUNT") + (proc-arg 5 "images" "Input image for each page (An image can appear more than once)") + (proc-arg 0 "vectorize" "Convert bitmaps to vector graphics where possible. TRUE or FALSE") + (proc-arg 0 "ignore-hidden" "Omit hidden layers and layers with zero opacity. TRUE or FALSE") + (proc-arg 0 "apply-masks" "Apply layer masks before saving. TRUE or FALSE (Keeping them will not change the output)") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name of the file to save the image in"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-pdf-load/file-pdf-load" 1619534562 + (proc-def "file-pdf-load" 1 + "Load file in PDF format" + "Loads files in Adobe's Portable Document Format. PDF is designed to be easily processed by a variety of different platforms, and is a distant cousin of PostScript.\nIf the PDF document has multiple pages, only the first page will be loaded. Call file_pdf_load2() to load several pages as layers." + "Nathan Summers" + "Nathan Summers" + "2005" + "Portable Document Format" + 0 + (icon icon-name -1 "") + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-pdf-load2" 1 + "Load file in PDF format" + "Loads files in Adobe's Portable Document Format. PDF is designed to be easily processed by a variety of different platforms, and is a distant cousin of PostScript.\nThis procedure adds extra parameters to file-pdf-load to open encrypted PDF and to allow multiple page loading." + "Nathan Summers, Lionel N." + "Nathan Summers, Lionel N." + "2005, 2017" + "Portable Document Format" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "pdf") + (magics "0, string,%PDF-") + (mime-types "application/pdf") + (thumb-loader "file-pdf-load-thumb")) + "" + 6 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 4 "pdf-password" "The password to decrypt the encrypted PDF file") + (proc-arg 0 "n-pages" "Number of pages to load (0 for all)") + (proc-arg 5 "pages" "The pages to load in the expected order") + (proc-arg 13 "image" "Output image")) + (proc-def "file-pdf-load-thumb" 1 + "Loads a preview from a PDF file." + "Loads a small preview of the first page of the PDF format file. Uses the embedded thumbnail if present." + "Nathan Summers" + "Nathan Summers" + "2005" + "" + 0 + (icon icon-name -1 "") + "" + 2 5 + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 0 "thumb-size" "Preferred thumbnail size") + (proc-arg 13 "image" "Thumbnail image") + (proc-arg 0 "image-width" "Width of full-sized image") + (proc-arg 0 "image-height" "Height of full-sized image") + (proc-arg 0 "image-type" "Image type") + (proc-arg 0 "num-layers" "Number of pages"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-pcx/file-pcx" 1619534562 + (proc-def "file-pcx-load" 1 + "Loads files in Zsoft PCX file format" + "FIXME: write help for pcx_load" + "Francisco Bustamante & Nick Lamb" + "Nick Lamb " + "January 1997" + "ZSoft PCX image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "pcx,pcc") + (magics "0&,byte,10,2&,byte,1,3&,byte,>0,3,byte,<9") + (mime-types "image/x-pcx")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-pcx-save" 1 + "Exports files in ZSoft PCX file format" + "FIXME: write help for pcx_save" + "Francisco Bustamante & Nick Lamb" + "Nick Lamb " + "January 1997" + "ZSoft PCX image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "pcx,pcc") + (mime-types "image/x-pcx")) + "INDEXED, RGB, GRAY" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name entered"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-pat/file-pat" 1619534562 + (proc-def "file-pat-save" 1 + "Exports Gimp pattern file (.PAT)" + "New Gimp patterns can be created by exporting them in the appropriate place with this plug-in." + "Tim Newsome" + "Tim Newsome" + "1997" + "GIMP pattern" + 0 + (icon icon-name -1 "gimp-pattern") + (save-proc + (extensions "pat") + (mime-types "image/x-gimp-pat") + (handles-uri)) + "RGB*, GRAY*, INDEXED*" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "uri" "The URI of the file to export the image in") + (proc-arg 4 "raw-uri" "The URI of the file to export the image in") + (proc-arg 4 "description" "Short description of the pattern"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-mng/file-mng" 1619534562 + (proc-def "file-mng-save" 1 + "Saves images in the MNG file format" + "This plug-in saves images in the Multiple-image Network Graphics (MNG) format which can be used as a replacement for animated GIFs, and more." + "Mukund Sivaraman " + "Mukund Sivaraman " + "November 19, 2002" + "MNG animation" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "mng") + (mime-types "image/x-mng")) + "RGB*,GRAY*,INDEXED*" + 17 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name of the file to save the image in") + (proc-arg 0 "interlace" "Use interlacing") + (proc-arg 0 "compression" "PNG deflate compression level (0 - 9)") + (proc-arg 3 "quality" "JPEG quality factor (0.00 - 1.00)") + (proc-arg 3 "smoothing" "JPEG smoothing factor (0.00 - 1.00)") + (proc-arg 0 "loop" "(ANIMATED MNG) Loop infinitely") + (proc-arg 0 "default-delay" "(ANIMATED MNG) Default delay between frames in milliseconds") + (proc-arg 0 "default-chunks" "(ANIMATED MNG) Default chunks type (0 = PNG + Delta PNG; 1 = JNG + Delta PNG; 2 = All PNG; 3 = All JNG)") + (proc-arg 0 "default-dispose" "(ANIMATED MNG) Default dispose type (0 = combine; 1 = replace)") + (proc-arg 0 "bkgd" "Write bKGD (background color) chunk") + (proc-arg 0 "gama" "Write gAMA (gamma) chunk") + (proc-arg 0 "phys" "Write pHYs (image resolution) chunk") + (proc-arg 0 "time" "Write tIME (creation time) chunk"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-jpeg/file-jpeg" 1619534562 + (proc-def "file-jpeg-load" 1 + "loads files in the JPEG file format" + "loads files in the JPEG file format" + "Spencer Kimball, Peter Mattis & others" + "Spencer Kimball & Peter Mattis" + "1995-2007" + "JPEG image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "jpg,jpeg,jpe") + (magics "0,string,ÿØÿ") + (mime-types "image/jpeg") + (thumb-loader "file-jpeg-load-thumb")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-jpeg-load-thumb" 1 + "Loads a thumbnail from a JPEG image" + "Loads a thumbnail from a JPEG image (only if it exists)" + "Mukund Sivaraman , Sven Neumann " + "Mukund Sivaraman , Sven Neumann " + "November 15, 2004" + "" + 0 + (icon icon-name -1 "") + "" + 2 3 + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 0 "thumb-size" "Preferred thumbnail size") + (proc-arg 13 "image" "Thumbnail image") + (proc-arg 0 "image-width" "Width of full-sized image") + (proc-arg 0 "image-height" "Height of full-sized image")) + (proc-def "file-jpeg-save" 1 + "saves files in the JPEG file format" + "saves files in the lossy, widely supported JPEG format" + "Spencer Kimball, Peter Mattis & others" + "Spencer Kimball & Peter Mattis" + "1995-2007" + "JPEG image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "jpg,jpeg,jpe") + (mime-types "image/jpeg")) + "RGB*, GRAY*" + 14 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name of the file to save the image in") + (proc-arg 3 "quality" "Quality of saved image (0 <= quality <= 1)") + (proc-arg 3 "smoothing" "Smoothing factor for saved image (0 <= smoothing <= 1)") + (proc-arg 0 "optimize" "Use optimized tables during Huffman coding (0/1)") + (proc-arg 0 "progressive" "Create progressive JPEG images (0/1)") + (proc-arg 4 "comment" "Image comment") + (proc-arg 0 "subsmp" "Sub-sampling type { 0, 1, 2, 3 } 0 == 4:2:0 (chroma quartered), 1 == 4:2:2 Horizontal (chroma halved), 2 == 4:4:4 (best quality), 3 == 4:2:2 Vertical (chroma halved)") + (proc-arg 0 "baseline" "Force creation of a baseline JPEG (non-baseline JPEGs can't be read by all decoders) (0/1)") + (proc-arg 0 "restart" "Interval of restart markers (in MCU rows, 0 = no restart markers)") + (proc-arg 0 "dct" "DCT method to use { INTEGER (0), FIXED (1), FLOAT (2) }"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-jp2-load/file-jp2-load" 1619534562 + (proc-def "file-jp2-load" 1 + "Loads JPEG 2000 images." + "The JPEG 2000 image loader." + "Mukund Sivaraman" + "Mukund Sivaraman" + "2009" + "JPEG 2000 image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "jp2") + (magics "3,string,\fjP") + (mime-types "image/jp2")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-j2k-load" 1 + "Loads JPEG 2000 codestream." + "Loads JPEG 2000 codestream. If the color space is set to UNKNOWN (0), we will try to guess, which is only possible for few spaces (such as grayscale). Most such calls will fail. You are rather expected to know the color space of your data." + "Jehan" + "Jehan" + "2009" + "JPEG 2000 codestream" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "j2k,j2c,jpc") + (magics "0,string,ÿOÿQ") + (mime-types "image/x-jp2-codestream")) + "" + 4 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 0 "colorspace" "Color space { UNKNOWN (0), GRAYSCALE (1), RGB (2), CMYK (3), YCbCr (4), xvYCC (5) }") + (proc-arg 13 "image" "Output image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-ico/file-ico" 1619534562 + (proc-def "file-ico-load" 1 + "Loads files of Windows ICO file format" + "Loads files of Windows ICO file format" + "Christian Kreibich " + "Christian Kreibich " + "2002" + "Microsoft Windows icon" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "ico") + (magics "0,string,\\000\\001\\000\\000,0,string,\\000\\002\\000\\000") + (mime-types "image/x-ico") + (thumb-loader "file-ico-load-thumb")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-ico-load-thumb" 1 + "Loads a preview from an Windows ICO file" + "" + "Dom Lachowicz, Sven Neumann" + "Sven Neumann " + "2005" + "" + 0 + (icon icon-name -1 "") + "" + 2 3 + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 0 "thumb-size" "Preferred thumbnail size") + (proc-arg 13 "image" "Thumbnail image") + (proc-arg 0 "image-width" "Width of full-sized image") + (proc-arg 0 "image-height" "Height of full-sized image")) + (proc-def "file-ico-save" 1 + "Saves files in Windows ICO file format" + "Saves files in Windows ICO file format" + "Christian Kreibich " + "Christian Kreibich " + "2002" + "Microsoft Windows icon" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "ico") + (mime-types "image/x-ico")) + "*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name entered"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-html-table/file-html-table" 1619534562 + (proc-def "file-gtm-save" 1 + "GIMP Table Magic" + "Allows you to draw an HTML table in GIMP. See help for more info." + "Daniel Dunbar" + "Daniel Dunbar" + "1998" + "HTML table" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "html,htm") + (mime-types "text/html") + (handles-uri)) + "RGB*, GRAY*, INDEXED*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-heif/file-heif" 1619534562 + (has-init)) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-header/file-header" 1619534562 + (proc-def "file-header-save" 1 + "saves files as C unsigned character array" + "FIXME: write help" + "Spencer Kimball & Peter Mattis" + "Spencer Kimball & Peter Mattis" + "1997" + "C source code header" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "h") + (mime-types "text/x-chdr") + (handles-uri)) + "INDEXED, RGB" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name of the file to save the image in"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-glob/file-glob" 1619534562 + (proc-def "file-glob" 1 + "Returns a list of matching filenames" + "This can be useful in scripts and other plug-ins (e.g., batch-conversion). See the glob(7) manpage for more info. Note however that this isn't a full-featured glob implementation. It only handles simple patterns like \"/home/foo/bar/*.jpg\"." + "Sven Neumann" + "Sven Neumann" + "2004" + "" + 0 + (icon icon-name -1 "") + "" + 2 2 + (proc-arg 4 "pattern" "The glob pattern (in UTF-8 encoding)") + (proc-arg 0 "encoding" "Encoding of the returned names: { UTF-8 (0), filename encoding (1) }") + (proc-arg 0 "num-files" "The number of returned names") + (proc-arg 9 "files" "The list of matching names"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-gih/file-gih" 1619534562 + (proc-def "file-gih-save" 1 + "exports images in GIMP brush pipe format" + "This plug-in exports an image in the GIMP brush pipe format. For a colored brush pipe, RGBA layers are used, otherwise the layers should be grayscale masks. The image can be multi-layered, and additionally the layers can be divided into a rectangular array of brushes." + "Tor Lillqvist" + "Tor Lillqvist" + "1999" + "GIMP brush (animated)" + 0 + (icon icon-name -1 "gimp-tool-paintbrush") + (save-proc + (extensions "gih") + (mime-types "image/x-gimp-gih") + (handles-uri)) + "RGB*, GRAY*" + 15 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "uri" "The URI of the file to export the brush pipe in") + (proc-arg 4 "raw-uri" "The URI of the file to export the brush pipe in") + (proc-arg 0 "spacing" "Spacing of the brush") + (proc-arg 4 "description" "Short description of the brush pipe") + (proc-arg 0 "cell-width" "Width of the brush cells") + (proc-arg 0 "cell-height" "Width of the brush cells") + (proc-arg 2 "display-cols" "Display column number") + (proc-arg 2 "display-rows" "Display row number") + (proc-arg 0 "dimension" "Dimension of the brush pipe") + (proc-arg 7 "rank" "Ranks of the dimensions") + (proc-arg 0 "dimension" "Dimension (again)") + (proc-arg 9 "sel" "Selection modes"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-gif-save/file-gif-save" 1619534562 + (proc-def "file-gif-save" 1 + "exports files in Compuserve GIF file format" + "Export a file in Compuserve GIF format, with possible animation, transparency, and comment. To export an animation, operate on a multi-layer file. The plug-in will interpret <50% alpha as transparent. When run non-interactively, the value for the comment is taken from the 'gimp-comment' parasite. " + "Spencer Kimball, Peter Mattis, Adam Moss, David Koblas" + "Spencer Kimball, Peter Mattis, Adam Moss, David Koblas" + "1995-1997" + "GIF image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "gif") + (mime-types "image/gif") + (handles-uri)) + "INDEXED*, GRAY*" + 9 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Image to export") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "uri" "The name of the URI to export the image in") + (proc-arg 4 "raw-uri" "The name of the URI to export the image in") + (proc-arg 0 "interlace" "Try to export as interlaced") + (proc-arg 0 "loop" "(animated gif) loop infinitely") + (proc-arg 0 "default-delay" "(animated gif) Default delay between frames in milliseconds") + (proc-arg 0 "default-dispose" "(animated gif) Default disposal type (0=`don't care`, 1=combine, 2=replace)")) + (proc-def "file-gif-save2" 1 + "exports files in Compuserve GIF file format" + "Export a file in Compuserve GIF format, with possible animation, transparency, and comment. To export an animation, operate on a multi-layer file and give the 'as-animation' parameter as TRUE. The plug-in will interpret <50% alpha as transparent. When run non-interactively, the value for the comment is taken from the 'gimp-comment' parasite. " + "Spencer Kimball, Peter Mattis, Adam Moss, David Koblas" + "Spencer Kimball, Peter Mattis, Adam Moss, David Koblas" + "1995-1997" + "GIF image" + 0 + (icon icon-name -1 "") + "INDEXED*, GRAY*" + 12 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Image to export") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "uri" "The name of the URI to export the image in") + (proc-arg 4 "raw-uri" "The name of the URI to export the image in") + (proc-arg 0 "interlace" "Try to export as interlaced") + (proc-arg 0 "loop" "(animated gif) loop infinitely") + (proc-arg 0 "default-delay" "(animated gif) Default delay between frames in milliseconds") + (proc-arg 0 "default-dispose" "(animated gif) Default disposal type (0=`don't care`, 1=combine, 2=replace)") + (proc-arg 0 "as-animation" "Export GIF as animation?") + (proc-arg 0 "force-delay" "(animated gif) Use specified delay for all frames?") + (proc-arg 0 "force-dispose" "(animated gif) Use specified disposal for all frames?"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-gif-load/file-gif-load" 1619534562 + (proc-def "file-gif-load" 1 + "Loads files of Compuserve GIF file format" + "FIXME: write help for gif_load" + "Spencer Kimball, Peter Mattis, Adam Moss, David Koblas" + "Spencer Kimball, Peter Mattis, Adam Moss, David Koblas" + "1995-2006" + "GIF image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "gif") + (magics "0,string,GIF8") + (mime-types "image/gif") + (thumb-loader "file-gif-load-thumb")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-gif-load-thumb" 1 + "Loads only the first frame of a GIF image, to be used as a thumbnail" + "" + "Sven Neumann" + "Sven Neumann" + "2006" + "" + 0 + (icon icon-name -1 "") + "" + 2 3 + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 0 "thumb-size" "Preferred thumbnail size") + (proc-arg 13 "image" "Output image") + (proc-arg 0 "image-width" "Width of full-sized image") + (proc-arg 0 "image-height" "Height of full-sized image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-gegl/file-gegl" 1619534562 + (proc-def "file-load-rgbe" 1 + "Load files in the RGBE file format" + "This procedure loads images in the RGBE format, using gegl:load" + "Simon Budig" + "Simon Budig" + "2012" + "Radiance RGBE" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "hdr") + (magics "0,string,?#") + (mime-types "image/vnd.radiance")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load.") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-save-rgbe" 1 + "Saves files in the RGBE file format" + "This procedure exports images in the RGBE format, using gegl:save" + "Simon Budig" + "Simon Budig" + "2012" + "Radiance RGBE" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "hdr") + (mime-types "image/vnd.radiance")) + "*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name of the file to save the image in")) + (proc-def "file-exr-save" 1 + "Saves files in the OpenEXR file format" + "This procedure saves images in the OpenEXR format, using gegl:save" + "Simon Budig" + "Simon Budig" + "2012" + "OpenEXR image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "exr") + (mime-types "image/x-exr")) + "*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name of the file to save the image in"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-gbr/file-gbr" 1619534562 + (proc-def "file-gbr-save" 1 + "Exports files in the GIMP brush file format" + "Exports files in the GIMP brush file format" + "Tim Newsome, Jens Lautenbacher, Sven Neumann" + "Tim Newsome, Jens Lautenbacher, Sven Neumann" + "1997-2000" + "GIMP brush" + 0 + (icon icon-name -1 "gimp-tool-paintbrush") + (save-proc + (extensions "gbr") + (mime-types "image/x-gimp-gbr") + (handles-uri)) + "RGB*, GRAY*, INDEXED*" + 7 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "uri" "The URI of the file to export the image in") + (proc-arg 4 "raw-uri" "The URI of the file to export the image in") + (proc-arg 0 "spacing" "Spacing of the brush") + (proc-arg 4 "description" "Short description of the brush"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-fli/file-fli" 1619534562 + (proc-def "file-fli-load" 1 + "load FLI-movies" + "This is an experimantal plug-in to handle FLI movies" + "Jens Ch. Restemeier" + "Jens Ch. Restemeier" + "1997" + "AutoDesk FLIC animation" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "fli,flc") + (mime-types "image/x-flic")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-fli-save" 1 + "export FLI-movies" + "This is an experimantal plug-in to handle FLI movies" + "Jens Ch. Restemeier" + "Jens Ch. Restemeier" + "1997" + "AutoDesk FLIC animation" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "fli,flc") + (mime-types "image/x-flic")) + "INDEXED,GRAY" + 7 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable (unused)") + (proc-arg 4 "filename" "The name of the file to export") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 0 "from-frame" "Export beginning from this frame") + (proc-arg 0 "to-frame" "End exporting with this frame")) + (proc-def "file-fli-info" 1 + "Get information about a Fli movie" + "This is a experimantal plug-in to handle FLI movies" + "Jens Ch. Restemeier" + "Jens Ch. Restemeier" + "1997" + "" + 0 + (icon icon-name -1 "") + "" + 1 3 + (proc-arg 4 "filename" "The name of the file to get info") + (proc-arg 0 "width" "Width of one frame") + (proc-arg 0 "height" "Height of one frame") + (proc-arg 0 "frames" "Number of Frames"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-fits/file-fits" 1619534562 + (proc-def "file-fits-load" 1 + "load file of the FITS file format" + "load file of the FITS file format (Flexible Image Transport System)" + "Peter Kirchgessner" + "Peter Kirchgessner (peter@kirchgessner.net)" + "1997" + "Flexible Image Transport System" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "fit,fits") + (magics "0,string,SIMPLE") + (mime-types "image/x-fits")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-fits-save" 1 + "export file in the FITS file format" + "FITS exporting handles all image types except those with alpha channels." + "Peter Kirchgessner" + "Peter Kirchgessner (peter@kirchgessner.net)" + "1997" + "Flexible Image Transport System" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "fit,fits") + (mime-types "image/x-fits")) + "RGB, GRAY, INDEXED" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "The name of the file to export the image in") + (proc-arg 4 "raw-filename" "The name of the file to export the image in"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-faxg3/file-faxg3" 1619534562 + (proc-def "file-faxg3-load" 1 + "loads g3 fax files" + "This plug-in loads Fax G3 Image files." + "Jochen Friedrich" + "Jochen Friedrich, Gert Doering, Spencer Kimball & Peter Mattis" + "0.6" + "G3 fax image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "g3") + (magics "4,string,Research") + (mime-types "image/g3-fax")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-exr/file-exr" 1619534562 + (proc-def "file-exr-load" 1 + "Loads files in the OpenEXR file format" + "This plug-in loads OpenEXR files. " + "Dominik Ernst , Mukund Sivaraman " + "Dominik Ernst , Mukund Sivaraman " + "0.0.0" + "OpenEXR image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "exr") + (magics "0,long,0x762f3101") + (mime-types "image/x-exr")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-dicom/file-dicom" 1619534562 + (proc-def "file-dicom-load" 1 + "loads files of the dicom file format" + "Load a file in the DICOM standard format.The standard is defined at http://medical.nema.org/. The plug-in currently only supports reading images with uncompressed pixel sections." + "Dov Grobgeld" + "Dov Grobgeld " + "2003" + "DICOM image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "dcm,dicom") + (magics "128,string,DICM") + (mime-types "image/x-dcm")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name of the file to load") + (proc-arg 13 "image" "Output image")) + (proc-def "file-dicom-save" 1 + "Save file in the DICOM file format" + "Save an image in the medical standard DICOM image formats. The standard is defined at http://medical.nema.org/. The file format is defined in section 10 of the standard. The files are saved uncompressed and the compulsory DICOM tags are filled with default dummy values." + "Dov Grobgeld" + "Dov Grobgeld " + "2003" + "Digital Imaging and Communications in Medicine image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "dcm,dicom") + (mime-types "image/x-dcm")) + "RGB, GRAY" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save") + (proc-arg 4 "raw-filename" "The name of the file to save"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-desktop-link/file-desktop-link" 1619534562 + (proc-def "file-desktop-link-load" 1 + "Follows a link to an image in a .desktop file" + "Opens a .desktop file and if it is a link, it asks GIMP to open the file the link points to." + "Sven Neumann" + "Sven Neumann" + "2006" + "Desktop Link" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "desktop")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-dds/file-dds" 1619534562 + (proc-def "file-dds-load" 1 + "Loads files in DDS image format" + "Loads files in DDS image format" + "Shawn Kirst" + "Shawn Kirst" + "2008" + "DDS image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "dds") + (magics "0,string,DDS") + (mime-types "image/dds")) + "" + 5 1 + (proc-arg 0 "run-mode" "Interactive, non-interactive") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 0 "load-mipmaps" "Load mipmaps if present") + (proc-arg 0 "decode-images" "Decode YCoCg/AExp images when detected") + (proc-arg 13 "image" "Output image")) + (proc-def "file-dds-save" 1 + "Saves files in DDS image format" + "Saves files in DDS image format" + "Shawn Kirst" + "Shawn Kirst" + "2008" + "DDS image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "dds") + (mime-types "image/dds")) + "INDEXED, GRAY, RGB" + 18 0 + (proc-arg 0 "run-mode" "Interactive, non-interactive") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image as") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 0 "compression-format" "Compression format (0 = None, 1 = BC1/DXT1, 2 = BC2/DXT3, 3 = BC3/DXT5, 4 = BC3n/DXT5nm, 5 = BC4/ATI1N, 6 = BC5/ATI2N, 7 = RXGB (DXT5), 8 = Alpha Exponent (DXT5), 9 = YCoCg (DXT5), 10 = YCoCg scaled (DXT5))") + (proc-arg 0 "mipmaps" "How to handle mipmaps (0 = No mipmaps, 1 = Generate mipmaps, 2 = Use existing mipmaps (layers)") + (proc-arg 0 "savetype" "How to save the image (0 = selected layer, 1 = cube map, 2 = volume map, 3 = texture array") + (proc-arg 0 "format" "Custom pixel format (0 = default, 1 = R5G6B5, 2 = RGBA4, 3 = RGB5A1, 4 = RGB10A2)") + (proc-arg 0 "transparent-index" "Index of transparent color or -1 to disable (for indexed images only).") + (proc-arg 0 "mipmap-filter" "Filtering to use when generating mipmaps (0 = default, 1 = nearest, 2 = box, 3 = triangle, 4 = quadratic, 5 = bspline, 6 = mitchell, 7 = lanczos, 8 = kaiser)") + (proc-arg 0 "mipmap-wrap" "Wrap mode to use when generating mipmaps (0 = default, 1 = mirror, 2 = repeat, 3 = clamp)") + (proc-arg 0 "gamma-correct" "Use gamma correct mipmap filtering") + (proc-arg 0 "srgb" "Use sRGB colorspace for gamma correction") + (proc-arg 3 "gamma" "Gamma value to use for gamma correction (i.e. 2.2)") + (proc-arg 0 "perceptual-metric" "Use a perceptual error metric during compression") + (proc-arg 0 "preserve-alpha-coverage" "Preserve alpha test converage for alpha channel maps") + (proc-arg 3 "alpha-test-threshold" "Alpha test threshold value for which alpha test converage should be preserved"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-csource/file-csource" 1619534562 + (proc-def "file-csource-save" 1 + "Dump image data in RGB(A) format for C source" + "CSource cannot be run non-interactively." + "Tim Janik" + "Tim Janik" + "1999" + "C source code" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "c") + (mime-types "text/x-csrc") + (handles-uri)) + "*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name of the file to save the image in"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-compressor/file-compressor" 1619534562 + (proc-def "file-gz-load" 1 + "loads files compressed with gzip" + "This procedure loads files in the gzip compressed format." + "Daniel Risacher" + "Daniel Risacher, Spencer Kimball and Peter Mattis" + "1995-1997" + "gzip archive" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "xcf.gz,xcfgz") + (magics "0,string,\037‹") + (mime-types "application/x-gzip")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-gz-save" 1 + "saves files compressed with gzip" + "This procedure saves files in the gzip compressed format." + "Daniel Risacher" + "Daniel Risacher, Spencer Kimball and Peter Mattis" + "1995-1997" + "gzip archive" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "xcf.gz,xcfgz") + (mime-types "application/x-gzip")) + "RGB*, GRAY*, INDEXED*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name entered")) + (proc-def "file-bz2-load" 1 + "loads files compressed with bzip2" + "This procedure loads files in the bzip2 compressed format." + "Daniel Risacher" + "Daniel Risacher, Spencer Kimball and Peter Mattis" + "1995-1997" + "bzip archive" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "xcf.bz2,xcfbz2") + (magics "0,string,BZh") + (mime-types "application/x-bzip")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-bz2-save" 1 + "saves files compressed with bzip2" + "This procedure saves files in the bzip2 compressed format." + "Daniel Risacher" + "Daniel Risacher, Spencer Kimball and Peter Mattis" + "1995-1997" + "bzip archive" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "xcf.bz2,xcfbz2") + (mime-types "application/x-bzip")) + "RGB*, GRAY*, INDEXED*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name entered")) + (proc-def "file-xz-load" 1 + "loads files compressed with xz" + "This procedure loads files in the xz compressed format." + "Daniel Risacher" + "Daniel Risacher, Spencer Kimball and Peter Mattis" + "1995-1997" + "xz archive" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "xcf.xz,xcfxz") + (magics "0,string,ý7zXZ") + (mime-types "application/x-xz")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-xz-save" 1 + "saves files compressed with xz" + "This procedure saves files in the xz compressed format." + "Daniel Risacher" + "Daniel Risacher, Spencer Kimball and Peter Mattis" + "1995-1997" + "xz archive" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "xcf.xz,xcfxz") + (mime-types "application/x-xz")) + "RGB*, GRAY*, INDEXED*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name entered"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-cel/file-cel" 1619534562 + (proc-def "file-cel-load" 1 + "Loads files in KISS CEL file format" + "This plug-in loads individual KISS cell files." + "Nick Lamb" + "Nick Lamb " + "May 1998" + "KISS CEL" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "cel") + (magics "0,string,KiSS\\040")) + "" + 4 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "Filename to load image from") + (proc-arg 4 "raw-filename" "Name entered") + (proc-arg 4 "palette-filename" "Filename to load palette from") + (proc-arg 13 "image" "Output image")) + (proc-def "file-cel-save" 1 + "Exports files in KISS CEL file format" + "This plug-in exports individual KISS cell files." + "Nick Lamb" + "Nick Lamb " + "May 1998" + "KISS CEL" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "cel") + (handles-uri)) + "RGB*, INDEXED*" + 6 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to export") + (proc-arg 4 "filename" "Filename to export image to") + (proc-arg 4 "raw-filename" "Name entered") + (proc-arg 4 "palette-filename" "Filename to save palette to"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/file-bmp/file-bmp" 1619534562 + (proc-def "file-bmp-load" 1 + "Loads files of Windows BMP file format" + "Loads files of Windows BMP file format" + "Alexander Schulz" + "Alexander Schulz" + "1997" + "Windows BMP image" + 0 + (icon icon-name -1 "") + (load-proc + (extensions "bmp") + (magics "0,string,BM") + (mime-types "image/bmp")) + "" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 4 "filename" "The name of the file to load") + (proc-arg 4 "raw-filename" "The name entered") + (proc-arg 13 "image" "Output image")) + (proc-def "file-bmp-save" 1 + "Saves files in Windows BMP file format" + "Saves files in Windows BMP file format" + "Alexander Schulz" + "Alexander Schulz" + "1997" + "Windows BMP image" + 0 + (icon icon-name -1 "") + (save-proc + (extensions "bmp") + (mime-types "image/bmp")) + "INDEXED, GRAY, RGB*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Drawable to save") + (proc-arg 4 "filename" "The name of the file to save the image in") + (proc-arg 4 "raw-filename" "The name entered"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/emboss/emboss" 1619534562 + (proc-def "plug-in-emboss" 1 + "Simulate an image created by embossing" + "Emboss or Bumpmap the given drawable, specifying the angle and elevation for the light source." + "Eric L. Hernes, John Schlag" + "Eric L. Hernes" + "1997" + "_Emboss (legacy)..." + 1 + (menu-path "/Filters/Distorts") + (icon icon-name -1 "") + "RGB*" + 7 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "The Image") + (proc-arg 16 "drawable" "The Drawable") + (proc-arg 3 "azimuth" "The Light Angle (degrees)") + (proc-arg 3 "elevation" "The Elevation Angle (degrees)") + (proc-arg 0 "depth" "The Filter Width") + (proc-arg 0 "emboss" "Emboss or Bumpmap"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/edge-dog/edge-dog" 1619534562 + (proc-def "plug-in-dog" 1 + "Edge detection with control of edge thickness" + "Applies two Gaussian blurs to the drawable, and subtracts the results. This is robust and widely used method for detecting edges." + "Spencer Kimball, Peter Mattis, Sven Neumann, William Skaggs" + "Spencer Kimball, Peter Mattis, Sven Neumann, William Skaggs" + "1995-2004" + "_Difference of Gaussians (legacy)..." + 1 + (menu-path "/Filters/Edge-Detect") + (icon icon-name -1 "") + "RGB*, GRAY*" + 7 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 3 "inner" "Radius of inner gaussian blur (in pixels, > 0.0)") + (proc-arg 3 "outer" "Radius of outer gaussian blur (in pixels, > 0.0)") + (proc-arg 0 "normalize" "Normalize { TRUE, FALSE }") + (proc-arg 0 "invert" "Invert { TRUE, FALSE }"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/destripe/destripe" 1619534562 + (proc-def "plug-in-destripe" 1 + "Remove vertical stripe artifacts from the image" + "This plug-in tries to remove vertical stripes from an image." + "Marc Lehmann " + "Marc Lehmann " + "0.2" + "Des_tripe..." + 1 + (menu-path "/Filters/Enhance") + (icon icon-name -1 "") + "RGB*, GRAY*" + 4 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "avg-width" "Averaging filter width (default = 36)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/despeckle/despeckle" 1619534562 + (proc-def "plug-in-despeckle" 1 + "Remove speckle noise from the image" + "This plug-in selectively performs a median or adaptive box filter on an image." + "Michael Sweet " + "Copyright 1997-1998 by Michael Sweet" + "May 2010" + "Des_peckle..." + 1 + (menu-path "/Filters/Enhance") + (icon icon-name -1 "") + "RGB*, GRAY*" + 7 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "radius" "Filter box radius (default = 3)") + (proc-arg 0 "type" "Filter type { MEDIAN (0), ADAPTIVE (1), RECURSIVE-MEDIAN (2), RECURSIVE-ADAPTIVE (3) }") + (proc-arg 0 "black" "Black level (-1 to 255)") + (proc-arg 0 "white" "White level (0 to 256)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/depth-merge/depth-merge" 1619534562 + (proc-def "plug-in-depth-merge" 1 + "Combine two images using depth maps (z-buffers)" + "Taking as input two full-color, full-alpha images and two corresponding grayscale depth maps, this plug-in combines the images based on which is closer (has a lower depth map value) at each point." + "Sean Cier" + "Sean Cier" + "August 1998" + "_Depth Merge..." + 1 + (menu-path "/Filters/Combine") + (icon icon-name -1 "") + "RGB*, GRAY*" + 11 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "result" "Result") + (proc-arg 16 "source1" "Source 1") + (proc-arg 16 "source2" "Source 2") + (proc-arg 16 "depthMap1" "Depth map 1") + (proc-arg 16 "depthMap2" "Depth map 2") + (proc-arg 3 "overlap" "Overlap") + (proc-arg 3 "offset" "Depth relative offset") + (proc-arg 3 "scale1" "Depth relative scale 1") + (proc-arg 3 "scale2" "Depth relative scale 2"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/decompose/decompose" 1619534562 + (proc-def "plug-in-decompose" 1 + "Decompose an image into separate colorspace components" + "This function creates new gray images with different channel information in each of them" + "Peter Kirchgessner" + "Peter Kirchgessner" + "1997" + "_Decompose..." + 0 + (icon icon-name -1 "") + "RGB*" + 5 4 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 4 "decompose-type" "What to decompose: \"RGB\", \"RGBA\", \"Red\", \"Green\", \"Blue\", \"Alpha\", \"HSV\", \"Hue\", \"Saturation\", \"Value\", \"HSL\", \"Hue (HSL)\", \"Saturation (HSL)\", \"Lightness\", \"CMYK\", \"Cyan\", \"Magenta\", \"Yellow\", \"Black\", \"LAB\", \"LCH\", \"YCbCr_ITU_R470\", \"YCbCr_ITU_R470_256\", \"YCbCr_ITU_R709\", \"YCbCr_ITU_R709_256\"") + (proc-arg 0 "layers-mode" "Create channels as layers in a single image") + (proc-arg 13 "new-image" "Output gray image") + (proc-arg 13 "new-image" "Output gray image (N/A for single channel extract)") + (proc-arg 13 "new-image" "Output gray image (N/A for single channel extract)") + (proc-arg 13 "new-image" "Output gray image (N/A for single channel extract)")) + (proc-def "plug-in-decompose-registered" 1 + "Decompose an image into separate colorspace components" + "This function creates new gray images with different channel information in each of them. Pixels in the foreground color will appear black in all output images. This can be used for things like crop marks that have to show up on all channels." + "Peter Kirchgessner" + "Peter Kirchgessner, Clarence Risher" + "1997" + "_Decompose..." + 1 + (menu-path "/Colors/Components") + (icon icon-name -1 "") + "RGB*" + 5 4 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 4 "decompose-type" "What to decompose: \"RGB\", \"RGBA\", \"Red\", \"Green\", \"Blue\", \"Alpha\", \"HSV\", \"Hue\", \"Saturation\", \"Value\", \"HSL\", \"Hue (HSL)\", \"Saturation (HSL)\", \"Lightness\", \"CMYK\", \"Cyan\", \"Magenta\", \"Yellow\", \"Black\", \"LAB\", \"LCH\", \"YCbCr_ITU_R470\", \"YCbCr_ITU_R470_256\", \"YCbCr_ITU_R709\", \"YCbCr_ITU_R709_256\"") + (proc-arg 0 "layers-mode" "Create channels as layers in a single image") + (proc-arg 13 "new-image" "Output gray image") + (proc-arg 13 "new-image" "Output gray image (N/A for single channel extract)") + (proc-arg 13 "new-image" "Output gray image (N/A for single channel extract)") + (proc-arg 13 "new-image" "Output gray image (N/A for single channel extract)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/curve-bend/curve-bend" 1619534562 + (proc-def "plug-in-curve-bend" 1 + "Bend the image using two control curves" + "This plug-in does bend the active layer If there is a current selection it is copied to floating selection and the curve_bend distortion is done on the floating selection. If work_on_copy parameter is TRUE, the curve_bend distortion is done on a copy of the active layer (or floating selection). The upper and lower edges are bent in shape of 2 spline curves. both (upper and lower) curves are determined by upto 17 points or by 256 Y-Values if curve_type == 1 (freehand mode) If rotation is not 0, the layer is rotated before and rotated back after the bend operation. This enables bending in other directions than vertical. bending usually changes the size of the handled layer. this plug-in sets the offsets of the handled layer to keep its center at the same position" + "Wolfgang Hofer (hof@hotbot.com)" + "Wolfgang Hofer" + "v1.3.18 (2003/08/26)" + "_Curve Bend..." + 1 + (menu-path "/Filters/Distorts") + (icon icon-name -1 "") + "RGB*, GRAY*" + 20 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable (must be a layer without layermask)") + (proc-arg 3 "rotation" "Direction {angle 0 to 360 degree } of the bend effect") + (proc-arg 0 "smoothing" "Smoothing { TRUE, FALSE }") + (proc-arg 0 "antialias" "Antialias { TRUE, FALSE }") + (proc-arg 0 "work-on-copy" "{ TRUE, FALSE } TRUE: copy the drawable and bend the copy") + (proc-arg 0 "curve-type" " { 0, 1 } 0 == smooth (use 17 points), 1 == freehand (use 256 val_y) ") + (proc-arg 0 "argc-upper-point-x" "{2 <= argc <= 17} ") + (proc-arg 8 "upper-point-x" "array of 17 x point_koords { 0.0 <= x <= 1.0 or -1 for unused point }") + (proc-arg 0 "argc-upper-point-y" "{2 <= argc <= 17} ") + (proc-arg 8 "upper-point-y" "array of 17 y point_koords { 0.0 <= y <= 1.0 or -1 for unused point }") + (proc-arg 0 "argc-lower-point-x" "{2 <= argc <= 17} ") + (proc-arg 8 "lower-point-x" "array of 17 x point_koords { 0.0 <= x <= 1.0 or -1 for unused point }") + (proc-arg 0 "argc-lower-point-y" "{2 <= argc <= 17} ") + (proc-arg 8 "lower-point-y" "array of 17 y point_koords { 0.0 <= y <= 1.0 or -1 for unused point }") + (proc-arg 0 "argc-upper-val-y" "{ 256 } ") + (proc-arg 7 "upper-val-y" "array of 256 y freehand koord { 0 <= y <= 255 }") + (proc-arg 0 "argc-lower-val-y" "{ 256 } ") + (proc-arg 7 "lower-val-y" "array of 256 y freehand koord { 0 <= y <= 255 }") + (proc-arg 14 "bent-layer" "the handled layer")) + (proc-def "plug_in_curve_bend_Iterator" 1 + "This procedure calculates the modified values for one iterationstep for the call of plug_in_curve_bend" + "" + "Wolfgang Hofer (hof@hotbot.com)" + "Wolfgang Hofer" + "v1.3.18 (2003/08/26)" + "" + 0 + (icon icon-name -1 "") + "" + 4 0 + (proc-arg 0 "run-mode" "The run mode { RUN-NONINTERACTIVE (1) }") + (proc-arg 0 "total-steps" "total number of steps (# of layers-1 to apply the related plug-in)") + (proc-arg 3 "current-step" "current (for linear iterations this is the layerstack position, otherwise some value in between)") + (proc-arg 0 "len-struct" "length of stored data structure with id is equal to the plug_in proc_name"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/crop-zealous/crop-zealous" 1619534562 + (proc-def "plug-in-zealouscrop" 1 + "Autocrop unused space from edges and middle" + "" + "Adam D. Moss" + "Adam D. Moss" + "1997" + "_Zealous Crop" + 1 + (menu-path "/Image/Crop") + (icon icon-name -1 "") + "RGB*, GRAY*, INDEXED*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/contrast-retinex/contrast-retinex" 1619534562 + (proc-def "plug-in-retinex" 1 + "Enhance contrast using the Retinex method" + "The Retinex Image Enhancement Algorithm is an automatic image enhancement method that enhances a digital image in terms of dynamic range compression, color independence from the spectral distribution of the scene illuminant, and color/lightness rendition." + "Fabien Pelisson" + "Fabien Pelisson" + "2003" + "Retine_x..." + 1 + (menu-path "/Colors/Tone Mapping") + (icon icon-name -1 "") + "RGB*" + 7 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "scale" "Biggest scale value") + (proc-arg 0 "nscales" "Number of scales") + (proc-arg 0 "scales-mode" "Retinex distribution through scales") + (proc-arg 3 "cvar" "Variance value"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/compose/compose" 1619534562 + (proc-def "plug-in-compose" 1 + "Create an image using multiple gray images as color channels" + "This function creates a new image from multiple gray images" + "Peter Kirchgessner" + "Peter Kirchgessner (peter@kirchgessner.net)" + "1997" + "C_ompose..." + 1 + (menu-path "/Colors/Components") + (icon icon-name -1 "") + "GRAY*" + 7 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image1" "First input image") + (proc-arg 16 "drawable" "Input drawable (not used)") + (proc-arg 13 "image2" "Second input image") + (proc-arg 13 "image3" "Third input image") + (proc-arg 13 "image4" "Fourth input image") + (proc-arg 4 "compose-type" "What to compose: \"RGB\", \"RGBA\", \"HSV\", \"HSL\", \"CMYK\", \"LAB\", \"LCH\", \"YCbCr_ITU_R470\", \"YCbCr_ITU_R709\", \"YCbCr_ITU_R470_256\", \"YCbCr_ITU_R709_256\"") + (proc-arg 13 "new-image" "Output image")) + (proc-def "plug-in-drawable-compose" 1 + "Compose an image from multiple drawables of gray images" + "This function creates a new image from multiple drawables of gray images" + "Peter Kirchgessner" + "Peter Kirchgessner (peter@kirchgessner.net)" + "1998" + "" + 0 + (icon icon-name -1 "") + "GRAY*" + 7 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image1" "First input image (not used)") + (proc-arg 16 "drawable1" "First input drawable") + (proc-arg 16 "drawable2" "Second input drawable") + (proc-arg 16 "drawable3" "Third input drawable") + (proc-arg 16 "drawable4" "Fourth input drawable") + (proc-arg 4 "compose-type" "What to compose: \"RGB\", \"RGBA\", \"HSV\", \"HSL\", \"CMYK\", \"LAB\", \"LCH\", \"YCbCr_ITU_R470\", \"YCbCr_ITU_R709\", \"YCbCr_ITU_R470_256\", \"YCbCr_ITU_R709_256\"") + (proc-arg 13 "new-image" "Output image")) + (proc-def "plug-in-recompose" 1 + "Recompose an image that was previously decomposed" + "This function recombines the grayscale layers produced by Decompose into a single RGB or RGBA layer, and replaces the originally decomposed layer with the result." + "Bill Skaggs" + "Bill Skaggs" + "2004" + "R_ecompose" + 1 + (menu-path "/Colors/Components") + (icon icon-name -1 "") + "GRAY*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Image to recompose from") + (proc-arg 16 "drawable" "Not used"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/colormap-remap/colormap-remap" 1619534562 + (proc-def "plug-in-colormap-remap" 1 + "Rearrange the colormap" + "This procedure takes an indexed image and lets you alter the positions of colors in the colormap without visually changing the image." + "Mukund Sivaraman " + "Mukund Sivaraman " + "June 2006" + "R_earrange Colormap..." + 2 + (menu-path "/Colors/Map/Colormap") + (menu-path "") + (icon icon-name -1 "gimp-colormap") + "INDEXED*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "num-colors" "Length of 'map' argument (should be equal to colormap size)") + (proc-arg 7 "map" "Remap array for the colormap")) + (proc-def "plug-in-colormap-swap" 1 + "Swap two colors in the colormap" + "This procedure takes an indexed image and lets you swap the positions of two colors in the colormap without visually changing the image." + "Mukund Sivaraman " + "Mukund Sivaraman " + "June 2006" + "_Swap Colors" + 0 + (icon icon-name -1 "") + "INDEXED*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 2 "index1" "First index in the colormap") + (proc-arg 2 "index2" "Second (other) index in the colormap"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/colorify/colorify" 1619534562 + (proc-def "plug-in-colorify" 1 + "Replace all colors with shades of a specified color" + "Makes an average of the RGB channels and uses it to set the color" + "Francisco Bustamante" + "Francisco Bustamante" + "1.1" + "Colorif_y..." + 0 + (icon icon-name -1 "") + "RGB*" + 4 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 10 "color" "Color to apply"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/color-enhance/color-enhance" 1619534562 + (proc-def "plug-in-color-enhance" 1 + "Stretch color saturation to cover maximum possible range" + "This simple plug-in does an automatic saturation stretch. For each channel in the image, it finds the minimum and maximum values... it uses those values to stretch the individual histograms to the full range. For some images it may do just what you want; for others it may not work that well. This version differs from Contrast Autostretch in that it works in HSV space, and preserves hue." + "Martin Weber" + "Martin Weber" + "1997" + "_Color Enhance (legacy)" + 1 + (menu-path "/Colors/Auto") + (icon icon-name -1 "") + "RGB*, INDEXED*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/color-cube-analyze/color-cube-analyze" 1619534562 + (proc-def "plug-in-ccanalyze" 1 + "Analyze the set of colors in the image" + "Analyze colorcube and print some information about the current image (also displays a color-histogram)" + "robert@experimental.net" + "robert@experimental.net" + "June 20th, 1997" + "Colorcube A_nalysis..." + 1 + (menu-path "/Colors/Info") + (icon icon-name -1 "") + "RGB*, GRAY*, INDEXED*" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "num-colors" "Number of colors in the image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/cml-explorer/cml-explorer" 1619534562 + (proc-def "plug-in-cml-explorer" 1 + "Create abstract Coupled-Map Lattice patterns" + "Make an image of Coupled-Map Lattice (CML). CML is a kind of Cellula Automata on continuous (value) domain. In GIMP_RUN_NONINTERACTIVE, the name of a parameter file is passed as the 4th arg. You can control CML_explorer via parameter file." + "Shuji Narazaki (narazaki@InetQ.or.jp); http://www.inetq.or.jp/~narazaki/TheGIMP/" + "Shuji Narazaki" + "1997" + "CML _Explorer..." + 1 + (menu-path "/Filters/Render/Pattern") + (icon icon-name -1 "") + "RGB*, GRAY*" + 4 0 + (proc-arg 0 "ru--mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (not used)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 4 "parameter-filename" "The name of parameter file. CML_explorer makes an image with its settings."))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/checkerboard/checkerboard" 1619534562 + (proc-def "plug-in-checkerboard" 1 + "Create a checkerboard pattern" + "More here later" + "Brent Burton & the Edward Blevins" + "Brent Burton & the Edward Blevins" + "1997" + "_Checkerboard (legacy)..." + 1 + (menu-path "/Filters/Render/Pattern") + (icon icon-name -1 "") + "RGB*, GRAY*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "check-mode" "Check mode { REGULAR (0), PSYCHOBILY (1) }") + (proc-arg 0 "check-size" "Size of the checks"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/cartoon/cartoon" 1619534562 + (proc-def "plug-in-cartoon" 1 + "Simulate a cartoon by enhancing edges" + "Propagates dark values in an image based on each pixel's relative darkness to a neighboring average. The idea behind this filter is to give the look of a black felt pen drawing subsequently shaded with color. This is achieved by darkening areas of the image which are measured to be darker than a neighborhood average. In this way, sufficiently large shifts in intensity are darkened to black. The rate at which they are darkened to black is determined by the second pct_black parameter. The mask_radius parameter controls the size of the pixel neighborhood over which the average intensity is computed and then compared to each pixel in the neighborhood to decide whether or not to darken it to black. Large values for mask_radius result in very thick black areas bordering the shaded regions of color and much less detail for black areas everywhere including inside regions of color. Small values result in more subtle pen strokes and detail everywhere. Small values for the pct_black make the blend from the color regions to the black border lines smoother and the lines themselves thinner and less noticeable; larger values achieve the opposite effect." + "Spencer Kimball" + "Bit Specialists, Inc." + "2001" + "Ca_rtoon (legacy)..." + 1 + (menu-path "/Filters/Artistic") + (icon icon-name -1 "") + "RGB*, GRAY*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 3 "mask-radius" "Cartoon mask radius (radius of pixel neighborhood)") + (proc-arg 3 "pct-black" "Percentage of darkened pixels to set to black (0.0 - 1.0)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/busy-dialog/busy-dialog" 1619534562 + (proc-def "plug-in-busy-dialog" 1 + "Show a dialog while waiting for an operation to finish" + "Used by GIMP to display a dialog, containing a spinner and a custom message, while waiting for an ongoing operation to finish. Optionally, the dialog may provide a \"Cancel\" button, which can be used to cancel the operation." + "Ell" + "Ell" + "2018" + "" + 0 + (icon icon-name -1 "") + "" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0) }") + (proc-arg 0 "read-fd" "The read file descriptor") + (proc-arg 0 "write-fd" "The write file descriptor") + (proc-arg 4 "message" "The message") + (proc-arg 0 "cancelable" "Whether the dialog is cancelable (TRUE or FALSE)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/border-average/border-average" 1619534562 + (proc-def "plug-in-borderaverage" 1 + "Set foreground to the average color of the image border" + "" + "Philipp Klaus" + "Internet Access AG" + "1998" + "_Border Average..." + 1 + (menu-path "/Colors/Info") + (icon icon-name -1 "") + "RGB*" + 5 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "thickness" "Border size to take in count") + (proc-arg 0 "bucket-exponent" "Bits for bucket size (default=4: 16 Levels)") + (proc-arg 10 "borderaverage" "The average color of the specified border."))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/blur/blur" 1619534562 + (proc-def "plug-in-blur" 1 + "Simple blur, fast but not very strong" + "This plug-in blurs the specified drawable, using a 3x3 blur. Indexed images are not supported." + "Miles O'Neal " + "Miles O'Neal, Spencer Kimball, Peter Mattis, Torsten Martinsen, Brian Degenhardt, Federico Mena Quintero, Stephen Norris, Daniel Cotting" + "1995-1998" + "_Blur" + 0 + (icon icon-name -1 "") + "RGB*, GRAY*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/blinds/blinds" 1619534562 + (proc-def "plug-in-blinds" 1 + "Simulate an image painted on window blinds" + "More here later" + "Andy Thomas" + "Andy Thomas" + "1997" + "_Blinds..." + 0 + (icon icon-name -1 "") + "RGB*, GRAY*" + 7 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image (unused)") + (proc-arg 16 "drawable" "Input drawable") + (proc-arg 0 "angle-dsp" "Angle of Displacement") + (proc-arg 0 "num-segments" "Number of segments in blinds") + (proc-arg 0 "orientation" "The orientation { ORIENTATION-HORIZONTAL (0), ORIENTATION-VERTICAL (1) }") + (proc-arg 0 "bg-transparent" "Background transparent { FALSE, TRUE }"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/animation-play/animation-play" 1619534562 + (proc-def "plug-in-animationplay" 1 + "Preview a GIMP layer-based animation" + "" + "Adam D. Moss " + "Adam D. Moss " + "1997, 1998..." + "_Playback..." + 1 + (menu-path "/Filters/Animation") + (icon icon-name -1 "media-playback-start") + "RGB*, INDEXED*, GRAY*" + 3 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable (unused)"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/animation-optimize/animation-optimize" 1619534562 + (proc-def "plug-in-animationoptimize" 1 + "Modify image to reduce size when saved as GIF animation" + "This procedure applies various optimizations to a GIMP layer-based animation in an attempt to reduce the final file size. If a frame of the animation can use the 'combine' mode, this procedure attempts to maximize the number of ajdacent pixels having the same color, which improves the compression for some image formats such as GIF or MNG." + "Adam D. Moss " + "Adam D. Moss " + "1997-2003" + "Optimize (for _GIF)" + 1 + (menu-path "/Filters/Animation") + (icon icon-name -1 "") + "RGB*, INDEXED*, GRAY*" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable (unused)") + (proc-arg 13 "result" "Resulting image")) + (proc-def "plug-in-animationoptimize-diff" 1 + "Reduce file size where combining layers is possible" + "This procedure applies various optimizations to a GIMP layer-based animation in an attempt to reduce the final file size. If a frame of the animation can use the 'combine' mode, this procedure uses a simple difference between the frames." + "Adam D. Moss " + "Adam D. Moss " + "1997-2001" + "_Optimize (Difference)" + 1 + (menu-path "/Filters/Animation") + (icon icon-name -1 "") + "RGB*, INDEXED*, GRAY*" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable (unused)") + (proc-arg 13 "result" "Resulting image")) + (proc-def "plug-in-animationunoptimize" 1 + "Remove optimization to make editing easier" + "This procedure 'simplifies' a GIMP layer-based animation that has been optimized for animation. This makes editing the animation much easier." + "Adam D. Moss " + "Adam D. Moss " + "1997-2001" + "_Unoptimize" + 1 + (menu-path "/Filters/Animation") + (icon icon-name -1 "") + "RGB*, INDEXED*, GRAY*" + 3 1 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable (unused)") + (proc-arg 13 "result" "Resulting image"))) +(plug-in-def "${gimp_plug_in_dir}/plug-ins/align-layers/align-layers" 1619534562 + (proc-def "plug-in-align-layers" 1 + "Align all visible layers of the image" + "Align visible layers" + "Shuji Narazaki " + "Shuji Narazaki" + "1997" + "Align Visi_ble Layers..." + 1 + (menu-path "/Image/Arrange") + (icon icon-name -1 "") + "RGB*,GRAY*,INDEXED*" + 5 0 + (proc-arg 0 "run-mode" "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }") + (proc-arg 13 "image" "Input image") + (proc-arg 16 "drawable" "Input drawable (not used)") + (proc-arg 0 "link-after-alignment" "Link the visible layers after alignment { TRUE, FALSE }") + (proc-arg 0 "use-bottom" "use the bottom layer as the base of alignment { TRUE, FALSE }"))) + +# end of pluginrc diff --git a/GIMP/2.10/sessionrc b/GIMP/2.10/sessionrc new file mode 100755 index 0000000..302e192 --- /dev/null +++ b/GIMP/2.10/sessionrc @@ -0,0 +1,110 @@ +# GIMP sessionrc +# +# This file takes session-specific info (that is info, you want to keep +# between two GIMP sessions). You are not supposed to edit it manually, but +# of course you can do. The sessionrc will be entirely rewritten every time +# you quit GIMP. If this file isn't found, defaults are used. + +(session-info "toplevel" + (factory-entry "gimp-empty-image-window") + (position 410 370) + (size 620 200)) +(session-info "toplevel" + (factory-entry "gimp-single-image-window") + (position 0 21) + (size 1920 1059) + (open-on-exit) + (aux-info + (left-docks-width "44") + (right-docks-width "350") + (maximized "no")) + (gimp-toolbox + (side left)) + (gimp-dock + (side right) + (book + (current-page 0) + (dockable "gimp-tool-options" + (tab-style automatic) + (aux-info + (show-button-bar "true"))) + (dockable "gimp-font-list" + (tab-style automatic) + (aux-info + (show-button-bar "true")))) + (book + (position 631) + (current-page 0) + (dockable "gimp-layer-list" + (tab-style automatic) + (preview-size 32) + (aux-info + (show-button-bar "true"))) + (dockable "gimp-channel-list" + (tab-style automatic) + (preview-size 32) + (aux-info + (show-button-bar "true")))))) +(session-info "toplevel" + (factory-entry "gimp-image-new-dialog") + (position 884 278)) +(session-info "toplevel" + (factory-entry "gimp-keyboard-shortcuts-dialog") + (position 1431 198) + (size 929 676)) +(session-info "toplevel" + (factory-entry "gimp-input-devices-dialog") + (position 0 497)) +(session-info "toplevel" + (factory-entry "gimp-preferences-dialog") + (position 459 195) + (size 1008 692)) +(session-info "toplevel" + (factory-entry "gimp-file-save-dialog") + (position 115 141) + (size 840 752)) +(session-info "toplevel" + (factory-entry "gimp-file-open-dialog") + (position 278 100) + (size 840 752)) +(session-info "toplevel" + (factory-entry "gimp-file-export-dialog") + (position 823 255) + (size 840 752)) +(session-info "toplevel" + (factory-entry "gimp-module-dialog") + (position 268 330) + (size 671 476)) +(session-info "toplevel" + (factory-entry "gimp-toolbox-color-dialog") + (position 0 0)) +(session-info "toplevel" + (factory-entry "gimp-operation-tool-dialog") + (position 1518 93)) +(session-info "toplevel" + (factory-entry "gimp-threshold-tool-dialog") + (position 467 474)) +(session-info "toplevel" + (factory-entry "gimp-curves-tool-dialog") + (position 1849 92) + (size 446 605)) +(session-info "toplevel" + (factory-entry "gimp-action-search-dialog") + (position 812 260) + (size 983 540) + (monitor 1)) +(session-info "toplevel" + (factory-entry "gimp-levels-tool-dialog") + (position 1635 99) + (size 462 593)) +(session-info "toplevel" + (factory-entry "gimp-brightness-contrast-tool-dialog") + (position 727 139)) + +(hide-docks no) +(single-window-mode yes) +(show-tabs yes) +(tabs-position 0) +(last-tip-shown 0) + +# end of sessionrc diff --git a/GIMP/2.10/tags.xml b/GIMP/2.10/tags.xml new file mode 100755 index 0000000..ad2cb62 --- /dev/null +++ b/GIMP/2.10/tags.xml @@ -0,0 +1,3816 @@ + + + + + redondo + + + + difuso + redondo + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/GIMP/2.10/templaterc b/GIMP/2.10/templaterc new file mode 100755 index 0000000..147ce16 --- /dev/null +++ b/GIMP/2.10/templaterc @@ -0,0 +1,760 @@ +# GIMP templaterc +# +# This file will be entirely rewritten each time you exit. + +(GimpTemplate "Imagem blog" + (width 800) + (height 450) + (unit pixels) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background) + (comment "Created with GIMP")) +(GimpTemplate "640x480" + (width 640) + (height 480) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "800x600" + (width 800) + (height 600) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "1024x768" + (width 1024) + (height 768) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "1600x1200" + (width 1600) + (height 1200) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "A3 (300ppi)" + (width 3508) + (height 4960) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "A4 (300ppi)" + (width 2480) + (height 3508) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "A5 (300ppi)" + (width 1754) + (height 2480) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "A6 (300ppi)" + (width 1240) + (height 1754) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "B4 (300ppi)" + (width 2953) + (height 4169) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "B5 (300ppi)" + (width 2079) + (height 2953) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "B5-Japan (300ppi)" + (width 2150) + (height 3035) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "US-Letter (300ppi)" + (width 2550) + (height 3300) + (unit inches) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "US-Legal (300ppi)" + (width 2550) + (height 4200) + (unit inches) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Toilet paper (US, 300ppi)" + (icon-name "gimp-toilet-paper") + (width 1350) + (height 1350) + (unit inches) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "CD cover (300ppi)" + (icon-name "gtk-cdrom") + (width 1429) + (height 1417) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Floppy label (300ppi)" + (icon-name "gtk-floppy") + (width 825) + (height 825) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Web banner common 468x60" + (icon-name "gimp-web") + (width 468) + (height 60) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Web banner huge 728x90" + (icon-name "gimp-web") + (width 728) + (height 90) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "PAL - 720x576" + (icon-name "gimp-video") + (width 720) + (height 576) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "NTSC - 720x486" + (icon-name "gimp-video") + (width 720) + (height 486) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "A0 (300 ppi)" + (width 9933) + (height 14043) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "A1 (300 ppi)" + (width 7016) + (height 9933) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "A2 (300 ppi)" + (width 4960) + (height 7016) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "A3 (300 ppi)" + (width 3508) + (height 4960) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "A4 (300 ppi)" + (width 2480) + (height 3508) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "A5 (300 ppi)" + (width 1748) + (height 2480) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "A6 (300 ppi)" + (width 1240) + (height 1748) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "A7 (300 ppi)" + (width 874) + (height 1240) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "B4 (300 ppi)" + (width 2953) + (height 4169) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "B5 (300 ppi)" + (width 2079) + (height 2953) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "B5-Japan (300 ppi)" + (width 2150) + (height 3035) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "US Letter (300 ppi)" + (width 2550) + (height 3300) + (unit inches) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "US Legal (300 ppi)" + (width 2550) + (height 4200) + (unit inches) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "88.9×50.8 US Business Card" + (icon-name "gimp-business-card") + (width 1050) + (height 600) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "85×55 Western Europe Business Card" + (icon-name "gimp-business-card") + (width 1004) + (height 650) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "90×50 Eastern Europe Business Card" + (icon-name "gimp-business-card") + (width 1063) + (height 591) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "90×55 Business Card (AU, IN etc.)" + (icon-name "gimp-business-card") + (width 1063) + (height 650) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "87×49 Vistaprint Business Card" + (icon-name "gimp-business-card") + (width 1028) + (height 579) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Toilet paper (US, 300 ppi)" + (icon-name "gimp-toilet-paper") + (width 1350) + (height 1350) + (unit inches) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "CD cover (300 ppi)" + (icon-name "media-optical") + (width 1429) + (height 1417) + (unit millimeters) + (xresolution 300) + (yresolution 300) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Web banner leaderboard 728x90" + (icon-name "gimp-web") + (width 728) + (height 90) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Web banner large rectangle 336×280" + (icon-name "gimp-web") + (width 336) + (height 280) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Web banner medium rectangle 300×250" + (icon-name "gimp-web") + (width 300) + (height 250) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Web banner large mobile 320×100" + (icon-name "gimp-web") + (width 320) + (height 100) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Web banner large skyscraper 300×600" + (icon-name "gimp-web") + (width 300) + (height 600) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "1280×720 (HD 720p)" + (icon-name "gimp-video") + (width 1280) + (height 720) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "1920×1080 (Full HD 1080p)" + (icon-name "gimp-video") + (width 1920) + (height 1080) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "3840x2160 (4K UHD)" + (icon-name "gimp-video") + (width 3840) + (height 2160) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "4096×2160 (Digital Cinema Initiatives 4K)" + (icon-name "gimp-video") + (width 4096) + (height 2160) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "1366×768 HD" + (icon-name "gimp-display") + (width 1366) + (height 768) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "1920×1200 WUXGA" + (icon-name "gimp-display") + (width 1920) + (height 1200) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "2560x1600 WQXGA" + (icon-name "gimp-display") + (width 2560) + (height 1600) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "3840×2160 4K UHD" + (icon-name "gimp-display") + (width 3840) + (height 2160) + (unit pixels) + (xresolution 72) + (yresolution 72) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Apple iPhone 6/7" + (icon-name "gimp-smartphone") + (width 750) + (height 1334) + (unit millimeters) + (xresolution 326) + (yresolution 326) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Apple iPhone 5" + (icon-name "gimp-smartphone") + (width 640) + (height 1136) + (unit millimeters) + (xresolution 326) + (yresolution 326) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Apple iPad 3&4, Air" + (icon-name "gimp-smartphone") + (width 2048) + (height 2732) + (unit millimeters) + (xresolution 264) + (yresolution 264) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Samsung Galaxy S6" + (icon-name "gimp-smartphone") + (width 1440) + (height 2560) + (unit millimeters) + (xresolution 577) + (yresolution 577) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Samsung Galaxy S5" + (icon-name "gimp-smartphone") + (width 1080) + (height 1920) + (unit millimeters) + (xresolution 360) + (yresolution 360) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) +(GimpTemplate "Samsung Galaxy Tab 2&3 10,1 inch" + (icon-name "gimp-smartphone") + (width 800) + (height 1280) + (unit millimeters) + (xresolution 149) + (yresolution 149) + (resolution-unit inches) + (image-type rgb) + (precision u8-gamma) + (color-managed yes) + (color-profile NULL) + (fill-type background)) + +# end of templaterc diff --git a/GIMP/2.10/themerc b/GIMP/2.10/themerc new file mode 100755 index 0000000..8c6bf9d --- /dev/null +++ b/GIMP/2.10/themerc @@ -0,0 +1,17 @@ +# GIMP themerc +# +# This file is written on GIMP startup and on every theme change. +# It is NOT supposed to be edited manually. Edit your personal +# gtkrc file instead (/home/train/.config/GIMP/2.10/gtkrc). + +style "gimp-spin-scale-style" +{ + GimpSpinScale::compact = 1 +} + +class "GimpSpinScale" style "gimp-spin-scale-style" + +include "/usr/share/gimp/2.0/themes/System/gtkrc" +include "/etc/gimp/2.0/gtkrc" + +# end of themerc diff --git a/GIMP/2.10/tool-options/gimp-airbrush-tool b/GIMP/2.10/tool-options/gimp-airbrush-tool new file mode 100644 index 0000000..dd24ff6 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-airbrush-tool @@ -0,0 +1,12 @@ +# GIMP gimp-airbrush-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush "2. Hardness 100") +(dynamics "Dynamics Off") +(gradient "FG to BG (RGB)") +(palette "Standard") +(brush-size 16) +(brush-force 0.46999999999999997) +(gradient-reverse yes) + +# end of gimp-airbrush-tool options diff --git a/GIMP/2.10/tool-options/gimp-align-tool b/GIMP/2.10/tool-options/gimp-align-tool new file mode 100644 index 0000000..9cd2db9 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-align-tool @@ -0,0 +1,5 @@ +# GIMP gimp-align-tool options + +(align-reference image) + +# end of gimp-align-tool options diff --git a/GIMP/2.10/tool-options/gimp-brightness-contrast-tool b/GIMP/2.10/tool-options/gimp-brightness-contrast-tool new file mode 100644 index 0000000..d925219 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-brightness-contrast-tool @@ -0,0 +1,5 @@ +# GIMP gimp-brightness-contrast-tool options + +(blending-options-expanded yes) + +# end of gimp-brightness-contrast-tool options diff --git a/GIMP/2.10/tool-options/gimp-bucket-fill-tool b/GIMP/2.10/tool-options/gimp-bucket-fill-tool new file mode 100644 index 0000000..4d38596 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-bucket-fill-tool @@ -0,0 +1,8 @@ +# GIMP gimp-bucket-fill-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(pattern "Pine") +(brush-size 51) +(brush-hardness 0.5) + +# end of gimp-bucket-fill-tool options diff --git a/GIMP/2.10/tool-options/gimp-by-color-select-tool b/GIMP/2.10/tool-options/gimp-by-color-select-tool new file mode 100644 index 0000000..d71d187 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-by-color-select-tool @@ -0,0 +1,7 @@ +# GIMP gimp-by-color-select-tool options + +(feather yes) +(feather-radius 10.5) +(sample-merged yes) + +# end of gimp-by-color-select-tool options diff --git a/GIMP/2.10/tool-options/gimp-cage-tool b/GIMP/2.10/tool-options/gimp-cage-tool new file mode 100644 index 0000000..70074a2 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-cage-tool @@ -0,0 +1,4 @@ +# GIMP gimp-cage-tool options + + +# end of gimp-cage-tool options diff --git a/GIMP/2.10/tool-options/gimp-clone-tool b/GIMP/2.10/tool-options/gimp-clone-tool new file mode 100644 index 0000000..0451ece --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-clone-tool @@ -0,0 +1,11 @@ +# GIMP gimp-clone-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush "2. Hardness 100") +(dynamics "Dynamics Off") +(pattern "Pine") +(palette "Standard") +(brush-size 16) +(brush-force 0.46999999999999997) + +# end of gimp-clone-tool options diff --git a/GIMP/2.10/tool-options/gimp-color-picker-tool b/GIMP/2.10/tool-options/gimp-color-picker-tool new file mode 100644 index 0000000..31912ce --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-color-picker-tool @@ -0,0 +1,5 @@ +# GIMP gimp-color-picker-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) + +# end of gimp-color-picker-tool options diff --git a/GIMP/2.10/tool-options/gimp-convolve-tool b/GIMP/2.10/tool-options/gimp-convolve-tool new file mode 100644 index 0000000..ce628b5 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-convolve-tool @@ -0,0 +1,11 @@ +# GIMP gimp-convolve-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush "2. Hardness 100") +(dynamics "Dynamics Off") +(palette "Standard") +(brush-size 16) +(brush-force 0.46999999999999997) +(rate 37.899999999999999) + +# end of gimp-convolve-tool options diff --git a/GIMP/2.10/tool-options/gimp-crop-tool b/GIMP/2.10/tool-options/gimp-crop-tool new file mode 100644 index 0000000..00f46d4 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-crop-tool @@ -0,0 +1,10 @@ +# GIMP gimp-crop-tool options + +(aspect-denominator 1200) +(aspect-numerator 1600) +(desired-fixed-size-height 0) +(desired-fixed-size-width 0) +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(pattern "Pine") + +# end of gimp-crop-tool options diff --git a/GIMP/2.10/tool-options/gimp-curves-tool b/GIMP/2.10/tool-options/gimp-curves-tool new file mode 100644 index 0000000..b7a332b --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-curves-tool @@ -0,0 +1,4 @@ +# GIMP gimp-curves-tool options + + +# end of gimp-curves-tool options diff --git a/GIMP/2.10/tool-options/gimp-dodge-burn-tool b/GIMP/2.10/tool-options/gimp-dodge-burn-tool new file mode 100644 index 0000000..84c06bb --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-dodge-burn-tool @@ -0,0 +1,10 @@ +# GIMP gimp-dodge-burn-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush "2. Hardness 100") +(dynamics "Dynamics Off") +(palette "Standard") +(brush-size 16) +(brush-force 0.46999999999999997) + +# end of gimp-dodge-burn-tool options diff --git a/GIMP/2.10/tool-options/gimp-ellipse-select-tool b/GIMP/2.10/tool-options/gimp-ellipse-select-tool new file mode 100644 index 0000000..31c90ad --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-ellipse-select-tool @@ -0,0 +1,5 @@ +# GIMP gimp-ellipse-select-tool options + +(fixed-rule-active yes) + +# end of gimp-ellipse-select-tool options diff --git a/GIMP/2.10/tool-options/gimp-eraser-tool b/GIMP/2.10/tool-options/gimp-eraser-tool new file mode 100644 index 0000000..2c1ba49 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-eraser-tool @@ -0,0 +1,11 @@ +# GIMP gimp-eraser-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush "2. Hardness 100") +(dynamics "Dynamics Off") +(palette "Standard") +(brush-size 16) +(brush-force 0.46999999999999997) +(application-mode incremental) + +# end of gimp-eraser-tool options diff --git a/GIMP/2.10/tool-options/gimp-flip-tool b/GIMP/2.10/tool-options/gimp-flip-tool new file mode 100644 index 0000000..da59d2d --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-flip-tool @@ -0,0 +1,5 @@ +# GIMP gimp-flip-tool options + +(flip-type vertical) + +# end of gimp-flip-tool options diff --git a/GIMP/2.10/tool-options/gimp-foreground-select-tool b/GIMP/2.10/tool-options/gimp-foreground-select-tool new file mode 100644 index 0000000..474bba6 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-foreground-select-tool @@ -0,0 +1,5 @@ +# GIMP gimp-foreground-select-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) + +# end of gimp-foreground-select-tool options diff --git a/GIMP/2.10/tool-options/gimp-free-select-tool b/GIMP/2.10/tool-options/gimp-free-select-tool new file mode 100644 index 0000000..86b6ab3 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-free-select-tool @@ -0,0 +1,4 @@ +# GIMP gimp-free-select-tool options + + +# end of gimp-free-select-tool options diff --git a/GIMP/2.10/tool-options/gimp-fuzzy-select-tool b/GIMP/2.10/tool-options/gimp-fuzzy-select-tool new file mode 100644 index 0000000..02d86ac --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-fuzzy-select-tool @@ -0,0 +1,6 @@ +# GIMP gimp-fuzzy-select-tool options + +(feather yes) +(draw-mask yes) + +# end of gimp-fuzzy-select-tool options diff --git a/GIMP/2.10/tool-options/gimp-gegl-tool b/GIMP/2.10/tool-options/gimp-gegl-tool new file mode 100644 index 0000000..f085e5f --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-gegl-tool @@ -0,0 +1,4 @@ +# GIMP gimp-gegl-tool options + + +# end of gimp-gegl-tool options diff --git a/GIMP/2.10/tool-options/gimp-gradient-tool b/GIMP/2.10/tool-options/gimp-gradient-tool new file mode 100644 index 0000000..9abeae7 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-gradient-tool @@ -0,0 +1,10 @@ +# GIMP gimp-gradient-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(gradient "FG to BG (RGB)") +(brush-size 51) +(brush-spacing 0.050000000000000003) +(brush-hardness 0.25) +(gradient-reverse yes) + +# end of gimp-gradient-tool options diff --git a/GIMP/2.10/tool-options/gimp-handle-transform-tool b/GIMP/2.10/tool-options/gimp-handle-transform-tool new file mode 100644 index 0000000..a23ed42 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-handle-transform-tool @@ -0,0 +1,4 @@ +# GIMP gimp-handle-transform-tool options + + +# end of gimp-handle-transform-tool options diff --git a/GIMP/2.10/tool-options/gimp-heal-tool b/GIMP/2.10/tool-options/gimp-heal-tool new file mode 100644 index 0000000..73f9bde --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-heal-tool @@ -0,0 +1,10 @@ +# GIMP gimp-heal-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush "2. Hardness 100") +(dynamics "Dynamics Off") +(palette "Standard") +(brush-size 16) +(brush-force 0.46999999999999997) + +# end of gimp-heal-tool options diff --git a/GIMP/2.10/tool-options/gimp-ink-tool b/GIMP/2.10/tool-options/gimp-ink-tool new file mode 100644 index 0000000..29c15d2 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-ink-tool @@ -0,0 +1,9 @@ +# GIMP gimp-ink-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush-size 51) +(brush-hardness 0.5) +(use-smoothing yes) +(size 4) + +# end of gimp-ink-tool options diff --git a/GIMP/2.10/tool-options/gimp-iscissors-tool b/GIMP/2.10/tool-options/gimp-iscissors-tool new file mode 100644 index 0000000..fb42baf --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-iscissors-tool @@ -0,0 +1,4 @@ +# GIMP gimp-iscissors-tool options + + +# end of gimp-iscissors-tool options diff --git a/GIMP/2.10/tool-options/gimp-levels-tool b/GIMP/2.10/tool-options/gimp-levels-tool new file mode 100644 index 0000000..04c0f93 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-levels-tool @@ -0,0 +1,4 @@ +# GIMP gimp-levels-tool options + + +# end of gimp-levels-tool options diff --git a/GIMP/2.10/tool-options/gimp-measure-tool b/GIMP/2.10/tool-options/gimp-measure-tool new file mode 100644 index 0000000..dbc4317 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-measure-tool @@ -0,0 +1,5 @@ +# GIMP gimp-measure-tool options + +(interpolation linear) + +# end of gimp-measure-tool options diff --git a/GIMP/2.10/tool-options/gimp-move-tool b/GIMP/2.10/tool-options/gimp-move-tool new file mode 100644 index 0000000..b9721a8 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-move-tool @@ -0,0 +1,4 @@ +# GIMP gimp-move-tool options + + +# end of gimp-move-tool options diff --git a/GIMP/2.10/tool-options/gimp-mypaint-brush-tool b/GIMP/2.10/tool-options/gimp-mypaint-brush-tool new file mode 100644 index 0000000..8f2fdc1 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-mypaint-brush-tool @@ -0,0 +1,10 @@ +# GIMP gimp-mypaint-brush-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(mybrush "100% Opaque") +(brush-size 51) +(brush-hardness 0.5) +(radius 3.0099999999999998) +(hardness 0.94999999999999996) + +# end of gimp-mypaint-brush-tool options diff --git a/GIMP/2.10/tool-options/gimp-offset-tool b/GIMP/2.10/tool-options/gimp-offset-tool new file mode 100644 index 0000000..5a30253 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-offset-tool @@ -0,0 +1,4 @@ +# GIMP gimp-offset-tool options + + +# end of gimp-offset-tool options diff --git a/GIMP/2.10/tool-options/gimp-operation-tool b/GIMP/2.10/tool-options/gimp-operation-tool new file mode 100644 index 0000000..bb04f98 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-operation-tool @@ -0,0 +1,5 @@ +# GIMP gimp-operation-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) + +# end of gimp-operation-tool options diff --git a/GIMP/2.10/tool-options/gimp-paintbrush-tool b/GIMP/2.10/tool-options/gimp-paintbrush-tool new file mode 100644 index 0000000..753c6ee --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-paintbrush-tool @@ -0,0 +1,12 @@ +# GIMP gimp-paintbrush-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush "2. Hardness 100") +(dynamics "Dynamics Off") +(gradient "FG to BG (RGB)") +(palette "Standard") +(brush-size 16) +(brush-force 0.46999999999999997) +(gradient-reverse yes) + +# end of gimp-paintbrush-tool options diff --git a/GIMP/2.10/tool-options/gimp-pencil-tool b/GIMP/2.10/tool-options/gimp-pencil-tool new file mode 100644 index 0000000..19e75d7 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-pencil-tool @@ -0,0 +1,12 @@ +# GIMP gimp-pencil-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush "2. Hardness 100") +(dynamics "Dynamics Off") +(gradient "FG to BG (RGB)") +(palette "Standard") +(brush-size 16) +(brush-force 0.46999999999999997) +(gradient-reverse yes) + +# end of gimp-pencil-tool options diff --git a/GIMP/2.10/tool-options/gimp-perspective-clone-tool b/GIMP/2.10/tool-options/gimp-perspective-clone-tool new file mode 100644 index 0000000..f5ecd0b --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-perspective-clone-tool @@ -0,0 +1,11 @@ +# GIMP gimp-perspective-clone-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush "2. Hardness 100") +(dynamics "Dynamics Off") +(pattern "Pine") +(palette "Standard") +(brush-size 16) +(brush-force 0.46999999999999997) + +# end of gimp-perspective-clone-tool options diff --git a/GIMP/2.10/tool-options/gimp-perspective-tool b/GIMP/2.10/tool-options/gimp-perspective-tool new file mode 100644 index 0000000..3a21bdc --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-perspective-tool @@ -0,0 +1,4 @@ +# GIMP gimp-perspective-tool options + + +# end of gimp-perspective-tool options diff --git a/GIMP/2.10/tool-options/gimp-rect-select-tool b/GIMP/2.10/tool-options/gimp-rect-select-tool new file mode 100644 index 0000000..7c92013 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-rect-select-tool @@ -0,0 +1,5 @@ +# GIMP gimp-rect-select-tool options + +(corner-radius 46.200000000000003) + +# end of gimp-rect-select-tool options diff --git a/GIMP/2.10/tool-options/gimp-rotate-tool b/GIMP/2.10/tool-options/gimp-rotate-tool new file mode 100644 index 0000000..ddd84c8 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-rotate-tool @@ -0,0 +1,5 @@ +# GIMP gimp-rotate-tool options + +(interpolation linear) + +# end of gimp-rotate-tool options diff --git a/GIMP/2.10/tool-options/gimp-scale-tool b/GIMP/2.10/tool-options/gimp-scale-tool new file mode 100644 index 0000000..a947140 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-scale-tool @@ -0,0 +1,5 @@ +# GIMP gimp-scale-tool options + +(interpolation linear) + +# end of gimp-scale-tool options diff --git a/GIMP/2.10/tool-options/gimp-shear-tool b/GIMP/2.10/tool-options/gimp-shear-tool new file mode 100644 index 0000000..b1cf8f8 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-shear-tool @@ -0,0 +1,4 @@ +# GIMP gimp-shear-tool options + + +# end of gimp-shear-tool options diff --git a/GIMP/2.10/tool-options/gimp-smudge-tool b/GIMP/2.10/tool-options/gimp-smudge-tool new file mode 100644 index 0000000..a20b28e --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-smudge-tool @@ -0,0 +1,12 @@ +# GIMP gimp-smudge-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush "2. Hardness 100") +(dynamics "Dynamics Off") +(gradient "FG to BG (RGB)") +(palette "Standard") +(brush-size 16) +(brush-force 0.46999999999999997) +(gradient-reverse yes) + +# end of gimp-smudge-tool options diff --git a/GIMP/2.10/tool-options/gimp-text-tool b/GIMP/2.10/tool-options/gimp-text-tool new file mode 100644 index 0000000..4bafcbf --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-text-tool @@ -0,0 +1,10 @@ +# GIMP gimp-text-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(palette "Standard") +(font "Standard Symbols PS") +(font-size 25) +(hint-style full) +(justify center) + +# end of gimp-text-tool options diff --git a/GIMP/2.10/tool-options/gimp-threshold-tool b/GIMP/2.10/tool-options/gimp-threshold-tool new file mode 100644 index 0000000..f114556 --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-threshold-tool @@ -0,0 +1,4 @@ +# GIMP gimp-threshold-tool options + + +# end of gimp-threshold-tool options diff --git a/GIMP/2.10/tool-options/gimp-unified-transform-tool b/GIMP/2.10/tool-options/gimp-unified-transform-tool new file mode 100644 index 0000000..c84224d --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-unified-transform-tool @@ -0,0 +1,4 @@ +# GIMP gimp-unified-transform-tool options + + +# end of gimp-unified-transform-tool options diff --git a/GIMP/2.10/tool-options/gimp-vector-tool b/GIMP/2.10/tool-options/gimp-vector-tool new file mode 100644 index 0000000..4d6489d --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-vector-tool @@ -0,0 +1,10 @@ +# GIMP gimp-vector-tool options + +(foreground (color-rgb 0.073913043478260887 0.073913043478260887 0.073913043478260887)) +(brush "2. Hardness 100") +(dynamics "Dynamics Off") +(pattern "Pine") +(gradient "FG to BG (RGB)") +(palette "Standard") + +# end of gimp-vector-tool options diff --git a/GIMP/2.10/tool-options/gimp-warp-tool b/GIMP/2.10/tool-options/gimp-warp-tool new file mode 100644 index 0000000..e837f9e --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-warp-tool @@ -0,0 +1,4 @@ +# GIMP gimp-warp-tool options + + +# end of gimp-warp-tool options diff --git a/GIMP/2.10/tool-options/gimp-zoom-tool b/GIMP/2.10/tool-options/gimp-zoom-tool new file mode 100644 index 0000000..316363e --- /dev/null +++ b/GIMP/2.10/tool-options/gimp-zoom-tool @@ -0,0 +1,4 @@ +# GIMP gimp-zoom-tool options + + +# end of gimp-zoom-tool options diff --git a/GIMP/2.10/toolrc b/GIMP/2.10/toolrc new file mode 100755 index 0000000..6d064c9 --- /dev/null +++ b/GIMP/2.10/toolrc @@ -0,0 +1,185 @@ +# GIMP toolrc + +(file-version 1) + +(GimpToolGroup "tool group" + (visible yes) + (active-tool "gimp-move-tool") + (children + (GimpToolInfo "gimp-move-tool" + (icon-name "gimp-tool-move") + (visible yes)) + (GimpToolInfo "gimp-align-tool" + (icon-name "gimp-tool-align") + (visible yes)))) +(GimpToolGroup "tool group" + (visible yes) + (active-tool "gimp-rect-select-tool") + (children + (GimpToolInfo "gimp-rect-select-tool" + (icon-name "gimp-tool-rect-select") + (visible yes)) + (GimpToolInfo "gimp-ellipse-select-tool" + (icon-name "gimp-tool-ellipse-select") + (visible yes)))) +(GimpToolGroup "tool group" + (visible yes) + (active-tool "gimp-free-select-tool") + (children + (GimpToolInfo "gimp-free-select-tool" + (icon-name "gimp-tool-free-select") + (visible yes)) + (GimpToolInfo "gimp-iscissors-tool" + (icon-name "gimp-tool-iscissors") + (visible yes)) + (GimpToolInfo "gimp-foreground-select-tool" + (icon-name "gimp-tool-foreground-select") + (visible yes)))) +(GimpToolGroup "tool group" + (visible yes) + (active-tool "gimp-fuzzy-select-tool") + (children + (GimpToolInfo "gimp-fuzzy-select-tool" + (icon-name "gimp-tool-fuzzy-select") + (visible yes)) + (GimpToolInfo "gimp-by-color-select-tool" + (icon-name "gimp-tool-by-color-select") + (visible yes)))) +(GimpToolInfo "gimp-crop-tool" + (icon-name "gimp-tool-crop") + (visible yes)) +(GimpToolGroup "tool group" + (visible yes) + (active-tool "gimp-scale-tool") + (children + (GimpToolInfo "gimp-unified-transform-tool" + (icon-name "gimp-tool-unified-transform") + (visible yes)) + (GimpToolInfo "gimp-rotate-tool" + (icon-name "gimp-tool-rotate") + (visible yes)) + (GimpToolInfo "gimp-scale-tool" + (icon-name "gimp-tool-scale") + (visible yes)) + (GimpToolInfo "gimp-shear-tool" + (icon-name "gimp-tool-shear") + (visible yes)) + (GimpToolInfo "gimp-flip-tool" + (icon-name "gimp-tool-flip") + (visible yes)) + (GimpToolInfo "gimp-perspective-tool" + (icon-name "gimp-tool-perspective") + (visible yes)) + (GimpToolInfo "gimp-transform-3d-tool" + (icon-name "gimp-tool-transform-3d") + (visible yes)) + (GimpToolInfo "gimp-handle-transform-tool" + (icon-name "gimp-tool-handle-transform") + (visible yes)))) +(GimpToolGroup "tool group" + (visible yes) + (active-tool "gimp-warp-tool") + (children + (GimpToolInfo "gimp-warp-tool" + (icon-name "gimp-tool-warp") + (visible yes)) + (GimpToolInfo "gimp-cage-tool" + (icon-name "gimp-tool-cage") + (visible yes)))) +(GimpToolGroup "tool group" + (visible yes) + (active-tool "gimp-bucket-fill-tool") + (children + (GimpToolInfo "gimp-bucket-fill-tool" + (icon-name "gimp-tool-bucket-fill") + (visible yes)) + (GimpToolInfo "gimp-gradient-tool" + (icon-name "gimp-tool-gradient") + (visible yes)))) +(GimpToolGroup "tool group" + (visible yes) + (active-tool "gimp-paintbrush-tool") + (children + (GimpToolInfo "gimp-paintbrush-tool" + (icon-name "gimp-tool-paintbrush") + (visible yes)) + (GimpToolInfo "gimp-pencil-tool" + (icon-name "gimp-tool-pencil") + (visible yes)) + (GimpToolInfo "gimp-airbrush-tool" + (icon-name "gimp-tool-airbrush") + (visible yes)) + (GimpToolInfo "gimp-ink-tool" + (icon-name "gimp-tool-ink") + (visible yes)) + (GimpToolInfo "gimp-mypaint-brush-tool" + (icon-name "gimp-tool-mypaint-brush") + (visible yes)))) +(GimpToolInfo "gimp-eraser-tool" + (icon-name "gimp-tool-eraser") + (visible yes)) +(GimpToolGroup "tool group" + (visible yes) + (active-tool "gimp-clone-tool") + (children + (GimpToolInfo "gimp-clone-tool" + (icon-name "gimp-tool-clone") + (visible yes)) + (GimpToolInfo "gimp-perspective-clone-tool" + (icon-name "gimp-tool-perspective-clone") + (visible yes)) + (GimpToolInfo "gimp-heal-tool" + (icon-name "gimp-tool-heal") + (visible yes)))) +(GimpToolGroup "tool group" + (visible yes) + (active-tool "gimp-convolve-tool") + (children + (GimpToolInfo "gimp-smudge-tool" + (icon-name "gimp-tool-smudge") + (visible yes)) + (GimpToolInfo "gimp-convolve-tool" + (icon-name "gimp-tool-blur") + (visible yes)) + (GimpToolInfo "gimp-dodge-burn-tool" + (icon-name "gimp-tool-dodge") + (visible yes)))) +(GimpToolInfo "gimp-vector-tool" + (icon-name "gimp-tool-path") + (visible yes)) +(GimpToolInfo "gimp-text-tool" + (icon-name "gimp-tool-text") + (visible yes)) +(GimpToolGroup "tool group" + (visible yes) + (active-tool "gimp-color-picker-tool") + (children + (GimpToolInfo "gimp-color-picker-tool" + (icon-name "gimp-tool-color-picker") + (visible yes)) + (GimpToolInfo "gimp-measure-tool" + (icon-name "gimp-tool-measure") + (visible yes)))) +(GimpToolInfo "gimp-zoom-tool" + (icon-name "gimp-tool-zoom") + (visible yes)) +(GimpToolInfo "gimp-brightness-contrast-tool" + (icon-name "gimp-tool-brightness-contrast") + (visible no)) +(GimpToolInfo "gimp-threshold-tool" + (icon-name "gimp-tool-threshold") + (visible no)) +(GimpToolInfo "gimp-levels-tool" + (icon-name "gimp-tool-levels") + (visible no)) +(GimpToolInfo "gimp-curves-tool" + (icon-name "gimp-tool-curves") + (visible no)) +(GimpToolInfo "gimp-offset-tool" + (icon-name "gimp-tool-offset") + (visible no)) +(GimpToolInfo "gimp-gegl-tool" + (icon-name "gimp-gegl") + (visible no)) + +# end of toolrc diff --git a/GIMP/2.10/unitrc b/GIMP/2.10/unitrc new file mode 100755 index 0000000..9883ee8 --- /dev/null +++ b/GIMP/2.10/unitrc @@ -0,0 +1,51 @@ +# GIMP units +# +# This file contains the user unit database. You can edit this list with the +# unit editor. You are not supposed to edit it manually, but of course you +# can do. +# This file will be entirely rewritten each time you exit. + +(unit-info "centimeters" + (factor 2.54) + (digits 2) + (symbol "cm") + (abbreviation "cm") + (singular "centimeter") + (plural "centimeters")) +(unit-info "meters" + (factor 0.025399999999999999) + (digits 4) + (symbol "m") + (abbreviation "m") + (singular "meter") + (plural "meters")) +(unit-info "feet" + (factor 0.083333000000000004) + (digits 4) + (symbol "'") + (abbreviation "ft") + (singular "foot") + (plural "feet")) +(unit-info "yards" + (factor 0.027778000000000001) + (digits 4) + (symbol "yd") + (abbreviation "yd") + (singular "yard") + (plural "yards")) +(unit-info "typogr. points" + (factor 72.269999999999996) + (digits 0) + (symbol "tpt") + (abbreviation "tpt") + (singular "typogr. point") + (plural "typogr. points")) +(unit-info "typogr. picas" + (factor 6.0225) + (digits 1) + (symbol "tpc") + (abbreviation "tpc") + (singular "typogr. pica") + (plural "typogr. picas")) + +# end of units diff --git a/README.md b/README.md new file mode 100644 index 0000000..1188289 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +collection of various dotfiles that i've tweaked over the years diff --git a/Xmodmap b/Xmodmap new file mode 100644 index 0000000..653595f --- /dev/null +++ b/Xmodmap @@ -0,0 +1,6 @@ +clear lock +clear control +!clear XF86Sleep +keycode 66 = Control_L +keycode 37 = Caps_Lock +add control = Control_L Control_R diff --git a/Xresources b/Xresources new file mode 100644 index 0000000..4fd0499 --- /dev/null +++ b/Xresources @@ -0,0 +1,51 @@ +!! Transparency (0-1): +!!*.alpha: 0.8 + +!! Set a default font and font size as below: +!!fo!! Transparency (0-1): +!!alpha: 0.8 + +!! Set a default font and font size as below: +urxvt*font: "JetBrainsMonoMedium Nerd Font:pixelsize=14" +!!Xcursor.size: 30 + +!! Nord +#define nord0 #2E3440 +#define nord1 #3B4252 +#define nord2 #434C5E +#define nord3 #4C566A +#define nord4 #D8DEE9 +#define nord5 #E5E9F0 +#define nord6 #ECEFF4 +#define nord7 #8FBCBB +#define nord8 #88C0D0 +#define nord9 #81A1C1 +#define nord10 #5E81AC +#define nord11 #BF616A +#define nord12 #D08770 +#define nord13 #EBCB8B +#define nord14 #A3BE8C +#define nord15 #B48EAD + +*.foreground: nord4 +*.background: nord0 +*.cursorColor: nord4 +*fading: 35 +*fadeColor: nord3 + +*.color0: nord1 +*.color1: nord11 +*.color2: nord14 +*.color3: nord13 +*.color4: nord9 +*.color5: nord15 +*.color6: nord8 +*.color7: nord5 +*.color8: nord3 +*.color9: nord11 +*.color10: nord14 +*.color11: nord13 +*.color12: nord9 +*.color13: nord15 +*.color14: nord7 +*.color15: nord6 diff --git a/aliases b/aliases new file mode 100644 index 0000000..7a6a0ef --- /dev/null +++ b/aliases @@ -0,0 +1,46 @@ +alias neo="fm6000" +alias nb="newsboat" +alias rms="shred -uz" +alias ncm="ncmpcpp" +alias weather="curl wttr.in" +alias scurl="curl --tlsv1.2 --proto =https" +alias grep="grep --color=always" +alias ncms="ncm -h 192.168.1.12" +alias school="cd ~/docs/school" +alias abook="abook -f ~/.config/abook/addressbook" +alias irssi="irssi --config="$XDG_CONFIG_HOME"/irssi/config --home="$XDG_DATA_HOME"/irssi" + +# Verbosity and settings that you pretty much just always are going to want. +alias cp="cp -iv" +alias mv="mv -iv" +alias rm="rm -vI" +alias mkd="mkdir -pv" +alias yt="youtube-dl --add-metadata -i" +alias yta="yt -x -f bestaudio/best" +alias ffmpeg="ffmpeg -hide_banner" + +# Colorize commands when possible. +alias ls="exa -h --color=auto --group-directories-first" +alias grep="grep --color=auto" +alias diff="diff --color=auto" +alias ccat="highlight --out-format=ansi" + +# These common commands are just too long! Abbreviate them. +alias ka="killall" +alias g="git" +alias trem="transmission-remote" +alias YT="youtube-viewer" +alias sdn="sudo shutdown -h now" +alias f="$FILE" +alias e="$EDITOR" +alias v="$EDITOR" +alias p="sudo pacman" +alias xi="sudo xbps-install" +alias xr="sudo xbps-remove -R" +alias xq="xbps-query" +alias z="zathura" +alias nassh="ssh root@192.168.1.12" +alias vultrssh="ssh tyler@tylerhoang.xyz -p 46701" + +# tomb +alias tombdata="tomb exhume ~/pics/school\ \&\ friends/glowshow2.jpg | tomb open ~/docs/database/data.tomb -k -" diff --git a/bashrc b/bashrc new file mode 100644 index 0000000..a78a0db --- /dev/null +++ b/bashrc @@ -0,0 +1,18 @@ +# +# ~/.bashrc +# + +# If not running interactively, don't do anything +[[ $- != *i* ]] && return + +# alias ls='ls --color=auto' +# PS1='[\u@\h \W]\$ ' + +source ~/.config/aliases + +if ! pgrep -u "$USER" ssh-agent > /dev/null; then + ssh-agent -t 1h > "$XDG_RUNTIME_DIR/ssh-agent.env" +fi +if [[ ! "$SSH_AUTH_SOCK" ]]; then + source "$XDG_RUNTIME_DIR/ssh-agent.env" >/dev/null +fi diff --git a/beets/config.yaml b/beets/config.yaml new file mode 100644 index 0000000..5e6af6b --- /dev/null +++ b/beets/config.yaml @@ -0,0 +1 @@ +plugins: fetchart diff --git a/beets/library.db b/beets/library.db new file mode 100644 index 0000000..c663dc3 Binary files /dev/null and b/beets/library.db differ diff --git a/beets/state.pickle b/beets/state.pickle new file mode 100644 index 0000000..b7c0f16 Binary files /dev/null and b/beets/state.pickle differ diff --git a/bspwm/bspwm_colors.sh b/bspwm/bspwm_colors.sh new file mode 100644 index 0000000..d0f90b1 --- /dev/null +++ b/bspwm/bspwm_colors.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash + +bspc config focused_border_color "#414b4e" +bspc config normal_border_color "#2d3435" diff --git a/bspwm/bspwmrc b/bspwm/bspwmrc new file mode 100755 index 0000000..f0a8c22 --- /dev/null +++ b/bspwm/bspwmrc @@ -0,0 +1,52 @@ +#! /bin/sh + +#xrdb ~/.config/X11/Xresources & +$HOME/.config/polybar/launch.sh & +mumble-overlay picom & +dunst & +bash /home/trollshotlol/.config/bspwm/bspwm_colors.sh & +#pidof bspswallow || bspswallow & + +#bspc monitor -d           # bitmap icons +bspc monitor -d           # font awesome icons +bspc monitor -g 1366x768+0+0 + +bspc config border_width 1 +bspc config window_gap 0 + +bspc config normal_border_color "$color1" +bspc config active_border_color "$color2" +bspc config focused_border_color "$color15" +bspc config presel_feedback_color "$color1" + +bspc config split_ratio 0.50 +bspc config auto_alternate true +bspc config borderless_monocle true +bspc config single_monocle true +bspc config gapless_monocle true +bspc config focus_follows_pointer true + +bspc rule -a "Emacs" state=tiled +bspc rule -a "unimatrix" state=fullscreen +bspc rule -a "Zathura" state=tiled + +bspc rule -a "Pale moon" desktop= +bspc rule -a "qutebrowser" desktop= +bspc rule -a "firefox" desktop= +bspc rule -a "LibreWolf" desktop= +bspc rule -a "IceCat" desktop= +bspc rule -a "Chromium" desktop= +bspc rule -a "Spotify" desktop= +bspc rule -a "Rhythmbox" desktop= +bspc rule -a "Lutris" desktop= +bspc rule -a "Mumble" desktop= +bspc rule -a "Riot" desktop= +bspc rule -a "discord" desktop= +bspc rule -a "Ripcord" desktop= +bspc rule -a "Thunderbird" desktop= +bspc rule -a "keepassx2" desktop= +bspc rule -a "keepassxc" desktop= +bspc rule -a "Transmission-gtk" desktop= +bspc rule -a "Steam" desktop= +bspc rule -a "Thunar" desktop= +bash /home/trollshotlol/.config/bspwm/bspwm_colors.sh &bash /home/trollshotlol/.config/bspwm/bspwm_colors.sh &bash /home/trollshotlol/.config/bspwm/bspwm_colors.sh & diff --git a/bspwm/noswallow b/bspwm/noswallow new file mode 100644 index 0000000..9f23d84 --- /dev/null +++ b/bspwm/noswallow @@ -0,0 +1 @@ +xev diff --git a/bspwm/terminals b/bspwm/terminals new file mode 100644 index 0000000..3054a24 --- /dev/null +++ b/bspwm/terminals @@ -0,0 +1,2 @@ +St +Urxvt diff --git a/cava/config b/cava/config new file mode 100644 index 0000000..a7a1fd3 --- /dev/null +++ b/cava/config @@ -0,0 +1,139 @@ +## Configuration file for CAVA. Default values are commented out. Use either ';' or '#' for commenting. + + +[general] + +# Smoothing mode. Can be 'normal', 'scientific' or 'waves'. DEPRECATED as of 0.6.0 +; mode = normal + +# Accepts only non-negative values. +framerate = 60 + +# 'autosens' will attempt to decrease sensitivity if the bars peak. 1 = on, 0 = off +# new as of 0.6.0 autosens of low values (dynamic range) +# 'overshoot' allows bars to overshoot (in % of terminal height) without initiating autosens. DEPRECATED as of 0.6.0 +; autosens = 1 +; overshoot = 20 + +# Manual sensitivity in %. Autosens must be turned off for this to take effect. +# 200 means double height. Accepts only non-negative values. +; sensitivity = 100 + +# The number of bars (0-200). 0 sets it to auto (fill up console). +# Bars' width and space between bars in number of characters. +; bars = 0 +bar_width = 3 +; bar_spacing = 1 + + +# Lower and higher cutoff frequencies for lowest and highest bars +# the bandwidth of the visualizer. +# Note: there is a minimum total bandwidth of 43Mhz x number of bars. +# Cava will automatically increase the higher cutoff if a too low band is specified. +; lower_cutoff_freq = 50 +; higher_cutoff_freq = 10000 + + + +[input] + +# Audio capturing method. Possible methods are: 'pulse', 'alsa' or 'fifo'. +# Defaults to 'pulse', 'alsa' or 'fifo', in that order, dependent on what support cava was built with. +# +# All input methods uses the same config variable 'source' +# to define where it should get the audio. +# +# For pulseaudio 'source' will be the source. Default: 'auto', which uses the monitor source of the default sink +# (all pulseaudio sinks(outputs) have 'monitor' sources(inputs) associated with them). +# +# For alsa 'source' will be the capture device. +# For fifo 'source' will be the path to fifo-file. +; method = pulse +; source = auto + +; method = alsa +; source = hw:Loopback,1 + +; method = fifo +; source = /tmp/mpd.fifo + + + +[output] + +# Ouput method. Can be 'ncurses', 'noncurses' or 'raw'. +# 'noncurses' is for systems that does not suport ncurses. +# 'raw' is a 16 bit data stream of the bar heights that can be used to send to other applications. +# 'raw' defaults to 200 bars, which can be adjusted in the 'bars' option above. +; method = ncurses + +# Visual channels. Can be 'stereo' or 'mono'. +# 'stereo' mirrors both channels with low frequencies in center. +# 'mono' averages both channels and outputs left to right lowest to highest frequencies. +channels = stereo + +# Raw output target. A fifo will be created if target does not exist. +; raw_target = /dev/stdout + +# Raw data format. Can be 'binary' or 'ascii'. +; data_format = binary + +# Binary bit format, can be '8bit' (0-255) or '16bit' (0-65530). +; bit_format = 16bit + +# Ascii max value. In 'ascii' mode range will run from 0 to value specified here +; ascii_max_range = 1000 + +# Ascii delimiters. In ascii format each bar and frame is separated by a delimiters. +# Use decimal value in ascii table (i.e. 59 = ';' and 10 = '\n' (line feed)). +; bar_delimiter = 59 +; frame_delimiter = 10 + + + +[color] + +# Colors can be one of seven predefined: black, blue, cyan, green, magenta, red, white, yellow. +# Or defined by hex code '#xxxxxx' (hex code must be within ''). User defined colors requires a +# terminal that can change color definitions such as Gnome-terminal or rxvt. +; background = black +; foreground = cyan + +# Gradient mode, only hex defined colors are supported, background must also be defined in hex +# or remain commented out. 1 = on, 0 = off. Warning: for certain terminal emulators cava will +# not able to restore color definitions on exit, simply restart your terminal to restore colors. +; gradient = 0 +; gradient_color_1 = '#0099ff' +; gradient_color_2 = '#ff3399' + + + +[smoothing] + +# Percentage value for integral smoothing. Takes values from 0 - 100. +# Higher values means smoother, but less precise. 0 to disable. +integral = 70 + +# Disables or enables the so-called "Monstercat smoothing" with or without "waves". Set to 0 to disable. +monstercat = 1 +; waves = 0 + +# Set gravity percentage for "drop off". Higher values means bars will drop faster. +# Accepts only non-negative values. 50 means half gravity, 200 means double. Set to 0 to disable "drop off". +gravity = 130 + + +# In bar height, bars that would have been lower that this will not be drawn. +; ignore = 0 + + +[eq] + +# This one is tricky. You can have as much keys as you want. +# Remember to uncomment more then one key! More keys = more precision. +# Look at readme.md on github for further explanations and examples. +1 = 1.5 # bass +2 = 1 +3 = 1 # midtone +4 = 1 +5 = 1 # treble diff --git a/cmus/autosave b/cmus/autosave new file mode 100644 index 0000000..781ab54 --- /dev/null +++ b/cmus/autosave @@ -0,0 +1,209 @@ +set aaa_mode=all +set altformat_current= %F +set altformat_playlist= %f%= %d +set altformat_title=%f +set altformat_trackwin= %f%= %d +set auto_expand_albums_follow=true +set auto_expand_albums_search=true +set auto_expand_albums_selcur=true +set auto_reshuffle=true +set buffer_seconds=10 +set color_cmdline_attr=default +set color_cmdline_bg=default +set color_cmdline_fg=default +set color_cur_sel_attr=default +set color_error=lightred +set color_info=lightyellow +set color_separator=blue +set color_statusline_attr=default +set color_statusline_bg=gray +set color_statusline_fg=black +set color_titleline_attr=default +set color_titleline_bg=blue +set color_titleline_fg=white +set color_trackwin_album_attr=bold +set color_trackwin_album_bg=default +set color_trackwin_album_fg=default +set color_win_attr=default +set color_win_bg=default +set color_win_cur=lightyellow +set color_win_cur_attr=default +set color_win_cur_sel_attr=default +set color_win_cur_sel_bg=blue +set color_win_cur_sel_fg=lightyellow +set color_win_dir=lightblue +set color_win_fg=default +set color_win_inactive_cur_sel_attr=default +set color_win_inactive_cur_sel_bg=gray +set color_win_inactive_cur_sel_fg=lightyellow +set color_win_inactive_sel_attr=default +set color_win_inactive_sel_bg=gray +set color_win_inactive_sel_fg=black +set color_win_sel_attr=default +set color_win_sel_bg=blue +set color_win_sel_fg=white +set color_win_title_attr=default +set color_win_title_bg=blue +set color_win_title_fg=white +set confirm_run=true +set continue=true +set device=/dev/cdrom +set display_artist_sort_name=false +set dsp.alsa.device= +set dsp.ao.buffer_size=16384 +set dsp.ao.device_interface= +set dsp.ao.driver= +set dsp.ao.wav_counter=1 +set dsp.ao.wav_dir=/home/trollshotlol +set dsp.jack.resampling_quality=2 +set dsp.jack.server_name= +set dsp.oss.device= +set follow=false +set format_current= %a - %l -%3n. %t%= %y +set format_playlist= %-21%a %3n. %t%= %y %d %{?X!=0?%3X ? } +set format_playlist_va= %-21%A %3n. %t (%a)%= %y %d %{?X!=0?%3X ? } +set format_statusline= %{status} %{?show_playback_position?%{position} %{?duration?/ %{duration} }?%{?duration?%{duration} }}- %{total} %{?volume>=0?vol: %{?lvolume!=rvolume?%{lvolume},%{rvolume} ?%{volume} }}%{?stream?buf: %{buffer} }%{?show_current_bitrate & bitrate>=0? %{bitrate} kbps }%=%{?repeat_current?repeat current?%{?play_library?%{playlist_mode} from %{?play_sorted?sorted }library?playlist}} | %1{continue}%1{follow}%1{repeat}%1{shuffle} +set format_title=%a - %l - %t (%y) +set format_trackwin=%3n. %t%= %y %d +set format_trackwin_album= %l +set format_trackwin_va=%3n. %t (%a)%= %y %d +set format_treewin= %l +set format_treewin_artist=%a +set icecast_default_charset=ISO-8859-1 +set id3_default_charset=ISO-8859-1 +set input.aac.priority=50 +set input.cdio.cddb_url=freedb.freedb.org:8880 +set input.cdio.priority=50 +set input.cue.priority=50 +set input.ffmpeg.priority=30 +set input.flac.priority=50 +set input.mad.priority=55 +set input.modplug.priority=50 +set input.mpc.priority=50 +set input.opus.priority=50 +set input.vorbis.priority=50 +set input.wav.priority=50 +set input.wavpack.priority=50 +set lib_add_filter= +set lib_sort=albumartist date album discnumber tracknumber title filename play_count +set mixer.alsa.channel= +set mixer.alsa.device= +set mixer.oss.channel=PCM +set mixer.oss.device= +set mixer.pulse.restore_volume=1 +set mouse=false +set mpris=true +set output_plugin=pulse +set passwd= +set pl_sort= +set play_library=true +set play_sorted=false +set repeat=false +set repeat_current=false +set replaygain=disabled +set replaygain_limit=true +set replaygain_preamp=0.000000 +set resume=true +set rewind_offset=5 +set scroll_offset=2 +set set_term_title=true +set show_all_tracks=true +set show_current_bitrate=false +set show_hidden=false +set show_playback_position=true +set show_remaining_time=false +set shuffle=false +set skip_track_info=false +set smart_artist_sort=true +set softvol=false +set softvol_state=0 0 +set start_view=tree +set status_display_program= +set time_show_leading_zero=true +set wrap_search=true +bind browser backspace browser-up +bind browser i toggle show_hidden +bind browser space win-activate +bind browser u win-update +bind common ! push shell +bind common + vol +10% +bind common , seek -1m +bind common - vol -10% +bind common . seek +1m +bind common 1 view tree +bind common 2 view sorted +bind common 3 view playlist +bind common 4 view queue +bind common 5 view browser +bind common 6 view filters +bind common 7 view settings +bind common = vol +10% +bind common C toggle continue +bind common D win-remove +bind common E win-add-Q +bind common F push filter +bind common G win-bottom +bind common I echo {} +bind common L push live-filter +bind common M toggle play_library +bind common N search-prev +bind common P win-mv-before +bind common U win-update-cache +bind common [ vol +1% +0 +bind common ] vol +0 +1% +bind common ^B win-page-up +bind common ^C echo Type :quit to exit cmus. +bind common ^E win-scroll-down +bind common ^F win-page-down +bind common ^L refresh +bind common ^R toggle repeat_current +bind common ^Y win-scroll-up +bind common a win-add-l +bind common b player-next +bind common c player-pause +bind common delete win-remove +bind common down win-down +bind common e win-add-q +bind common end win-bottom +bind common enter win-activate +bind common f toggle follow +bind common g win-top +bind common h seek -5 +bind common home win-top +bind common i win-sel-cur +bind common j win-down +bind common k win-up +bind common l seek +5 +bind common left seek -5 +bind common m toggle aaa_mode +bind common mlb_click_selected win-activate +bind common mouse_scroll_down win-down +bind common mouse_scroll_up win-up +bind common n search-next +bind common o toggle play_sorted +bind common p win-mv-after +bind common page_down win-page-down +bind common page_up win-page-up +bind common q quit -i +bind common r toggle repeat +bind common right seek +5 +bind common s toggle shuffle +bind common space win-toggle +bind common t toggle show_remaining_time +bind common tab win-next +bind common u update-cache +bind common up win-up +bind common v player-stop +bind common x player-play +bind common y win-add-p +bind common z player-prev +bind common { vol -1% -0 +bind common } vol -0 -1% +fset 90s=date>=1990&date<2000 +fset classical=genre="Classical" +fset missing-tag=!stream&(artist=""|album=""|title=""|tracknumber=-1|date=-1) +fset mp3=filename="*.mp3" +fset ogg=filename="*.ogg" +fset ogg-or-mp3=ogg|mp3 +fset unheard=play_count=0 +factivate diff --git a/cmus/cache b/cmus/cache new file mode 100644 index 0000000..6de1401 Binary files /dev/null and b/cmus/cache differ diff --git a/cmus/command-history b/cmus/command-history new file mode 100644 index 0000000..80e67fa --- /dev/null +++ b/cmus/command-history @@ -0,0 +1,10 @@ +filter ffff +add http://stream.trainsweebshop.tk/mpd.m3u +add http://stream.trainsweebshop.tk/mpd.mp3 +add https://stream.trainsweebshop.tk/mpd.mp3 +add 'http://stream.trainsweebshop.tk/mpd.mp3' +add 'https://stream.trainsweebshop.tk/mpd.mp3' +clear +set resume=true +add Downloads/stream.m3u +add http://listen.moe/stream.m3u diff --git a/cmus/lib.pl b/cmus/lib.pl new file mode 100644 index 0000000..c0365e1 --- /dev/null +++ b/cmus/lib.pl @@ -0,0 +1,2239 @@ +/mnt/trollshotlol@maeve/Music/장윤주/Dream/01 29.flac +/mnt/trollshotlol@maeve/Music/장윤주/Dream/02 April.flac +/mnt/trollshotlol@maeve/Music/장윤주/Dream/03 오늘, 고마운 하루.flac +/mnt/trollshotlol@maeve/Music/장윤주/Dream/04 Dream (Piano ver.).flac +/mnt/trollshotlol@maeve/Music/장윤주/Dream/05 11월.flac +/mnt/trollshotlol@maeve/Music/장윤주/Dream/06 Fly Away.flac +/mnt/trollshotlol@maeve/Music/장윤주/Dream/07 파리에 부친 편지.flac +/mnt/trollshotlol@maeve/Music/장윤주/Dream/08 Martini Rosso.flac +/mnt/trollshotlol@maeve/Music/장윤주/Dream/09 Love song.flac +/mnt/trollshotlol@maeve/Music/장윤주/Dream/10 옥탑방 (demo ver.).flac +/mnt/trollshotlol@maeve/Music/장윤주/Dream/11 April (instrumental).flac +/mnt/trollshotlol@maeve/Music/장윤주/Dream/12 Dream (Guitar ver.).flac +/mnt/trollshotlol@maeve/Music/100 gecs/1000 gecs/01 745 sticky.mp3 +/mnt/trollshotlol@maeve/Music/100 gecs/1000 gecs/02 money machine.mp3 +/mnt/trollshotlol@maeve/Music/100 gecs/1000 gecs/03 800db cloud.mp3 +/mnt/trollshotlol@maeve/Music/100 gecs/1000 gecs/04 I Need Help Immediately.mp3 +/mnt/trollshotlol@maeve/Music/100 gecs/1000 gecs/05 stupid horse.mp3 +/mnt/trollshotlol@maeve/Music/100 gecs/1000 gecs/06 xXXi_wud_nvrstøp_ÜXXx.mp3 +/mnt/trollshotlol@maeve/Music/100 gecs/1000 gecs/07 ringtone.mp3 +/mnt/trollshotlol@maeve/Music/100 gecs/1000 gecs/08 gecgecgec.mp3 +/mnt/trollshotlol@maeve/Music/100 gecs/1000 gecs/09 hand crushed by a mallet.mp3 +/mnt/trollshotlol@maeve/Music/100 gecs/1000 gecs/10 gec 2 Ü.mp3 +/mnt/trollshotlol@maeve/Music/100 gecs feat. Charli XCX, Rico Nasty, Kero Kero Bonito/ringtone (remix)/01 ringtone (remix).mp3 +/mnt/trollshotlol@maeve/Music/385/脳みそあらおう/01 行動.mp3 +/mnt/trollshotlol@maeve/Music/385/脳みそあらおう/02 鼓膜クレイジー.mp3 +/mnt/trollshotlol@maeve/Music/385/脳みそあらおう/03 脳みそあらおう.mp3 +/mnt/trollshotlol@maeve/Music/385/脳みそあらおう/04 みんな同じ顔.mp3 +/mnt/trollshotlol@maeve/Music/385/脳みそあらおう/05 お正月.mp3 +/mnt/trollshotlol@maeve/Music/385/脳みそあらおう/06 マサカリ.mp3 +/mnt/trollshotlol@maeve/Music/9mm Parabellum Bullet/インフェルノ/01 インフェルノ.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/01 六等星の夜.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/02 蝶々結び.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/03 あなたに出会わなければ〜夏雪冬花〜.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/04 ポラリス.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/05 Re_pray.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/06 星屑ビーナス.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/07 broKen NIGHT.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/08 カタオモイ.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/09 君を待つ.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/10 茜さす.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/11 雪の降る街.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/12 everlasting snow.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/13 March of Time.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “blanc”/14 歌鳥風月.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/01 StarRingChild.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/02 Brave Shine.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/03 insane dream.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/04 Stars in the rain.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/05 眠りの森.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/06 LAST STARDUST.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/07 凍えそうな季節から -extended ver.-.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/08 誰か、海を。.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/09 ninelie.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/10 holLow wORlD.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/11 us.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/12 s-AVE.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/13 RE_I AM.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/BEST SELECTION “noir”/14 zero.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Penny Rain/01 pluie.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Penny Rain/02 I beg you.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Penny Rain/03 Black Bird.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Penny Rain/04 Sailing.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Penny Rain/05 眩いばかり.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Penny Rain/06 Stand By You.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Penny Rain/07 Ref_rain.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Penny Rain/08 i-mage _in_AR_.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Penny Rain/09 花の唄.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Penny Rain/10 April Showers.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Sun Dance/01 soleil.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Sun Dance/02 ONE.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Sun Dance/03 We Two.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Sun Dance/04 3min.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Sun Dance/05 コイワズライ.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Sun Dance/06 花びらたちのマーチ.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Sun Dance/07 思い出は奇麗で.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Sun Dance/08 Monochrome Syndrome.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Sun Dance/09 SUN DANCE.mp3 +/mnt/trollshotlol@maeve/Music/Aimer/Sun Dance/10 ONE -epilogue-.mp3 +/mnt/trollshotlol@maeve/Music/Aiobahn feat. nayuta/過ぎゆく日と君へ/01 過ぎゆく日と君へ.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz/01 Kimi wo Nosete (Laputa).mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz/02 Umi no Mieru Machi (Kiki).mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz/03 Yasashisa ni Tsutsumareta Nara (Kiki).mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz/04 Kaze no Toorimichi (Totoro).mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz/05 Tonari no Totoro (Totoro).mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz/06 Jinsei no Merry-Go-Round (Howl).mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz/07 Country Road (Mimi wo Sumaseba).mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz/08 Mononoke Hime (Mononoke).mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz/09 Kaze no Tani no Nausicaa (Nausicaa).mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz/10 Nausicaa Requiem (Nausicaa).mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz/11 Toki ni ha Mukashi no Hanashi Wo (Porco).mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz/12 Gake no Ue no Ponyo (Ponyo).mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/01 Kaze no Toorimichi.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/02 Hareta Hi ni.._.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/03 Sampo.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/04 Sora kara Futtekita Shoujo.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/05 Meguru Kisetsu.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/06 Ashitaka Sekki.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/07 Ai wa Hana, Kimi wa sono Tane.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/08 Neko Basu.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/09 Teruu no Uta.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/10 Ano Natsu e.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/11 Itsumo Nando demo.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/12 Kaze no Densetsu.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/13 Arrietty's Song.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/Ghibli Jazz 2/14 Sekai no Yakusoku.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/EVER JAZZ/01 残酷な天使のテーゼ.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/EVER JAZZ/02 ANGEL ATTACK.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/EVER JAZZ/03 魂のルフラン.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/EVER JAZZ/04 MISATO.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/EVER JAZZ/05 集結の園へ.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/EVER JAZZ/06 REl l.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/EVER JAZZ/07 心よ原始に戻れ.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/EVER JAZZ/08 ASUKA STRIKES!.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/EVER JAZZ/09 Komm,susser Tod _甘き死よ、来たれ.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/EVER JAZZ/10 THE BEAST II.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/EVER JAZZ/11 FLY ME TO THE MOON.mp3 +/mnt/trollshotlol@maeve/Music/All That Jazz/EVER JAZZ/12 次回予告.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/01 Endless Fantasy.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/02 Japan Air.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/03 Echobo.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/04 Planet.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/05 Viridian Genesis.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/06 John Hughes.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/07 Prom Night.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/08 Interlude (Gymnopedie No. 1).mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/09 Akira.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/10 SPF 420.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/11 Interlude (Total Tea Time).mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/12 Meow.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/13 Canal Paradise.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/14 Snow Angels.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/15 In the Basement.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/16 U n Me.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/17 Space Wax America.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/18 EVERYTHING EXPLODES.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/19 Interlude (STILL SPLODIN THO).mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/20 Pastel Flags.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/21 Bosozoku GF.mp3 +/mnt/trollshotlol@maeve/Music/Anamanaguchi/Endless Fantasy/22 (T-T)b.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/01 Babymetal Death.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/02 Megitsune.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/03 Gimme Chocolate!!.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/04 Iine!.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/05 Akatsuki.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/06 Doki Doki ☆ Morning.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/07 Onedari Daisakusen.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/08 Song 4.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/09 Uki Uki ★ Midnight.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/10 Catch Me If You Can.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/11 Rondo of Nightmare.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/12 Head Bangya!!.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/13 Ijime Dame Zettai.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/01 BABYMETAL DEATH.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/02 メギツネ.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/03 ギミチョコ!!.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/04 いいね!.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/05 紅月-アカツキ-.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/06 ド・キ・ド・キ☆モーニング.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/07 おねだり大作戦.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/08 4の歌.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/09 ウ・キ・ウ・キ★ミッドナイト.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/10 Catch me if you can.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/11 悪夢の輪舞曲.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/12 ヘドバンギャー!!.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/BABYMETAL/13 イジメ、ダメ、ゼッタイ.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL RESISTANCE/01 Road of Resistance.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL RESISTANCE/02 KARATE.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL RESISTANCE/03 Awadama Fever.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL RESISTANCE/04 YAVA!.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL RESISTANCE/05 Amore.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL RESISTANCE/06 Meta Taro.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL RESISTANCE/07 From Dusk Till Dawn.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL RESISTANCE/08 GJ!.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL RESISTANCE/09 Sis. Anger.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL RESISTANCE/10 NO RAIN, NO RAINBOW.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL RESISTANCE/11 Tales of the Destinies.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL RESISTANCE/12 THE ONE.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/01 FUTURE METAL.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/02 DA DA DANCE.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/03 Elevator Girl.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/04 Shanti Shanti Shanti.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/05 Oh! MAJINAI.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/06 Brand New Day.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/07 ↑↓←→BBAB.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/08 Night Night Burn!.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/09 IN THE NAME OF.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/10 Distortion.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/11 PA PA YA!!.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/12 BxMxC.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/13 Kagerou.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/14 Starlight.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/15 Shine.mp3 +/mnt/trollshotlol@maeve/Music/BABYMETAL/METAL GALAXY/16 Arkadia.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/01 Asterism❖.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/02 S'more.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/03 Maple Trick.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/04 Mizutama.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/05 Waffle Cone.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/06 Honey Bee.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/07 Rem.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/08 Journey.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/09 Akubi.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/10 Orange Rocket.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/11 Tulala Story.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/12 Mint Comet.mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/13 MOMO SYRUP (Intro Ver.).mp3 +/mnt/trollshotlol@maeve/Music/beignet/re_new Memory/14 re_new Memory.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Intermodulation/01 I've Got You Under My Skin.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Intermodulation/02 My Man's Gone Now.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Intermodulation/03 Turn Out the Stars.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Intermodulation/04 Angel Face.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Intermodulation/05 Jazz Samba.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Intermodulation/06 All Across the City.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Undercurrent/01 My Funny Valentine (alternate take).mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Undercurrent/02 My Funny Valentine.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Undercurrent/03 I Hear a Rhapsody.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Undercurrent/04 Dream Gypsy.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Undercurrent/05 Stairway to the Stars.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Undercurrent/06 I'm Getting Sentimental Over You.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Undercurrent/07 Romain.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Undercurrent/08 Romain (alternate take).mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Undercurrent/09 Skating in Central Park.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans & Jim Hall/Undercurrent/10 Darn That Dream.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans Trio/Portrait in Jazz/01 Come Rain or Come Shine.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans Trio/Portrait in Jazz/02 Autumn Leaves.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans Trio/Portrait in Jazz/03 Witchcraft.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans Trio/Portrait in Jazz/04 When I Fall in Love.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans Trio/Portrait in Jazz/05 Peri’s Scope.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans Trio/Portrait in Jazz/06 What Is This Thing Called Love.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans Trio/Portrait in Jazz/07 Spring Is Here.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans Trio/Portrait in Jazz/08 Someday My Prince Will Come.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans Trio/Portrait in Jazz/09 Blue in Green.mp3 +/mnt/trollshotlol@maeve/Music/Bill Evans Trio/Portrait in Jazz/10 Autumn Leaves (monaural LP version).mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/01 !!!!!!!.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/02 bad guy.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/03 xanny.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/04 you should see me in a crown.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/05 all the good girls go to hell.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/06 wish you were gay.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/07 when the party’s over.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/08 8.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/09 my strange addiction.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/10 bury a friend.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/11 ilomilo.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/12 listen before i go.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/13 i love you.mp3 +/mnt/trollshotlol@maeve/Music/Billie Eilish/WHEN WE ALL FALL ASLEEP, WHERE DO WE GO_/14 goodbye.mp3 +/mnt/trollshotlol@maeve/Music/Blonde Redhead/23/01 23.mp3 +/mnt/trollshotlol@maeve/Music/Blonde Redhead/23/02 Dr. Strangeluv.mp3 +/mnt/trollshotlol@maeve/Music/Blonde Redhead/23/03 The Dress.mp3 +/mnt/trollshotlol@maeve/Music/Blonde Redhead/23/04 SW.mp3 +/mnt/trollshotlol@maeve/Music/Blonde Redhead/23/05 Spring and by Summer Fall.mp3 +/mnt/trollshotlol@maeve/Music/Blonde Redhead/23/06 Silently.mp3 +/mnt/trollshotlol@maeve/Music/Blonde Redhead/23/07 Publisher.mp3 +/mnt/trollshotlol@maeve/Music/Blonde Redhead/23/08 Heroine.mp3 +/mnt/trollshotlol@maeve/Music/Blonde Redhead/23/09 Top Ranking.mp3 +/mnt/trollshotlol@maeve/Music/Blonde Redhead/23/10 My Impure Hair.mp3 +/mnt/trollshotlol@maeve/Music/Boredoms/VISION CREATION NEWSUN/01 ○.mp3 +/mnt/trollshotlol@maeve/Music/Boredoms/VISION CREATION NEWSUN/02 ☆.mp3 +/mnt/trollshotlol@maeve/Music/Boredoms/VISION CREATION NEWSUN/03 ♡.mp3 +/mnt/trollshotlol@maeve/Music/Boredoms/VISION CREATION NEWSUN/04 [うずまき].mp3 +/mnt/trollshotlol@maeve/Music/Boredoms/VISION CREATION NEWSUN/05 〜.mp3 +/mnt/trollshotlol@maeve/Music/Boredoms/VISION CREATION NEWSUN/06 ◎.mp3 +/mnt/trollshotlol@maeve/Music/Boredoms/VISION CREATION NEWSUN/07 ↑.mp3 +/mnt/trollshotlol@maeve/Music/Boredoms/VISION CREATION NEWSUN/08 Ω.mp3 +/mnt/trollshotlol@maeve/Music/Boredoms/VISION CREATION NEWSUN/09 ずっと.mp3 +/mnt/trollshotlol@maeve/Music/Boris/NO/01 Genesis.mp3 +/mnt/trollshotlol@maeve/Music/Boris/NO/02 Anti-Gone.mp3 +/mnt/trollshotlol@maeve/Music/Boris/NO/03 Non Blood Lore.mp3 +/mnt/trollshotlol@maeve/Music/Boris/NO/04 Temple of Hatred.mp3 +/mnt/trollshotlol@maeve/Music/Boris/NO/05 鏡 -Zerkalo-.mp3 +/mnt/trollshotlol@maeve/Music/Boris/NO/06 HxCxHxC -Parforation Line-.mp3 +/mnt/trollshotlol@maeve/Music/Boris/NO/07 キキノウエ -Kiki no Ue-.mp3 +/mnt/trollshotlol@maeve/Music/Boris/NO/08 Lust.mp3 +/mnt/trollshotlol@maeve/Music/Boris/NO/09 Fundamental Error.mp3 +/mnt/trollshotlol@maeve/Music/Boris/NO/10 Loveless.mp3 +/mnt/trollshotlol@maeve/Music/Boris/NO/11 Interlude.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/01 Key.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/02 Door.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/03 Subwoofer Lullaby.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/04 Death.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/05 Living Mice.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/06 Moog City.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/07 Haggstrom.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/08 Minecraft.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/09 Oxygène.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/10 Équinoxe.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/11 Mice on Venus.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/12 Dry Hands.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/13 Wet Hands.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/14 Clark.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/15 Chris.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/16 Thirteen.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/17 Excuse.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/18 Sweden.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/19 Cat.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/20 Dog.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/21 Danny.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/22 Beginning.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/23 Droopy Likes Ricochet.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Alpha/24 Droopy Likes Your Face.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/01 Ki.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/02 Alpha.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/03 Dead Voxel.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/04 Blind Spots.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/05 Flake.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/06 Moog City 2.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/07 Concrete Halls.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/08 Biome Fest.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/09 Mutation.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/10 Haunt Muskie.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/11 Warmth.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/12 Floating Trees.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/13 Aria Math.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/14 Kyoto.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/15 Ballad of the Cats.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/16 Taswell.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/17 Beginning 2.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/18 Dreiton.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/19 The End.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/20 Chirp.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/21 Wait.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/22 Mellohi.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/23 Stal.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/24 Strad.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/25 Eleven.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/26 Ward.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/27 Mall.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/28 Blocks.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/29 Far.mp3 +/mnt/trollshotlol@maeve/Music/C418/Minecraft, Volume Beta/30 Intro.mp3 +/mnt/trollshotlol@maeve/Music/Casiopea/Casiopea/01 Time Limit.mp3 +/mnt/trollshotlol@maeve/Music/Casiopea/Casiopea/02 Tears of the Star.mp3 +/mnt/trollshotlol@maeve/Music/Casiopea/Casiopea/03 Space Road.mp3 +/mnt/trollshotlol@maeve/Music/Casiopea/Casiopea/04 Midnight Rendezvous.mp3 +/mnt/trollshotlol@maeve/Music/Casiopea/Casiopea/05 Far Away.mp3 +/mnt/trollshotlol@maeve/Music/Casiopea/Casiopea/06 Swallow.mp3 +/mnt/trollshotlol@maeve/Music/Casiopea/Casiopea/07 Dream Hill.mp3 +/mnt/trollshotlol@maeve/Music/Casiopea/Casiopea/08 Black Joke.mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/01 Café Alpha - Main Theme.mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/02 夕凪の時代.mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/03 夏のこども.mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/04 ムサシノ国旅情.mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/05 A7M2型試作機の憂鬱.mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/06 Gas Station Blues.mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/07 ツール・ド・ヨコハマ.mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/08 風化「時の岸辺にて・・・」.mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/09 AT-6 -TEXAN-.mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/10 Café Alpha - Main Theme (orchestration).mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/11 夏のこども (orchestration).mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/12 ムサシノ国旅情 (orchestration).mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/13 夕凪の時代 (orchestration).mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/14 ふわふら.mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/15 Café Alpha - Main Theme (口笛).mp3 +/mnt/trollshotlol@maeve/Music/Choro Club/ヨコハマ買い出し紀行 -Quiet Country Cafe- Original Soundtrack/16 月の琴.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/DAOKO/01 水星.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/DAOKO/02 かけてあげる.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/DAOKO/03 一番星.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/DAOKO/04 ゆめうつつ.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/DAOKO/05 流星都市.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/DAOKO/06 ぼく.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/DAOKO/07 きみ.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/DAOKO/08 嫌.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/DAOKO/09 ミュージック.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/DAOKO/10 JK.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/DAOKO/11 ないものねだり.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/DAOKO/12 高い壁には幾千のドア.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/01 打上花火.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/02 ステップアップ LOVE.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/03 Juicy.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/04 さみしいかみさま.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/05 ShibuyaK.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/06 BANG!.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/07 ダイスキ.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/08 拝啓グッバイさようなら.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/09 同じ夜.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/10 GRY.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/11 もしも僕らがGAME の主役で.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/12 ゆめみてたのあたし.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/13 Cinderella step.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/THANK YOU BLUE/14 ワンルーム・シーサイド・ステップ.m4a +/mnt/trollshotlol@maeve/Music/DAOKO/私的旅行/01 終わらない世界で.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/私的旅行/02 ぼくらのネットワーク.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/私的旅行/03 オイデオイデ.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/私的旅行/04 24h.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/私的旅行/05 種も仕掛けもある魔法.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/私的旅行/06 サニーボーイ・レイニーガール.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/私的旅行/07 涙は雨粒.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/私的旅行/08 蝶々になって.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/私的旅行/09 打上花火 (DAOKO SOLO ver.).mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/私的旅行/10 NICE TRIP.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/anima/01 VOICE.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/anima/02 anima.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/anima/03 アキレス腱.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/anima/04 愛のロス.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/anima/05 御伽の街.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/anima/06 ハイセンスパイセン.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/anima/07 ZukiZuki.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/anima/08 Sorry Sorry.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/anima/09 海中憂泳.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/anima/10 ストロベリームーン.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/anima/11 帰りたい!.mp3 +/mnt/trollshotlol@maeve/Music/DAOKO/anima/12 おちゃらけたよ.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/01 Beware.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/02 Guillotine.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/03 Spread Eagle Cross the Block.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/04 Lord of the Game.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/05 Takyon (Death Yon).mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/06 Cut Throat (instrumental).mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/07 Klink.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/08 Culture Shock.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/09 5D.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/10 Thru the Walls.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/11 Known for It.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/12 I Want It I Need It (Death Heated).mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/Exmilitary/13 Blood Creepin.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/01 Get Got.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/02 The Fever (Aye Aye).mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/03 Lost Boys.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/04 Blackjack.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/05 Hustle Bones.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/06 I've Seen Footage.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/07 Double Helix.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/08 System Blower.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/09 The Cage.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/10 Punk Weight.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/11 Fuck That.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/12 Bitch Please.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/The Money Store/13 Hacker.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/01 Come Up and Get Me.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/02 Lil Boy.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/03 No Love.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/04 Black Dice.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/05 World of Dogs.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/06 Lock Your Doors.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/07 Whammy.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/08 Hunger Games.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/09 Deep Web.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/10 Stockton.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/11 Pop.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/12 Bass Rattle Stars Out the Sky.mp3 +/mnt/trollshotlol@maeve/Music/Death Grips/No Love Deep Web/13 Artificial Death in the West.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/01 ようこそジャパリパークへ.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/02 ゆりゆららららゆるゆり大事件.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/03 READY!! (M@STER VERSION).mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/04 コネクト.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/05 Snow halation.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/06 Crow Song.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/07 空色デイズ.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/08 カサブタ.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/09 ウィーアー!.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/10 Butter-Fly.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/11 ウルトラリラックス.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/12 そばかす.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/13 リライト.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/14 JOINT.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/15 ギミー!レボリューション.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/16 Q&A リサイタル!.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/17 M@STERPIECE.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/18 DAYS.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/19 MEMORIA.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/20 Shooting Star.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/21 鳥の詩.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/22 だんご大家族.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/23 ゆずれない願い.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/24 ムーンライト伝説(TVサイズ).mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/25 恋しさと せつなさと 心強さと.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/26 My Heart 言い出せない、Your Heart 確かめたい.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/27 君じゃなきゃダメみたい.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/28 カレンダーガール.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/29 青空のラプソディ.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/30 adrenaline!!!.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/31 Daydream cafe.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/32 もってけ! セーラーふく.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/33 God knows.._.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/34 おジャ魔女カーニバル!!.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/35 太陽曰く燃えよカオス.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/36 only my railgun.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/37 INVOKE -インヴォーク-.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/38 Gamble Rumble.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/39 Preserved Roses.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/40 名前のない怪物.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/41 君の知らない物語.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/42 Catch the Moment.mp3 +/mnt/trollshotlol@maeve/Music/DJ和/平成アニソン大賞 mixed by DJ和/43 Agape.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/01 英雄 運命の詩.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/02 Welcome to the _fam.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/03 KABANERI OF THE IRON FORTRESS.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/04 Door.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/05 Ghost of a smile.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/06 リローデッド.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/07 Fallen.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/08 好きと言われた日.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/09 All Alone With You.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/10 カナデナル.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/11 名前のない怪物.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/12 Planetes.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/13 The Everlasting Guilty Crown.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/14 エウテルペ.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/15 Departures 〜あなたにおくるアイの歌〜.mp3 +/mnt/trollshotlol@maeve/Music/EGOIST/GREATEST HITS 2011-2017 _ALTER EGO_/16 Departures 〜あなたにおくるアイの歌〜 (Acoustice Ver.).mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/01 I Want You to Love Me.mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/02 Shameika.mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/03 Fetch the Bolt Cutters.mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/04 Under the Table.mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/05 Relay.mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/06 Rack of His.mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/07 Newspaper.mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/08 Ladies.mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/09 Heavy Balloon.mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/10 Cosmonauts.mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/11 For Her.mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/12 Drumset.mp3 +/mnt/trollshotlol@maeve/Music/Fiona Apple/Fetch the Bolt Cutters/13 On I Go.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/空中キャンプ/01 ずっと前.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/空中キャンプ/02 BABY BLUE.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/空中キャンプ/03 SLOW DAYS.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/空中キャンプ/04 SUNNY BLUE.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/空中キャンプ/05 ナイトクルージング.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/空中キャンプ/06 幸せ者.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/空中キャンプ/07 すばらしくてNICE CHOICE.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/空中キャンプ/08 新しい人.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/Long Season/01 Long Season 1.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/Long Season/02 Long Season 2.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/Long Season/03 Long Season 3.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/Long Season/04 Long Season 4.mp3 +/mnt/trollshotlol@maeve/Music/フィッシュマンズ/Long Season/05 Long Season 5.mp3 +/mnt/trollshotlol@maeve/Music/Friday Night Plans/Plastic Love/01 Plastic Love.flac +/mnt/trollshotlol@maeve/Music/Hello Sleepwalkers/Masked Monkey Awakening/01 猿は木から何処へ落ちる.mp3 +/mnt/trollshotlol@maeve/Music/Hello Sleepwalkers/Masked Monkey Awakening/02 午夜の待ち合わせ.mp3 +/mnt/trollshotlol@maeve/Music/Hello Sleepwalkers/Masked Monkey Awakening/03 Bloody Mary.mp3 +/mnt/trollshotlol@maeve/Music/Hello Sleepwalkers/Masked Monkey Awakening/04 Comic Relief.mp3 +/mnt/trollshotlol@maeve/Music/Hello Sleepwalkers/Masked Monkey Awakening/05 砂漠.mp3 +/mnt/trollshotlol@maeve/Music/Hello Sleepwalkers/Masked Monkey Awakening/06 天地創造.mp3 +/mnt/trollshotlol@maeve/Music/Hello Sleepwalkers/Masked Monkey Awakening/07 23.mp3 +/mnt/trollshotlol@maeve/Music/Hello Sleepwalkers/Masked Monkey Awakening/08 越境.mp3 +/mnt/trollshotlol@maeve/Music/Hello Sleepwalkers/Masked Monkey Awakening/09 Countdown.mp3 +/mnt/trollshotlol@maeve/Music/Hello Sleepwalkers/Masked Monkey Awakening/10 円盤飛来.mp3 +/mnt/trollshotlol@maeve/Music/Hyper Potions, Synthion & MYLK/Maboroshi/01 Maboroshi.opus +/mnt/trollshotlol@maeve/Music/KANA-BOON/DOPPEL/01 1.2.step to you.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/DOPPEL/02 ワールド.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/DOPPEL/03 ウォーリーヒーロー.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/DOPPEL/04 MUSiC.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/DOPPEL/05 東京.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/DOPPEL/06 白夜.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/DOPPEL/07 目と目と目と目.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/DOPPEL/08 盛者必衰の理、お断り.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/DOPPEL/09 夜をこえて.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/DOPPEL/10 羽虫と自販機.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/DOPPEL/11 A.oh!!.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/TIME/01 タイムアウト.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/TIME/02 LOL.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/TIME/03 ターミナル.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/TIME/04 結晶星.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/TIME/05 クラクション.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/TIME/06 フルドライブ.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/TIME/07 生きてゆく.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/TIME/08 スコールスコール.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/TIME/09 愛にまみれて.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/TIME/10 シルエット.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/TIME/11 スノーグローブ.mp3 +/mnt/trollshotlol@maeve/Music/KANA-BOON/TIME/12 パレード.mp3 +/mnt/trollshotlol@maeve/Music/Ken Ishii/Jelly Tones/01 Extra.mp3 +/mnt/trollshotlol@maeve/Music/Ken Ishii/Jelly Tones/02 Cocoa Mousse.mp3 +/mnt/trollshotlol@maeve/Music/Ken Ishii/Jelly Tones/03 Stretch.mp3 +/mnt/trollshotlol@maeve/Music/Ken Ishii/Jelly Tones/04 Ethos 9.mp3 +/mnt/trollshotlol@maeve/Music/Ken Ishii/Jelly Tones/05 Moved by Air.mp3 +/mnt/trollshotlol@maeve/Music/Ken Ishii/Jelly Tones/06 Pause in Herbs.mp3 +/mnt/trollshotlol@maeve/Music/Ken Ishii/Jelly Tones/07 Frame Out.mp3 +/mnt/trollshotlol@maeve/Music/Ken Ishii/Jelly Tones/08 Endless Season.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/07 Babies (Are So Strange).mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/01 Bonito Intro.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/08 Bonito Jingle.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/05 Cat vs. Dog.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/11 Cat vs. Dog.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/09 Homework.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/15 I’d Rather Sleep.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/02 Intro Bonito.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/06 Kero Kero Bonito.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/13 Let’s Go to the Forest.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/04 My Party.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/12 Park Song.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/10 Pocket Crocodile.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/03 Sick Beat.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Intro Bonito/14 Small Town.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Flamingo/01 Flamingo.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/01 Waking Up.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/02 Heard a Song.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/03 Graduation.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/04 Fish Bowl.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/05 Big City.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/06 Break.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/07 Lipslap.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/08 Try Me.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/09 Paintbrush.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/10 Trampoline.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/11 Picture This.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/12 Hey Parents.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Bonito Generation/13 Forever Summer Holiday.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/TOTEP/04 Cinema.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/TOTEP/02 Only Acting.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/TOTEP/01 The One True Path.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/TOTEP/03 You Know How It Is.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Time ’n’ Place/01 Outside.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Time ’n’ Place/02 Time Today.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Time ’n’ Place/03 Only Acting.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Time ’n’ Place/04 Flyway.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Time ’n’ Place/05 Dump.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Time ’n’ Place/06 Make Believe.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Time ’n’ Place/07 Dear Future Self.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Time ’n’ Place/08 Visiting Hours.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Time ’n’ Place/09 If I’d Known.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Time ’n’ Place/10 Sometimes.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Time ’n’ Place/11 Swimming.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Time ’n’ Place/12 Rest Stop.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Civilisation I/01 Battle Lines.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Civilisation I/03 The River.mp3 +/mnt/trollshotlol@maeve/Music/Kero Kero Bonito/Civilisation I/02 When the Fires Come.mp3 +/mnt/trollshotlol@maeve/Music/kobasolo/KOBASOLO/01 恋せよオトメ (feat. 春茶).mp3 +/mnt/trollshotlol@maeve/Music/kobasolo/KOBASOLO/02 Losers (feat. MICO).mp3 +/mnt/trollshotlol@maeve/Music/kobasolo/KOBASOLO/03 SHINOBIZM.mp3 +/mnt/trollshotlol@maeve/Music/kobasolo/KOBASOLO/04 さよならスマイル (feat. 杏沙子).mp3 +/mnt/trollshotlol@maeve/Music/kobasolo/KOBASOLO/05 ルラルラルー (feat. 安果音).mp3 +/mnt/trollshotlol@maeve/Music/kobasolo/KOBASOLO/06 君さえいなけりゃ (feat. 春茶).mp3 +/mnt/trollshotlol@maeve/Music/kobasolo/KOBASOLO/07 あなたのことが好きだなんて言えないんです。 (feat. 杏沙子).mp3 +/mnt/trollshotlol@maeve/Music/kobasolo/KOBASOLO/08 トーキョージェノサイドシティ (feat. MICO).mp3 +/mnt/trollshotlol@maeve/Music/kobasolo/KOBASOLO/09 全力ヒーロー.mp3 +/mnt/trollshotlol@maeve/Music/kobasolo/KOBASOLO/10 背中合わせ (feat. 安果音).mp3 +/mnt/trollshotlol@maeve/Music/KOTO/プラトニック プラネット (Platonic Planet)/01 パステルパスポート.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/プラトニック プラネット (Platonic Planet)/02 くえすちょん くえすと.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/プラトニック プラネット (Platonic Planet)/03 推定スウィーティ.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/プラトニック プラネット (Platonic Planet)/04 エンジェルがエンドレス.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/プラトニック プラネット (Platonic Planet)/05 バレンタインズバレリーナ.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/プラトニック プラネット (Platonic Planet)/06 SixteenSick.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/プラトニック プラネット (Platonic Planet)/07 プラトニックプラネット.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/プラトニック プラネット (Platonic Planet)/08 シンデレラ症候群.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/ばいばいてぃーんずららばい/01 タイガーファイヤーサイバーファイター.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/ばいばいてぃーんずららばい/02 Dancing like a snail.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/ばいばいてぃーんずららばい/03 DEAD or Kawaii.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/ばいばいてぃーんずららばい/04 ミッドナイト放題.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/ばいばいてぃーんずららばい/05 TAIKUTSUが止まらない.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/ばいばいてぃーんずららばい/06 LONLEY KONG.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/ばいばいてぃーんずららばい/07 ばいばいてぃーんずららばい.mp3 +/mnt/trollshotlol@maeve/Music/KOTO/ばいばいてぃーんずららばい/08 とってもGood!なBBQ.mp3 +/mnt/trollshotlol@maeve/Music/Lamp/恋人へ/01 恋人へ.mp3 +/mnt/trollshotlol@maeve/Music/Lamp/恋人へ/02 ひろがるなみだ.mp3 +/mnt/trollshotlol@maeve/Music/Lamp/恋人へ/03 最終列車は25時.mp3 +/mnt/trollshotlol@maeve/Music/Lamp/恋人へ/04 日曜日のお別れ.mp3 +/mnt/trollshotlol@maeve/Music/Lamp/恋人へ/05 明日になれば僕は.mp3 +/mnt/trollshotlol@maeve/Music/Lamp/恋人へ/06 雨のメッセージ.mp3 +/mnt/trollshotlol@maeve/Music/Lamp/恋人へ/07 愛の言葉.mp3 +/mnt/trollshotlol@maeve/Music/Lamp/恋人へ/08 恋は月の蔭に.mp3 +/mnt/trollshotlol@maeve/Music/Lena Raine/Minecraft Nether Update (Original Game Soundtrack)/01 Chrysopoeia.mp3 +/mnt/trollshotlol@maeve/Music/Lena Raine/Minecraft Nether Update (Original Game Soundtrack)/02 Rubedo.mp3 +/mnt/trollshotlol@maeve/Music/Lena Raine/Minecraft Nether Update (Original Game Soundtrack)/03 So Below.mp3 +/mnt/trollshotlol@maeve/Music/Lena Raine/Minecraft Nether Update (Original Game Soundtrack)/04 Pigstep - Mono Mix.mp3 +/mnt/trollshotlol@maeve/Music/Lena Raine/Minecraft Nether Update (Original Game Soundtrack)/05 Pigstep - Stereo Mix.mp3 +/mnt/trollshotlol@maeve/Music/Linked Horizon/真実への進撃/01 憧憬と屍の道.mp3 +/mnt/trollshotlol@maeve/Music/Linked Horizon/真実への進撃/02 13の冬.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/01 Rising Hope.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/02 crossing field.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/03 だってアタシのヒーロー。.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/04 シルシ.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/05 AxxxiS.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/06 Empty MERMAiD.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/07 ジェットロケット.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/08 BRiGHT FLiGHT.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/09 träumerei.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/10 L.Miranic.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/11 ID.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/12 LiTTLE DEViL PARADE.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/13 WiLL ~無色透明~.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Day-/14 Believe in myself.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/01 Catch the Moment.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/02 Thrill, Risk, Heartless.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/03 oath sign.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/04 ASH.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/05 Rally Go Round.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/06 ハローグッデイ.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/07 No More Time Machine.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/08 Hi FiVE!.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/09 コズミックジェットコースター.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/10 Brave Freak Out.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/11 ROCK-mode’18.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/12 Mr.Launcher.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/13 Believe in ourselves.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/LiSA BEST -Way-/14 best day, best way.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/紅蓮華/01 紅蓮華.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/紅蓮華/02 “PROPAGANDA”.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/紅蓮華/03 やくそくのうた.mp3 +/mnt/trollshotlol@maeve/Music/LiSA/紅蓮華/04 紅蓮華 –TV ver.–.mp3 +/mnt/trollshotlol@maeve/Music/masara/Love10/01 Love10 feat. Juunana.mp3 +/mnt/trollshotlol@maeve/Music/Masayoshi Minoshima/Bad Apple!!/01 Bad Apple!!.ogg +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/MASS OF THE FERMENTING DREGS/01 delusionalism.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/MASS OF THE FERMENTING DREGS/02 ハイライト.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/MASS OF THE FERMENTING DREGS/03 skabetty.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/MASS OF THE FERMENTING DREGS/04 エンドロール.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/MASS OF THE FERMENTING DREGS/05 I F A SURFER.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/MASS OF THE FERMENTING DREGS/06 ベアーズ.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/No New World/01 New Order.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/No New World/02 あさひなぐ.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/No New World/03 だったらいいのにな.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/No New World/04 YAH YAH YAH.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/No New World/05 No New World.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/No New World/06 HuHuHu.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/No New World/07 Sugar.mp3 +/mnt/trollshotlol@maeve/Music/MASS OF THE FERMENTING DREGS/No New World/08 スローモーションリプレイ.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Cell-Scape/01 Phantasmagoria.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Cell-Scape/02 Shield for Your Eyes, a Beast in the Well on Your Hand.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Cell-Scape/03 A Dreamer Who Is Too Weak to Face Up To.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Cell-Scape/04 Lost Parts Stinging Me So Cold.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Cell-Scape/05 Chain-Shot to Have Some Fun.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Cell-Scape/06 Like a White Bat in a Box, Dead Matters Go On.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Cell-Scape/07 Key Is a Fact That a Cat Brings.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Cell-Scape/08 A Hunter in the Rain to Cut the Neck Up in the Present Stage.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Cell-Scape/09 If It Is the Deep Sea, I Can See You There.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Cell-Scape/10 Outro for Cell-Scape.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Fetch/01 Candy Gun.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Fetch/02 The Hive.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Fetch/03 Vertigo Game.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Fetch/04 Lefty Dog (run, caper, run).mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Fetch/05 Infection Defective.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Fetch/06 My Missing Link.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Fetch/07 Zero+.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Fetch/08 Schemes of the Tails.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Fetch/09 Lie Lied Lies.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Fetch/10 Red Data, Red Stage.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Fetch/11 Then Red Eyed.mp3 +/mnt/trollshotlol@maeve/Music/Melt-Banana/Fetch/12 Zero.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Pure Pure/01 Intro.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Pure Pure/02 You Look So Good.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Pure Pure/03 Crush.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Pure Pure/04 Say.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Pure Pure/05 Kawaii Desho.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Pure Pure/06 Outro.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moshi Moshi/01 Intro.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moshi Moshi/02 Pretty Please.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moshi Moshi/03 Superstar.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moshi Moshi/04 Dance Dance.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moshi Moshi/05 Crosstalk.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moshi Moshi/06 Love Me.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moshi Moshi/07 Outro.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moe Moe/01 Magic.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moe Moe/02 Virtual.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moe Moe/03 Baby Pink.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moe Moe/04 Lovesick.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moe Moe/05 Notice.mp3 +/mnt/trollshotlol@maeve/Music/Moe Shop/Moe Moe/06 Fantasy.mp3 +/mnt/trollshotlol@maeve/Music/MONDO GROSSO/何度でも新しく生まれる/01 TIME.mp3 +/mnt/trollshotlol@maeve/Music/MONDO GROSSO/何度でも新しく生まれる/02 春はトワに目覚める (Ver.2).mp3 +/mnt/trollshotlol@maeve/Music/MONDO GROSSO/何度でも新しく生まれる/03 ラビリンス (Album Mix).mp3 +/mnt/trollshotlol@maeve/Music/MONDO GROSSO/何度でも新しく生まれる/04 迷子のアストゥルナウタ.mp3 +/mnt/trollshotlol@maeve/Music/MONDO GROSSO/何度でも新しく生まれる/05 惑星タントラ.mp3 +/mnt/trollshotlol@maeve/Music/MONDO GROSSO/何度でも新しく生まれる/06 SOLITARY.mp3 +/mnt/trollshotlol@maeve/Music/MONDO GROSSO/何度でも新しく生まれる/07 ERASER.mp3 +/mnt/trollshotlol@maeve/Music/MONDO GROSSO/何度でも新しく生まれる/08 SEE YOU AGAIN.mp3 +/mnt/trollshotlol@maeve/Music/MONDO GROSSO/何度でも新しく生まれる/09 late night blue.mp3 +/mnt/trollshotlol@maeve/Music/MONDO GROSSO/何度でも新しく生まれる/10 GOLD.mp3 +/mnt/trollshotlol@maeve/Music/MONDO GROSSO/何度でも新しく生まれる/11 応答せよ.mp3 +/mnt/trollshotlol@maeve/Music/mus.hiba/White Girl/01 Slow Snow.mp3 +/mnt/trollshotlol@maeve/Music/mus.hiba/White Girl/02 Darkness.mp3 +/mnt/trollshotlol@maeve/Music/mus.hiba/White Girl/03 Ring.mp3 +/mnt/trollshotlol@maeve/Music/mus.hiba/White Girl/04 Magical Fizzy Drink.mp3 +/mnt/trollshotlol@maeve/Music/mus.hiba/White Girl/05 White Flash.mp3 +/mnt/trollshotlol@maeve/Music/mus.hiba/White Girl/06 Maboroshi.mp3 +/mnt/trollshotlol@maeve/Music/mus.hiba/White Girl/07 Doll.mp3 +/mnt/trollshotlol@maeve/Music/mus.hiba/White Girl/08 Moonlight.mp3 +/mnt/trollshotlol@maeve/Music/mus.hiba/White Girl/09 ☃.mp3 +/mnt/trollshotlol@maeve/Music/mus.hiba/White Girl/10 Sofa.mp3 +/mnt/trollshotlol@maeve/Music/mus.hiba/White Girl/11 Hitori.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/01 - A beginning -.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/02 TRAGEDY_ETERNITY.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/03 Paradisus-Paradoxum.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/04 STYX HELIX.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/05 雪を聴く夜.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/06 Tough & Alone.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/07 ANGER_ANGER.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/08 theater D.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/09 JINGO JUNGLE -HBB Remix-.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/10 Crazy Scary Holy Fantasy.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/11 L.L.L_.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/12 sunny garden sunday.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/13 -to the future days.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/eYe's/14 - An Ending -.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/HYDRA/01 HYDRA.flac +/mnt/trollshotlol@maeve/Music/MYTH & ROID/HYDRA/02 Stormy Glory.flac +/mnt/trollshotlol@maeve/Music/MYTH & ROID/HYDRA/03 HYDRA (instrumental).flac +/mnt/trollshotlol@maeve/Music/MYTH & ROID/HYDRA/04 Stormy Glory (instrumental).flac +/mnt/trollshotlol@maeve/Music/MYTH & ROID/VORACITY/01 VORACITY.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/VORACITY/02 Something w_o Sunrise.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/VORACITY/03 VORACITY(instrumental).mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/VORACITY/04 Something w_o Sunrise(instrumental).mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/TIT FOR TAT/01 TIT FOR TAT.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/TIT FOR TAT/02 STYX HELIX -KIHOW Style edition-.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/TIT FOR TAT/03 TIT FOR TAT(instrumental).mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/TIT FOR TAT/04 STYX HELIX -KIHOW Style edition-(instrumental).mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/shadowgraph/01 shadowgraph.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/shadowgraph/02 Remembrance.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/shadowgraph/03 shadowgraph (instrumental).mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/shadowgraph/04 Remembrance (instrumental).mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/PANTA RHEI/01 PANTA RHEI.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/PANTA RHEI/02 Paradisus‐Paradoxum –KIHOW style edition–.mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/PANTA RHEI/03 PANTA RHEI(instrumental).mp3 +/mnt/trollshotlol@maeve/Music/MYTH & ROID/PANTA RHEI/04 Paradisus‐Paradoxum –KIHOW style edition–(instrumental).mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/01 Main Title.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/02 Dignity.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/03 Fit as a Fiddle (and Ready for Love).mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/04 Stunt Montage (extended version).mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/05 First Silent Picture (extended version).mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/06 Tango (Temptation).mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/07 All I Do is Dream of You.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/08 Gene Dreams of Kathy.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/09 All I Do Is Dream of You (outtake).mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/10 Make ’em Laugh.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/11 Beautiful Girl Montage.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/12 Beautiful Girl.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/13 Have Lunch With Me.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/14 The Stage Is Set.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/15 You Were Meant for Me.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/16 You Are My Lucky Star (outtake).mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/17 Moses.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/18 Good Morning.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/19 Good Night, Kathy.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/20 Singin’ in the Rain.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/21 From Dueling to Dancing.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/22 Would You_.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/23 Broadway Melody Ballet (extended version).mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/24 Would You_ End Title.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/25 Singin’ in the Rain (in A‐flat) (extended version).mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/26 Finale.mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/27 Main Title (alternate version).mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/28 Beautiful Girl (alternate version_tempo track).mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/29 Would You_ (unused version).mp3 +/mnt/trollshotlol@maeve/Music/Nacio Herb Brown/Singin’ in the Rain/30 Singin’ in the Rain (radio broadcast).mp3 +/mnt/trollshotlol@maeve/Music/nameless×とあ/212/01 リグレット.mp3 +/mnt/trollshotlol@maeve/Music/nameless×とあ/212/02 パズルガール.mp3 +/mnt/trollshotlol@maeve/Music/nameless×とあ/212/03 てをつないだらさようなら.mp3 +/mnt/trollshotlol@maeve/Music/nameless×とあ/212/04 ツギハギスタッカート.mp3 +/mnt/trollshotlol@maeve/Music/nameless×とあ/212/05 静夢.mp3 +/mnt/trollshotlol@maeve/Music/nameless×とあ/212/06 シクス.mp3 +/mnt/trollshotlol@maeve/Music/nameless×とあ/212/07 M.mp3 +/mnt/trollshotlol@maeve/Music/nameless×とあ/212/08 恋の才能.mp3 +/mnt/trollshotlol@maeve/Music/nameless×とあ/212/09 ミュージックミュージック.mp3 +/mnt/trollshotlol@maeve/Music/nameless×とあ/212/10 ランプ.mp3 +/mnt/trollshotlol@maeve/Music/nameless×とあ/212/11 アイシテ.mp3 +/mnt/trollshotlol@maeve/Music/nameless×とあ/212/12 『13』.mp3 +/mnt/trollshotlol@maeve/Music/Neutral Milk Hotel/In the Aeroplane Over the Sea/01 The King of Carrot Flowers, Pt. One.mp3 +/mnt/trollshotlol@maeve/Music/Neutral Milk Hotel/In the Aeroplane Over the Sea/02 The King of Carrot Flowers, Pts. Two & Three.mp3 +/mnt/trollshotlol@maeve/Music/Neutral Milk Hotel/In the Aeroplane Over the Sea/03 In the Aeroplane Over the Sea.mp3 +/mnt/trollshotlol@maeve/Music/Neutral Milk Hotel/In the Aeroplane Over the Sea/04 Two-Headed Boy.mp3 +/mnt/trollshotlol@maeve/Music/Neutral Milk Hotel/In the Aeroplane Over the Sea/05 The Fool.mp3 +/mnt/trollshotlol@maeve/Music/Neutral Milk Hotel/In the Aeroplane Over the Sea/06 Holland, 1945.mp3 +/mnt/trollshotlol@maeve/Music/Neutral Milk Hotel/In the Aeroplane Over the Sea/07 Communist Daughter.mp3 +/mnt/trollshotlol@maeve/Music/Neutral Milk Hotel/In the Aeroplane Over the Sea/08 Oh Comely.mp3 +/mnt/trollshotlol@maeve/Music/Neutral Milk Hotel/In the Aeroplane Over the Sea/09 Ghost.mp3 +/mnt/trollshotlol@maeve/Music/Neutral Milk Hotel/In the Aeroplane Over the Sea/10 [untitled].mp3 +/mnt/trollshotlol@maeve/Music/Neutral Milk Hotel/In the Aeroplane Over the Sea/11 Two-Headed Boy, Pt. Two.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/01 Catch!.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/02 Usagi Funk.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/03 Home.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/04 Dance_.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/05 Love You.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/06 ShortCake.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/07 Suki_ Suki!.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/08 Koi.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/09 Lovely!.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/10 Patchwork Love.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/11 Destiny.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/12 Keep On.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/13 I Like It.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/14 Love Me Like You Do.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/15 Nighty Night.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/16 Reversible Love.mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/17 Shimasyou! (Do It!).mp3 +/mnt/trollshotlol@maeve/Music/Night Tempo/Fantasy/18 b a e.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/SCHOOL GIRL DISTORTIONAL ADDICT/01 タッチ.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/SCHOOL GIRL DISTORTIONAL ADDICT/02 PIXIE DÜ.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/SCHOOL GIRL DISTORTIONAL ADDICT/03 裸足の季節.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/SCHOOL GIRL DISTORTIONAL ADDICT/04 YOUNG GIRL SEVENTEEN SEXUALLY KNOWING.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/SCHOOL GIRL DISTORTIONAL ADDICT/05 桜のダンス.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/SCHOOL GIRL DISTORTIONAL ADDICT/06 日常に生きる少女.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/SCHOOL GIRL DISTORTIONAL ADDICT/07 狂って候.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/SCHOOL GIRL DISTORTIONAL ADDICT/08 透明少女.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/SCHOOL GIRL DISTORTIONAL ADDICT/09 転校生.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/SCHOOL GIRL DISTORTIONAL ADDICT/10 EIGHT BEATER.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/NUM-HEAVYMETALLIC/01 NUM-HEAVYMETALLIC.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/NUM-HEAVYMETALLIC/02 INUZINI.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/NUM-HEAVYMETALLIC/03 NUM-AMI-DABUTZ.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/NUM-HEAVYMETALLIC/04 Tombo the electric bloodred.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/NUM-HEAVYMETALLIC/05 delayed brain.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/NUM-HEAVYMETALLIC/06 CIBICCOさん.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/NUM-HEAVYMETALLIC/07 MANGA SICK.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/NUM-HEAVYMETALLIC/08 FU・SI・GI.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/NUM-HEAVYMETALLIC/09 性的少女.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/NUM-HEAVYMETALLIC/10 Frustration in my blood.mp3 +/mnt/trollshotlol@maeve/Music/NUMBER GIRL/NUM-HEAVYMETALLIC/11 黒目がちな少女.mp3 +/mnt/trollshotlol@maeve/Music/Ogre You Asshole/OGRE YOU ASSHOLE/01 また明日.mp3 +/mnt/trollshotlol@maeve/Music/Ogre You Asshole/OGRE YOU ASSHOLE/02 ユーレイ.mp3 +/mnt/trollshotlol@maeve/Music/Ogre You Asshole/OGRE YOU ASSHOLE/03 タニシ.mp3 +/mnt/trollshotlol@maeve/Music/Ogre You Asshole/OGRE YOU ASSHOLE/04 カイセントウ.mp3 +/mnt/trollshotlol@maeve/Music/Ogre You Asshole/OGRE YOU ASSHOLE/05 カポ.mp3 +/mnt/trollshotlol@maeve/Music/Ogre You Asshole/OGRE YOU ASSHOLE/06 どっちかの角.mp3 +/mnt/trollshotlol@maeve/Music/Ogre You Asshole/OGRE YOU ASSHOLE/07 ロボトミー.mp3 +/mnt/trollshotlol@maeve/Music/Ogre You Asshole/OGRE YOU ASSHOLE/08 J.N.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/01 Datsu . Hikage No Onna.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/02 Akimahenka.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/03 S'il vous plait.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/04 Bakuro Book.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/05 What Do You Mean You Have Talk to Me at This Late Date_.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/06 Introduce Me to Your Family.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/07 Love Is Short.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/08 Bad Luck.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/09 Don't Light My Fire.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/10 6 Day Working Week Is a Pain.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/11 Binge Eating Binge Drinking Bulimia.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/12 I'm Tired of Your Repeating Story.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/13 Anata Watashi Daita Ato Yome No Meshi.mp3 +/mnt/trollshotlol@maeve/Music/Otoboke Beaver/Itekoma Hits/14 Ikezu.mp3 +/mnt/trollshotlol@maeve/Music/Otomo Yoshihide’s New Jazz Ensemble/Dreams/01 Preach.mp3 +/mnt/trollshotlol@maeve/Music/Otomo Yoshihide’s New Jazz Ensemble/Dreams/02 Yume.mp3 +/mnt/trollshotlol@maeve/Music/Otomo Yoshihide’s New Jazz Ensemble/Dreams/03 Good Morning.mp3 +/mnt/trollshotlol@maeve/Music/Otomo Yoshihide’s New Jazz Ensemble/Dreams/04 Teinen Pushiganga.mp3 +/mnt/trollshotlol@maeve/Music/Otomo Yoshihide’s New Jazz Ensemble/Dreams/05 Toi Hibiki.mp3 +/mnt/trollshotlol@maeve/Music/Otomo Yoshihide’s New Jazz Ensemble/Dreams/06 Eureka.mp3 +/mnt/trollshotlol@maeve/Music/Otomo Yoshihide’s New Jazz Ensemble/Dreams/07 Hahen Fukei.mp3 +/mnt/trollshotlol@maeve/Music/OxT/UNION/01 UNION.mp3 +/mnt/trollshotlol@maeve/Music/OxT/UNION/02 夢のヒーロー (OxT ver).mp3 +/mnt/trollshotlol@maeve/Music/OxT/UNION/03 UNION (Instrumental).mp3 +/mnt/trollshotlol@maeve/Music/OxT/UNION/04 夢のヒーロー (OxT ver) (Instrumental).mp3 +/mnt/trollshotlol@maeve/Music/Party In Backyard & PewDiePie/Bitch Lasagna/01 Bitch Lasagna.opus +/mnt/trollshotlol@maeve/Music/Paul Hardcastle _ Pigbag/Papa's Got A Brand New Pigbag/01 Papa's Got a Brand New Pigbag.flac +/mnt/trollshotlol@maeve/Music/Paul Hardcastle _ Pigbag/Papa's Got A Brand New Pigbag/02 Papa's Got a Brand New Pigbag.flac +/mnt/trollshotlol@maeve/Music/Perfume/GAME/01 ポリリズム.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/GAME/02 plastic smile.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/GAME/03 GAME.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/GAME/04 Baby cruising Love.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/GAME/05 チョコレイト・ディスコ.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/GAME/06 マカロニ.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/GAME/07 セラミックガール.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/GAME/08 Take me Take me.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/GAME/09 シークレットシークレット.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/GAME/10 Butterfly.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/GAME/11 Twinkle Snow Powdery Snow.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/GAME/12 Puppy love.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/⊿/01 Take Off.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/⊿/02 Love the World.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/⊿/03 Dream Fighter.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/⊿/04 Edge (Triangle-Mix).mp3 +/mnt/trollshotlol@maeve/Music/Perfume/⊿/05 Night Flight.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/⊿/06 Kiss and Music.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/⊿/07 Zero Gravity.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/⊿/08 I Still Love U.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/⊿/09 The Best Thing.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/⊿/10 Speed of Sound.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/⊿/11 One Room Disco.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/⊿/12 Negai (Album-Mix).mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/01 Enter the Sphere.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/02 Spring of Life (Album-mix).mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/03 Magic of Love (Album-mix).mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/04 Clockwork.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/05 1mm.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/06 未来のミュージアム.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/07 Party Maker.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/08 ふりかえるといるよ.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/09 ポイント.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/10 だいじょばない.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/11 Handy Man.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/12 Sleeping Beauty.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/13 Spending all my time (Album-mix).mp3 +/mnt/trollshotlol@maeve/Music/Perfume/LEVEL3/14 Dream Land.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Cling Cling/01 Cling Cling.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Cling Cling/02 Hold Your Hand.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Cling Cling/03 DISPLAY.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Cling Cling/04 いじわるなハロー.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Cling Cling/05 Cling Cling -Original Instrumental-.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Cling Cling/06 Hold Your Hand -Original Instrumental-.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Cling Cling/07 DISPLAY -Original Instrumental-.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Cling Cling/08 いじわるなハロー -Original Instrumental-.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/01 The Opening.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/02 レーザービーム (Album-mix).mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/03 GLITTER (Album-mix).mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/04 ナチュラルに恋して.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/05 MY COLOR.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/06 時の針.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/07 ねぇ.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/08 微かなカオリ.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/09 575.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/10 VOICE.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/11 心のスポーツ.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/12 Have a Stroll.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/13 不自然なガール.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/JPN/14 スパイス.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/01 Navigate.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/02 Cosmic Explorer.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/03 Miracle Worker.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/04 Next Stage with YOU.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/05 STORY.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/06 FLASH (Album-mix).mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/07 Sweet Refrain (Album-mix).mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/08 Baby Face.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/09 TOKIMEKI LIGHTS (Album-mix).mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/10 STAR TRAIN (Album-mix).mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/11 Relax In The City.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/12 Pick Me Up.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/13 Cling Cling (Album-mix).mp3 +/mnt/trollshotlol@maeve/Music/Perfume/COSMIC EXPLORER/14 Hold Your Hand.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Future Pop/01 Start-Up.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Future Pop/02 Future Pop.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Future Pop/03 If you wanna.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Future Pop/04 TOKYO GIRL.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Future Pop/05 FUSION.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Future Pop/06 Tiny Baby.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Future Pop/07 Let Me Know.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Future Pop/08 超来輪.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Future Pop/09 無限未来.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Future Pop/10 宝石の雨.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Future Pop/11 天空.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/Future Pop/12 Everyday.mp3 +/mnt/trollshotlol@maeve/Music/Perfume/ナナナナナイロ/01 ナナナナナイロ.mp3 +/mnt/trollshotlol@maeve/Music/Pink Neon Tokyo/Single Collection Vol.2/04 September.flac +/mnt/trollshotlol@maeve/Music/PSYQUI feat. Such/ヒステリックナイトガール/01 ヒステリックナイトガール (android52 edit).m4a +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/01 Dream Lantern.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/02 School Road.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/03 Itomori Highschool.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/04 First View of Tokyo.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/05 Café at Last.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/06 Theme of Ms. Okudera.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/07 Unusual Changes of Two.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/08 Zenzenzense (Movie Version).mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/09 Goshintai.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/10 Date.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/11 Autumn Festival.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/12 Evoking Memories.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/13 Visit to Hida.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/14 Disappeared Town.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/15 Library.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/16 The Night Inn.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/17 Again to Goshintai.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/18 Kuchikamizake Trip.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/19 Council of War.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/20 Persuading Mayor.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/21 Theme of Mitsuha.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/22 Unseen Two.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/23 Katawaredoki.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/24 Sparkle (Movie Version).mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/25 Date 2.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/26 Nandemonaiya (Movie Edit).mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/27 Nandemonaiya (Movie Version).mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/01 Theme of _Weathering With You_.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/02 The Taste of Kindness.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/03 First Visit to K&A.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/04 Welcome to Senpikan.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/05 K&A Welcoming Ceremony.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/06 Voice of Wind (movie edit).mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/07 Saving Hina.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/08 Sky Clearing Up.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/09 Sea in the Sky.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/10 Visiting Home.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/11 First Part Time Job as Sunshine Girl.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/12 Celebration (movie edit).mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/13 Fireworks Festival.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/14 Shrine of Weather.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/15 Shiba Ko-En.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/16 Two Confessions.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/17 City Crisis.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/18 Snow in Midsummer.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/19 Power of the Weather.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/20 Time With Family.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/21 Hina, Fading Away.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/22 Eternity Above Clouds.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/23 Clear Sky and Loss.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/24 Hodaka Escapes _ Kid's Plot.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/25 Bike Chasing.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/26 Running With Hina.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/27 Is There Still Anything That Love Can Do_ (movie edit).mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/28 Grand Escape (movie edit).mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/29 Rain Again.mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/30 We'll Be Alright (movie edit).mp3 +/mnt/trollshotlol@maeve/Music/RADWIMPS/Weathering With You/31 Is There Still Anything That Love Can Do_.mp3 +/mnt/trollshotlol@maeve/Music/ギガP/No title−/01 -Opening-.mp3 +/mnt/trollshotlol@maeve/Music/ギガP/No title−/02 ヒビカゼ.mp3 +/mnt/trollshotlol@maeve/Music/ギガP/No title−/03 オオエドランヴ.mp3 +/mnt/trollshotlol@maeve/Music/ギガP/No title−/04 drop pop candy.mp3 +/mnt/trollshotlol@maeve/Music/ギガP/No title−/05 -Interlude-.mp3 +/mnt/trollshotlol@maeve/Music/ギガP/No title−/06 No title.mp3 +/mnt/trollshotlol@maeve/Music/ギガP/No title−/07 Echo.mp3 +/mnt/trollshotlol@maeve/Music/ギガP/No title−/08 -BWW SCREAM-.mp3 +/mnt/trollshotlol@maeve/Music/ギガP/No title−/09 アシンメトリー.mp3 +/mnt/trollshotlol@maeve/Music/ギガP/No title−/10 ギガンティックO.T.N -Big Death Edition-.mp3 +/mnt/trollshotlol@maeve/Music/ギガP/No title−/11 -Ending-.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/01 Vip Kid.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/02 Give Me a Break Stop Now.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/03 Yoiyoi Kokon.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/04 Konoyo Loading.._.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/05 Re_.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/06 Lunatic.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/07 Kamisama Ni Nattahi.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/08 Chiruchiru.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/09 -Final Sigma-.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/10 Detarame Kidding.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/11 Summer Horror Party.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/12 404 Not Found.mp3 +/mnt/trollshotlol@maeve/Music/Reol/Sigma/13 Viora.mp3 +/mnt/trollshotlol@maeve/Music/Reol/エンドレスEP/01 ニュータイプトーキョー.mp3 +/mnt/trollshotlol@maeve/Music/Reol/エンドレスEP/02 B12.mp3 +/mnt/trollshotlol@maeve/Music/Reol/エンドレスEP/03 エンドレスライン.mp3 +/mnt/trollshotlol@maeve/Music/Reol/エンドレスEP/04 LUVORATORRRRRY!.mp3 +/mnt/trollshotlol@maeve/Music/Reol/事実上/01 幽居のワルツ.mp3 +/mnt/trollshotlol@maeve/Music/Reol/事実上/02 サイサキ.mp3 +/mnt/trollshotlol@maeve/Music/Reol/事実上/03 激白.mp3 +/mnt/trollshotlol@maeve/Music/Reol/事実上/04 十中八九.mp3 +/mnt/trollshotlol@maeve/Music/Reol/事実上/05 煩悩遊戯.mp3 +/mnt/trollshotlol@maeve/Music/Reol/事実上/06 –MANDARA FACT–.mp3 +/mnt/trollshotlol@maeve/Music/Reol/事実上/07 真空オールドローズ.mp3 +/mnt/trollshotlol@maeve/Music/Reol/事実上/08 ミラージュ.mp3 +/mnt/trollshotlol@maeve/Music/Reol/事実上/09 SAIREN.mp3 +/mnt/trollshotlol@maeve/Music/Reol/事実上/10 秋映.mp3 +/mnt/trollshotlol@maeve/Music/Reol/事実上/11 劣等上等.mp3 +/mnt/trollshotlol@maeve/Music/Reol/金字塔/01 金字塔.mp3 +/mnt/trollshotlol@maeve/Music/Reol/金字塔/02 HYPE MODE.mp3 +/mnt/trollshotlol@maeve/Music/Reol/金字塔/03 ゆーれいずみー.mp3 +/mnt/trollshotlol@maeve/Music/Reol/金字塔/04 -ムーブのための試奏曲 Nr.4-.mp3 +/mnt/trollshotlol@maeve/Music/Reol/金字塔/05 ハーメルン.mp3 +/mnt/trollshotlol@maeve/Music/Reol/金字塔/06 un, deux, trois.mp3 +/mnt/trollshotlol@maeve/Music/Reol/金字塔/07 insider.mp3 +/mnt/trollshotlol@maeve/Music/Reol/金字塔/08 ダリ.mp3 +/mnt/trollshotlol@maeve/Music/Reol/金字塔/09 -ルネの小品 Nr.9-.mp3 +/mnt/trollshotlol@maeve/Music/Reol/金字塔/10 GRIMOIRE.mp3 +/mnt/trollshotlol@maeve/Music/Reol/金字塔/11 1LDK.mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/01 Dynasty.mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/02 XS.mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/03 STFU!.mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/04 Comme des garcons (Like the Boys).mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/05 Akasaka Sad.mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/06 Paradisin’.mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/07 Love Me 4 Me.mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/08 Bad Friend.mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/09 Fuck This World (interlude).mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/10 Who’s Gonna Save U Now_.mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/11 Tokyo Love Hotel.mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/12 Chosen Family.mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/13 Snakeskin.mp3 +/mnt/trollshotlol@maeve/Music/Rina Sawayama/SAWAYAMA/14 Tokyo Takeover.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Scenery/01 It Could Happen To You.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Scenery/02 I Want To Talk About You.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Scenery/03 Early Summer.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Scenery/04 Willow Weep For Me.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Scenery/05 Autumn Leaves.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Scenery/06 Scenery.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Mellow Dream/01 Mellow Dream.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Mellow Dream/02 My Foolish Heart.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Mellow Dream/03 Baron Potato Blues.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Mellow Dream/04 What’s New.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Mellow Dream/05 Horizon.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Mellow Dream/06 My Funny Valentine.mp3 +/mnt/trollshotlol@maeve/Music/福居良/Mellow Dream/07 Early Summer ’06.mp3 +/mnt/trollshotlol@maeve/Music/福居良/My Favorite Tune/01 Voyage.mp3 +/mnt/trollshotlol@maeve/Music/福居良/My Favorite Tune/02 Scenery.mp3 +/mnt/trollshotlol@maeve/Music/福居良/My Favorite Tune/03 Mellow Dream.mp3 +/mnt/trollshotlol@maeve/Music/福居良/My Favorite Tune/04 Nobody Knows The Trouble I've Seen.mp3 +/mnt/trollshotlol@maeve/Music/福居良/My Favorite Tune/05 Nobody's.mp3 +/mnt/trollshotlol@maeve/Music/福居良/My Favorite Tune/06 My Conception.mp3 +/mnt/trollshotlol@maeve/Music/福居良/My Favorite Tune/07 After Hours.mp3 +/mnt/trollshotlol@maeve/Music/福居良/My Favorite Tune/08 Nord.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 2/01 Close to your Mind.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 2/02 darling, would you catch me_.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 2/03 Acoustic Image.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 2/04 アリスのボサノバ.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 2/05 relative relation (it's all about).mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 2/06 Etupirka, Angelica.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 2/07 白玉茶屋in冥土.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 2/08 ナルキッソスにさよなら.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 2/09 タイニーリトル・アジアンタム.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 2/10 Full Moon Samba.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 2/11 なんてことない日.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/Adrastea/01 Cosmic flower.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/Adrastea/02 AURORA.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/Adrastea/03 SUPER MOON.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/Adrastea/04 スイングバイ.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/Adrastea/05 モノクロ・インザナイト.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/Adrastea/06 賢者の極北.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/Adrastea/07 MyonMyonMyonMyonMyonMyonMyonMyon!.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/Adrastea/08 クライム・ストーリーときみのウソ.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 5/01 町中ドライブ.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 5/02 春のおとずれ.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 5/03 ヴェルニゲローデの車窓から.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 5/04 黄昏は真珠色.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 5/05 Give up on it.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 5/06 marisanha.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 5/07 サグメさま3分クッキング.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 7/01 木漏れ日の書斎から.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 7/02 fluindo.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 7/03 solitary girl.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 7/04 Read Some Romance.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 7/05 おひるやすみの絵宇宙話.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 7/06 ムーンライト・アニマルトレイル.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 7/07 Girls loved by breeze.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 7/08 Black lily Princess.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 8/01 soda pop ice cream.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 8/02 Ghost flight in the sky.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 8/03 流星をくぐって.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 8/04 Love me do.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 8/05 Insane Stoicism.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 8/06 食べ歩き魂.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 8/07 もくもくのくも、隣でいっしょに.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 8/08 querida ilusão.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 8/09 ふわふわどれみー.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 9/01 ハッピー・チキン・ポップ.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 9/02 風花の帳.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 9/03 アスタ・ラ・ビスタ.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 9/04 música noturna.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 9/05 ふじやま、登るけぇの.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 9/06 MUKOU NO BEACH.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 9/07 さかさまバブル.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 9/08 First note.mp3 +/mnt/trollshotlol@maeve/Music/Shibayan Records/TOHO BOSSA NOVA 9/09 sunset chant.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/01 Star Guitar.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/02 Detonator.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/03 Electro411.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/04 Our Song.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/05 Dreamhunt.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/06 Push.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/07 Rendezvous.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/08 The Patch.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/09 Last Days.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/10 State of Permission.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/11 Foals.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/12 The Golden.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/13 Maximum Joy.mp3 +/mnt/trollshotlol@maeve/Music/Shinichi Osawa/The One/14 Ami Nu Ku Tuu (The One version).mp3 +/mnt/trollshotlol@maeve/Music/SILENT SIREN/GIRLS POWER/01 フジヤマディスコ.m4a +/mnt/trollshotlol@maeve/Music/SILENT SIREN/GIRLS POWER/02 merry-go-round.m4a +/mnt/trollshotlol@maeve/Music/SILENT SIREN/GIRLS POWER/03 KNiFE.m4a +/mnt/trollshotlol@maeve/Music/SILENT SIREN/GIRLS POWER/04 Love Balloon.m4a +/mnt/trollshotlol@maeve/Music/SILENT SIREN/GIRLS POWER/05 パパヤパヤパ.m4a +/mnt/trollshotlol@maeve/Music/SILENT SIREN/GIRLS POWER/06 ジャストミート.m4a +/mnt/trollshotlol@maeve/Music/SILENT SIREN/GIRLS POWER/07 AKANE.m4a +/mnt/trollshotlol@maeve/Music/SILENT SIREN/GIRLS POWER/08 フユメグ.m4a +/mnt/trollshotlol@maeve/Music/SILENT SIREN/GIRLS POWER/09 さくら咲く青い春.m4a +/mnt/trollshotlol@maeve/Music/SILENT SIREN/GIRLS POWER/10 Kaleidoscope.m4a +/mnt/trollshotlol@maeve/Music/SILENT SIREN/GIRLS POWER/11 ODOREmotion.m4a +/mnt/trollshotlol@maeve/Music/SILENT SIREN/GIRLS POWER/12 さよなら日比谷.m4a +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs/01 Thinkin' of u_.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs/02 ラ・ム・ネ (ra-mu-ne).mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs/03 Cocoa.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs/04 [snowlight].mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs/05 I'm Curious~_3.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs/06 Look at me ~_3.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs/07 La La La.._.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs/08 ♫.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs/09 aid for your heart.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs/10 It's gonna be alright.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs/11 fuka fuka ofuton.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs 2/01 introduction.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs 2/02 white day.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs 2/03 walking on snow.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs 2/04 fizzy resort.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs 2/05 hot milk.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs 2/06 Cappuccino.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Ordinary Songs 2/07 sweetheart.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Snö/01 Snö (Intro).mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Snö/02 [covered in white].mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Snö/03 [snowdrift].mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Snö/04 [fluttering].mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Snö/05 thaw (interlude).mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Snö/06 [whiteout].mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Snö/07 [waiting for you, waiting for you.].mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Snö/08 雪の降る街で、あなたを待っている。.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Snö/09 Farewell.mp3 +/mnt/trollshotlol@maeve/Music/Snail’s House/Snö/10 see you again (outro).mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/01 MEMAI.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/02 SUMMER GODDESS.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/03 WORLDWIDE.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/04 Crush!.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/05 SABOTAGE.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/06 SCOOP OUT.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/07 SAHARA.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/08 破片.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/09 THE BLACK WIDOW BLUES.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/10 THE WHITE WIDOW.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/11 i-rony.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/12 LAST LONG.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/Pimp of The Year/13 SATSURIKU ニューウェイブ.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/01 Seven (Intro Sound Collage by DJ KENTARO).mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/02 Keizoku.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/03 Papa's Got a Brand New Pigbag.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/04 My Foolish Heart 〜 Crazy in Mind 〜.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/05 Double Trouble.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/06 Pop Korn.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/07 Quartz and Chronometer.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/08 Paraiso.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/09 My Foolish Heart 〜 Crazy on Earth 〜.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/10 Mirror Boy.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/11 Stolen Moments.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/12 After the Party.mp3 +/mnt/trollshotlol@maeve/Music/SOIL&“PIMP”SESSIONS/6/13 殺戮と平和.mp3 +/mnt/trollshotlol@maeve/Music/SOPHIE/Faceshopping/01 Faceshopping.mp3 +/mnt/trollshotlol@maeve/Music/Spazzkid/Promise/02 Truly (feat. Sarah Bonito).flac +/mnt/trollshotlol@maeve/Music/SUPERCAR/HIGHVISION/01 STARLINE.mp3 +/mnt/trollshotlol@maeve/Music/SUPERCAR/HIGHVISION/02 WARNING BELL.mp3 +/mnt/trollshotlol@maeve/Music/SUPERCAR/HIGHVISION/03 STORYWRITER.mp3 +/mnt/trollshotlol@maeve/Music/SUPERCAR/HIGHVISION/04 AOHARU YOUTH.mp3 +/mnt/trollshotlol@maeve/Music/SUPERCAR/HIGHVISION/05 OTOGI NATION.mp3 +/mnt/trollshotlol@maeve/Music/SUPERCAR/HIGHVISION/06 STROBOLIGHTS.mp3 +/mnt/trollshotlol@maeve/Music/SUPERCAR/HIGHVISION/07 I.mp3 +/mnt/trollshotlol@maeve/Music/SUPERCAR/HIGHVISION/08 YUMEGIWA LAST BOY.mp3 +/mnt/trollshotlol@maeve/Music/SUPERCAR/HIGHVISION/09 NIJIIRO DARKNESS.mp3 +/mnt/trollshotlol@maeve/Music/SUPERCAR/HIGHVISION/10 SILENT YARITORI.mp3 +/mnt/trollshotlol@maeve/Music/Tessa Violet/Crush/01 Crush.mp3 +/mnt/trollshotlol@maeve/Music/THE ORAL CIGARETTES/FIXION/01 気づけよBaby.mp3 +/mnt/trollshotlol@maeve/Music/THE ORAL CIGARETTES/FIXION/02 狂乱 Hey Kids!!.mp3 +/mnt/trollshotlol@maeve/Music/THE ORAL CIGARETTES/FIXION/03 MIRROR.mp3 +/mnt/trollshotlol@maeve/Music/THE ORAL CIGARETTES/FIXION/04 STAY ONE.mp3 +/mnt/trollshotlol@maeve/Music/THE ORAL CIGARETTES/FIXION/05 エイミー.mp3 +/mnt/trollshotlol@maeve/Music/THE ORAL CIGARETTES/FIXION/06 マナーモード.mp3 +/mnt/trollshotlol@maeve/Music/THE ORAL CIGARETTES/FIXION/07 通り過ぎた季節の空で.mp3 +/mnt/trollshotlol@maeve/Music/THE ORAL CIGARETTES/FIXION/08 カンタンナコト.mp3 +/mnt/trollshotlol@maeve/Music/THE ORAL CIGARETTES/FIXION/09 A‐E‐U‐I.mp3 +/mnt/trollshotlol@maeve/Music/THE ORAL CIGARETTES/FIXION/10 Everything.mp3 +/mnt/trollshotlol@maeve/Music/TK/unravel/01 unravel.mp3 +/mnt/trollshotlol@maeve/Music/TK/unravel/02 Fu re te Fu re ru.mp3 +/mnt/trollshotlol@maeve/Music/TK/unravel/03 Acoustic Installation.mp3 +/mnt/trollshotlol@maeve/Music/TK/unravel/04 unravel (TV edit).mp3 +/mnt/trollshotlol@maeve/Music/toe/the book about my idle plot on a vague anxiety/01 反逆する風景.mp3 +/mnt/trollshotlol@maeve/Music/toe/the book about my idle plot on a vague anxiety/02 孤独の発明.mp3 +/mnt/trollshotlol@maeve/Music/toe/the book about my idle plot on a vague anxiety/03 tremolo+delay.mp3 +/mnt/trollshotlol@maeve/Music/toe/the book about my idle plot on a vague anxiety/04 向こう岸が視る夢.mp3 +/mnt/trollshotlol@maeve/Music/toe/the book about my idle plot on a vague anxiety/05 all i understand is that i don't understand.mp3 +/mnt/trollshotlol@maeve/Music/toe/the book about my idle plot on a vague anxiety/06 c.mp3 +/mnt/trollshotlol@maeve/Music/toe/the book about my idle plot on a vague anxiety/07 past and language.mp3 +/mnt/trollshotlol@maeve/Music/toe/the book about my idle plot on a vague anxiety/08 music for you.mp3 +/mnt/trollshotlol@maeve/Music/toe/the book about my idle plot on a vague anxiety/09 i do still wrong.mp3 +/mnt/trollshotlol@maeve/Music/toe/the book about my idle plot on a vague anxiety/10 メトロノーム.mp3 +/mnt/trollshotlol@maeve/Music/toe/the book about my idle plot on a vague anxiety/11 everything means nothing.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment/01 a caged persona.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment/09 Burning Rum Tea.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment/03 Fall Coin Sunset.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment/04 In The Shade.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment/05 Labyrinth.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment/07 No More News.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment/08 Parfait Amour.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment/06 tea break.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment/10 Un Fiore Rosso (Take1).mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment/02 voyage Gothic Bold.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment 2/01 Un Fiore Rosa (TakeB1).mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment 2/02 Sparrowtail.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment 2/03 asian samba.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment 2/04 Lucondium.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment 2/05 Color del amor.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment 2/06 Red Eye.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment 2/07 in the room.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment 2/08 Nestikinz.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment 2/09 narciso.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment 2/10 Para la princesa tarde.mp3 +/mnt/trollshotlol@maeve/Music/Toho Jazz Messengers/girls apartment 2/11 三月より西へ.mp3 +/mnt/trollshotlol@maeve/Music/Tomggg/Butter Sugar Cream/01 Butter Sugar Cream.mp3 +/mnt/trollshotlol@maeve/Music/Tomggg/Butter Sugar Cream/02 Chocoholic.mp3 +/mnt/trollshotlol@maeve/Music/Tomggg/Butter Sugar Cream/03 Caramel Popcorn.mp3 +/mnt/trollshotlol@maeve/Music/Tomggg/Butter Sugar Cream/04 Wedding Cake.mp3 +/mnt/trollshotlol@maeve/Music/Tomggg/Butter Sugar Cream/05 Butter Sugar Cream (Maxo Beammix).mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/01 pool side.mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/02 POOL.mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/03 飛べ.mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/04 おもてなし.mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/05 artsick.mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/06 C&C.mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/07 おちゃんせんすぅす.mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/08 初耳.mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/09 99.974℃.mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/10 タラッタラッタ.mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/11 CGPP.mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/12 Swimmer.mp3 +/mnt/trollshotlol@maeve/Music/tricot/T H E/13 おやすみ.mp3 +/mnt/trollshotlol@maeve/Music/tricot/A N D/01 Noradrenaline.mp3 +/mnt/trollshotlol@maeve/Music/tricot/A N D/02 走れ.mp3 +/mnt/trollshotlol@maeve/Music/tricot/A N D/03 E.mp3 +/mnt/trollshotlol@maeve/Music/tricot/A N D/04 色の無い水槽.mp3 +/mnt/trollshotlol@maeve/Music/tricot/A N D/05 神戸ナンバー.mp3 +/mnt/trollshotlol@maeve/Music/tricot/A N D/06 消える.mp3 +/mnt/trollshotlol@maeve/Music/tricot/A N D/07 ぱい~ん A N D ver_.mp3 +/mnt/trollshotlol@maeve/Music/tricot/A N D/08 食卓.mp3 +/mnt/trollshotlol@maeve/Music/tricot/A N D/09 庭.mp3 +/mnt/trollshotlol@maeve/Music/tricot/A N D/10 CBG.mp3 +/mnt/trollshotlol@maeve/Music/tricot/A N D/11 QFF.mp3 +/mnt/trollshotlol@maeve/Music/tricot/A N D/12 Break.mp3 +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/01 混ぜるな危険.m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/02 右脳左脳.m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/03 あふれる.m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/04 みてて.m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/05 秘蜜.m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/06 低速道路.m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/07 順風満帆.m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/08 なか (Album ver.).m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/09 ワンシーズン.m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/10 危なくなく無い街へ.m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/11 真っ白.m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/12 真っ黒.m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/13 ブームに乗って.m4a +/mnt/trollshotlol@maeve/Music/tricot/真っ黒/14 Potage.m4a +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/04 Remember Me.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/01 Space Boy.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/02 No One Sleep in Tokyo.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/03 Be My Babe.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/05 Spark in the Dark.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/06 Don’t Stop the Music.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/07 Dance Around the World.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/08 Get Me Power.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/09 Running in the 90s.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/10 Heartbeat.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/11 Break the Night.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/12 Back on the Rocks.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/13 Save Me.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/14 My Only Star.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/SUPER EUROBEAT presents INITIAL D 〜D SELECTION〜/15 around the world (Dave Rodgers remix).mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/01 Speedy Speed Boys.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/02 Mikado.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/03 Station to Station.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/04 Big in Japan.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/05 Don't You (Forget About My Love).mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/06 I Like You Like You Are.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/07 Take My Soul.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/08 Ever and Ever.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/09 Make Up Your Mind.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/10 Goodbye Yellow Brick Road.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/11 Burning Desire.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/12 100.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/13 Make My Day.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/14 Gimme the Night.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/15 Deja Vu.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/16 Grand Prix.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Second Stage Non-Stop Selection/17 D Vocal Battle Special Mega-Mix.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/mikgazer vol.1/01 嘘と絵画.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/mikgazer vol.1/02 Parachute.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/mikgazer vol.1/03 Alchemy.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/mikgazer vol.1/04 Twilight.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/mikgazer vol.1/05 flash back, 0217.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/mikgazer vol.1/06 ハクジツ.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/mikgazer vol.1/07 submarine.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/mikgazer vol.1/08 choco-mint flavor.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/mikgazer vol.1/09 Reincarnation.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/mikgazer vol.1/10 戸惑いと不協和.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/mikgazer vol.1/11 千年の雨の終わりに.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/mikgazer vol.1/12 ハルカ.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/01 Ddd Initial D (My Car Is Fantasy).mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/02 Gas Gas Gas.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/03 Runaway.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/04 I Want To Feel.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/05 Bye Bye Girl.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/06 On Your Wings.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/07 I Can't Stop Lovin' You.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/08 Full Metal Cars.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/09 When The Sun Goes Down.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/10 Breakin' Out.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/11 Come On Baby.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/12 Eyes Of Sky.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/13 Up & Dance, Up & Go.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/14 Limousine.mp3 +/mnt/trollshotlol@maeve/Music/Compilations/Super Eurobeat Presents Initial D Fifth Stage D Selection/15 Rockin' Hardcore.mp3 +/mnt/trollshotlol@maeve/Music/WhaleDontSleep/ねむるまち (feat. yama)/01 ねむるまち (feat. yama).mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Naughty Boys/01 Kimi ni Mune Kyun (Uwaki na Bakansu).mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Naughty Boys/02 Expected Way.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Naughty Boys/03 Focus.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Naughty Boys/04 Ongaku.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Naughty Boys/05 Opened My Eyes.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Naughty Boys/06 You've Got to Help Yourself.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Naughty Boys/07 Lotus Love.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Naughty Boys/08 Kai-Koh.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Naughty Boys/09 Expecting Rivers.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Naughty Boys/10 Wild Ambitions.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Yellow Magic Orchestra/01 Computer Game _Theme From Circus_.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Yellow Magic Orchestra/02 Firecracker.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Yellow Magic Orchestra/03 Simoon.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Yellow Magic Orchestra/04 Cosmic Surfin'.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Yellow Magic Orchestra/05 Computer Game _Theme From The Invader_.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Yellow Magic Orchestra/06 Tong Poo.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Yellow Magic Orchestra/07 La Femme Chinoise.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Yellow Magic Orchestra/08 Bridge Over Troubled Music.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Yellow Magic Orchestra/09 Mad Pierrot.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Yellow Magic Orchestra/10 Acrobat.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Solid State Survivor/01 Technopolis.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Solid State Survivor/02 Absolute Ego Dance.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Solid State Survivor/03 Rydeen.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Solid State Survivor/04 Castalia.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Solid State Survivor/05 Behind the Mask.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Solid State Survivor/06 Day Tripper.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Solid State Survivor/07 Insomnia.mp3 +/mnt/trollshotlol@maeve/Music/Yellow Magic Orchestra/Solid State Survivor/08 Solid State Survivor.mp3 +/mnt/trollshotlol@maeve/Music/YUC'e/macaron moon/01 Opening Theme.mp3 +/mnt/trollshotlol@maeve/Music/YUC'e/macaron moon/02 macaron moon.mp3 +/mnt/trollshotlol@maeve/Music/YUC'e/macaron moon/03 Night Club Junkie.mp3 +/mnt/trollshotlol@maeve/Music/YUC'e/macaron moon/04 Cappchino.mp3 +/mnt/trollshotlol@maeve/Music/YUC'e/macaron moon/05 Datte.mp3 +/mnt/trollshotlol@maeve/Music/YUC'e/macaron moon/06 Ending Theme.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/01 From HND to GMP.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/02 I FEEL LOVE.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/03 서울여자.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/04 네온.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/05 Yesterday.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/06 발걸음.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/07 안아줘.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/08 좋아하고 있어요.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/09 친구가 필요해.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/10 그늘.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/11 All flights are delayed.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/12 NEON 1989.mp3 +/mnt/trollshotlol@maeve/Music/YUKIKA/서울여자/13 좋아하고 있어요 (Acoustic Ver.).mp3 +/mnt/trollshotlol@maeve/Music/Yunomi feat. nicamoq/ゆのみっくにお茶して EP/06 おとぎ話の日々.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi feat. TORIENA/大江戸コントローラー EP/01 大江戸コントローラー.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi feat. TORIENA/大江戸コントローラー EP/02 惑星ラビット.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi feat. TORIENA/大江戸コントローラー EP/03 バンブーディスコ.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi feat. TORIENA/大江戸コントローラー EP/04 さよならインベーダー.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi feat. TORIENA/大江戸コントローラー EP/05 大江戸コントローラー (TORIENA remix).mp3 +/mnt/trollshotlol@maeve/Music/Yunomi feat. TORIENA/大江戸コントローラー EP/06 惑星ラビット (TORIENA remix).mp3 +/mnt/trollshotlol@maeve/Music/Yunomi feat. TORIENA/大江戸コントローラー EP/07 バンブーディスコ (TORIENA remix).mp3 +/mnt/trollshotlol@maeve/Music/Yunomi feat. TORIENA/大江戸コントローラー EP/08 さよならインベーダー (TORIENA remix).mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/01 めんたいコズミック.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/02 枕元にゴースト.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/03 ロボティックガール.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/04 インドア系ならトラックメイカー.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/05 ゆのみっくにお茶して.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/06 サンデーモーニングコーヒー.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/07 星降る夜のアデニウム.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/08 東京シュノーケル.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/09 守護霊.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/10 ココロフロート.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/11 ダンスフロアの果実.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/12 明けない夜、醒めない夢.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/13 神様の渦.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/14 銀河鉄道のペンギン.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/15 サ・ク・ラ・サ・ク.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/16 夢でまたあえたらなあ.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi/ゆのもきゅ/17 ハッピーライフ.mp3 +/mnt/trollshotlol@maeve/Music/Yunomi feat. 桃箱/ミラクルシュガーランド/01 ミラクルシュガーランド.flac +/mnt/trollshotlol@maeve/Music/Yunomi feat. ローラーガール/ジェリーフィッシュ/01 ジェリーフィッシュ.mp3 +/mnt/trollshotlol@maeve/Music/Zedd/Clarity/01 Hourglass.mp3 +/mnt/trollshotlol@maeve/Music/Zedd/Clarity/02 Shave It Up.mp3 +/mnt/trollshotlol@maeve/Music/Zedd/Clarity/03 Spectrum.mp3 +/mnt/trollshotlol@maeve/Music/Zedd/Clarity/04 Lost at Sea.mp3 +/mnt/trollshotlol@maeve/Music/Zedd/Clarity/05 Clarity.mp3 +/mnt/trollshotlol@maeve/Music/Zedd/Clarity/06 Codec.mp3 +/mnt/trollshotlol@maeve/Music/Zedd/Clarity/07 Stache.mp3 +/mnt/trollshotlol@maeve/Music/Zedd/Clarity/08 Fall Into the Sky.mp3 +/mnt/trollshotlol@maeve/Music/Zedd/Clarity/09 Follow You Down.mp3 +/mnt/trollshotlol@maeve/Music/Zedd/Clarity/10 Epos.mp3 +/mnt/trollshotlol@maeve/Music/Zedd & Alessia Cara/Stay/01 Stay.mp3 +/mnt/trollshotlol@maeve/Music/ZOMBIE-CHANG/ZOMBIE-CHANGE/01 ZOMBIE-CHANGE.mp3 +/mnt/trollshotlol@maeve/Music/ZOMBIE-CHANG/ZOMBIE-CHANGE/02 ARE YOU READY.mp3 +/mnt/trollshotlol@maeve/Music/ZOMBIE-CHANG/ZOMBIE-CHANGE/03 GOODBYE MY LOVE AND TURN AROUND.mp3 +/mnt/trollshotlol@maeve/Music/ZOMBIE-CHANG/ZOMBIE-CHANGE/04 LEMONADE.mp3 +/mnt/trollshotlol@maeve/Music/ZOMBIE-CHANG/ZOMBIE-CHANGE/05 PMS.mp3 +/mnt/trollshotlol@maeve/Music/ZOMBIE-CHANG/ZOMBIE-CHANGE/06 KURIKAESHITEIRU.mp3 +/mnt/trollshotlol@maeve/Music/ZOMBIE-CHANG/ZOMBIE-CHANGE/07 WASURETA.mp3 +/mnt/trollshotlol@maeve/Music/ZOMBIE-CHANG/ZOMBIE-CHANGE/08 SEMETE KANASHII TOKINIWA.mp3 +/mnt/trollshotlol@maeve/Music/ZOMBIE-CHANG/ZOMBIE-CHANGE/09 YOU AND HURTS.mp3 +/mnt/trollshotlol@maeve/Music/ZOMBIE-CHANG/ZOMBIE-CHANGE/10 KOREDE OWARI _.mp3 +/mnt/trollshotlol@maeve/Music/ZOMBIE-CHANG/WE SHOULD KISS - Single/01 WE SHOULD KISS.m4a +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/01 Alone intelligence.mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/02 Arcology On Permafrost.mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/03 [ns].mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/04 Σtealth-Δash.mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/05 FM Synthesis Experiment.mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/06 Together forever, my lovely lovely video game cartridges.mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/07 S.A.T.E.L.L.I.T.E_.mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/08 This Future (we didn't expect).mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/09 Upload Your Mind __ Download My Soul.mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/10 New Era.mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/11 Tojita Sekai.mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/12 Beyond the Geostationary Orbit Level.mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/13 Heart of Android _ Even If It's Only By Mechanism.mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/14 Embracing intelligences.mp3 +/mnt/trollshotlol@maeve/Music/かめりあ/heart of android/15 Bonus Track _ Quaoar (For _Thanks Follower 50k_).mp3 +/mnt/trollshotlol@maeve/Music/キズナアイ/hello, world/01 Hello, Morning.mp3 +/mnt/trollshotlol@maeve/Music/キズナアイ/hello, world/02 future base.mp3 +/mnt/trollshotlol@maeve/Music/キズナアイ/hello, world/03 new world.mp3 +/mnt/trollshotlol@maeve/Music/キズナアイ/hello, world/04 over the reality.mp3 +/mnt/trollshotlol@maeve/Music/キズナアイ/hello, world/05 miracle step.mp3 +/mnt/trollshotlol@maeve/Music/キズナアイ/hello, world/06 Hello, Morning (Pa's Lam System Remix).mp3 +/mnt/trollshotlol@maeve/Music/キズナアイ/hello, world/07 melty world.mp3 +/mnt/trollshotlol@maeve/Music/キズナアイ/hello, world/08 hello, alone.mp3 +/mnt/trollshotlol@maeve/Music/キズナアイ/hello, world/09 meet you.mp3 +/mnt/trollshotlol@maeve/Music/キズナアイ/hello, world/10 mirai.mp3 +/mnt/trollshotlol@maeve/Music/キズナアイ/hello, world/11 AIAIAI.mp3 +/mnt/trollshotlol@maeve/Music/きのこ帝国/eureka/01 夜鷹.mp3 +/mnt/trollshotlol@maeve/Music/きのこ帝国/eureka/02 平行世界.mp3 +/mnt/trollshotlol@maeve/Music/きのこ帝国/eureka/03 春と修羅.mp3 +/mnt/trollshotlol@maeve/Music/きのこ帝国/eureka/04 国道スロープ.mp3 +/mnt/trollshotlol@maeve/Music/きのこ帝国/eureka/05 ユーリカ.mp3 +/mnt/trollshotlol@maeve/Music/きのこ帝国/eureka/06 風化する教室.mp3 +/mnt/trollshotlol@maeve/Music/きのこ帝国/eureka/07 Another Word.mp3 +/mnt/trollshotlol@maeve/Music/きのこ帝国/eureka/08 ミュージシャン.mp3 +/mnt/trollshotlol@maeve/Music/きのこ帝国/eureka/09 明日にはすべてが終わるとして.mp3 +/mnt/trollshotlol@maeve/Music/きゃりーぱみゅぱみゅ/Nanda Collection/01 Nanda Collection.mp3 +/mnt/trollshotlol@maeve/Music/きゃりーぱみゅぱみゅ/Nanda Collection/02 Ninja Re Bang Bang.mp3 +/mnt/trollshotlol@maeve/Music/きゃりーぱみゅぱみゅ/Nanda Collection/03 Kimi ni 100 Percent.mp3 +/mnt/trollshotlol@maeve/Music/きゃりーぱみゅぱみゅ/Nanda Collection/04 Super Scooter Happy.mp3 +/mnt/trollshotlol@maeve/Music/きゃりーぱみゅぱみゅ/Nanda Collection/05 Invader Invader.mp3 +/mnt/trollshotlol@maeve/Music/きゃりーぱみゅぱみゅ/Nanda Collection/06 Me.mp3 +/mnt/trollshotlol@maeve/Music/きゃりーぱみゅぱみゅ/Nanda Collection/07 Fashion Monster.mp3 +/mnt/trollshotlol@maeve/Music/きゃりーぱみゅぱみゅ/Nanda Collection/08 Saigo No Icecream.mp3 +/mnt/trollshotlol@maeve/Music/きゃりーぱみゅぱみゅ/Nanda Collection/09 Noriko To Norio.mp3 +/mnt/trollshotlol@maeve/Music/きゃりーぱみゅぱみゅ/Nanda Collection/10 Furisodeshon.mp3 +/mnt/trollshotlol@maeve/Music/きゃりーぱみゅぱみゅ/Nanda Collection/11 Kura Kura.mp3 +/mnt/trollshotlol@maeve/Music/きゃりーぱみゅぱみゅ/Nanda Collection/12 Otona Na Kodomo.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/01 Tank!.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/02 RUSH.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/03 SPOKEY DOKEY.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/04 BAD DOG NO BISCUITS.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/05 CAT BLUES.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/06 COSMOS.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/07 SPACE LION.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/08 WALTZ for ZIZI.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/09 PIANO BLACK.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/10 POT CITY.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/11 TOO GOOD TOO BAD.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/12 CAR 24.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/13 The EGG and I.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/14 FELT TIP PEN.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/15 RAIN.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/16 DIGGING MY POTATO.mp3 +/mnt/trollshotlol@maeve/Music/シートベルツ/COWBOY BEBOP/17 MEMORY.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/今は今で誓いは笑みで/01 勘冴えて悔しいわ.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/今は今で誓いは笑みで/02 正義.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/今は今で誓いは笑みで/03 またね幻.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/今は今で誓いは笑みで/04 マイノリティ脈絡.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/今は今で誓いは笑みで/05 彷徨い酔い温度.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/今は今で誓いは笑みで/06 眩しいDNAだけ.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/01 脳裏上のクラッカー.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/02 勘冴えて悔しいわ.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/03 居眠り遠征隊.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/04 ハゼ馳せる果てるまで.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/05 蹴っ飛ばした毛布.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/06 Dear Mr 「F」.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/07 こんなこと騒動.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/08 眩しいDNAだけ.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/09 ヒューマノイド.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/10 グラスとラムレーズン.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/11 正義.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/12 優しくLAST SMILE.mp3 +/mnt/trollshotlol@maeve/Music/ずっと真夜中でいいのに。/潜潜話/13 秒針を噛む.mp3 +/mnt/trollshotlol@maeve/Music/パスピエ/演出家出演/01 S.S.mp3 +/mnt/trollshotlol@maeve/Music/パスピエ/演出家出演/02 名前のない鳥.mp3 +/mnt/trollshotlol@maeve/Music/パスピエ/演出家出演/03 フィーバー.mp3 +/mnt/trollshotlol@maeve/Music/パスピエ/演出家出演/04 シネマ.mp3 +/mnt/trollshotlol@maeve/Music/パスピエ/演出家出演/05 ON THE AIR.mp3 +/mnt/trollshotlol@maeve/Music/パスピエ/演出家出演/06 くだらないことばかり.mp3 +/mnt/trollshotlol@maeve/Music/パスピエ/演出家出演/07 デ・ジャヴ.mp3 +/mnt/trollshotlol@maeve/Music/パスピエ/演出家出演/08 はいからさん.mp3 +/mnt/trollshotlol@maeve/Music/パスピエ/演出家出演/09 △.mp3 +/mnt/trollshotlol@maeve/Music/パスピエ/演出家出演/10 ワールドエンド.mp3 +/mnt/trollshotlol@maeve/Music/パスピエ/演出家出演/11 カーニバル.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/oddloop/01 オドループ.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/oddloop/02 ディスコプール.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/oddloop/03 幸せっていう怪物.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/oddloop/04 砂利道.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/oddloop/05 もう帰る汽船.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/oddloop/06 うわさのケムリの女の子.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/oddloop/07 人魚のはなし.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/01 オンリーワンダー.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/02 リリリピート.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/03 レプリカパプリカ.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/04 KITAKU BEATS.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/05 サービスナーバス.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/06 スピカの住み処.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/07 バジルの宴.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/08 ナイトステップ.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/09 POOLSIDE DOG.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/10 オドループ.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/11 CYNICALTURE.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/12 ふしだらフラミンゴ.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/13 音楽という名前の服.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/14 オワラセナイト.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム/15 ハローグッバイ.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/01 LIGHT.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/02 かなしいうれしい.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/03 エンドレスメーデー.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/04 対価.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/05 逃避行.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/06 スキライズム.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/07 他所のピラニア.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/08 TOGENKYO.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/09 YELLOW.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/10 CLIMAX NUMBER.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/11 夜にロックを聴いてしまったら.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/12 シンセンス.mp3 +/mnt/trollshotlol@maeve/Music/フレデリック/フレデリズム2/13 飄々とエモーション.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/01 アセテート.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/02 nero.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/03 仮想過去.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/04 覆面調査員.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/05 スカイバストーキョー.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/06 スプロウル.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/07 ローウイッツアーク.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/08 わたしのイエスマン.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/09 砂と硝子.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/10 マージナル.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/11 サパラン.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/12 キュプラ.mp3 +/mnt/trollshotlol@maeve/Music/フレネシ/キュプラ/13 超臨界流体.mp3 +/mnt/trollshotlol@maeve/Music/ポルカドットスティングレイ/新世紀/01 SQUEEZE.mp3 +/mnt/trollshotlol@maeve/Music/ポルカドットスティングレイ/新世紀/02 sp813.mp3 +/mnt/trollshotlol@maeve/Music/ポルカドットスティングレイ/新世紀/03 トゲめくスピカ.mp3 +/mnt/trollshotlol@maeve/Music/ポルカドットスティングレイ/新世紀/04 女神.mp3 +/mnt/trollshotlol@maeve/Music/ポルカドットスティングレイ/JET/01 JET.m4a +/mnt/trollshotlol@maeve/Music/ポルカドットスティングレイ/JET/02 JET (Instrumental).m4a +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/01 ゆめadventureのはじまり (Intro).mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/02 Suki スキ.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/03 Find Me.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/04 Plastic Beatのダンス.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/05 Adventure アドベンチャー.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/06 Cute Girls Doing Cute Things _3.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/07 小さな恋 in my heart.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/08 Originalの情愛ラヴ.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/09 Memories1989.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/10 Sentimental センチメンタル.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/11 Believe 信じる.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/12 SHINYWAVE.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/13 魔法少女ミカヅキちゃん!! 『Magical Girl Mikazuki-chan!!』.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/14 Platinum Groove 白金グルーヴ.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/15 ハートのGROOVE II.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/16 Spla Groove.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/WAVESウェーブス - EP/17 Nyancat Groove.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/星空ROMANTIC/01 I Wanna Be With You.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/星空ROMANTIC/02 都会の女 City Lady.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/星空ROMANTIC/03 Bless you.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/星空ROMANTIC/04 Yumeみさせてよッ!!.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/星空ROMANTIC/05 Be Myself.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/星空ROMANTIC/06 咲きましたBloomin'!!.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/星空ROMANTIC/07 海姫Sea Princess.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/星空ROMANTIC/08 潮風バイパス.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/星空ROMANTIC/09 イタズラキッスKISS.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/星空ROMANTIC/10 Need You.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/星空ROMANTIC/11 キラキラでダンス.mp3 +/mnt/trollshotlol@maeve/Music/ミカヅキBIGWAVE/星空ROMANTIC/12 Tear of Joy.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/ファースト/01 わっしょい。.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/ファースト/02 お猿.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/ファースト/03 ああ嫌.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/ファースト/04 A・N・A.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/ファースト/05 ロマンティック夏モード.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/ファースト/06 POP.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/セカンド/01 ドーピング☆ノイズノイズキッス.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/セカンド/02 うわさのあの子.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/セカンド/03 今日は彼氏がいないから….mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/セカンド/04 声を聞きたいのですが、聞こえないのです.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/セカンド/05 あたしのお歌.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/セカンド/06 獄衣deサンバ.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/セカンド/07 愛のうた.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/セカンド/08 あんたは誰や.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/セカンド/09 都会のにおい。.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/清水/01 愛って悲しいね(宴会バージョン).mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/清水/02 愛って悲しいね.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/清水/03 犬、走る。.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/清水/04 エゾシカ・ダンス!!.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/清水/05 ロマンティック夏モード.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/清水/06 グッバイ.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/あらためまして、はじめまして、ミドリです。/01 スキ.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/あらためまして、はじめまして、ミドリです。/02 ゆきこさん.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/あらためまして、はじめまして、ミドリです。/03 かなしい日々。.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/あらためまして、はじめまして、ミドリです。/04 お猿.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/あらためまして、はじめまして、ミドリです。/05 根性無しあたし、あほぼけかす.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/あらためまして、はじめまして、ミドリです。/06 ちはるの恋.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/あらためまして、はじめまして、ミドリです。/07 ひみつの2人.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/あらためまして、はじめまして、ミドリです。/08 5拍子.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/あらためまして、はじめまして、ミドリです。/09 ハウリング地獄.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/あらためまして、はじめまして、ミドリです。/10 無欲の無力.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/shinsekai/01 鳩.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/shinsekai/02 凡庸VS茫洋.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/shinsekai/03 さよなら、パーフェクトワールド。.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/shinsekai/04 メカ.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/shinsekai/05 スピードビート.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/shinsekai/06 春メロ.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/shinsekai/07 リズム.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/shinsekai/08 あたし、ギターになっちゃった!!!!!.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/shinsekai/09 鉄塔の上の2人.mp3 +/mnt/trollshotlol@maeve/Music/ミドリ/shinsekai/10 どんぞこ.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/夏草が邪魔をする/01 夏陰、ピアノを弾く.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/夏草が邪魔をする/02 カトレア.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/夏草が邪魔をする/03 言って。.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/夏草が邪魔をする/04 あの夏に咲け.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/夏草が邪魔をする/05 飛行.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/夏草が邪魔をする/06 靴の花火.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/夏草が邪魔をする/07 雲と幽霊.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/負け犬にアンコールはいらない/01 前世.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/負け犬にアンコールはいらない/02 負け犬にアンコールはいらない.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/負け犬にアンコールはいらない/03 爆弾魔.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/負け犬にアンコールはいらない/04 ヒッチコック.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/負け犬にアンコールはいらない/05 落下.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/負け犬にアンコールはいらない/06 準透明少年.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/負け犬にアンコールはいらない/07 ただ君に晴れ.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/負け犬にアンコールはいらない/08 冬眠.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/負け犬にアンコールはいらない/09 夏、バス停、君を待つ.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/01 8_31.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/02 藍二乗.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/03 八月、某、月明かり.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/04 詩書きとコーヒー.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/05 7_13.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/06 踊ろうぜ.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/07 六月は雨上がりの街を書く.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/08 五月は花緑青の窓辺から.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/09 夜紛い.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/10 5_6.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/11 パレード.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/12 エルマ.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/13 4_10.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/だから僕は音楽を辞めた/14 だから僕は音楽を辞めた.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/01 車窓.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/02 憂一乗.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/03 夕凪、某、花惑い.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/04 雨とカプチーノ.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/05 湖の街.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/06 神様のダンス.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/07 雨晴るる.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/08 歩く.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/09 心に穴が空いた.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/10 森の教会.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/11 声.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/12 エイミー.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/13 海底、月明かり.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/エルマ/14 ノーチラス.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/花に亡霊/01 花に亡霊.m4a +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/01 音楽泥棒の自白.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/02 昼鳶.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/03 春ひさぎ.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/04 爆弾魔.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/05 青年期、空き巣.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/06 レプリカント.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/07 花人局.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/08 朱夏期、音楽泥棒.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/09 盗作.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/10 思想犯.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/11 逃亡.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/12 幼年期、思い出の中.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/13 夜行.mp3 +/mnt/trollshotlol@maeve/Music/ヨルシカ/盗作/14 花に亡霊.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/22 Tobiuo.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/01 あなたは煙草 私はシャボン.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/02 PART-TIME ROBOT.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/03 青い瞬きの途中で.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/04 202 (New Mix).mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/05 私の好きなもの (New Mix).mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/06 月の光り方.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/07 水星.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/08 わたしのうた.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/09 魚の目シンパシー.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/10 ベッドルームの夢 (New Recording).mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/11 天国はまだ遠い.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/12 僕らなら.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/13 LOVE□でしょ_ (Pro.by 無敵DEAD SNAKE).mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/14 Song 4 U.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/15 First Regrets.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/16 Another Sunny Daze.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/17 最高の夜だぜ.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/18 Divine Hammer.mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/19 私の好きなもの (Yunomi Remix).mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/20 笑い話 (Lovely Club Mix).mp3 +/mnt/trollshotlol@maeve/Music/ラブリーサマーちゃん/LSC/21 あなたは煙草 わたしはシャボン (Herrokkin Remix).mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/17 FLASH BACK.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/18 トキヲ・ファンカ.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/19 magician's operation.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/20 妄想〆Question.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/21 TRUTH〜A Great Detective of Love〜.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/22 おこちゃま戦争.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/01 -nil-.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/02 極彩色.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/03 生命線.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/04 水底游歩道.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/05 ハルシアン.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/06 ロジックエージェント.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/07 -orderly-.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/08 mede_mede.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/09 Syrup.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/10 ラ・タタン.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/11 ミッドナイトストロウラ.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/12 Behind The Night.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/13 ROXY.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/14 約束の蒼.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/15 MONSTER.mp3 +/mnt/trollshotlol@maeve/Music/Reol/極彩色/16 染.mp3 +/mnt/trollshotlol@maeve/Music/三月のパンタシア/ガールズブルー・ハッピーサッド/01 三月がずっと続けばいい.mp3 +/mnt/trollshotlol@maeve/Music/三月のパンタシア/ガールズブルー・ハッピーサッド/02 ピンクレモネード.mp3 +/mnt/trollshotlol@maeve/Music/三月のパンタシア/ガールズブルー・ハッピーサッド/03 風の声を聴きながら.mp3 +/mnt/trollshotlol@maeve/Music/三月のパンタシア/ガールズブルー・ハッピーサッド/04 パステルレイン.mp3 +/mnt/trollshotlol@maeve/Music/三月のパンタシア/ガールズブルー・ハッピーサッド/05 青春なんていらないわ.mp3 +/mnt/trollshotlol@maeve/Music/三月のパンタシア/ガールズブルー・ハッピーサッド/06 ソーダアイス.mp3 +/mnt/trollshotlol@maeve/Music/三月のパンタシア/ガールズブルー・ハッピーサッド/07 ビタースイート.mp3 +/mnt/trollshotlol@maeve/Music/三月のパンタシア/ガールズブルー・ハッピーサッド/08 ラフスケッチ.mp3 +/mnt/trollshotlol@maeve/Music/三月のパンタシア/ガールズブルー・ハッピーサッド/09 ルビコン.mp3 +/mnt/trollshotlol@maeve/Music/三月のパンタシア/ガールズブルー・ハッピーサッド/10 街路、ライトの灯りだけ.mp3 +/mnt/trollshotlol@maeve/Music/三月のパンタシア/ガールズブルー・ハッピーサッド/11 コラージュ.mp3 +/mnt/trollshotlol@maeve/Music/三月のパンタシア/ガールズブルー・ハッピーサッド/12 東京.mp3 +/mnt/trollshotlol@maeve/Music/佐井好子/萬花鏡/01 夜の精.mp3 +/mnt/trollshotlol@maeve/Music/佐井好子/萬花鏡/02 冬の地下道.mp3 +/mnt/trollshotlol@maeve/Music/佐井好子/萬花鏡/03 逢魔ヶ時.mp3 +/mnt/trollshotlol@maeve/Music/佐井好子/萬花鏡/04 恋した人へ.mp3 +/mnt/trollshotlol@maeve/Music/佐井好子/萬花鏡/05 椿は落ちたかや.mp3 +/mnt/trollshotlol@maeve/Music/佐井好子/萬花鏡/06 酔ひどれ芝居.mp3 +/mnt/trollshotlol@maeve/Music/佐井好子/萬花鏡/07 紅い花.mp3 +/mnt/trollshotlol@maeve/Music/佐井好子/萬花鏡/08 二十才になれば.mp3 +/mnt/trollshotlol@maeve/Music/佐井好子/萬花鏡/09 雪女.mp3 +/mnt/trollshotlol@maeve/Music/佐井好子/萬花鏡/10 見果てぬ夢.mp3 +/mnt/trollshotlol@maeve/Music/凛として時雨/Inspiration is DEAD/01 nakano kill you.mp3 +/mnt/trollshotlol@maeve/Music/凛として時雨/Inspiration is DEAD/02 COOL J.mp3 +/mnt/trollshotlol@maeve/Music/凛として時雨/Inspiration is DEAD/03 DISCO FLIGHT.mp3 +/mnt/trollshotlol@maeve/Music/凛として時雨/Inspiration is DEAD/04 knife vacation.mp3 +/mnt/trollshotlol@maeve/Music/凛として時雨/Inspiration is DEAD/05 am3_45.mp3 +/mnt/trollshotlol@maeve/Music/凛として時雨/Inspiration is DEAD/06 赤い誘惑.mp3 +/mnt/trollshotlol@maeve/Music/凛として時雨/Inspiration is DEAD/07 1_fの感触.mp3 +/mnt/trollshotlol@maeve/Music/凛として時雨/Inspiration is DEAD/08 i not crazy am you are.mp3 +/mnt/trollshotlol@maeve/Music/凛として時雨/Inspiration is DEAD/09 夕景の記憶.mp3 +/mnt/trollshotlol@maeve/Music/喜多嶋修/Benzaiten/01 Benzaiten - God of Music & Water.mp3 +/mnt/trollshotlol@maeve/Music/喜多嶋修/Benzaiten/02 Taiyo - The Sun.mp3 +/mnt/trollshotlol@maeve/Music/喜多嶋修/Benzaiten/03 Tengu - A Long-Nosed Goblin.mp3 +/mnt/trollshotlol@maeve/Music/喜多嶋修/Benzaiten/04 Benzaiten (reprise).mp3 +/mnt/trollshotlol@maeve/Music/喜多嶋修/Benzaiten/05 Whoma - Immortality.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/01 ミッドナイト清純異性交遊.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/02 絶対彼女.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/03 Re_ Re_ Love.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/04 非国民的ヒーロー.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/05 マジックミラー.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/06 TOKYO BLACK HOLE.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/07 ドグマ・マグマ.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/08 アナログシンコペーション.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/09 魔法が使えないなら.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/10 きもいかわ.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/11 死神.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/12 流星ヘブン.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/13 音楽を捨てよ、そして音楽へ -シン・ガイアズ ver.-.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/14 ハンドメイドホーム.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/15 絶対絶望絶好.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/16 生kill the time 4 you、、❤.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/17 JUSTadICE.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/18 draw (A) drow.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/19 POSITIVE STRESS.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/20 超新世代カステラスタンダードMAGICマジKISS.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/21 7_77.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/22 ZOC実験室.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/23 焼肉デート.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/24 さっちゃんのセクシーカレー.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/25 少女漫画少年漫画.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/26 勹″ッと_るSUMMER.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/27 ピンクメトセラ.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/28 オリオン座.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/29 LOW hAPPYENDROLL --少女のままで死ぬ--.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/30 PINK -MONDO GROSSO Remix-.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/31 きゅるきゅる.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/32 IDOL SONG.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/33 イミテーションガール.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/34 GIRL'S GIRL.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/35 愛してる.com.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/36 子供じゃないもん17.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/37 みっくしゅじゅーちゅ.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/38 VOID -シン・ガイアズ ver.-.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/39 ノスタルジックJ-pop.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/40 あまい.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/41 君に届くな -kitixxxgaia ver.-.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/42 わたしみ.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/43 呪いは水色.mp3 +/mnt/trollshotlol@maeve/Music/大森靖子/大森靖子/44 絶対彼女.mp3 +/mnt/trollshotlol@maeve/Music/大比良瑞希/TRUE ROMANCE/01 Romance Intro.mp3 +/mnt/trollshotlol@maeve/Music/大比良瑞希/TRUE ROMANCE/02 TIME LIMIT.mp3 +/mnt/trollshotlol@maeve/Music/大比良瑞希/TRUE ROMANCE/03 微熱.mp3 +/mnt/trollshotlol@maeve/Music/大比良瑞希/TRUE ROMANCE/04 Everything Gives Me Chance What I Love It.mp3 +/mnt/trollshotlol@maeve/Music/大比良瑞希/TRUE ROMANCE/05 焚き火.mp3 +/mnt/trollshotlol@maeve/Music/大比良瑞希/TRUE ROMANCE/06 Good Night.mp3 +/mnt/trollshotlol@maeve/Music/大比良瑞希/TRUE ROMANCE/07 帆掛け舟.mp3 +/mnt/trollshotlol@maeve/Music/大比良瑞希/TRUE ROMANCE/08 Sunday Monday.mp3 +/mnt/trollshotlol@maeve/Music/大比良瑞希/TRUE ROMANCE/09 aspiration.mp3 +/mnt/trollshotlol@maeve/Music/大比良瑞希/TRUE ROMANCE/10 ハッピーバースデー.mp3 +/mnt/trollshotlol@maeve/Music/大比良瑞希/TRUE ROMANCE/11 目覚めのラブソング.mp3 +/mnt/trollshotlol@maeve/Music/大比良瑞希/TRUE ROMANCE/12 High-end Veil.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/01 Summer Connection.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/02 くすりをたくさん.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/03 何もいらない.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/04 都会.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/05 からっぽの椅子.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/06 Law Of Nature.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/07 誰のために.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/08 Silent Screamer.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/09 Sargasso Sea.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/10 振子の山羊.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/11 サマー・コネクション.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/12 部屋.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/SUNSHOWER/13 荒涼.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/Mignonne/01 じゃじゃ馬娘.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/Mignonne/02 横顔.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/Mignonne/03 黄昏れ.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/Mignonne/04 空をとべたら.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/Mignonne/05 風のオルガン.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/Mignonne/06 言い出せなくて.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/Mignonne/07 4_00 A.M_.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/Mignonne/08 突然の贈りもの.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/Mignonne/09 海と少年.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/Mignonne/10 あこがれ.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/copine_/01 Les aventures de TINTIN.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/copine_/02 ベジタブル.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/copine_/03 春の嵐.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/copine_/04 Siena.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/copine_/05 Amico, sei felice_.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/copine_/06 OUT OF AFRICA.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/copine_/07 Leave me alone.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/copine_/08 Jaques-Henri Lartigue.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/copine_/09 しあわせな男達へ.mp3 +/mnt/trollshotlol@maeve/Music/大貫妙子/copine_/10 野辺.mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/01 This Is Love.mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/02 Keep Tryin'.mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/03 BLUE.mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/04 日曜の朝.mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/05 Making Love.mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/06 誰かの願いが叶うころ.mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/07 COLORS.mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/08 One Night Magic.mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/09 海路.mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/10 WINGS.mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/11 Be My Last.mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/12 Eclipse (Interlude).mp3 +/mnt/trollshotlol@maeve/Music/宇多田ヒカル/ULTRA BLUE/13 Passion.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/299792458/01 HARDCORE LIFE.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/299792458/02 ままく.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/299792458/03 M@HφU☆少女。。.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/299792458/04 うーちゃん.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/299792458/05 ゆうびんやさん.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/299792458/06 ドローン.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/299792458/07 ユートピア.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/299792458/08 あたしの衝動.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/299792458/09 299792458_TOKYO-U.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/ゲンズブールに愛されて/01 Loved by Gainsbourg_.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/ゲンズブールに愛されて/02 真冬の甲子園.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/ゲンズブールに愛されて/03 ONIGOROSHI.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/ゲンズブールに愛されて/04 replay ATAMI.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/ゲンズブールに愛されて/05 HEAVEN.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/ゲンズブールに愛されて/06 四畳半箪笥ダンス.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/ゲンズブールに愛されて/07 Breeeeeak out!!!!!.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/ゲンズブールに愛されて/08 畳 so good!!!!!.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/ゲンズブールに愛されて/09 LSD.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/ゲンズブールに愛されて/10 ねばーえんでぃんぐすとーり.mp3 +/mnt/trollshotlol@maeve/Music/後藤まりこ/ゲンズブールに愛されて/11 おばけ.mp3 +/mnt/trollshotlol@maeve/Music/新井正人/MASAHITO ARAI +1/01 君は今….mp3 +/mnt/trollshotlol@maeve/Music/新井正人/MASAHITO ARAI +1/02 夢にリザーブ.mp3 +/mnt/trollshotlol@maeve/Music/新井正人/MASAHITO ARAI +1/03 ムーンレディ.mp3 +/mnt/trollshotlol@maeve/Music/新井正人/MASAHITO ARAI +1/04 モーニング・サブウェイ.mp3 +/mnt/trollshotlol@maeve/Music/新井正人/MASAHITO ARAI +1/05 やさしさの中へ.mp3 +/mnt/trollshotlol@maeve/Music/新井正人/MASAHITO ARAI +1/06 ローリング・ハート.mp3 +/mnt/trollshotlol@maeve/Music/新井正人/MASAHITO ARAI +1/07 冬のフォトグラフ.mp3 +/mnt/trollshotlol@maeve/Music/新井正人/MASAHITO ARAI +1/08 ダンス、ダンス、ダンス.mp3 +/mnt/trollshotlol@maeve/Music/新井正人/MASAHITO ARAI +1/09 ラブレア.mp3 +/mnt/trollshotlol@maeve/Music/新井正人/MASAHITO ARAI +1/10 ラブ.mp3 +/mnt/trollshotlol@maeve/Music/新井正人/MASAHITO ARAI +1/11 LOVE(English Version).mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/アトム・ハート・マザー/01 空気人形.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/アトム・ハート・マザー/02 いのちになって.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/アトム・ハート・マザー/03 ぼくは最終兵器.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/アトム・ハート・マザー/04 zzz.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/アトム・ハート・マザー/05 SAYONARA BABY PINK.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/アトム・ハート・マザー/06 TOKYO CALLING.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/アトム・ハート・マザー/07 アンサー・ワルツ・ロマンス.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/01 MAKE MORE NOISE OF YOU.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/02 鳴らして.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/03 アンダーグラウンド.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/04 春と修羅.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/05 zzz.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/06 ロストプラネット.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/07 せかいをとりかえしておくれ.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/08 夜を泳いでた.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/09 zzz.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/10 ナインティーン.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/11 ゆめをみよう.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/12 zzz.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/13 ロックンロールは死なない.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/14 zzz.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/15 夜を泳いでた(Nemu remix).mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/16 アンダーグラウンド(shnkuti remix).mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/17 鳴らして(長谷川白紙 remix).mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/LOVETHEISM/01 ファンファーレ.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/LOVETHEISM/02 愛よりたしかなものなんてない.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/LOVETHEISM/03 Pink Unicorn.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/LOVETHEISM/04 Lovetheism.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/LOVETHEISM/05 海になって.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/LOVETHEISM/06 Riot.mp3 +/mnt/trollshotlol@maeve/Music/春ねむり/LOVETHEISM/07 りんごのうた.mp3 +/mnt/trollshotlol@maeve/Music/杏里/TIMELY!!/01\ CAT'S\ EYE\ \(NEW\ TAKE\).mp3 +/mnt/trollshotlol@maeve/Music/杏里/TIMELY!!/02 WINDY SUMMER.mp3 +/mnt/trollshotlol@maeve/Music/杏里/TIMELY!!/03 STAY BY ME.mp3 +/mnt/trollshotlol@maeve/Music/杏里/TIMELY!!/04 A HOPE FROM SAD STREET.mp3 +/mnt/trollshotlol@maeve/Music/杏里/TIMELY!!/05 YOU ARE NOT ALONE.mp3 +/mnt/trollshotlol@maeve/Music/杏里/TIMELY!!/06 悲しみがとまらない I CAN’T STOP THE LONELINESS.mp3 +/mnt/trollshotlol@maeve/Music/杏里/TIMELY!!/07 SHYNESS BOY.mp3 +/mnt/trollshotlol@maeve/Music/杏里/TIMELY!!/08 LOST LOVE IN THE RAIN.mp3 +/mnt/trollshotlol@maeve/Music/杏里/TIMELY!!/09 DRIVING MY LOVE.mp3 +/mnt/trollshotlol@maeve/Music/杏里/TIMELY!!/10 GOOD‐NIGHT FOR YOU.mp3 +/mnt/trollshotlol@maeve/Music/杏里/TIMELY!!/11 Remember Summer Days.mp3 +/mnt/trollshotlol@maeve/Music/東京ブラススタイル/ブラスタジブリ/01 さんぽ~オープニング・ジングル~.mp3 +/mnt/trollshotlol@maeve/Music/東京ブラススタイル/ブラスタジブリ/02 ハトと少年.mp3 +/mnt/trollshotlol@maeve/Music/東京ブラススタイル/ブラスタジブリ/03 崖の上のポニョ.mp3 +/mnt/trollshotlol@maeve/Music/東京ブラススタイル/ブラスタジブリ/04 風の谷のナウシカ~オープニング~.mp3 +/mnt/trollshotlol@maeve/Music/東京ブラススタイル/ブラスタジブリ/05 さんぽ.mp3 +/mnt/trollshotlol@maeve/Music/東京ブラススタイル/ブラスタジブリ/06 風の丘.mp3 +/mnt/trollshotlol@maeve/Music/東京ブラススタイル/ブラスタジブリ/07 もののけ姫.mp3 +/mnt/trollshotlol@maeve/Music/東京ブラススタイル/ブラスタジブリ/08 いつも何度でも.mp3 +/mnt/trollshotlol@maeve/Music/東京ブラススタイル/ブラスタジブリ/09 人生のメリーゴーランド.mp3 +/mnt/trollshotlol@maeve/Music/東京ブラススタイル/ブラスタジブリ/10 カントリー・ロード(Take Me Home,Country Roads).mp3 +/mnt/trollshotlol@maeve/Music/松下誠/FIRST LIGHT/01 First Light.mp3 +/mnt/trollshotlol@maeve/Music/松下誠/FIRST LIGHT/02 One Hot Love.mp3 +/mnt/trollshotlol@maeve/Music/松下誠/FIRST LIGHT/03 Resort for Blue.mp3 +/mnt/trollshotlol@maeve/Music/松下誠/FIRST LIGHT/04 September Rain.mp3 +/mnt/trollshotlol@maeve/Music/松下誠/FIRST LIGHT/05 Lazy Night.mp3 +/mnt/trollshotlol@maeve/Music/松下誠/FIRST LIGHT/06 This Is All I Have for You.mp3 +/mnt/trollshotlol@maeve/Music/松下誠/FIRST LIGHT/07 I Know….mp3 +/mnt/trollshotlol@maeve/Music/松下誠/FIRST LIGHT/08 Love Was Really Gone.mp3 +/mnt/trollshotlol@maeve/Music/松下誠/FIRST LIGHT/09 Sunset.mp3 +/mnt/trollshotlol@maeve/Music/松下誠/FIRST LIGHT/10 September Rain (Japanese Version).mp3 +/mnt/trollshotlol@maeve/Music/椎名林檎×SOIL&“PIMP”SESSIONS/カリソメ乙女(DEATH JAZZ ver.)/01 カリソメ乙女(DEATH JAZZ ver.).mp3 +/mnt/trollshotlol@maeve/Music/永田茂/海がきこえる/01 ファースト インプレッション.mp3 +/mnt/trollshotlol@maeve/Music/永田茂/海がきこえる/02 海がきこえる.mp3 +/mnt/trollshotlol@maeve/Music/永田茂/海がきこえる/03 シーサイド ストリート.mp3 +/mnt/trollshotlol@maeve/Music/永田茂/海がきこえる/04 少女の想い.mp3 +/mnt/trollshotlol@maeve/Music/永田茂/海がきこえる/05 夜更けにひとり.mp3 +/mnt/trollshotlol@maeve/Music/永田茂/海がきこえる/06 ある晴れた日.mp3 +/mnt/trollshotlol@maeve/Music/永田茂/海がきこえる/07 陽気なよっぱらい.mp3 +/mnt/trollshotlol@maeve/Music/永田茂/海がきこえる/08 風の並木道.mp3 +/mnt/trollshotlol@maeve/Music/永田茂/海がきこえる/09 心が旅立つ時.mp3 +/mnt/trollshotlol@maeve/Music/永田茂/海がきこえる/10 海になれたら(エンディング).mp3 +/mnt/trollshotlol@maeve/Music/沢井美空/カラフル。/01 カラフル。.mp3 +/mnt/trollshotlol@maeve/Music/清水靖晃/案山子/01 睡蓮.mp3 +/mnt/trollshotlol@maeve/Music/清水靖晃/案山子/02 案山子.mp3 +/mnt/trollshotlol@maeve/Music/清水靖晃/案山子/03 このように詠めり(その一).mp3 +/mnt/trollshotlol@maeve/Music/清水靖晃/案山子/04 セミ取りの日.mp3 +/mnt/trollshotlol@maeve/Music/清水靖晃/案山子/05 このように詠めり(その二).mp3 +/mnt/trollshotlol@maeve/Music/清水靖晃/案山子/06 夢では.mp3 +/mnt/trollshotlol@maeve/Music/清水靖晃/案山子/07 海の上から.mp3 +/mnt/trollshotlol@maeve/Music/清水靖晃/案山子/08 美しき天然.mp3 +/mnt/trollshotlol@maeve/Music/相対性理論/ハイファイ新書/01 テレ東.mp3 +/mnt/trollshotlol@maeve/Music/相対性理論/ハイファイ新書/02 地獄先生.mp3 +/mnt/trollshotlol@maeve/Music/相対性理論/ハイファイ新書/03 ふしぎデカルト.mp3 +/mnt/trollshotlol@maeve/Music/相対性理論/ハイファイ新書/04 四角革命.mp3 +/mnt/trollshotlol@maeve/Music/相対性理論/ハイファイ新書/05 品川ナンバー.mp3 +/mnt/trollshotlol@maeve/Music/相対性理論/ハイファイ新書/06 学級崩壊.mp3 +/mnt/trollshotlol@maeve/Music/相対性理論/ハイファイ新書/07 さわやか会社員.mp3 +/mnt/trollshotlol@maeve/Music/相対性理論/ハイファイ新書/08 ルネサンス.mp3 +/mnt/trollshotlol@maeve/Music/相対性理論/ハイファイ新書/09 バーモント・キッス.mp3 +/mnt/trollshotlol@maeve/Music/矢野顕子/JAPANESE GIRL/01 気球にのって.mp3 +/mnt/trollshotlol@maeve/Music/矢野顕子/JAPANESE GIRL/02 クマ.mp3 +/mnt/trollshotlol@maeve/Music/矢野顕子/JAPANESE GIRL/03 電話線.mp3 +/mnt/trollshotlol@maeve/Music/矢野顕子/JAPANESE GIRL/04 津軽ツアー.mp3 +/mnt/trollshotlol@maeve/Music/矢野顕子/JAPANESE GIRL/05 ふなまち唄PartⅡ.mp3 +/mnt/trollshotlol@maeve/Music/矢野顕子/JAPANESE GIRL/06 大いなる椎の木.mp3 +/mnt/trollshotlol@maeve/Music/矢野顕子/JAPANESE GIRL/07 へこりぷたあ.mp3 +/mnt/trollshotlol@maeve/Music/矢野顕子/JAPANESE GIRL/08 風太.mp3 +/mnt/trollshotlol@maeve/Music/矢野顕子/JAPANESE GIRL/09 丘を越えて.mp3 +/mnt/trollshotlol@maeve/Music/矢野顕子/JAPANESE GIRL/10 ふなまち唄PartⅠ.mp3 +/mnt/trollshotlol@maeve/Music/神聖かまってちゃん/つまんね/01 白いたまご.mp3 +/mnt/trollshotlol@maeve/Music/神聖かまってちゃん/つまんね/02 天使じゃ地上じゃちっそく死.mp3 +/mnt/trollshotlol@maeve/Music/神聖かまってちゃん/つまんね/03 美ちなる方へ.mp3 +/mnt/trollshotlol@maeve/Music/神聖かまってちゃん/つまんね/04 芋虫さん.mp3 +/mnt/trollshotlol@maeve/Music/神聖かまってちゃん/つまんね/05 黒いたまご.mp3 +/mnt/trollshotlol@maeve/Music/神聖かまってちゃん/つまんね/06 笛吹き花ちゃん.mp3 +/mnt/trollshotlol@maeve/Music/神聖かまってちゃん/つまんね/07 夜空の虫とどこまでも.mp3 +/mnt/trollshotlol@maeve/Music/神聖かまってちゃん/つまんね/08 通学LOW.mp3 +/mnt/trollshotlol@maeve/Music/神聖かまってちゃん/つまんね/09 いかれたNeet.mp3 +/mnt/trollshotlol@maeve/Music/神聖かまってちゃん/つまんね/10 さわやかな朝.mp3 +/mnt/trollshotlol@maeve/Music/神聖かまってちゃん/つまんね/11 聖天脱力.mp3 +/mnt/trollshotlol@maeve/Music/神聖かまってちゃん/つまんね/12 オーディオトラック.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Love Songs/01 FLY AWAY.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Love Songs/02 さよならの夜明け.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Love Songs/03 磁気嵐.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Love Songs/04 象牙海岸.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Love Songs/05 五線紙.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Love Songs/06 LONELY WIND.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Love Songs/07 恋の終わりに.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Love Songs/08 待っているわ.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Love Songs/09 SEPTEMBER.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Love Songs/10 不思議なピーチパイ.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Love Songs/11 little lullaby.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Variety/01 もう一度.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Variety/02 Plastic Love.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Variety/03 本気でオンリーユー (Let's Get Married).mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Variety/04 One Night Stand.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Variety/05 Broken Heart.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Variety/06 アンフィシアターの夜.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Variety/07 とどかぬ想い.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Variety/08 マージービートで唄わせて.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Variety/09 水とあなたと太陽と.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Variety/10 ふたりはステディ.mp3 +/mnt/trollshotlol@maeve/Music/竹内まりや/Variety/11 シェットランドに頬をうずめて.mp3 +/mnt/trollshotlol@maeve/Music/米津玄師/Flamingo _ TEENAGE RIOT/01 Flamingo.mp3 +/mnt/trollshotlol@maeve/Music/米津玄師/Flamingo _ TEENAGE RIOT/02 TEENAGE RIOT.mp3 +/mnt/trollshotlol@maeve/Music/米津玄師/Flamingo _ TEENAGE RIOT/03 ごめんね.mp3 +/mnt/trollshotlol@maeve/Music/細野晴臣、鈴木茂、山下達郎/Pacific/01 最後の楽園.mp3 +/mnt/trollshotlol@maeve/Music/細野晴臣、鈴木茂、山下達郎/Pacific/02 コーラル・リーフ.mp3 +/mnt/trollshotlol@maeve/Music/細野晴臣、鈴木茂、山下達郎/Pacific/03 ノスタルジア・オブ・アイランド~パート1:バード・ウィンド/パート2:ウォーキング・オン・ザ・ビーチ.mp3 +/mnt/trollshotlol@maeve/Music/細野晴臣、鈴木茂、山下達郎/Pacific/04 スラック・キー・ルンバ.mp3 +/mnt/trollshotlol@maeve/Music/細野晴臣、鈴木茂、山下達郎/Pacific/05 パッション・フラワー.mp3 +/mnt/trollshotlol@maeve/Music/細野晴臣、鈴木茂、山下達郎/Pacific/06 ノアノア.mp3 +/mnt/trollshotlol@maeve/Music/細野晴臣、鈴木茂、山下達郎/Pacific/07 キスカ.mp3 +/mnt/trollshotlol@maeve/Music/細野晴臣、鈴木茂、山下達郎/Pacific/08 コズミック・サーフィン.mp3 +/mnt/trollshotlol@maeve/Music/菊池桃子/ADVENTURE/01 Overture.mp3 +/mnt/trollshotlol@maeve/Music/菊池桃子/ADVENTURE/02 Adventure.mp3 +/mnt/trollshotlol@maeve/Music/菊池桃子/ADVENTURE/03 もう逢えないかもしれない.mp3 +/mnt/trollshotlol@maeve/Music/菊池桃子/ADVENTURE/04 波になりたい.mp3 +/mnt/trollshotlol@maeve/Music/菊池桃子/ADVENTURE/05 Night Cruising.mp3 +/mnt/trollshotlol@maeve/Music/菊池桃子/ADVENTURE/06 雨のRealize.mp3 +/mnt/trollshotlol@maeve/Music/菊池桃子/ADVENTURE/07 赤い稲妻.mp3 +/mnt/trollshotlol@maeve/Music/菊池桃子/ADVENTURE/08 Good Friend.mp3 +/mnt/trollshotlol@maeve/Music/菊池桃子/ADVENTURE/09 Mystical Composer.mp3 +/mnt/trollshotlol@maeve/Music/菊池桃子/ADVENTURE/10 Tomorrow.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/01 日本人.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/02 SKOOL KILL.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/03 あの娘に1ミリでもちょっかいかけたら殺す.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/04 童貞フォーク少年、高円寺にて爆死寸前.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/05 トラッシュ.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/06 なんて悪意に満ちた平和なんだろう.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/07 もしも君が泣くならば.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/08 駆け抜けて性春.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/09 BABY BABY.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/10 漂流教室.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/11 YOU & I VS. THE WORLD.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/12 若者たち.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/13 青春時代.mp3 +/mnt/trollshotlol@maeve/Music/銀杏BOYZ/君と僕の第三次世界大戦的恋愛革命/14 東京.mp3 +/mnt/trollshotlol@maeve/Music/間宮貴子/Love Trip/01 Love Trip.mp3 +/mnt/trollshotlol@maeve/Music/間宮貴子/Love Trip/02 チャイニーズ・レストラン.mp3 +/mnt/trollshotlol@maeve/Music/間宮貴子/Love Trip/03 真夜中のジョーク.mp3 +/mnt/trollshotlol@maeve/Music/間宮貴子/Love Trip/04 哀しみは夜の向こう.mp3 +/mnt/trollshotlol@maeve/Music/間宮貴子/Love Trip/05 All Or Nothing.mp3 +/mnt/trollshotlol@maeve/Music/間宮貴子/Love Trip/06 渚でダンス.mp3 +/mnt/trollshotlol@maeve/Music/間宮貴子/Love Trip/07 One More Night.mp3 +/mnt/trollshotlol@maeve/Music/間宮貴子/Love Trip/08 モーニング・フライト.mp3 +/mnt/trollshotlol@maeve/Music/間宮貴子/Love Trip/09 たそがれは銀箔の.._.mp3 +/mnt/trollshotlol@maeve/Music/間宮貴子/Love Trip/10 What A Broken Heart Can Do.mp3 +/mnt/trollshotlol@maeve/Music/飯島真理/Rosé/01 Blueberry Jam.mp3 +/mnt/trollshotlol@maeve/Music/飯島真理/Rosé/02 まりン.mp3 +/mnt/trollshotlol@maeve/Music/飯島真理/Rosé/03 My Best Friend.mp3 +/mnt/trollshotlol@maeve/Music/飯島真理/Rosé/04 Lovesick.mp3 +/mnt/trollshotlol@maeve/Music/飯島真理/Rosé/05 Secret Time.mp3 +/mnt/trollshotlol@maeve/Music/飯島真理/Rosé/06 きっと言える.mp3 +/mnt/trollshotlol@maeve/Music/飯島真理/Rosé/07 Shine Love.mp3 +/mnt/trollshotlol@maeve/Music/飯島真理/Rosé/08 ガラスのこびん.mp3 +/mnt/trollshotlol@maeve/Music/飯島真理/Rosé/09 ひまわり.mp3 +/mnt/trollshotlol@maeve/Music/飯島真理/Rosé/10 ひみつの扉.mp3 +/mnt/trollshotlol@maeve/Music/飯島真理/Rosé/11 おでこにKiss.mp3 +/mnt/trollshotlol@maeve/Music/高橋洋子 _ Claire/残酷な天使のテーゼ _ FLY ME TO THE MOON/01 残酷な天使のテーゼ.mp3 +/mnt/trollshotlol@maeve/Music/高橋洋子 _ Claire/残酷な天使のテーゼ _ FLY ME TO THE MOON/02 FLY ME TO THE MOON.mp3 diff --git a/cmus/playlists/default b/cmus/playlists/default new file mode 100644 index 0000000..e69de29 diff --git a/cmus/queue.pl b/cmus/queue.pl new file mode 100644 index 0000000..e69de29 diff --git a/cmus/resume b/cmus/resume new file mode 100644 index 0000000..38a37c9 --- /dev/null +++ b/cmus/resume @@ -0,0 +1,7 @@ +status playing +file /mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/01 MAKE MORE NOISE OF YOU.mp3 +position 5 +lib_file /mnt/trollshotlol@maeve/Music/春ねむり/春と修羅/01 MAKE MORE NOISE OF YOU.mp3 +view tree +browser-dir /mnt/trollshotlol@maeve +marked-pl default diff --git a/cmus/search-history b/cmus/search-history new file mode 100644 index 0000000..20576d5 --- /dev/null +++ b/cmus/search-history @@ -0,0 +1,16 @@ +random +stop +jungo +masar +queue +reol +update +myth +dao +playing +hyper +cross +seek +forward +clear +71 diff --git a/compton.conf b/compton.conf new file mode 100644 index 0000000..c42d00f --- /dev/null +++ b/compton.conf @@ -0,0 +1,105 @@ +# Shadow +shadow = false; +no-dnd-shadow = true; +no-dock-shadow = true; +clear-shadow = true; +shadow-radius = 7; +shadow-offset-x = -7; +shadow-offset-y = -7; +shadow-opacity = 0.7; +# shadow-red = 0.0; +# shadow-green = 0.0; +# shadow-blue = 0.0; +shadow-exclude = [ + "! name~=''", + "name = 'Notification'", + "name = 'Plank'", + "name = 'Docky'", + "name = 'Kupfer'", + "name = 'xfce4-notifyd'", + "name *= 'VLC'", + "name *= 'compton'", + "name *= 'Chromium'", + "name *= 'Chrome'", + "name *= 'Firefox'", + "class_g = 'launcher.exe'", + "class_g = 'Conky'", + "class_g = 'Kupfer'", + "class_g = 'Synapse'", + "class_g ?= 'Notify-osd'", + "class_g ?= 'Cairo-dock'", + "class_g ?= 'Xfce4-notifyd'", + "class_g ?= 'Xfce4-power-manager'" +]; +# Avoid drawing shadow on all shaped windows (see also: --detect-rounded-corners) +shadow-ignore-shaped = false; +# shadow-exclude = "n:e:Notification"; +# shadow-exclude-reg = "x10+0+0"; +# xinerama-shadow-crop = true; + +# Opacity +menu-opacity = 1.0; +# inactive-opacity = 0.8; +# active-opacity = 0.8; +# frame-opacity = 0.7; +inactive-opacity-override = false; +#alpha-step = 0.06; +# inactive-dim = 0.2; +# inactive-dim-fixed = true; +# blur-background = true; +# blur-background-frame = true; +# blur-kern = "3x3box"; +# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"; +# blur-background-fixed = true; +blur-background-exclude = [ + "window_type = 'dock'", + "window_type = 'desktop'", + "_GTK_FRAME_EXTENTS@:c" +]; +# opacity-rule = [ "80:class_g = 'URxvt'" ]; + +# Fading +fading = true; +fade-delta = 5; +fade-in-step = 0.04; +fade-out-step = 0.04; +no-fading-openclose = false; +# no-fading-destroyed-argb = true; +fade-exclude = [ ]; + +# Other +backend = "glx"; +mark-wmwin-focused = true; +mark-ovredir-focused = true; +# use-ewmh-active-win = true; +detect-rounded-corners = true; +detect-client-opacity = true; +refresh-rate = 0; +vsync = "opengl-swc"; +dbe = false; +#paint-on-overlay = true; +# sw-opti = true; +unredir-if-possible = false; +# unredir-if-possible-delay = 5000; +# unredir-if-possible-exclude = [ ]; +focus-exclude = [ "class_g = 'Cairo-clock'" ]; +detect-transient = true; +detect-client-leader = true; +invert-color-include = [ ]; +# resize-damage = 1; + +# GLX backend +glx-no-stencil = true; +glx-copy-from-front = false; +# glx-use-copysubbuffermesa = true; +# glx-no-rebind-pixmap = true; +glx-swap-method = "1"; +# glx-use-gpushader4 = true; +# xrender-sync = true; +# xrender-sync-fence = true; + +# Window type settings +wintypes: +{ + tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; }; +}; diff --git a/dunst/dunstrc b/dunst/dunstrc new file mode 100644 index 0000000..cfe583a --- /dev/null +++ b/dunst/dunstrc @@ -0,0 +1,92 @@ +[colors] + background = "#1c2734" + foreground = "#d8ffff" + +[global] + ### Display ### + + monitor = 0 + follow = mouse + + geometry = "540x5-10+32" + indicate_hidden = yes + shrink = yes + transparency = 0 + notification_height = 0 + separator_height = 3 + padding = 12 + horizontal_padding = 12 + frame_width = 3 + + frame_color = "#414b4e" + separator_color = auto + sort = yes + idle_threshold = 120 + + ### Text ### + font = go mono 9 + line_height = 0 + + markup = full + + # The format of the message. Possible variables are: + # %a appname + # %s summary + # %b body + # %i iconname (including its path) + # %I iconname (without its path) + # %p progress value if set ([ 0%] to [100%]) or nothing + # %n progress value if set without any extra characters + # %% Literal % + # Markup is allowed + format = "%s \n%b" + alignment = left + show_age_threshold = 60 + word_wrap = yes + ellipsize = middle + ignore_newline = no + stack_duplicates = true + hide_duplicate_count = false + show_indicators = yes + + ### Icons ### + icon_position = left + max_icon_size = 64 + icon_path = .icons/flattrcolor/status/24:.icons/flattrcolor/devices/48:.icons/flattrcolor/apps/scalable:.icons/flattrcolor/actions/scalable + + ### History ### + sticky_history = yes + history_length = 20 + + ### Misc/Advanced ### + dmenu = /usr/bin/rofi -show run -p dunst: + browser = /usr/bin/google-chrome-stable + always_run_script = true + title = Dunst + class = Dunst + startup_notification = false + force_xinerama = false + +[experimental] + per_monitor_dpi = false + +[shortcuts] + close = ctrl+space + close_all = ctrl+shift+space + context = ctrl+shift+period + +[urgency_low] + background = colors.background + foreground = colors.foreground + timeout = 5 + +[urgency_normal] + background = colors.background + foreground = colors.foreground + timeout = 5 + +[urgency_critical] + background = colors.background + foreground = colors.foreground + frame_color = "#6e4156" + timeout = 0 diff --git a/dunst/dunstrc.bak b/dunst/dunstrc.bak new file mode 100644 index 0000000..0bd6f40 --- /dev/null +++ b/dunst/dunstrc.bak @@ -0,0 +1,92 @@ +[colors] + background = "#2b2b1e" + foreground = "#fffff7" + +[global] + ### Display ### + + monitor = 0 + follow = mouse + + geometry = "540x5-10+32" + indicate_hidden = yes + shrink = yes + transparency = 0 + notification_height = 0 + separator_height = 3 + padding = 12 + horizontal_padding = 12 + frame_width = 3 + + frame_color = "#814e39" + separator_color = auto + sort = yes + idle_threshold = 120 + + ### Text ### + font = go mono 9 + line_height = 0 + + markup = full + + # The format of the message. Possible variables are: + # %a appname + # %s summary + # %b body + # %i iconname (including its path) + # %I iconname (without its path) + # %p progress value if set ([ 0%] to [100%]) or nothing + # %n progress value if set without any extra characters + # %% Literal % + # Markup is allowed + format = "%s \n%b" + alignment = left + show_age_threshold = 60 + word_wrap = yes + ellipsize = middle + ignore_newline = no + stack_duplicates = true + hide_duplicate_count = false + show_indicators = yes + + ### Icons ### + icon_position = left + max_icon_size = 64 + icon_path = .icons/flattrcolor/status/24:.icons/flattrcolor/devices/48:.icons/flattrcolor/apps/scalable:.icons/flattrcolor/actions/scalable + + ### History ### + sticky_history = yes + history_length = 20 + + ### Misc/Advanced ### + dmenu = /usr/bin/rofi -show run -p dunst: + browser = /usr/bin/google-chrome-stable + always_run_script = true + title = Dunst + class = Dunst + startup_notification = false + force_xinerama = false + +[experimental] + per_monitor_dpi = false + +[shortcuts] + close = ctrl+space + close_all = ctrl+shift+space + context = ctrl+shift+period + +[urgency_low] + background = colors.background + foreground = colors.foreground + timeout = 10 + +[urgency_normal] + background = colors.background + foreground = colors.foreground + timeout = 10 + +[urgency_critical] + background = colors.background + foreground = colors.foreground + frame_color = "#4c596a" + timeout = 0 diff --git a/fontconfig/fonts.conf b/fontconfig/fonts.conf new file mode 100644 index 0000000..40425ba --- /dev/null +++ b/fontconfig/fonts.conf @@ -0,0 +1,42 @@ + + + + + + true + + + true + + + hintmedium + + + rgb + + + false + + + lcdlight + + + 102 + + + + Noto Sans Display + + + serif + Noto Serif + + + sans-serif + Noto Sans + + + monospace + Jetbrains Mono + + diff --git a/herbstluftwm/autostart b/herbstluftwm/autostart new file mode 100755 index 0000000..ead28c3 --- /dev/null +++ b/herbstluftwm/autostart @@ -0,0 +1,198 @@ +#!/usr/bin/env bash + +# this is a simple config for herbstluftwm + +hc() { + herbstclient "$@" +} + +hc emit_hook reload + +xsetroot -solid '#5A8E3A' +mumble-overlay picom & +dunst & +$HOME/.config/herbstluftwm/scripts/lasttag.sh & + +# remove all existing keybindings +hc keyunbind --all + +# keybindings +# if you have a super key you will be much happier with Mod set to Mod4 +#Mod=Mod1 # Use alt as the main modifier +Mod=Mod4 # Use the super key as the main modifier + +hc keybind $Mod-Shift-e quit +hc keybind $Mod-Shift-r reload +hc keybind $Mod-Shift-q close_and_remove +#hc keybind $Mod-Return spawn "${TERMINAL:-xterm}" # use your $TERMINAL with xterm as fallback + +# basic movement in tiling and floating mode +# focusing clients +hc keybind $Mod-Left focus left +hc keybind $Mod-Down focus down +hc keybind $Mod-Up focus up +hc keybind $Mod-Right focus right +hc keybind $Mod-h focus left +hc keybind $Mod-j focus down +hc keybind $Mod-k focus up +hc keybind $Mod-l focus right + +# moving clients in tiling and floating mode +hc keybind $Mod-Shift-Left shift left +hc keybind $Mod-Shift-Down shift down +hc keybind $Mod-Shift-Up shift up +hc keybind $Mod-Shift-Right shift right +hc keybind $Mod-Shift-h shift left +hc keybind $Mod-Shift-j shift down +hc keybind $Mod-Shift-k shift up +hc keybind $Mod-Shift-l shift right + +# splitting frames +# create an empty frame at the specified direction +hc keybind $Mod-u split bottom 0.5 +hc keybind $Mod-o split right 0.5 +# let the current frame explode into subframes +hc keybind $Mod-Control-space split explode + +# resizing frames and floating clients +resizestep=0.02 +hc keybind $Mod-Control-h resize left +$resizestep +hc keybind $Mod-Control-j resize down +$resizestep +hc keybind $Mod-Control-k resize up +$resizestep +hc keybind $Mod-Control-l resize right +$resizestep +hc keybind $Mod-Control-Left resize left +$resizestep +hc keybind $Mod-Control-Down resize down +$resizestep +hc keybind $Mod-Control-Up resize up +$resizestep +hc keybind $Mod-Control-Right resize right +$resizestep + +# tags +tag_names=( {1..9} ) +tag_keys=( {1..9} 0 ) + +hc rename default "${tag_names[0]}" || true +for i in "${!tag_names[@]}" ; do + hc add "${tag_names[$i]}" + key="${tag_keys[$i]}" + if ! [ -z "$key" ] ; then + hc keybind "$Mod-$key" use_index "$i" + hc keybind "$Mod-Shift-$key" move_index "$i" + fi +done + +# cycle through tags +hc keybind $Mod-Tab use_index +1 --skip-visible +hc keybind $Mod-Shift-Tab use_index -1 --skip-visible +hc keybind $Mod-q emit_hook goto_last_tag + +# layouting +#hc keybind $Mod-c remove +hc keybind $Mod-s floating toggle +hc keybind $Mod-f fullscreen toggle +hc keybind $Mod-Shift-f set_attr clients.focus.floating toggle +hc keybind $Mod-t pseudotile toggle +# The following cycles through the available layouts within a frame, but skips +# layouts, if the layout change wouldn't affect the actual window positions. +# I.e. if there are two windows within a frame, the grid layout is skipped. +hc keybind $Mod-space \ + or , and . compare tags.focus.curframe_wcount = 2 \ + . cycle_layout +1 vertical horizontal max vertical grid \ + , cycle_layout +1 + +# mouse +hc mouseunbind --all +hc mousebind $Mod-Button1 move +hc mousebind $Mod-Button2 zoom +hc mousebind $Mod-Button3 resize + +# focus +#hc keybind $Mod-BackSpace cycle_monitor +#hc keybind $Mod-Tab cycle_all +1 +#hc keybind $Mod-Shift-Tab cycle_all -1 +#hc keybind $Mod-c cycle +#hc keybind $Mod-i jumpto urgent + +# theme +hc attr theme.tiling.reset 1 +hc attr theme.floating.reset 1 +hc set frame_border_active_color '#2a84d2' +hc set frame_border_normal_color '#44475a' +hc set frame_bg_normal_color '#6272a4' +hc set frame_bg_active_color '#6272a4' +hc set frame_border_width 3 +hc set always_show_frame 0 +hc set frame_bg_transparent 1 +hc set frame_transparent_width 0 +hc set frame_gap 5 + +hc attr theme.active.color '#2a84d2' +hc attr theme.normal.color '#44475a' +hc attr theme.urgent.color orange +hc attr theme.inner_width 0 +hc attr theme.inner_color black +hc attr theme.border_width 0 +hc attr theme.floating.border_width 0 +hc attr theme.floating.outer_width 0 +hc attr theme.floating.outer_color black +#hc attr theme.active.inner_color '#414b4e' +#hc attr theme.active.outer_color '#414b4e' +hc attr theme.background_color '#141414' + +hc set window_gap 0 +hc set frame_padding 0 +hc set smart_window_surroundings off +hc set smart_frame_surroundings on +hc set mouse_recenter_gap 0 +hc set focus_follows_mouse 1 + +# rules +hc unrule -F +#hc rule class=XTerm tag=3 # move all xterms to tag 3 +hc rule focus=on # normally focus new clients +#hc rule focus=off # normally do not focus new clients +# give focus to most common terminals +#hc rule class~'(.*[Rr]xvt.*|.*[Tt]erm|Konsole)' focus=on +hc rule windowtype~'_NET_WM_WINDOW_TYPE_(DIALOG|UTILITY|SPLASH)' floating=on +hc rule windowtype='_NET_WM_WINDOW_TYPE_DIALOG' focus=on +hc rule windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK|DESKTOP)' manage=off + +# assign to tag rules +hc rule class="qutebrowser" tag=1 +hc rule class="unimatrix" fullscreen=on +hc rule class="Pale moon" tag=1 +hc rule class="qutebrowser" tag=1 +hc rule class="firefox" tag=1 +hc rule class="LibreWolf" tag=1 +hc rule class="Brave-browser" tag=1 +hc rule class="IceCat" tag=1 +hc rule class="Chromium" tag=1 +hc rule class="Spotify" tag=2 +hc rule class="Rhythmbox" tag=2 +hc rule class="Lutris" tag=4 +hc rule class="Mumble" tag=4 +hc rule class="Riot" tag=5 +hc rule class="discord" tag=5 +hc rule class="Ripcord" tag=5 +hc rule class="Thunderbird" tag=6 +hc rule class="keepassx2" tag=7 +hc rule class="keepassxc" tag=7 +hc rule class="Transmission-gtk" tag=8 +hc rule class="Steam" tag=8 +hc rule class="Thunar" tag=9 + +hc set tree_style '╾│ ├└╼─┐' + +# unlock, just to be sure +hc unlock + +# do multi monitor setup here, e.g.: +# hc set_monitors 1280x1024+0+0 1280x1024+1280+0 +# or simply: +# hc detect_monitors + +# find the panel +panel=~/.local/bin/launch_polybar +[ -x "$panel" ] || panel=/etc/xdg/herbstluftwm/panel.sh +for monitor in $(hc list_monitors | cut -d: -f1) ; do + # start it on each monitor + "$panel" "$monitor" & +done diff --git a/herbstluftwm/scripts/hide.sh b/herbstluftwm/scripts/hide.sh new file mode 100755 index 0000000..8450f17 --- /dev/null +++ b/herbstluftwm/scripts/hide.sh @@ -0,0 +1,18 @@ +#!/bin/sh +function tag() { + herbstclient list_monitors | grep ‘[FOCUS]’ | cut -d’”’ -f2 +} + +tag=$(tag) +case "$@" in + +1) herbstclient dump “‘$tag” || herbstclient add “‘$tag” + herbstclient move “‘$tag” + ;; + -1) if herbstclient dump “‘$tag”; then + herbstclient chain . lock . use “‘$tag” + winid=$(herbstclient attr clients.focus.winid) + herbstclient chain . use $tag . bring $winid . unlock + fi + ;; + 0|*) herbstclient dump “‘$tag” && herbstclient merge_tag “‘$tag” ;; +esac diff --git a/herbstluftwm/scripts/lasttag.sh b/herbstluftwm/scripts/lasttag.sh new file mode 100755 index 0000000..dd89314 --- /dev/null +++ b/herbstluftwm/scripts/lasttag.sh @@ -0,0 +1,25 @@ +#!/usr/bin/env bash + +# usage: start this script in anywhere your autostart (but *after* the +# emit_hook reload line) + +# to switch to the last tag, call: herbstclient emit_hook goto_last_tag +# or bind it: herbstclient keybind Mod1-Escape emit_hook goto_last_tag + +hc() { "${herbstclient_command[@]:-herbstclient}" "$@" ;} +hc --idle '(tag_changed|goto_last_tag|reload)' \ + | while read line ; do + IFS=$'\t' read -ra args <<< "$line" + case ${args[0]} in + tag_changed) + lasttag="$tag" + tag=${args[1]} + ;; + goto_last_tag) + [ "$lasttag" ] && hc use "$lasttag" + ;; + reload) + exit + ;; + esac + done diff --git a/htop/htoprc b/htop/htoprc new file mode 100644 index 0000000..1233057 --- /dev/null +++ b/htop/htoprc @@ -0,0 +1,39 @@ +# Beware! This file is rewritten by htop when settings are changed in the interface. +# The parser is also very primitive, and not human-friendly. +fields=0 48 17 18 38 39 40 2 46 47 49 1 +sort_key=46 +sort_direction=1 +tree_sort_key=0 +tree_sort_direction=1 +hide_kernel_threads=0 +hide_userland_threads=0 +shadow_other_users=0 +show_thread_names=0 +show_program_path=0 +highlight_base_name=0 +highlight_megabytes=1 +highlight_threads=1 +highlight_changes=0 +highlight_changes_delay_secs=5 +find_comm_in_cmdline=1 +strip_exe_from_cmdline=1 +show_merged_command=0 +tree_view=0 +tree_view_always_by_pid=0 +header_margin=1 +detailed_cpu_time=0 +cpu_count_from_one=1 +show_cpu_usage=1 +show_cpu_frequency=0 +show_cpu_temperature=1 +degree_fahrenheit=0 +update_process_names=0 +account_guest_in_cpu_meter=0 +color_scheme=0 +enable_mouse=1 +delay=15 +left_meters=AllCPUs +left_meter_modes=1 +right_meters=CPU Memory Swap Battery Uptime Tasks +right_meter_modes=1 1 1 1 2 2 +hide_function_bar=0 diff --git a/i3/config b/i3/config new file mode 100644 index 0000000..1eff55d --- /dev/null +++ b/i3/config @@ -0,0 +1,269 @@ +set $mod Mod4 + +# This font is widely installed, provides lots of unicode glyphs, right-to-left +# text rendering and scalability on retina/hidpi displays (thanks to pango). +font pango:Noto Sans 9 + +# Before i3 v4.8, we used to recommend this one as the default: +# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1 +# The font above is very space-efficient, that is, it looks good, sharp and +# clear in small sizes. However, its unicode glyph coverage is limited, the old +# X core fonts rendering does not support right-to-left and this being a bitmap +# font, it doesn’t scale on retina/hidpi displays. + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +# start a terminal +# bindsym $mod+Return exec urxvtc +# start browser +# bindsym $mod+Mod2+KP_1 exec palemoon +#start file browser +# bindsym $mod+Mod2+KP_9 exec urxvtc -e vifm +# kill focused window +bindsym $mod+Shift+q kill +# start pulsemixer +# bindsym $mod+Mod2+KP_3 exec urxvt -e pulsemixer +# start riot +# bindsym $mod+Mod2+KP_5 exec riot-desktop +# start ncmpcpp +# bindsym $mod+Mod2+KP_2 exec urxvtc -e ncmpcpp +# start lutris +# bindsym $mod+Mod2+KP_4 exec lutris +# start neomutt +# bindsym $mod+Mod2+KP_6 exec urxvtc -e neomutt +# start keepass +# bindsym $mod+Mod2+KP_7 exec keepassx2 +# start steam +# bindsym $mod+Mod2+KP_8 exec steam +# passmenu +# bindsym $mod+Mod2+KP_7 exec passmenu + +# equalizer +# bindsym $mod+p exec pulseaudio-equalizer toggle + +# dmenu network manager +bindsym $mod+n exec networkmanager_dmenu -fn "Noto Sans:style=Regular:size=11" -dim 0.5 -w 650 -x 365 -y 244 -nb "$bg" -nf "$fg" -sb "$fg" -sf "$bg" -p ">>" -l 15 + +# dmenu +bindsym $mod+r exec --no-startup-id dmenu_run -fn "Noto Sans:style=Regular:size=11" -dim 0.5 -w 650 -x 365 -y 244 -nb "$bg" -nf "$fg" -sb "$fg" -sf "$bg" -p ">>" -l 15 + +# rofi +#bindsym $mod+r exec rofi -show run -disable-history + +# screenshot +# bindsym --release Print exec import -window root ~/Pictures/Screenshots/$(date +%F_%H%M%S_%N).png + +# bindsym --release Shift+Print exec import ~/Pictures/Screenshots/$(date +%F_%H%M%S_%N).png + +# htop +# bindsym $mod+Escape exec urxvt -e htop + +# screenkey +# bindsym $mod+grave exec screenkey +# bindsym $mod+Shift+grave exec killall screenkey + +# emojis +# bindsym $mod+c exec dmenu-emoji.sh + +# change focus +bindsym $mod+h focus left +bindsym $mod+j focus down +bindsym $mod+k focus up +bindsym $mod+l focus right + +# alternatively, you can use the cursor keys: +bindsym $mod+Left focus left +bindsym $mod+Down focus down +bindsym $mod+Up focus up +bindsym $mod+Right focus right + +# move focused window +bindsym $mod+Shift+h move left +bindsym $mod+Shift+j move down +bindsym $mod+Shift+k move up +bindsym $mod+Shift+l move right + +# alternatively, you can use the cursor keys: +bindsym $mod+Shift+Left move left +bindsym $mod+Shift+Down move down +bindsym $mod+Shift+Up move up +bindsym $mod+Shift+Right move right + +# split in horizontal orientation +bindsym $mod+b split h + +# split in vertical orientation +bindsym $mod+v split v + +bindsym $mod+q workspace back_and_forth + +# enter fullscreen mode for the focused container +bindsym $mod+f fullscreen toggle + +# change container layout (stacked, tabbed, toggle split) +bindsym $mod+s layout stacking +bindsym $mod+w layout tabbed +bindsym $mod+e layout toggle split + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# focus the parent container +bindsym $mod+a focus parent + +# focus the child container +#bindsym $mod+d focus child + +# switch to workspace +bindsym $mod+1 workspace 1:一 +bindsym $mod+2 workspace 2:二 +bindsym $mod+3 workspace 3:三 +bindsym $mod+4 workspace 4:四 +bindsym $mod+5 workspace 5:五 +bindsym $mod+6 workspace 6:六 +bindsym $mod+7 workspace 7:七 +bindsym $mod+8 workspace 8:八 +bindsym $mod+9 workspace 9:九 +bindsym $mod+0 workspace 10:十 +bindsym $mod+Shift+Tab workspace prev +bindsym $mod+Tab workspace next + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace 1:一 +bindsym $mod+Shift+2 move container to workspace 2:二 +bindsym $mod+Shift+3 move container to workspace 3:三 +bindsym $mod+Shift+4 move container to workspace 4:四 +bindsym $mod+Shift+5 move container to workspace 5:五 +bindsym $mod+Shift+6 move container to workspace 6:六 +bindsym $mod+Shift+7 move container to workspace 7:七 +bindsym $mod+Shift+8 move container to workspace 8:八 +bindsym $mod+Shift+9 move container to workspace 9:九 +bindsym $mod+Shift+0 move container to workspace 10:十 + +# reload the configuration file +bindsym $mod+Shift+c reload +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r restart +# exit i3 (logs you out of your X session) +bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'Do you want to exit i3?' -b 'Yes, exit i3' 'i3-msg exit'" + +# resize window (you can also use the mouse for that) +mode "resize" { + # These bindings trigger as soon as you enter the resize mode + + # Pressing left will shrink the window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s height. + bindsym h resize shrink width 5 px or 5 ppt + bindsym j resize grow height 5 px or 5 ppt + bindsym k resize shrink height 5 px or 5 ppt + bindsym l resize grow width 5 px or 5 ppt + + # same bindings, but for the arrow keys + bindsym Left resize shrink width 5 px or 5 ppt + bindsym Down resize grow height 5 px or 5 ppt + bindsym Up resize shrink height 5 px or 5 ppt + bindsym Right resize grow width 5 px or 5 ppt + + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} + +bindsym $mod+d mode "resize" + +# wallpaper +exec_always feh --bg-fill /home/trollshotlol/Pictures/Wallpapers/1544213727893.jpg + +# Color +set_from_resource $fg i3wm.foreground #f0f0f0 +set_from_resource $fg-alt i3wm.color9 #f0f0f0 +set_from_resource $bg i3wm.background #f0f0f0 + +# class border backgr. text indicator child_border +client.focused $bg $bg $fg $bg $fg +client.focused_inactive $bg $bg $fg $bg $fg-alt +client.unfocused $bg $bg $fg $bg $fg-alt +client.urgent $bg $bg $fg $bg $fg-alt +client.placeholder $bg $bg $fg $bg $fg-alt +client.background $bg $bg $fg $bg $fg-alt + +# Start i3bar to display a workspace bar (plus the system information i3status +# finds out, if available) + +# gaps +gaps inner 5 +gaps outer 0 +smart_gaps on +smart_borders on + +# bindsym $mod+Shift+x exec i3lock --blur 5 + +# increase sound volume +# bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume alsa_output.pci-0000_00_1f.3.analog-stereo +5% + +# bindsym Shift+XF86AudioRaiseVolume exec --no-startup-id playerctl volume 0.02+ + +# decrease sound volume +# bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume alsa_output.pci-0000_00_1f.3.analog-stereo -5% + +# bindsym Shift+XF86AudioLowerVolume exec --no-startup-id playerctl volume 0.02- + +# Next/Previous Song +# bindsym XF86AudioNext exec --no-startup-id playerctl next +# bindsym XF86AudioPrev exec --no-startup-id playerctl previous +# bindsym XF86AudioPause exec --no-startup-id playerctl play-pause + +# mute sound +# bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute alsa_output.pci-0000_00_1f.3.analog-stereo toggle + +# Sreen brightness controls +# bindsym XF86MonBrightnessUp exec light -A 10 # increase screen brightness +# bindsym XF86MonBrightnessDown exec light -U 10 # decrease screen brightness + +# autostart programs +exec urxvtd +exec_always --no-startup-id dunst -lb "$bg" -nb "$bg" -cb "$bg" -lf "$fg" -nf "$fg" -cf "$fg" -frame_width 6 +exec_always mumble-overlay compton +exec palemoon +exec_always --no-startup-id $HOME/.config/polybar/launch.sh +#exec keepassx2 +exec wal -R + +# assign various programs workspaces +assign [class="Chromium"] 1:一 +assign [class="IceCat"] 1:一 +assign [class="Pale moon"] 1:一 +assign [class="Auryo"] 2:二 +assign [title="newsboat"] 2:二 +assign [class="Spotify"] 2:二 +assign [title="pulsemixer"] 3:三 +assign [class="Lutris"] 4:四 +assign [title="irssi"] 4:四 +assign [class="Mumble"] 5:五 +assign [class="discord"] 5:五 +assign [class="Riot"] 5:五 +assign [title="neomutt"] 6:六 +assign [class="Thunderbird"] 6:六 +assign [class="Keepassx2"] 7:七 +assign [class="keepassxc"] 7:七 +assign [class="Transmission-gtk"] 8:八 +assign [class="Steam"] 8:八 +assign [class="Thunar"] 9:九 +assign [title="ranger"] 9:九 +assign [title="vifm"] 9:九 + +# specific program rules +for_window [class="Tor Browser"] floating enable + +bindsym $mod+y border pixel 4 +bindsym $mod+u border none + +focus_follows_mouse yes +new_window pixel 4 +#workspace_auto_back_and_forth yes diff --git a/inputrc b/inputrc new file mode 100644 index 0000000..b2cc9d6 --- /dev/null +++ b/inputrc @@ -0,0 +1 @@ +set editing-mode vi diff --git a/irssi/config b/irssi/config new file mode 100644 index 0000000..0588204 --- /dev/null +++ b/irssi/config @@ -0,0 +1,306 @@ +servers = ( + { address = "irc.dal.net"; chatnet = "DALnet"; port = "6667"; }, + { + address = "ssl.efnet.org"; + chatnet = "EFNet"; + port = "9999"; + use_tls = "yes"; + }, + { + address = "irc.esper.net"; + chatnet = "EsperNet"; + port = "6697"; + use_tls = "yes"; + tls_verify = "yes"; + }, + { + address = "chat.freenode.net"; + chatnet = "Freenode"; + port = "6697"; + use_tls = "yes"; + tls_verify = "yes"; + }, + { + address = "irc.gamesurge.net"; + chatnet = "GameSurge"; + port = "6667"; + }, + { + address = "eu.irc6.net"; + chatnet = "IRCnet"; + port = "6667"; + use_tls = "yes"; + }, + { address = "open.ircnet.net"; chatnet = "IRCnet"; port = "6667"; }, + { + address = "irc.ircsource.net"; + chatnet = "IRCSource"; + port = "6667"; + }, + { address = "irc.netfuze.net"; chatnet = "NetFuze"; port = "6667"; }, + { + address = "irc.oftc.net"; + chatnet = "OFTC"; + port = "6697"; + use_tls = "yes"; + tls_verify = "yes"; + }, + { + address = "irc.quakenet.org"; + chatnet = "QuakeNet"; + port = "6667"; + }, + { + address = "irc.rizon.net"; + chatnet = "Rizon"; + port = "6697"; + use_tls = "yes"; + tls_verify = "yes"; + }, + { address = "silc.silcnet.org"; chatnet = "SILC"; port = "706"; }, + { + address = "irc.undernet.org"; + chatnet = "Undernet"; + port = "6667"; + } +); + +chatnets = { + DALnet = { + type = "IRC"; + max_kicks = "4"; + max_msgs = "20"; + max_whois = "30"; + }; + EFNet = { + type = "IRC"; + max_kicks = "1"; + max_msgs = "4"; + max_whois = "1"; + }; + EsperNet = { + type = "IRC"; + max_kicks = "1"; + max_msgs = "4"; + max_whois = "1"; + }; + Freenode = { + type = "IRC"; + max_kicks = "1"; + max_msgs = "4"; + max_whois = "1"; + }; + GameSurge = { + type = "IRC"; + max_kicks = "1"; + max_msgs = "1"; + max_whois = "1"; + }; + IRCnet = { + type = "IRC"; + max_kicks = "1"; + max_msgs = "1"; + max_whois = "1"; + }; + IRCSource = { + type = "IRC"; + max_kicks = "1"; + max_msgs = "4"; + max_whois = "1"; + }; + NetFuze = { + type = "IRC"; + max_kicks = "1"; + max_msgs = "1"; + max_whois = "1"; + }; + OFTC = { type = "IRC"; max_kicks = "1"; max_msgs = "1"; max_whois = "1"; }; + QuakeNet = { + type = "IRC"; + max_kicks = "1"; + max_msgs = "1"; + max_whois = "1"; + }; + Rizon = { + type = "IRC"; + max_kicks = "1"; + max_msgs = "1"; + max_whois = "1"; + }; + SILC = { type = "SILC"; }; + Undernet = { + type = "IRC"; + max_kicks = "1"; + max_msgs = "1"; + max_whois = "1"; + }; +}; + +channels = ( + { name = "#lobby"; chatnet = "EsperNet"; autojoin = "No"; }, + { name = "#freenode"; chatnet = "Freenode"; autojoin = "No"; }, + { name = "#irssi"; chatnet = "Freenode"; autojoin = "No"; }, + { name = "#gamesurge"; chatnet = "GameSurge"; autojoin = "No"; }, + { name = "#irssi"; chatnet = "IRCNet"; autojoin = "No"; }, + { name = "#ircsource"; chatnet = "IRCSource"; autojoin = "No"; }, + { name = "#netfuze"; chatnet = "NetFuze"; autojoin = "No"; }, + { name = "#oftc"; chatnet = "OFTC"; autojoin = "No"; }, + { name = "silc"; chatnet = "SILC"; autojoin = "No"; } +); + +aliases = { + ATAG = "WINDOW SERVER"; + ADDALLCHANS = "SCRIPT EXEC foreach my \\$channel (Irssi::channels()) { Irssi::command(\"CHANNEL ADD -auto \\$channel->{name} \\$channel->{server}->{tag} \\$channel->{key}\")\\;}"; + B = "BAN"; + BACK = "AWAY"; + BANS = "BAN"; + BYE = "QUIT"; + C = "CLEAR"; + CALC = "EXEC - if command -v bc >/dev/null 2>&1\\; then printf '%s=' '$*'\\; echo '$*' | bc -l\\; else echo bc was not found\\; fi"; + CHAT = "DCC CHAT"; + DATE = "TIME"; + DEHIGHLIGHT = "DEHILIGHT"; + DESCRIBE = "ACTION"; + DHL = "DEHILIGHT"; + EXEMPTLIST = "MODE $C +e"; + EXIT = "QUIT"; + GOTO = "SCROLLBACK GOTO"; + HIGHLIGHT = "HILIGHT"; + HL = "HILIGHT"; + HOST = "USERHOST"; + INVITELIST = "MODE $C +I"; + J = "JOIN"; + K = "KICK"; + KB = "KICKBAN"; + KN = "KNOCKOUT"; + LAST = "LASTLOG"; + LEAVE = "PART"; + M = "MSG"; + MUB = "UNBAN *"; + N = "NAMES"; + NMSG = "^MSG"; + P = "PART"; + Q = "QUERY"; + RESET = "SET -default"; + RUN = "SCRIPT LOAD"; + SAY = "MSG *"; + SB = "SCROLLBACK"; + SBAR = "STATUSBAR"; + SIGNOFF = "QUIT"; + SV = "MSG * Irssi $J ($V) - https://irssi.org"; + T = "TOPIC"; + UB = "UNBAN"; + UMODE = "MODE $N"; + UNSET = "SET -clear"; + W = "WHO"; + WC = "WINDOW CLOSE"; + WG = "WINDOW GOTO"; + WJOIN = "JOIN -window"; + WI = "WHOIS"; + WII = "WHOIS $0 $0"; + WL = "WINDOW LIST"; + WN = "WINDOW NEW HIDDEN"; + WQUERY = "QUERY -window"; + WW = "WHOWAS"; +}; + +statusbar = { + + items = { + + barstart = "{sbstart}"; + barend = "{sbend}"; + + topicbarstart = "{topicsbstart}"; + topicbarend = "{topicsbend}"; + + time = "{sb $Z}"; + user = "{sb {sbnickmode $cumode}$N{sbmode $usermode}{sbaway $A}}"; + + window = "{sb $winref:$tag/$itemname{sbmode $M}}"; + window_empty = "{sb $winref{sbservertag $tag}}"; + + prompt = "{prompt $[.15]itemname}"; + prompt_empty = "{prompt $winname}"; + + topic = " $topic"; + topic_empty = " Irssi v$J - https://irssi.org"; + + lag = "{sb Lag: $0-}"; + act = "{sb Act: $0-}"; + more = "-- more --"; + }; + + default = { + + window = { + + disabled = "no"; + type = "window"; + placement = "bottom"; + position = "1"; + visible = "active"; + + items = { + barstart = { priority = "100"; }; + time = { }; + user = { }; + window = { }; + window_empty = { }; + lag = { priority = "-1"; }; + act = { priority = "10"; }; + more = { priority = "-1"; alignment = "right"; }; + barend = { priority = "100"; alignment = "right"; }; + }; + }; + + window_inact = { + + type = "window"; + placement = "bottom"; + position = "1"; + visible = "inactive"; + + items = { + barstart = { priority = "100"; }; + window = { }; + window_empty = { }; + more = { priority = "-1"; alignment = "right"; }; + barend = { priority = "100"; alignment = "right"; }; + }; + }; + + prompt = { + + type = "root"; + placement = "bottom"; + position = "100"; + visible = "always"; + + items = { + prompt = { priority = "-1"; }; + prompt_empty = { priority = "-1"; }; + input = { priority = "10"; }; + }; + }; + + topic = { + + type = "root"; + placement = "top"; + position = "1"; + visible = "always"; + + items = { + topicbarstart = { priority = "100"; }; + topic = { }; + topic_empty = { }; + topicbarend = { priority = "100"; alignment = "right"; }; + }; + }; + }; +}; +settings = { + core = { real_name = "Unknown"; user_name = "train"; nick = "train"; }; + "fe-text" = { actlist_sort = "refnum"; }; +}; diff --git a/jellyfin-mpv-shim/conf.json b/jellyfin-mpv-shim/conf.json new file mode 100644 index 0000000..53a8aa7 --- /dev/null +++ b/jellyfin-mpv-shim/conf.json @@ -0,0 +1,96 @@ +{ + "always_transcode": false, + "audio_output": "hdmi", + "auto_play": true, + "check_updates": true, + "client_uuid": "e7972db2-fd05-4d3a-b037-b6ce4031e8a3", + "connect_retry_mins": 0, + "desktop_fullscreen": false, + "desktop_keep_pos": false, + "desktop_keep_size": true, + "desktop_scale": 1.0, + "direct_paths": false, + "discord_presence": false, + "display_mirroring": true, + "enable_desktop": false, + "enable_gui": true, + "enable_osc": true, + "fullscreen": true, + "idle_cmd": null, + "idle_cmd_delay": 60, + "idle_when_paused": false, + "ignore_ssl_cert": false, + "kb_debug": "~", + "kb_fullscreen": "f", + "kb_kill_shader": "k", + "kb_menu": "c", + "kb_menu_down": "down", + "kb_menu_esc": "esc", + "kb_menu_left": "left", + "kb_menu_ok": "enter", + "kb_menu_right": "right", + "kb_menu_up": "up", + "kb_next": ">", + "kb_pause": "space", + "kb_prev": "<", + "kb_stop": "q", + "kb_unwatched": "u", + "kb_watched": "w", + "lang": null, + "lang_filter": "und,eng,jpn,mis,mul,zxx", + "lang_filter_audio": false, + "lang_filter_sub": false, + "local_kbps": 2147483, + "log_decisions": false, + "media_ended_cmd": null, + "media_key_seek": false, + "media_keys": true, + "menu_mouse": true, + "mpv_ext": true, + "mpv_ext_ipc": null, + "mpv_ext_no_ovr": true, + "mpv_ext_path": "/usr/bin/mpv", + "mpv_ext_start": true, + "mpv_log_level": "info", + "notify_updates": true, + "playback_timeout": 30, + "player_name": "mavis", + "pre_media_cmd": null, + "remote_direct_paths": false, + "remote_kbps": 10000, + "sanitize_output": true, + "screenshot_dir": null, + "screenshot_menu": true, + "seek_down": -60, + "seek_h_exact": false, + "seek_left": -5, + "seek_right": 5, + "seek_up": 60, + "seek_v_exact": false, + "shader_pack_custom": false, + "shader_pack_enable": true, + "shader_pack_profile": null, + "shader_pack_remember": true, + "stop_cmd": null, + "stop_idle": false, + "subtitle_color": "#FFFFFFFF", + "subtitle_position": "bottom", + "subtitle_size": 100, + "svp_enable": true, + "svp_socket": null, + "svp_url": "http://127.0.0.1:9901/", + "sync_attempts": 5, + "sync_max_delay_skip": 300, + "sync_max_delay_speed": 50, + "sync_method_thresh": 2000, + "sync_osd_message": true, + "sync_revert_seek": true, + "sync_speed_attempts": 3, + "sync_speed_time": 1000, + "transcode_h265": false, + "transcode_hi10p": false, + "transcode_to_h265": false, + "transcode_warning": true, + "use_web_seek": false, + "write_logs": false +} \ No newline at end of file diff --git a/jellyfin-mpv-shim/cred.json b/jellyfin-mpv-shim/cred.json new file mode 100644 index 0000000..fd1302d --- /dev/null +++ b/jellyfin-mpv-shim/cred.json @@ -0,0 +1 @@ +[{"address": "http://192.168.1.12:8096", "Name": "maeve", "Id": "9d84963cf34941e09182c096694bb27b", "DateLastAccessed": "2021-01-01T18:38:39Z", "UserId": null, "AccessToken": null, "Users": [{"Id": "7674ac43312742b989aaa7dcb16c1cfa", "IsSignedInOffline": true}], "uuid": "d81c4475-81d7-49a5-9638-6b78d13b8cf4", "username": "train", "connected": false}, {"address": "http://192.168.1.12:8096", "Name": "maeve", "Id": "9d84963cf34941e09182c096694bb27b", "DateLastAccessed": "2021-01-08T17:02:47Z", "UserId": "7674ac43312742b989aaa7dcb16c1cfa", "AccessToken": "eec7577506dc4fbfb8760e8d307937bd", "Users": [{"Id": "7674ac43312742b989aaa7dcb16c1cfa", "IsSignedInOffline": true}], "uuid": "ecf3d8e4-7a03-4cd9-b617-e66ea76fc1b6", "username": "train", "connected": true}] \ No newline at end of file diff --git a/jellyfin-mpv-shim/input.conf b/jellyfin-mpv-shim/input.conf new file mode 100644 index 0000000..e69de29 diff --git a/jellyfin-mpv-shim/mpv.conf b/jellyfin-mpv-shim/mpv.conf new file mode 100644 index 0000000..ca9df5a --- /dev/null +++ b/jellyfin-mpv-shim/mpv.conf @@ -0,0 +1 @@ +force-window=yes diff --git a/keepassxc/keepassxc.ini b/keepassxc/keepassxc.ini new file mode 100644 index 0000000..6b318f9 --- /dev/null +++ b/keepassxc/keepassxc.ini @@ -0,0 +1,18 @@ +[General] +ConfigVersion=1 +HideWindowOnCopy=false +MinimizeOnCopy=true +UpdateCheckMessageShown=true +UseAtomicSaves=false + +[GUI] +ApplicationTheme=dark +CheckForUpdates=false +HideUsernames=false + +[PasswordGenerator] +AdditionalChars= +AdvancedMode=true +ExcludedChars= +Length=25 +SpecialChars=false diff --git a/live-latex-preview/activepid b/live-latex-preview/activepid new file mode 100644 index 0000000..e9e2f50 --- /dev/null +++ b/live-latex-preview/activepid @@ -0,0 +1 @@ +31132 \ No newline at end of file diff --git a/live-latex-preview/lastresult b/live-latex-preview/lastresult new file mode 100644 index 0000000..0f0c913 --- /dev/null +++ b/live-latex-preview/lastresult @@ -0,0 +1 @@ +success \ No newline at end of file diff --git a/mpd/mpd.conf b/mpd/mpd.conf new file mode 100644 index 0000000..797a2fd --- /dev/null +++ b/mpd/mpd.conf @@ -0,0 +1,274 @@ +# An example configuration file for MPD. +# Read the user manual for documentation: http://www.musicpd.org/doc/user/ + + +# Files and directories ####################################################### +# +# This setting controls the top directory which MPD will search to discover the +# available audio files and add them to the daemon's online database. This +# setting defaults to the XDG directory, otherwise the music directory will be +# be disabled and audio files will only be accepted over ipc socket (using +# file:// protocol) or streaming files over an accepted protocol. +# +music_directory "~/music" +#music_directory "/mnt/Music" +# +# This setting sets the MPD internal playlist directory. The purpose of this +# directory is storage for playlists created by MPD. The server will use +# playlist files not created by the server but only if they are in the MPD +# format. This setting defaults to playlist saving being disabled. +# +playlist_directory "~/.config/mpd/playlists" +# +# This setting sets the location of the MPD database. This file is used to +# load the database at server start up and store the database while the +# server is not up. This setting defaults to disabled which will allow +# MPD to accept files over ipc socket (using file:// protocol) or streaming +# files over an accepted protocol. +# +db_file "~/.config/mpd/database" +# +# These settings are the locations for the daemon log files for the daemon. +# These logs are great for troubleshooting, depending on your log_level +# settings. +# +# The special value "syslog" makes MPD use the local syslog daemon. This +# setting defaults to logging to syslog, otherwise logging is disabled. +# +log_file "~/.config/mpd/log" +# +# This setting sets the location of the file which stores the process ID +# for use of mpd --kill and some init scripts. This setting is disabled by +# default and the pid file will not be stored. +# +pid_file "~/.config/mpd/pid" +# +# This setting sets the location of the file which contains information about +# most variables to get MPD back into the same general shape it was in before +# it was brought down. This setting is disabled by default and the server +# state will be reset on server start up. +# +state_file "~/.config/mpd/state" +# +# The location of the sticker database. This is a database which +# manages dynamic information attached to songs. +# +sticker_file "~/.config/mpd/sticker.sql" +# +############################################################################### + + +# General music daemon options ################################################ +# +# This setting specifies the user that MPD will run as. MPD should never run as +# root and you may use this setting to make MPD change its user ID after +# initialization. This setting is disabled by default and MPD is run as the +# current user. +# +#user "nobody" +# +# This setting specifies the group that MPD will run as. If not specified +# primary group of user specified with "user" setting will be used (if set). +# This is useful if MPD needs to be a member of group such as "audio" to +# have permission to use sound card. +# +#group "nogroup" +# +# This setting sets the address for the daemon to listen on. Careful attention +# should be paid if this is assigned to anything other then the default, any. +# This setting can deny access to control of the daemon. Not effective if +# systemd socket activiation is in use. +# +# For network +#bind_to_address "any" +# +# And for Unix Socket +#bind_to_address "~/.mpd/socket" +# +# This setting is the TCP port that is desired for the daemon to get assigned +# to. +# +port "6600" +# +# This setting controls the type of information which is logged. Available +# setting arguments are "default", "secure" or "verbose". The "verbose" setting +# argument is recommended for troubleshooting, though can quickly stretch +# available resources on limited hardware storage. +# +#log_level "default" +# +# If you have a problem with your MP3s ending abruptly it is recommended that +# you set this argument to "no" to attempt to fix the problem. If this solves +# the problem, it is highly recommended to fix the MP3 files with vbrfix +# (available from ), at which +# point gapless MP3 playback can be enabled. +# +#gapless_mp3_playback "yes" +# +# Setting "restore_paused" to "yes" puts MPD into pause mode instead +# of starting playback after startup. +# +#restore_paused "no" +# +# This setting enables MPD to create playlists in a format usable by other +# music players. +# +#save_absolute_paths_in_playlists "no" +# +# This setting defines a list of tag types that will be extracted during the +# audio file discovery process. The complete list of possible values can be +# found in the user manual. +#metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc" +# +# This setting enables automatic update of MPD's database when files in +# music_directory are changed. +# +#auto_update "yes" +# +# Limit the depth of the directories being watched, 0 means only watch +# the music directory itself. There is no limit by default. +# +#auto_update_depth "3" +# +############################################################################### + + +# Symbolic link behavior ###################################################### +# +# If this setting is set to "yes", MPD will discover audio files by following +# symbolic links outside of the configured music_directory. +# +#follow_outside_symlinks "yes" +# +# If this setting is set to "yes", MPD will discover audio files by following +# symbolic links inside of the configured music_directory. +# +#follow_inside_symlinks "yes" +# +############################################################################### + + +# Zeroconf / Avahi Service Discovery ########################################## +# +# If this setting is set to "yes", service information will be published with +# Zeroconf / Avahi. +# +#zeroconf_enabled "yes" +# +# The argument to this setting will be the Zeroconf / Avahi unique name for +# this MPD server on the network. +# +#zeroconf_name "Music Player" +# +############################################################################### + + +# Permissions ################################################################# +# +# If this setting is set, MPD will require password authorization. The password +# setting can be specified multiple times for different password profiles. +# +#password "QLKQmnhvq6dc72Ri1Ef5WHfcq@read,add,control,admin" +# +# This setting specifies the permissions a user has who has not yet logged in. +# +#default_permissions "read" +# +############################################################################### + + +# Database ####################################################################### +# + +#database { +# plugin "proxy" +# host "other.mpd.host" +# port "6600" +#} + +# Input ####################################################################### +# + +input { + plugin "curl" +# proxy "proxy.isp.com:8080" +# proxy_user "user" +# proxy_password "password" +} + +# +############################################################################### + +# Audio Output ################################################################ +# +# MPD supports various audio output types, as well as playing through multiple +# audio outputs at the same time, through multiple audio_output settings +# blocks. Setting this block is optional, though the server will only attempt +# autodetection for one sound card. + +# An example of a pulseaudio output (streaming to a remote pulseaudio server) +# +audio_output { + type "pulse" + name "My Pulse Output" +# server "remote_server" # optional +## sink "remote_server_sink" # optional + format "48000:16:2" +} + +#audio_output { +# type "alsa" +# name "ALSA sound card" +# # Optional +# #device "iec958:CARD=Intel,DEV=0" +# #mixer_control "PCM" +#} +############################################################################### + + +# Normalization automatic volume adjustments ################################## +# +# This setting specifies the type of ReplayGain to use. This setting can have +# the argument "off", "album", "track" or "auto". "auto" is a special mode that +# chooses between "track" and "album" depending on the current state of +# random playback. If random playback is enabled then "track" mode is used. +# See for more details about ReplayGain. +# This setting is off by default. +# +#replaygain "album" +# +# This setting sets the pre-amp used for files that have ReplayGain tags. By +# default this setting is disabled. +# +#replaygain_preamp "0" +# +# This setting sets the pre-amp used for files that do NOT have ReplayGain tags. +# By default this setting is disabled. +# +#replaygain_missing_preamp "0" +# +# This setting enables or disables ReplayGain limiting. +# MPD calculates actual amplification based on the ReplayGain tags +# and replaygain_preamp / replaygain_missing_preamp setting. +# If replaygain_limit is enabled MPD will never amplify audio signal +# above its original level. If replaygain_limit is disabled such amplification +# might occur. By default this setting is enabled. +# +#replaygain_limit "yes" +# +# This setting enables on-the-fly normalization volume adjustment. This will +# result in the volume of all playing audio to be adjusted so the output has +# equal "loudness". This setting is disabled by default. +# +volume_normalization "yes" +# +############################################################################### + +# Character Encoding ########################################################## +# +# If file or directory names do not display correctly for your locale then you +# may need to modify this setting. +# +#filesystem_charset "UTF-8" +# +############################################################################### diff --git a/mpdasrc b/mpdasrc new file mode 100644 index 0000000..bdaa00e --- /dev/null +++ b/mpdasrc @@ -0,0 +1,4 @@ +username = trollshotlol +password = y,@7h:A7j:pcHF\:r!A~F4r(C +runas = train +debug = 1 diff --git a/mpv/input.conf b/mpv/input.conf new file mode 100644 index 0000000..8309354 --- /dev/null +++ b/mpv/input.conf @@ -0,0 +1,209 @@ +# mpv keybindings +# +# Location of user-defined bindings: ~/.config/mpv/input.conf +# +# Lines starting with # are comments. Use SHARP to assign the # key. +# Copy this file and uncomment and edit the bindings you want to change. +# +# List of commands and further details: DOCS/man/input.rst +# List of special keys: --input-keylist +# Keybindings testing mode: mpv --input-test --force-window --idle +# +# Use 'ignore' to unbind a key fully (e.g. 'ctrl+a ignore'). +# +# Strings need to be quoted and escaped: +# KEY show-text "This is a single backslash: \\ and a quote: \" !" +# +# You can use modifier-key combinations like Shift+Left or Ctrl+Alt+x with +# the modifiers Shift, Ctrl, Alt and Meta (may not work on the terminal). +# +# The default keybindings are hardcoded into the mpv binary. +# You can disable them completely with: --no-input-default-bindings + +# Developer note: +# On compilation, this file is baked into the mpv binary, and all lines are +# uncommented (unless '#' is followed by a space) - thus this file defines the +# default key bindings. + +# If this is enabled, treat all the following bindings as default. +#default-bindings start + +#MBTN_LEFT ignore # don't do anything +#MBTN_LEFT_DBL cycle fullscreen # toggle fullscreen on/off +#MBTN_RIGHT cycle pause # toggle pause on/off + +# Mouse wheels, touchpad or other input devices that have axes +# if the input devices supports precise scrolling it will also scale the +# numeric value accordingly +#WHEEL_UP seek 10 +#WHEEL_DOWN seek -10 +#WHEEL_LEFT add volume -2 +#WHEEL_RIGHT add volume 2 + +## Seek units are in seconds, but note that these are limited by keyframes +#RIGHT seek 5 +#LEFT seek -5 +#UP seek 60 +#DOWN seek -60 +# Do smaller, always exact (non-keyframe-limited), seeks with shift. +# Don't show them on the OSD (no-osd). +#Shift+RIGHT no-osd seek 1 exact +#Shift+LEFT no-osd seek -1 exact +#Shift+UP no-osd seek 5 exact +#Shift+DOWN no-osd seek -5 exact +# Skip to previous/next subtitle (subject to some restrictions; see manpage) +#Ctrl+LEFT no-osd sub-seek -1 +#Ctrl+RIGHT no-osd sub-seek 1 +# Adjust timing to previous/next subtitle +#Ctrl+Shift+LEFT sub-step -1 +#Ctrl+Shift+RIGHT sub-step 1 +# Move video rectangle +#Alt+left add video-pan-x 0.1 +#Alt+right add video-pan-x -0.1 +#Alt+up add video-pan-y 0.1 +#Alt+down add video-pan-y -0.1 +# Zoom/unzoom video +#Alt++ add video-zoom 0.1 +#Alt+- add video-zoom -0.1 +# Reset video zoom/pan settings +#Alt+BS set video-zoom 0 ; set video-pan-x 0 ; set video-pan-y 0 +#PGUP add chapter 1 # skip to next chapter +#PGDWN add chapter -1 # skip to previous chapter +#Shift+PGUP seek 600 +#Shift+PGDWN seek -600 +#[ multiply speed 1/1.1 # scale playback speed +#] multiply speed 1.1 +#{ multiply speed 0.5 +#} multiply speed 2.0 +#BS set speed 1.0 # reset speed to normal +#Shift+BS revert-seek # undo previous (or marked) seek +#Shift+Ctrl+BS revert-seek mark # mark position for revert-seek +#q quit +#Q quit-watch-later +#q {encode} quit 4 +#ESC set fullscreen no +#ESC {encode} quit 4 +#p cycle pause # toggle pause/playback mode +#. frame-step # advance one frame and pause +#, frame-back-step # go back by one frame and pause +#SPACE cycle pause +#> playlist-next # skip to next file +#ENTER playlist-next # skip to next file +#< playlist-prev # skip to previous file +#O no-osd cycle-values osd-level 3 1 # cycle through OSD mode +#o show-progress +#P show-progress +#i script-binding stats/display-stats +#I script-binding stats/display-stats-toggle +#z add sub-delay -0.1 # subtract 100 ms delay from subs +#Z add sub-delay +0.1 # add +#x add sub-delay +0.1 # same as previous binding (discouraged) +#ctrl++ add audio-delay 0.100 # this changes audio/video sync +#ctrl+- add audio-delay -0.100 +#9 add volume -2 +#/ add volume -2 +#0 add volume 2 +#* add volume 2 +#m cycle mute +#1 add contrast -1 +#2 add contrast 1 +#3 add brightness -1 +#4 add brightness 1 +#5 add gamma -1 +#6 add gamma 1 +#7 add saturation -1 +#8 add saturation 1 +#Alt+0 set window-scale 0.5 +#Alt+1 set window-scale 1.0 +#Alt+2 set window-scale 2.0 +# toggle deinterlacer (automatically inserts or removes required filter) +#d cycle deinterlace +#r add sub-pos -1 # move subtitles up +#R add sub-pos +1 # down +#t add sub-pos +1 # same as previous binding (discouraged) +#v cycle sub-visibility +# stretch SSA/ASS subtitles with anamorphic videos to match historical +#V cycle sub-ass-vsfilter-aspect-compat +# switch between applying no style overrides to SSA/ASS subtitles, and +# overriding them almost completely with the normal subtitle style +#u cycle-values sub-ass-override "force" "no" +#j cycle sub # cycle through subtitles +#J cycle sub down # ...backwards +#SHARP cycle audio # switch audio streams +#_ cycle video +#T cycle ontop # toggle video window ontop of other windows +#f cycle fullscreen # toggle fullscreen +#s async screenshot # take a screenshot +#S async screenshot video # ...without subtitles +#Ctrl+s async screenshot window # ...with subtitles and OSD, and scaled +#Alt+s screenshot each-frame # automatically screenshot every frame +#w add panscan -0.1 # zoom out with -panscan 0 -fs +#W add panscan +0.1 # in +#e add panscan +0.1 # same as previous binding (discouraged) +# cycle video aspect ratios; "-1" is the container aspect +#A cycle-values video-aspect "16:9" "4:3" "2.35:1" "-1" +#POWER quit +#PLAY cycle pause +#PAUSE cycle pause +#PLAYPAUSE cycle pause +#STOP quit +#FORWARD seek 60 +#REWIND seek -60 +#NEXT playlist-next +#PREV playlist-prev +#VOLUME_UP add volume 2 +#VOLUME_DOWN add volume -2 +#MUTE cycle mute +#CLOSE_WIN quit +#CLOSE_WIN {encode} quit 4 +#E cycle edition # next edition +#l ab-loop # Set/clear A-B loop points +#L cycle-values loop-file "inf" "no" # toggle infinite looping +#ctrl+c quit 4 +#DEL script-binding osc/visibility # cycle OSC display +#ctrl+h cycle-values hwdec "auto" "no" # cycle hardware decoding +#F8 show_text ${playlist} # show playlist +#F9 show_text ${track-list} # show list of audio/sub streams + +# Apple Remote section +#AR_PLAY cycle pause +#AR_PLAY_HOLD quit +#AR_CENTER cycle pause +#AR_CENTER_HOLD quit +#AR_NEXT seek 10 +#AR_NEXT_HOLD seek 120 +#AR_PREV seek -10 +#AR_PREV_HOLD seek -120 +#AR_MENU show-progress +#AR_MENU_HOLD cycle mute +#AR_VUP add volume 2 +#AR_VUP_HOLD add chapter 1 +#AR_VDOWN add volume -2 +#AR_VDOWN_HOLD add chapter -1 + +# +# Legacy bindings (may or may not be removed in the future) +# +#! add chapter -1 # skip to previous chapter +#@ add chapter 1 # next + +# +# Not assigned by default +# (not an exhaustive list of unbound commands) +# + +# ? add sub-scale +0.1 # increase subtitle font size +# ? add sub-scale -0.1 # decrease subtitle font size +# ? cycle angle # switch DVD/Bluray angle +# ? cycle sub-forced-only # toggle DVD forced subs +# ? cycle program # cycle transport stream programs +# ? stop # stop playback (quit or enter idle mode) +CTRL+1 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Upscale_CNN_L_x2_Denoise.glsl:~~/shaders/Anime4K_Auto_Downscale_Pre_x4.glsl:~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl"; show-text "Anime4k: 480/720p (Faithful)" +CTRL+2 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Upscale_CNN_L_x2_Denoise.glsl:~~/shaders/Anime4K_Auto_Downscale_Pre_x4.glsl:~~/shaders/Anime4K_DarkLines_HQ.glsl:~~/shaders/Anime4K_ThinLines_HQ.glsl:~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl"; show-text "Anime4k: 480/720p (Perceptual Quality)" +CTRL+3 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Upscale_CNN_L_x2_Denoise.glsl:~~/shaders/Anime4K_Auto_Downscale_Pre_x4.glsl:~~/shaders/Anime4K_Deblur_DoG.glsl:~~/shaders/Anime4K_DarkLines_HQ.glsl:~~/shaders/Anime4K_ThinLines_HQ.glsl:~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl"; show-text "Anime4k: 480/720p (Perceptual Quality and Deblur)" +CTRL+4 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Denoise_Bilateral_Mode.glsl:~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl"; show-text "Anime4k: 1080p (Faithful)" +CTRL+5 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Denoise_Bilateral_Mode.glsl:~~/shaders/Anime4K_DarkLines_HQ.glsl:~~/shaders/Anime4K_ThinLines_HQ.glsl:~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl"; show-text "Anime4k: 1080p (Perceptual Quality)" +CTRL+6 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Denoise_Bilateral_Mode.glsl:~~/shaders/Anime4K_Deblur_DoG.glsl:~~/shaders/Anime4K_DarkLines_HQ.glsl:~~/shaders/Anime4K_ThinLines_HQ.glsl:~~/shaders/Anime4K_Upscale_CNN_M_x2_Deblur.glsl"; show-text "Anime4k: 1080p (Perceptual Quality and Deblur)" +CTRL+0 no-osd change-list glsl-shaders clr ""; show-text "GLSL shaders cleared" + +F1 vf toggle rotate=1 diff --git a/mpv/mpv.conf b/mpv/mpv.conf new file mode 100644 index 0000000..7c8a68f --- /dev/null +++ b/mpv/mpv.conf @@ -0,0 +1,65 @@ +################## +# video settings # +################## +#The default profile which sets some recommended settings +#profile=gpu-hq +#force-window=yes + +#The called API +#Use "opengl" if you have compatibility issues +#vo=gpu +#gpu-api=opengl +#fbo-format=rgba16f + +#Decoding API for 8bit h264 (or whatever your CPU supports) content +#Only should be used when you get many frame drops +#hwdec=auto + +#Don't close the player after finishing the video +keep-open=yes + +#The last position of your video is saved when quitting mpv +save-position-on-quit=yes + +#Start mpv with a % smaller resolution of your screen +#autofit=50% + +#Force seeking (if seeking doesn't work) +force-seekable=yes +# OSC +osc=no +osd-bar=no +border=no + +################## +# audio/subtitles settings # +################## + +volume=70 +# Display English subtitles if available. +slang=eng,en,en-US,enUS +blend-subtitles=yes + +# Play Finnish audio if available, fall back to English otherwise. +alang=jpn,ja,jp,en + +# Screenshots +#Output format of screenshots +screenshot-format=png + +#Same output bitdepth as the video +#Set it "no" if you want to save disc space +screenshot-high-bit-depth=yes + +#Compression of the PNG picture (1-9) +#Higher value means better compression, but takes more time +screenshot-png-compression=1 + +#Quality of JPG pictures (0-100) +#Higher value means better quality +screenshot-jpeg-quality=95 +#Output directory +screenshot-directory="~/pics/screenshots" + +#Name format you want to save the pictures +screenshot-template="%f-%wH.%wM.%wS.%wT-#%#00n" diff --git a/mpv/scripts/autoloop.lua b/mpv/scripts/autoloop.lua new file mode 100644 index 0000000..1c2794d --- /dev/null +++ b/mpv/scripts/autoloop.lua @@ -0,0 +1,53 @@ +-- mpv issue 5222 +-- Automatically set loop-file=inf for duration <= given length. Default is 5s +-- Use autoloop_duration=n in script-opts/autoloop.conf to set your preferred length +-- Alternatively use script-opts=autoloop-autoloop_duration=n in mpv.conf (takes priority) + + +require 'mp.options' + +function getOption() + -- Use recommended way to get options + local options = {autoloop_duration = 5} + read_options(options) + autoloop_duration = options.autoloop_duration + + + -- Keep old way just for compatibility (remove lines 15-27 soon) + if autoloop_duration ~= 5 then + return + end + + local opt = tonumber(mp.get_opt("autoloop-duration")) + if not opt then + return + end + print("Depracted configuration! Please use script-opts directory to set auto_loop duration") + print("Or use 'script-opts=autoloop-autoloop_duration' in mpv.conf") + autoloop_duration = opt + -- Remove lines 15-27 soon +end + +function set_loop() + local duration = mp.get_property_native("duration") + + -- Checks whether the loop status was changed for the last file + was_loop = mp.get_property_native("loop-file") + + -- Cancel operation if there is no file duration + if not duration then + return + end + + -- Loops file if was_loop is false, and file meets requirements + if not was_loop and duration <= autoloop_duration then + mp.set_property_native("loop-file", true) + -- Unloops file if was_loop is true, and file does not meet requirements + elseif was_loop and duration > autoloop_duration then + mp.set_property_native("loop-file", false) + end +end + + +getOption() +mp.register_event("file-loaded", set_loop) diff --git a/mpv/scripts/autosave.lua b/mpv/scripts/autosave.lua new file mode 100644 index 0000000..c86cdb1 --- /dev/null +++ b/mpv/scripts/autosave.lua @@ -0,0 +1,38 @@ +-- autosave.lua +-- +-- Periodically saves "watch later" data during playback, rather than only saving on quit. +-- This lets you easily recover your position in the case of an ungraceful shutdown of mpv (crash, power failure, etc.). +-- +-- You can configure the save period by creating a "lua-settings" directory inside your mpv configuration directory. +-- Inside the "lua-settings" directory, create a file named "autosave.conf". +-- The save period can be set like so: +-- +-- save_period=60 +-- +-- This will set the save period to once every 60 seconds of playback, time while paused is not counted towards the save period timer. +-- The default save period is 30 seconds. +local options = require 'mp.options' + +local o = { + save_period = 30 +} + +options.read_options(o) + +local mp = require 'mp' + +local function save() + mp.command("write-watch-later-config") +end + +local save_period_timer = mp.add_periodic_timer(o.save_period, save) + +local function pause(name, paused) + if paused then + save_period_timer:stop() + else + save_period_timer:resume() + end +end + +mp.observe_property("pause", "bool", pause) \ No newline at end of file diff --git a/mpv/scripts/autospeed.lua b/mpv/scripts/autospeed.lua new file mode 100644 index 0000000..465ccdf --- /dev/null +++ b/mpv/scripts/autospeed.lua @@ -0,0 +1,420 @@ +--[[ + See script details on https://github.com/kevinlekiller/mpv_scripts + + Valid --script-opts are (they are all optional): + autospeed-xrandr=false true/false - Use xrandr to change display refresh rate?. + autospeed-speed=false true/false - Adjust speed of the video? + autospeed-display=HDMI1 - Use specified xrandr display, find with xrandr -q, if set to "auto", uses the primary monitor. + autospeed-exitmode=0x48 - Changes the monitor mode (refresh rate) when exiting mpv. + autospeed-exitmode=false Don't change the mode when exiting. If autospeed-exitmode is not set, this is the default. + autospeed-exitmode=auto Change the mode to the mode used when mpv started. + autospeed-exitmode=0x48 Revert to specified mode when exiting mpv. Find a mode using xrandr --verbose (it should look something like 0x123). + autospeed-interlaced=false true/false - Allow using a interlaced mode when switching refresh rates with xrandr? + autospeed-mblacklist=false - List of modes to blacklist. + Modes in this list will be ignored. + If more than one mode is specified, seperate them by semicolon. + Example: autospeed-mblacklist="0x128;0x2fa" + autospeed-minspeed=0.9 Number - Minimum allowable speed to play video at. + autospeed-maxspeed=1.1 Number - Maximum allowable speed to play video at. + autospeed-osd=true true/false - Enable OSD. + autospeed-osdtime=10 Number - How many seconds the OSD will be shown. + autospeed-osdkey=y - Key to press to show the OSD. + autospeed-estfps=false true/false - Calculate/change speed if a video has a variable fps at the cost of higher CPU usage (most videos have a fixed fps). + autospeed-spause true/false - Pause video while switching display modes. + Number - If you set this a number, it will pause for that amount of seconds. + + Example: mpv file.mkv --script-opts=autospeed-xrandr=true,autospeed-speed=false,autospeed-minspeed=0.8 +--]] +--[[ + Copyright (C) 2015-2017 kevinlekiller + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License + as published by the Free Software Foundation; either version 2 + of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + https://www.gnu.org/licenses/gpl-2.0.html +--]] +local _global = { + osd_start = mp.get_property_osd("osd-ass-cc/0"), + osd_end = mp.get_property_osd("osd-ass-cc/1"), + utils = require 'mp.utils', + modes = {}, + modeCache = {}, + lastDrr = 0, + speedCache = {}, + next = next, +} + +function round(number) + return math.floor(number + 0.5) +end + +function osdEcho() + if (_global.options["osd"] ~= true) then + return + end + setOSD() + if (_global.temp["output"] ~= nil) then + mp.osd_message(_global.temp["output"], _global.options["osdtime"]) + end +end + +function getOptions() + _global.options = { + ["xrandr"] = false, + ["speed"] = false, + ["display"] = "auto", + ["exitmode"] = "auto", + ["interlaced"] = false, + ["mblacklist"] = "false", + ["minspeed"] = 0.9, + ["maxspeed"] = 1.1, + ["osd"] = false, + ["osdtime"] = 10, + ["osdkey"] = "y", + ["estfps"] = false, + ["spause"] = false, + } + for key, value in pairs(_global.options) do + local opt = mp.get_opt("autospeed-" .. key) + if (opt ~= nil) then + if (key == "xrandr" or key == "osd" or key == "estfps" or key == "interlaced" or key == "speed") then + if (opt == "true") then + _global.options[key] = true + end + elseif (key == "minspeed" or key == "maxspeed" or key == "osdtime") then + opt = tonumber(opt) + if (opt ~= nil) then + _global.options[key] = opt + end + elseif (key == "spause") then + if (opt == "true") then + _global.options[key] = 0 + else + opt = tonumber(opt) + if (opt ~= nil) then + _global.options[key] = opt + end + end + else + _global.options[key] = opt + end + end + end + if (_global.options["mblacklist"] == "false") then + _global.options["mblacklist"] = false + else + local tmp_blacklist = {} + for blacklist in string.gmatch(_global.options["mblacklist"], '[0-9a-zA-Z]+') do + tmp_blacklist[blacklist] = true + end + _global.options["mblacklist"] = tmp_blacklist + end +end +getOptions() + +function main(name, fps) + if (fps == nil) then + return + end + _global.temp["fps"] = fps + findRefreshRate() + if (_global.options["speed"] == true) then + determineSpeed() + if (_global.temp["speed"] >= _global.options["minspeed"] and _global.temp["speed"] <= _global.options["maxspeed"]) then + mp.set_property_number("speed", _global.temp["speed"]) + else + _global.temp["speed"] = _global.confSpeed + end + else + _global.temp["speed"] = _global.confSpeed + end +end + +function setOSD() + _global.temp["output"] = (_global.osd_start .. + "{\\b1}Original monitor refresh rate{\\b0}\\h\\h" .. _global.temp["start_drr"] .. "Hz\\N" .. + "{\\b1}Current monitor refresh rate{\\b0}\\h\\h" .. _global.temp["drr"] .. "Hz\\N" .. + "{\\b1}Original video fps{\\b0}\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h" .. _global.temp["fps"] .. "fps\\N" .. + "{\\b1}Current video fps{\\b0}\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h\\h" .. (_global.temp["fps"] * _global.temp["speed"]) .. "fps\\N" .. + "{\\b1}Original mpv speed setting{\\b0}\\h\\h\\h\\h\\h\\h" .. _global.confSpeed .. "x\\N" .. + "{\\b1}Current mpv speed setting{\\b0}\\h\\h\\h\\h\\h\\h" .. _global.temp["speed"] .. "x" .. + _global.osd_end + ) +end + +function determineSpeed() + local id = _global.temp["drr"] .. _global.temp["fps"] + if (_global.speedCache[id] ~= nil) then + _global.temp["speed"] = _global.speedCache[id] + return + end + if (_global.temp["drr"] > _global.temp["fps"]) then + local difference = (_global.temp["drr"] / _global.temp["fps"]) + if (difference >= 2) then + -- fps = 24fps, drr = 60hz + -- difference = 60hz/24fps = 3 rounded + -- 24fps * 3 = 72fps + -- 60hz / 72fps = 0.833333333333 speed + -- 72fps * 0.833333333333 = 60fps + _global.temp["speed"] = (_global.temp["drr"] / (_global.temp["fps"] * round(difference))) + else + -- fps = 50fps, drr = 60hz + -- 60hz / 50fps = 1.2 speed + -- 50fps * 1.2 speed = 60fps + + -- fps = 59.94fps, drr = 60hz + -- 60hz / 59.94fps = 1.001001001001001 speed + -- 59.94fps * 1.001001001001001 = 60fps + _global.temp["speed"] = difference + end + elseif (_global.temp["drr"] < _global.temp["fps"]) then + local difference = (_global.temp["fps"] / _global.temp["drr"]) + if (difference >= 2) then + -- fps = 120fps, drr = 25hz + -- difference = 120fps/25hz = 5 rounded + -- 120fps/5 = 24fps ; 25hz / 24fps = 1.04166666667 speed + -- 24fps * 1.04166666667 speed = 25fps + _global.temp["speed"] = (_global.temp["drr"] / (_global.temp["fps"] / round(difference))) + else + -- fps = 60fps, drr = 50hz + -- difference = 50hz / 60fps = 0.833333333333 speed + -- 60fps * 0.833333333333 speed = 50fps + + -- fps = 60fps, drr = 59.94hz + -- difference = 59.94hz / 60fps = 0.999 speed + -- 60fps * 0.999 speed = 59.94fps + _global.temp["speed"] = (_global.temp["drr"] / _global.temp["fps"]) + end + elseif (_global.temp["drr"] == _global.temp["fps"]) then + _global.temp["speed"] = 1 + end + _global.speedCache[id] = _global.temp["speed"] +end + +function findRefreshRate() + -- This is to prevent a system call if the screen refresh / video fps has not changed. + if (_global.temp["drr"] == _global.lastDrr) then + return + elseif (_global.modeCache[_global.temp["drr"]] ~= nil) then + setXrandrRate(_global.modeCache[_global.temp["drr"]]) + return + end + if (_global.options["xrandr"] ~= true or getXrandrModes() == false) then + return + end + -- If the current monitor rate is already a multiple, don't change the mode. + if (_global.temp["fps"] <= _global.temp["drr"] and _global.temp["drr"] % _global.temp["fps"] == 0) then + return + end + local round_fps = round(_global.temp["fps"]) + local iterator = 1 + if (_global.temp["maxclock"] > round_fps) then + iterator = round(_global.temp["maxclock"] / round_fps) + elseif (_global.temp["maxclock"] < round_fps) then + iterator = round(round_fps / _global.temp["maxclock"]) + else + setXrandrRate(_global.modes[_global.temp["maxclock"]]) + return + end + local smallest = 0 + local foundMode = false + for rate, mode in pairs(_global.modes) do + local min = (rate * _global.options["minspeed"]) + local max = (rate * _global.options["maxspeed"]) + for multiplier = 1, iterator do + local multiplied_fps = (multiplier * round_fps) + if (multiplied_fps >= min and multiplied_fps <= max) then + if (multiplied_fps < rate) then + local difference = (rate - multiplied_fps) + if (smallest == 0 or difference < smallest) then + smallest = difference + foundMode = mode + end + elseif (multiplied_fps > rate) then + local difference = (multiplied_fps - rate) + if (smallest == 0 or difference < smallest) then + smallest = difference + foundMode = mode + end + else + setXrandrRate(mode) + return + end + end + end + end + if (foundMode ~= false) then + setXrandrRate(foundMode) + end +end + +function setXrandrRate(mode) + if (mode == _global.temp["currentmode"]) then + return + end + local vars = {vid = nil, time_pos = nil, vdpau = (mp.get_property("options/vo") == "vdpau" or mp.get_property("options/hwdec") == "vdpau")} + if (_global.options["spause"]) then + mp.set_property("pause", "yes") + end + if (vars.vdpau) then + vars.vid = mp.get_property("vid") + vars.time_pos = mp.get_property("time-pos") + mp.set_property("vid", "no") + end + _global.utils.subprocess({["cancellable"] = false, ["args"] = {[1] = "xrandr", [2] = "--output", [3] = _global.options["display"], [4] = "--mode", [5] = mode,}}) + if (_global.options["spause"]) then + if (tonumber(_global.options["spause"]) ~= nil and _global.options["spause"] > 0) then + _global.utils.subprocess({["cancellable"] = false, ["args"] = {[1] = "sleep", [2] = _global.options["spause"]}}) + end + mp.set_property("pause", "no") + end + if (vars.vdpau) then + mp.set_property("vid", vars.vid) + if (vars.time_pos ~= nil) then + mp.commandv("seek", vars.time_pos, "absolute", "keyframes") + end + end + _global.utils.subprocess({["cancellable"] = false, ["args"] = {[1] = "sleep", [2] = "0.5"}}) + _global.temp["drr"] = mp.get_property_native("display-fps") + _global.modeCache[_global.temp["drr"]] = mode + _global.lastDrr = _global.temp["drr"] + _global.temp["currentmode"] = mode +end + +function getXrandrModes() + if (_global.next(_global.modes) ~= nil) then + return true + end + if not (_global.modes) then + return false + end + local vars = { + handle = assert(io.popen("xrandr --verbose")), + foundDisp = false, + foundRes = false, + count = 0, + resolution, + } + if (_global.options["display"] == "auto") then + vars.disp = "^%S+%sconnected%sprimary" + else + vars.disp = "^" .. string.gsub(_global.options["display"], "%-", "%%-") + end + _global.temp["maxclock"] = 0 + for line in vars.handle:lines() do + if (vars.foundDisp == false and string.match(line, vars.disp) ~= nil) then -- Check if the display name (ie HDMI1) matches the one in the config. + if (string.find(line, "disconnected") ~= nil) then + break -- Wrong display name was given. + else + local res = string.match(line, vars.disp .. "%D+([%dx]+)") -- Find current monitor resolution. + if (res ~= nil and res ~= "") then + if (_global.options["display"] == "auto") then + _global.options["display"] = string.match(line, "^%S+") + end + vars.resolution = res + vars.foundDisp = true + else + break -- Could not find display resolution. + end + end + elseif (vars.foundDisp == true) then -- We found the display name. + if (vars.foundRes == false and string.match(line, "^%s+" .. vars.resolution) ~= nil) then -- Check if mode uses current display resolution. + vars.foundRes = true + end + if (vars.foundRes == true) then -- We found a matching screen resolution. + vars.count = vars.count + 1 + if (vars.count == 1) then -- Log the mode name. + vars.mode = string.match(line, "%((.+)%)%s+[%d.]+MHz") + if (_global.temp["origmode"] == nil) then + if (string.find(line, "%*current") ~= nil) then + _global.temp["origmode"] = vars.mode + _global.temp["currentmode"] = vars.mode + end + end + vars.interlaced = false + if (string.find(line, "Interlace") ~= nil) then + vars.interlaced = true + end + elseif (vars.count == 2) then + + elseif (vars.count == 3) then + if ((_global.options["interlaced"] == false and vars.interlaced == true) or (_global.options["mblacklist"] ~= false and _global.options["mblacklist"][vars.mode] ~= nil)) then + -- ignore these modes + else + local clock = string.match(line, "total%s+%d+.+clock%s+([%d.]+)[KkHh]+z") + clock = round(clock) + if (_global.temp["maxclock"] < clock) then + _global.temp["maxclock"] = clock + end + _global.modes[clock] = vars.mode + end + vars.count = 0 -- Reset variables to look for another matching resolution. + vars.foundRes = false + end + elseif (string.match(line, "^%S") ~= nil) then + break -- We reached the next display or EOF. + end + end + end + vars.handle:close() + if (_global.next(_global.modes) == nil) then + _global.modes = false + return false + end +end + +function start() + mp.unobserve_property(start) + _global.temp = {} + _global.temp["start_drr"] = mp.get_property_native("display-fps") + if not (_global.temp["start_drr"]) then + return + end + _global.temp["drr"] = _global.temp["start_drr"] + if not (_global.confSpeed) then + _global.confSpeed = mp.get_property_native("speed") + end + local test = mp.get_property("container-fps") + if (test == nil or test == "nil property unavailable") then + if (_global.options["estfps"] ~= true) then + return + end + test = mp.get_property("estimated-vf-fps") + if (test == nil or test == "nil property unavailable") then + return + end + mp.observe_property("estimated-vf-fps", "number", main) + else + mp.observe_property("container-fps", "number", main) + end + mp.add_key_binding(_global.options["osdkey"], mp.get_script_name(), osdEcho, {repeatable=true}) + if (_global.options["xrandr"] == true and _global.options.exitmode ~= "false") then + function revertDrr() + if (_global.options["display"] ~= "auto") then + if (_global.options["exitmode"] == "auto" and _global.temp["origmode"] ~= nil) then + os.execute("xrandr --output " .. _global.options["display"] .. " --mode " .. _global.temp["origmode"] .. " &") + else + os.execute("xrandr --output " .. _global.options["display"] .. " --mode " .. _global.options["exitmode"] .. " &") + end + end + end + mp.register_event("shutdown", revertDrr) + end +end + +-- Wait until we get a video fps. +function check() + mp.observe_property("estimated-vf-fps", "string", start) +end + +mp.register_event("file-loaded", check) diff --git a/mpv/scripts/autosub.lua b/mpv/scripts/autosub.lua new file mode 100644 index 0000000..56d49fa --- /dev/null +++ b/mpv/scripts/autosub.lua @@ -0,0 +1,254 @@ +--============================================================================= +-->> SUBLIMINAL PATH: +--============================================================================= +-- This script uses Subliminal to download subtitles, +-- so make sure to specify your system's Subliminal location below: +local subliminal = '/usr/bin/subliminal' +--============================================================================= +-->> SUBTITLE LANGUAGE: +--============================================================================= +-- Specify languages in this order: +-- { 'language name', 'ISO-639-1', 'ISO-639-2' } ! +-- (See: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) +local languages = { +-- If subtitles are found for the first language, +-- other languages will NOT be downloaded, +-- so put your preferred language first: + { 'English', 'en', 'eng' }, + { 'Dutch', 'nl', 'dut' }, +-- { 'Spanish', 'es', 'spa' }, +-- { 'French', 'fr', 'fre' }, +-- { 'German', 'de', 'ger' }, +-- { 'Italian', 'it', 'ita' }, +-- { 'Portuguese', 'pt', 'por' }, +-- { 'Polish', 'pl', 'pol' }, +-- { 'Russian', 'ru', 'rus' }, +-- { 'Chinese', 'zh', 'chi' }, +-- { 'Arabic', 'ar', 'ara' }, +} +--============================================================================= +-->> PROVIDER LOGINS: +--============================================================================= +-- These are completely optional and not required +-- for the functioning of the script! +-- If you use any of these services, simply uncomment it +-- and replace 'USERNAME' and 'PASSWORD' with your own: +local logins = { +-- { '--addic7ed', 'USERNAME', 'PASSWORD' }, +-- { '--legendastv', 'USERNAME', 'PASSWORD' }, +-- { '--opensubtitles', 'USERNAME', 'PASSWORD' }, +-- { '--subscenter', 'USERNAME', 'PASSWORD' }, +} +--============================================================================= +-->> ADDITIONAL OPTIONS: +--============================================================================= +local bools = { + auto = true, -- Automatically download subtitles, no hotkeys required + debug = false, -- Use `--debug` in subliminal command for debug output + force = true, -- Force download; will overwrite existing subtitle files + utf8 = true, -- Save all subtitle files as UTF-8 +} +local excludes = { + -- Movies with a path containing any of these strings/paths + -- will be excluded from auto-downloading subtitles. + -- Full paths are also allowed, e.g.: + -- '/home/david/Videos', + 'no-subs-dl', +} +local includes = { + -- If anything is defined here, only the movies with a path + -- containing any of these strings/paths will auto-download subtitles. + -- Full paths are also allowed, e.g.: + -- '/home/david/Videos', +} +--============================================================================= +local utils = require 'mp.utils' + + +-- Download function: download the best subtitles in most preferred language +function download_subs(language) + language = language or languages[1] + log('Searching ' .. language[1] .. ' subtitles ...', 30) + + -- Build the `subliminal` command, starting with the executable: + local table = { args = { subliminal } } + local a = table.args + + for _, login in ipairs(logins) do + a[#a + 1] = login[1] + a[#a + 1] = login[2] + a[#a + 1] = login[3] + end + if bools.debug then + -- To see `--debug` output start MPV from the terminal! + a[#a + 1] = '--debug' + end + + a[#a + 1] = 'download' + if bools.force then + a[#a + 1] = '-f' + end + if bools.utf8 then + a[#a + 1] = '-e' + a[#a + 1] = 'utf-8' + end + + a[#a + 1] = '-l' + a[#a + 1] = language[2] + a[#a + 1] = '-d' + a[#a + 1] = directory + a[#a + 1] = filename --> Subliminal command ends with the movie filename. + + local result = utils.subprocess(table) + + if string.find(result.stdout, 'Downloaded 1 subtitle') then + -- When multiple external files are present, + -- always activate the most recently downloaded: + mp.set_property('slang', language[2]) + -- Subtitles are downloaded successfully, so rescan to activate them: + mp.commandv('rescan_external_files') + log(language[1] .. ' subtitles ready!') + return true + else + log('No ' .. language[1] .. ' subtitles found\n') + return false + end +end + +-- Manually download second language subs by pressing 'n': +function download_subs2() + download_subs(languages[2]) +end + +-- Control function: only download if necessary +function control_downloads() + -- Make MPV accept external subtitle files with language specifier: + mp.set_property('sub-auto', 'fuzzy') + -- Set subtitle language preference: + mp.set_property('slang', languages[1][2]) + mp.msg.warn('Reactivate external subtitle files:') + mp.commandv('rescan_external_files') + directory, filename = utils.split_path(mp.get_property('path')) + + if not autosub_allowed() then + return + end + + sub_tracks = {} + for _, track in ipairs(mp.get_property_native('track-list')) do + if track['type'] == 'sub' then + sub_tracks[#sub_tracks + 1] = track + end + end + if bools.debug then -- Log subtitle properties to terminal: + for _, track in ipairs(sub_tracks) do + mp.msg.warn('Subtitle track', track['id'], ':\n{') + for k, v in pairs(track) do + if type(v) == 'string' then v = '"' .. v .. '"' end + mp.msg.warn(' "' .. k .. '":', v) + end + mp.msg.warn('}\n') + end + end + + for _, language in ipairs(languages) do + if should_download_subs_in(language) then + if download_subs(language) then return end -- Download successful! + else return end -- No need to download! + end + log('No subtitles were found') +end + +-- Check if subtitles should be auto-downloaded: +function autosub_allowed() + local duration = tonumber(mp.get_property('duration')) + local active_format = mp.get_property('file-format') + + if not bools.auto then + mp.msg.warn('Automatic downloading disabled!') + return false + elseif duration < 900 then + mp.msg.warn('Video is less than 15 minutes\n' .. + '=> NOT auto-downloading subtitles') + return false + elseif directory:find('^http') then + mp.msg.warn('Automatic subtitle downloading is disabled for web streaming') + return false + elseif active_format:find('^cue') then + mp.msg.warn('Automatic subtitle downloading is disabled for cue files') + return false + else + local not_allowed = {'aiff', 'ape', 'flac', 'mp3', 'ogg', 'wav', 'wv'} + + for _, file_format in pairs(not_allowed) do + if file_format == active_format then + mp.msg.warn('Automatic subtitle downloading is disabled for audio files') + return false + end + end + + for _, exclude in pairs(excludes) do + local escaped_exclude = exclude:gsub('%W','%%%0') + local excluded = directory:find(escaped_exclude) + + if excluded then + mp.msg.warn('This path is excluded from auto-downloading subs') + return false + end + end + + for i, include in ipairs(includes) do + local escaped_include = include:gsub('%W','%%%0') + local included = directory:find(escaped_include) + + if included then break + elseif i == #includes then + mp.msg.warn('This path is not included for auto-downloading subs') + return false + end + end + end + + return true +end + +-- Check if subtitles should be downloaded in this language: +function should_download_subs_in(language) + for i, track in ipairs(sub_tracks) do + local subtitles = track['external'] and + 'subtitle file' or 'embedded subtitles' + + if not track['lang'] and (track['external'] or not track['title']) + and i == #sub_tracks then + local status = track['selected'] and ' active' or ' present' + log('Unknown ' .. subtitles .. status) + mp.msg.warn('=> NOT downloading new subtitles') + return false -- Don't download if 'lang' key is absent + elseif track['lang'] == language[3] or track['lang'] == language[2] or + (track['title'] and track['title']:lower():find(language[3])) then + if not track['selected'] then + mp.set_property('sid', track['id']) + log('Enabled ' .. language[1] .. ' ' .. subtitles .. '!') + else + log(language[1] .. ' ' .. subtitles .. ' active') + end + mp.msg.warn('=> NOT downloading new subtitles') + return false -- The right subtitles are already present + end + end + mp.msg.warn('No ' .. language[1] .. ' subtitles were detected\n' .. + '=> Proceeding to download:') + return true +end + +-- Log function: log to both terminal and MPV OSD (On-Screen Display) +function log(string, secs) + secs = secs or 2.5 -- secs defaults to 2.5 when secs parameter is absent + mp.msg.warn(string) -- This logs to the terminal + mp.osd_message(string, secs) -- This logs to MPV screen +end + + +mp.add_key_binding('b', 'download_subs', download_subs) +mp.add_key_binding('n', 'download_subs2', download_subs2) +mp.register_event('file-loaded', control_downloads) diff --git a/mpv/scripts/autosubsync.lua b/mpv/scripts/autosubsync.lua new file mode 100644 index 0000000..fb3a6c3 --- /dev/null +++ b/mpv/scripts/autosubsync.lua @@ -0,0 +1,44 @@ +-- default keybinding: n +-- add the following to your input.conf to change the default keybinding: +-- keyname script_binding auto_sync_subs +local utils = require 'mp.utils' + +function display_error() + mp.msg.warn("Subtitle synchronization failed: ") + mp.osd_message("Subtitle synchronization failed") +end + +-- Courtesy of https://stackoverflow.com/questions/4990990/check-if-a-file-exists-with-lua +function file_exists(filepath) + local f=io.open(filepath,"r") + if f~=nil then io.close(f) return true else return false end +end + +function sync_sub_fn() + path = mp.get_property("path") + srt_path = string.gsub(path, "%.%w+$", ".srt") + if file_exists(srt_path)==false then + mp.msg.warn("Couldn't find",srt_path) + display_error() + do return end + end + subsync = "/home/user/.local/bin/ffsubsync" -- use 'which ffsubsync' to find the path + t = {} + t.args = {subsync, path, "-i",srt_path,"-o",srt_path} + + mp.osd_message("Sync subtitle...") + mp.msg.info("Starting ffsubsync...") + res = utils.subprocess(t) + if res.error == nil then + if mp.commandv("sub_add", srt_path) then + mp.msg.info("Subtitle updated") + mp.osd_message("Subtitle at'" .. srt_path .. "' synchronized") + else + display_error() + end + else + display_error() + end +end + +mp.add_key_binding("n", "auto_sync_subs", sync_sub_fn) diff --git a/mpv/scripts/quack.lua b/mpv/scripts/quack.lua new file mode 100644 index 0000000..ed09ce1 --- /dev/null +++ b/mpv/scripts/quack.lua @@ -0,0 +1,44 @@ +local options = require 'mp.options' + +local o = { + ducksecs = 2, -- lol + duckratio = 0.5 +} +options.read_options(o) + +local duck_progress = 0 +local duck_timer = nil +local orig_vol = nil + +function update_quack() + duck_progress = duck_progress + 1 + if duck_progress >= o.ducksecs * 10 then + duck_timer:kill() + end + mp.set_property_number("volume", math.min(orig_vol, orig_vol * o.duckratio + orig_vol * (1 - o.duckratio) * (duck_progress / (o.ducksecs * 10)))) + -- print(mp.get_property_number("volume")) +end + +function engage_ducking(name, val) + pos = mp.get_property_number("time-pos") + if val == nil or val == false then + return + end + if pos == 0 then + return + end + duck_progress = 0 + if duck_timer == nil then + duck_timer = mp.add_periodic_timer(0.1, update_quack) + orig_vol = mp.get_property_number("volume") + update_quack() -- fire for immediate effect + else + if duck_timer:is_enabled() == false then + orig_vol = mp.get_property_number("volume") + duck_timer:resume() + update_quack() + end + end +end + +mp.observe_property("seeking", "bool", engage_ducking) diff --git a/mpv/scripts/uosc.lua b/mpv/scripts/uosc.lua new file mode 100644 index 0000000..a2a5074 --- /dev/null +++ b/mpv/scripts/uosc.lua @@ -0,0 +1,3230 @@ +--[[ + +uosc 2.10.1 - 2020-Jun-20 | https://github.com/darsain/uosc + +Minimalist cursor proximity based UI for MPV player. + +uosc replaces the default osc UI, so that has to be disabled first. +Place these options into your `mpv.conf` file: + +``` +# required so that the 2 UIs don't fight each other +osc=no +# uosc provides its own seeking/volume indicators, so you also don't need this +osd-bar=no +# uosc will draw its own window controls if you disable window border +border=no +``` + +Options go in `script-opts/uosc.conf`. Defaults: + +``` +# timeline size when fully retracted, 0 will hide it completely +timeline_size_min=2 +# timeline size when fully expanded, in pixels, 0 to disable +timeline_size_max=40 +# same as ^ but when in fullscreen +timeline_size_min_fullscreen=0 +timeline_size_max_fullscreen=60 +# same thing as calling toggle-progress command once on startup +timeline_start_hidden=no +# timeline opacity +timeline_opacity=0.8 +# top (and bottom in no-border mode) border of background color to help visually +# separate elapsed bar from a video of similar color or desktop background +timeline_border=1 +# when scrolling above timeline, wheel will seek by this amount of seconds +timeline_step=5 +# display seekable buffered ranges for streaming videos, syntax `color:opacity`, +# color is an BBGGRR hex code, set to `none` to disable +timeline_cached_ranges=345433:0.5 +# floating number font scale adjustment +timeline_font_scale=1 + +# timeline chapters style: none, dots, lines, lines-top, lines-bottom +chapters=dots +chapters_opacity=0.3 + +# where to display volume controls: none, left, right +volume=right +volume_size=40 +volume_size_fullscreen=60 +volume_opacity=0.8 +volume_border=1 +volume_step=1 +volume_font_scale=1 + +# playback speed widget: mouse drag or wheel to change, click to reset +speed=no +speed_size=46 +speed_size_fullscreen=68 +speed_opacity=1 +speed_step=0.1 +speed_font_scale=1 + +# controls all menus, such as context menu, subtitle loader/selector, etc +menu_item_height=36 +menu_item_height_fullscreen=50 +menu_wasd_navigation=no +menu_hjkl_navigation=no +menu_opacity=0.8 +menu_font_scale=1 + +# top bar with window controls and media title shown only in no-border mode +top_bar_size=40 +top_bar_size_fullscreen=46 +top_bar_controls=yes +top_bar_title=yes + +# pause video on clicks shorter than this number of milliseconds, 0 to disable +pause_on_click_shorter_than=0 +# flash duration in milliseconds used by `flash-{element}` commands +flash_duration=400 +# distances in pixels below which elements are fully faded in/out +proximity_in=40 +proximity_out=120 +# BBGGRR - BLUE GREEN RED hex color codes +color_foreground=ffffff +color_foreground_text=000000 +color_background=000000 +color_background_text=ffffff +# use bold font weight throughout the whole UI +font_bold=no +# hide UI when mpv autohides the cursor +autohide=no +# can be: none, flash, static +pause_indicator=flash +# load first file when calling next on a last file in a directory and vice versa +directory_navigation_loops=no +# file types to look for when navigating media files +media_types=3gp,avi,bmp,flac,flv,gif,h264,h265,jpeg,jpg,m4a,m4v,mid,midi,mkv,mov,mp3,mp4,mp4a,mp4v,mpeg,mpg,oga,ogg,ogm,ogv,opus,png,rmvb,svg,tif,tiff,wav,weba,webm,webp,wma,wmv +# file types to look for when loading external subtitles +subtitle_types=aqt,gsub,jss,sub,ttxt,pjs,psb,rt,smi,slt,ssf,srt,ssa,ass,usf,idx,vt +# used to approximate text width +# if you are using some wide font and see a lot of right side clipping in menus, +# try bumping this up +font_height_to_letter_width_ratio=0.5 + +# `chapter_ranges` lets you transform chapter indicators into range indicators. +# +# Chapter range definition syntax: +# ``` +# start_patternend_pattern +# ``` +# +# Multiple start and end patterns can be defined by separating them with `|`: +# ``` +# p1|pNp1|pN +# ``` +# +# Multiple chapter ranges can be defined by separating them with comma: +# +# chapter_ranges=range1,rangeN +# +# One of `start_pattern`s can be a custom keyword `{bof}` that will match +# beginning of file when it makes sense. +# +# One of `end_pattern`s can be a custom keyword `{eof}` that will match end of +# file when it makes sense. +# +# Patterns are lua patterns (http://lua-users.org/wiki/PatternsTutorial). +# They only need to occur in a title, not match it completely. +# Matching is case insensitive. +# +# `color` is a `bbggrr` hexadecimal color code. +# `opacity` is a float number from 0 to 1. +# +# Examples: +# +# Display anime openings and endings as ranges: +# ``` +# chapter_ranges=^op| op$|opening<968638:0.5>.*, ^ed| ed$|^end|ending$<968638:0.5>.*|{eof} +# ``` +# +# Display skippable youtube video sponsor blocks from https://github.com/po5/mpv_sponsorblock +# ``` +# chapter_ranges=sponsor start<3535a5:.5>sponsor end, segment start<3535a5:0.5>segment end +# ``` +chapter_ranges=^op| op$|opening<968638:0.5>.*, ^ed| ed$|^end|ending$<968638:0.5>.*|{eof}, sponsor start<3535a5:.5>sponsor end, segment start<3535a5:0.5>segment end +``` + +Available keybindings (place into `input.conf`): + +``` +Key script-binding uosc/peek-timeline +Key script-binding uosc/toggle-progress +Key script-binding uosc/flash-timeline +Key script-binding uosc/flash-volume +Key script-binding uosc/flash-speed +Key script-binding uosc/menu +Key script-binding uosc/load-subtitles +Key script-binding uosc/subtitles +Key script-binding uosc/audio +Key script-binding uosc/video +Key script-binding uosc/playlist +Key script-binding uosc/chapters +Key script-binding uosc/open-file +Key script-binding uosc/next +Key script-binding uosc/prev +Key script-binding uosc/first +Key script-binding uosc/last +Key script-binding uosc/next-file +Key script-binding uosc/prev-file +Key script-binding uosc/first-file +Key script-binding uosc/last-file +Key script-binding uosc/delete-file-next +Key script-binding uosc/delete-file-quit +Key script-binding uosc/show-in-directory +Key script-binding uosc/open-config-directory +``` +]] + +if mp.get_property('osc') == 'yes' then + mp.msg.info('Disabled because original osc is enabled!') + return +end + +local assdraw = require('mp.assdraw') +local opt = require('mp.options') +local utils = require('mp.utils') +local msg = require('mp.msg') +local osd = mp.create_osd_overlay('ass-events') +local infinity = 1e309 + +-- OPTIONS/CONFIG/STATE +local options = { + timeline_size_min = 2, + timeline_size_max = 40, + timeline_size_min_fullscreen = 0, + timeline_size_max_fullscreen = 60, + timeline_start_hidden = false, + timeline_opacity = 0.8, + timeline_border = 1, + timeline_step = 5, + timeline_cached_ranges = '345433:0.5', + timeline_font_scale = 1, + + chapters = 'dots', + chapters_opacity = 0.3, + + volume = 'right', + volume_size = 40, + volume_size_fullscreen = 60, + volume_opacity = 0.8, + volume_border = 1, + volume_step = 1, + volume_font_scale = 1, + + speed = false, + speed_size = 46, + speed_size_fullscreen = 68, + speed_opacity = 1, + speed_step = 0.1, + speed_font_scale = 1, + + menu_item_height = 36, + menu_item_height_fullscreen = 50, + menu_wasd_navigation = false, + menu_hjkl_navigation = false, + menu_opacity = 0.8, + menu_font_scale = 1, + + top_bar_size = 40, + top_bar_size_fullscreen = 46, + top_bar_controls = true, + top_bar_title = true, + + pause_on_click_shorter_than = 0, + flash_duration = 400, + proximity_in = 40, + proximity_out = 120, + color_foreground = 'ffffff', + color_foreground_text = '000000', + color_background = '000000', + color_background_text = 'ffffff', + font_bold = false, + autohide = false, + pause_indicator = 'flash', + directory_navigation_loops = false, + media_types = '3gp,avi,bmp,flac,flv,gif,h264,h265,jpeg,jpg,m4a,m4v,mid,midi,mkv,mov,mp3,mp4,mp4a,mp4v,mpeg,mpg,oga,ogg,ogm,ogv,opus,png,rmvb,svg,tif,tiff,wav,weba,webm,webp,wma,wmv', + subtitle_types = 'aqt,gsub,jss,sub,ttxt,pjs,psb,rt,smi,slt,ssf,srt,ssa,ass,usf,idx,vt', + font_height_to_letter_width_ratio = 0.5, + chapter_ranges = '^op| op$|opening<968638:0.5>.*, ^ed| ed$|^end|ending$<968638:0.5>.*|{eof}, sponsor start<3535a5:.5>sponsor end, segment start<3535a5:0.5>segment end', +} +opt.read_options(options, 'uosc') +local config = { + render_delay = 0.03, -- sets max rendering frequency + font = mp.get_property('options/osd-font'), + menu_parent_opacity = 0.4, + menu_min_width = 260 +} +local bold_tag = options.font_bold and '\\b1' or '' +local display = { + width = 1280, + height = 720, + aspect = 1.77778, +} +local cursor = { + hidden = true, -- true when autohidden or outside of the player window + x = 0, + y = 0, +} +local state = { + os = (function() + if os.getenv('windir') ~= nil then return 'windows' end + local homedir = os.getenv('HOME') + if homedir ~= nil and string.sub(homedir,1,6) == '/Users' then return 'macos' end + return 'linux' + end)(), + cwd = mp.get_property('working-directory'), + media_title = '', + duration = nil, + position = nil, + pause = false, + chapters = nil, + chapter_ranges = nil, + fullscreen = mp.get_property_native('fullscreen'), + maximized = mp.get_property_native('window-maximized'), + render_timer = nil, + render_last_time = 0, + volume = nil, + volume_max = nil, + mute = nil, + cursor_autohide_timer = mp.add_timeout(mp.get_property_native('cursor-autohide') / 1000, function() + if not options.autohide then return end + handle_mouse_leave() + end), + mouse_bindings_enabled = false, + cached_ranges = nil, +} +local forced_key_bindings -- defined at the bottom next to events + +-- HELPERS + +function round(number) + local modulus = number % 1 + return modulus < 0.5 and math.floor(number) or math.ceil(number) +end + +function call_me_maybe(fn, value1, value2, value3) + if fn then fn(value1, value2, value3) end +end + +function split(str, pattern) + local list = {} + local full_pattern = '(.-)' .. pattern + local last_end = 1 + local start_index, end_index, capture = str:find(full_pattern, 1) + while start_index do + list[#list +1] = capture + last_end = end_index + 1 + start_index, end_index, capture = str:find(full_pattern, last_end) + end + if last_end <= (#str + 1) then + capture = str:sub(last_end) + list[#list +1] = capture + end + return list +end + +function itable_find(haystack, needle) + local is_needle = type(needle) == 'function' and needle or function(index, value) + return value == needle + end + for index, value in ipairs(haystack) do + if is_needle(index, value) then return index, value end + end +end + +function itable_filter(haystack, needle) + local is_needle = type(needle) == 'function' and needle or function(index, value) + return value == needle + end + local filtered = {} + for index, value in ipairs(haystack) do + if is_needle(index, value) then filtered[#filtered + 1] = value end + end + return filtered +end + +function itable_remove(haystack, needle) + local should_remove = type(needle) == 'function' and needle or function(value) + return value == needle + end + local new_table = {} + for _, value in ipairs(haystack) do + if not should_remove(value) then + new_table[#new_table + 1] = value + end + end + return new_table +end + +function itable_slice(haystack, start_pos, end_pos) + start_pos = start_pos and start_pos or 1 + end_pos = end_pos and end_pos or #haystack + + if end_pos < 0 then end_pos = #haystack + end_pos + 1 end + if start_pos < 0 then start_pos = #haystack + start_pos + 1 end + + local new_table = {} + for index, value in ipairs(haystack) do + if index >= start_pos and index <= end_pos then + new_table[#new_table + 1] = value + end + end + return new_table +end + +function table_copy(table) + local new_table = {} + for key, value in pairs(table) do new_table[key] = value end + return new_table +end + +-- Sorting comparator close to (but not exactly) how file explorers sort files +local word_order_comparator = (function() + local symbol_order + local default_order + + if state.os == 'win' then + symbol_order = { + ['!'] = 1, ['#'] = 2, ['$'] = 3, ['%'] = 4, ['&'] = 5, ['('] = 6, [')'] = 6, [','] = 7, + ['.'] = 8, ["'"] = 9, ['-'] = 10, [';'] = 11, ['@'] = 12, ['['] = 13, [']'] = 13, ['^'] = 14, + ['_'] = 15, ['`'] = 16, ['{'] = 17, ['}'] = 17, ['~'] = 18, ['+'] = 19, ['='] = 20, + } + default_order = 21 + else + symbol_order = { + ['`'] = 1, ['^'] = 2, ['~'] = 3, ['='] = 4, ['_'] = 5, ['-'] = 6, [','] = 7, [';'] = 8, + ['!'] = 9, ["'"] = 10, ['('] = 11, [')'] = 11, ['['] = 12, [']'] = 12, ['{'] = 13, ['}'] = 14, + ['@'] = 15, ['$'] = 16, ['*'] = 17, ['&'] = 18, ['%'] = 19, ['+'] = 20, ['.'] = 22, ['#'] = 23, + } + default_order = 21 + end + + return function (a, b) + a = a:lower() + b = b:lower() + for i = 1, math.max(#a, #b) do + local ai = a:sub(i, i) + local bi = b:sub(i, i) + if ai == nil and bi then return true end + if bi == nil and ai then return false end + local a_order = symbol_order[ai] or default_order + local b_order = symbol_order[bi] or default_order + if a_order == b_order then + return a < b + else + return a_order < b_order + end + end + end +end)() + +-- Creates in-between frames to animate value from `from` to `to` numbers. +-- Returns function that terminates animation. +-- `to` can be a function that returns target value, useful for movable targets. +-- `speed` is an optional float between 1-instant and 0-infinite duration +-- `callback` is called either on animation end, or when animation is canceled +function tween(from, to, setter, speed, callback) + if type(speed) ~= 'number' then + callback = speed + speed = 0.3 + end + local timeout + local getTo = type(to) == 'function' and to or function() return to end + local cutoff = math.abs(getTo() - from) * 0.01 + function tick() + from = from + ((getTo() - from) * speed) + local is_end = math.abs(getTo() - from) <= cutoff + setter(is_end and getTo() or from) + request_render() + if is_end then + call_me_maybe(callback) + else + timeout:resume() + end + end + timeout = mp.add_timeout(0.016, tick) + tick() + return function() + timeout:kill() + call_me_maybe(callback) + end +end + +-- Kills ongoing animation if one is already running on this element. +-- Killed animation will not get its `on_end` called. +function tween_element(element, from, to, setter, speed, callback) + if type(speed) ~= 'number' then + callback = speed + speed = 0.3 + end + + tween_element_stop(element) + + element.stop_current_animation = tween( + from, to, + function(value) setter(element, value) end, + speed, + function() + element.stop_current_animation = nil + call_me_maybe(callback, element) + end + ) +end + +-- Stopped animation will not get its on_end called. +function tween_element_is_tweening(element) + return element and element.stop_current_animation +end + +-- Stopped animation will not get its on_end called. +function tween_element_stop(element) + call_me_maybe(element and element.stop_current_animation) +end + +-- Helper to automatically use an element property setter +function tween_element_property(element, prop, from, to, speed, callback) + tween_element(element, from, to, function(_, value) element[prop] = value end, speed, callback) +end + +function get_point_to_rectangle_proximity(point, rect) + local dx = math.max(rect.ax - point.x, 0, point.x - rect.bx + 1) + local dy = math.max(rect.ay - point.y, 0, point.y - rect.by + 1) + return math.sqrt(dx*dx + dy*dy); +end + +function text_width_estimate(letters, font_size) + return letters and letters * font_size * options.font_height_to_letter_width_ratio or 0 +end + +function opacity_to_alpha(opacity) + return 255 - math.ceil(255 * opacity) +end + +function ass_opacity(opacity, fraction) + fraction = fraction ~= nil and fraction or 1 + if type(opacity) == 'number' then + return string.format('{\\alpha&H%X&}', opacity_to_alpha(opacity * fraction)) + else + return string.format( + '{\\1a&H%X&\\2a&H%X&\\3a&H%X&\\4a&H%X&}', + opacity_to_alpha((opacity[1] or 0) * fraction), + opacity_to_alpha((opacity[2] or 0) * fraction), + opacity_to_alpha((opacity[3] or 0) * fraction), + opacity_to_alpha((opacity[4] or 0) * fraction) + ) + end +end + +-- Ensures path is absolute and normalizes slashes to the current platform +function normalize_path(path) + if not path or is_protocol(path) then return path end + + -- Ensure path is absolute + if not (path:match('^/') or path:match('^%a+:') or path:match('^\\\\')) then + path = utils.join_path(state.cwd, path) + end + + -- Use proper slashes + if state.os == 'windows' then + return path:gsub('/', '\\') + else + return path:gsub('\\', '/') + end +end + +-- Check if path is a protocol, such as `http://...` +function is_protocol(path) + return path:match('^%a[%a%d-_]+://') +end + +function get_extension(path) + local parts = split(path, '%.') + return parts and #parts > 1 and parts[#parts] or nil +end + +-- Serializes path into its semantic parts +function serialize_path(path) + if not path or is_protocol(path) then return end + path = normalize_path(path) + local parts = split(path, '[\\/]+') + if parts[#parts] == '' then table.remove(parts, #parts) end -- remove trailing separator + local basename = parts and parts[#parts] or path + local dirname = #parts > 1 and table.concat(itable_slice(parts, 1, #parts - 1), state.os == 'windows' and '\\' or '/') or nil + local dot_split = split(basename, '%.') + return { + path = path:sub(-1) == ':' and state.os == 'windows' and path..'\\' or path, + is_root = dirname == nil, + dirname = dirname, + basename = basename, + filename = #dot_split > 1 and table.concat(itable_slice(dot_split, 1, #dot_split - 1), '.') or basename, + extension = #dot_split > 1 and dot_split[#dot_split] or nil, + } +end + +function get_files_in_directory(directory, allowed_types) + local files, error = utils.readdir(directory, 'files') + + if not files then + msg.error('Retrieving files failed: '..(error or '')) + return + end + + -- Filter only requested file types + if allowed_types then + files = itable_filter(files, function(_, file) + local extension = get_extension(file) + return extension and itable_find(allowed_types, extension:lower()) + end) + end + + table.sort(files, word_order_comparator) + + return files +end + +function get_adjacent_file(file_path, direction, allowed_types) + local current_file = serialize_path(file_path) + local files = get_files_in_directory(current_file.dirname, allowed_types) + + if not files then return end + + for index, file in ipairs(files) do + if current_file.basename == file then + if direction == 'forward' then + if files[index + 1] then return utils.join_path(current_file.dirname, files[index + 1]) end + if options.directory_navigation_loops and files[1] then return utils.join_path(current_file.dirname, files[1]) end + else + if files[index - 1] then return utils.join_path(current_file.dirname, files[index - 1]) end + if options.directory_navigation_loops and files[#files] then return utils.join_path(current_file.dirname, files[#files]) end + end + + -- This is the only file in directory + return nil + end + end +end + +-- Ensures chapters are in chronological order +function get_normalized_chapters() + local chapters = mp.get_property_native('chapter-list') + + if not chapters then return end + + -- Copy table + chapters = itable_slice(chapters) + + -- Ensure chronological order of chapters + table.sort(chapters, function(a, b) return a.time < b.time end) + + return chapters +end + +-- Element +--[[ +Signature: +{ + -- enables capturing button groups for this element + captures = {mouse_buttons = true, wheel = true}, + -- element rectangle coordinates + ax = 0, ay = 0, bx = 0, by = 0, + -- cursor<>element relative proximity as a 0-1 floating number + -- where 0 = completely away, and 1 = touching/hovering + -- so it's easy to work with and throw into equations + proximity = 0, + -- raw cursor<>element proximity in pixels + proximity_raw = infinity, + -- called when element is created + ?init = function(this), + -- called manually when disposing of element + ?destroy = function(this), + -- triggered when event happens and cursor is above element + ?on_{event_name} = function(this), + -- triggered when any event happens anywhere on a page + ?on_global_{event_name} = function(this), + -- object + ?render = function(this_element), +} +]] +local Element = { + captures = nil, + ax = 0, ay = 0, bx = 0, by = 0, + proximity = 0, proximity_raw = infinity, +} +Element.__index = Element + +function Element.new(props) + local element = setmetatable(props, Element) + element._eventListeners = {} + + -- Flash timer + element._flash_out_timer = mp.add_timeout(options.flash_duration / 1000, function() + local getTo = function() return element.proximity end + element:tween_property('forced_proximity', 1, getTo, function() + element.forced_proximity = nil + end) + end) + element._flash_out_timer:kill() + + element:init() + + return element +end + +function Element:init() end +function Element:destroy() end + +-- Call method if it exists +function Element:maybe(name, ...) + if self[name] then return self[name](self, ...) end +end + +-- Tween helpers +function Element:tween(...) tween_element(self, ...) end +function Element:tween_property(...) tween_element_property(self, ...) end +function Element:tween_stop() tween_element_stop(self) end +function Element:is_tweening() tween_element_is_tweening(self) end + +-- Event listeners +function Element:on(name, handler) + if self._eventListeners[name] == nil then self._eventListeners[name] = {} end + local preexistingIndex = itable_find(self._eventListeners[name], handler) + if preexistingIndex then + return + else + self._eventListeners[name][#self._eventListeners[name] + 1] = handler + end +end +function Element:off(name, handler) + if self._eventListeners[name] == nil then return end + local index = itable_find(self._eventListeners, handler) + if index then table.remove(self._eventListeners, index) end +end +function Element:trigger(name, ...) + self:maybe('on_'..name, ...) + if self._eventListeners[name] == nil then return end + for _, handler in ipairs(self._eventListeners[name]) do handler(...) end +end + +-- Briefly flashes the element for `options.flash_duration` milliseconds. +-- Useful to visualize changes of volume and timeline when changed via hotkeys. +-- Implemented by briefly adding animated `forced_proximity` property to the element. +function Element:flash() + if options.flash_duration > 0 and (self.proximity < 1 or self._flash_out_timer:is_enabled()) then + self:tween_stop() + self.forced_proximity = 1 + self._flash_out_timer:kill() + self._flash_out_timer:resume() + end +end + +-- ELEMENTS + +local Elements = {itable = {}} +Elements.__index = Elements +local elements = setmetatable({}, Elements) + +function Elements:add(name, element) + local insert_index = #Elements.itable + 1 + + -- Replace if element already exists + if self:has(name) then + insert_index = itable_find(Elements.itable, function(_, element) + return element.name == name + end) + end + + element.name = name + Elements.itable[insert_index] = element + self[name] = element + + request_render() +end + +function Elements:remove(name, props) + Elements.itable = itable_remove(Elements.itable, self[name]) + self[name] = nil + request_render() +end + +function Elements:has(name) return self[name] ~= nil end +function Elements:ipairs() return ipairs(Elements.itable) end +function Elements:pairs(elements) return pairs(self) end + +-- MENU +--[[ +Usage: +``` +local items = { + {title = 'Foo title', hint = 'Ctrl+F', value = 'foo'}, + {title = 'Bar title', hint = 'Ctrl+B', value = 'bar'}, + { + title = 'Submenu', + items = { + {title = 'Sub item 1', value = 'sub1'}, + {title = 'Sub item 2', value = 'sub2'} + } + } +} + +function open_item(value) + value -- value from `item.value` +end + +menu:open(items, open_item) +``` +]] +local Menu = {} +Menu.__index = Menu +local menu = setmetatable({key_bindings = {}, is_closing = false}, Menu) + +function Menu:is_open(menu_type) + return elements.menu ~= nil and (not menu_type or elements.menu.type == menu_type) +end + +function Menu:open(items, open_item, opts) + opts = opts or {} + + if menu:is_open() then + if not opts.parent_menu then + menu:close(true, function() + menu:open(items, open_item, opts) + end) + return + end + else + menu:enable_key_bindings() + elements.curtain:fadein() + end + + elements:add('menu', Element.new({ + captures = {mouse_buttons = true}, + type = nil, -- menu type such as `menu`, `chapters`, ... + title = nil, + width = nil, + height = nil, + offset_x = 0, -- used to animated from/to left when submenu + item_height = nil, + item_spacing = 1, + item_content_spacing = nil, + font_size = nil, + scroll_step = nil, + scroll_height = nil, + scroll_y = 0, + opacity = 0, + relative_parent_opacity = 0.4, + items = items, + active_item = nil, + selected_item = nil, + open_item = open_item, + parent_menu = nil, + init = function(this) + -- Already initialized + if this.width ~= nil then return end + + -- Apply options + for key, value in pairs(opts) do this[key] = value end + this.selected_item = this.active_item + + -- Set initial dimensions + this:on_display_resize() + + -- Scroll to active item + this:scroll_to_item(this.active_item) + + -- Transition in animation + menu.transition = {to = 'child', target = this} + local start_offset = this.parent_menu and (this.parent_menu.width + this.width) / 2 or 0 + + tween_element(menu.transition.target, 0, 1, function(_, pos) + this:set_offset_x(round(start_offset * (1 - pos))) + this.opacity = pos + this:set_parent_opacity(1 - ((1 - config.menu_parent_opacity) * pos)) + end, function() + menu.transition = nil + update_proximities() + end) + end, + destroy = function(this) + request_render() + end, + on_display_resize = function(this) + this.item_height = (state.fullscreen or state.maximized) and options.menu_item_height_fullscreen or options.menu_item_height + this.font_size = round(this.item_height * 0.48 * options.menu_font_scale) + this.item_content_spacing = round((this.item_height - this.font_size) * 0.6) + this.scroll_step = this.item_height + this.item_spacing + + -- Estimate width of a widest item + local estimated_max_width = 0 + for _, item in ipairs(items) do + local item_text_length = ((item.title and item.title:len() or 0) + (item.hint and item.hint:len() or 0)) + local spacings_in_item = item.hint and 3 or 2 + local estimated_width = text_width_estimate(item_text_length, this.font_size) + (this.item_content_spacing * spacings_in_item) + if estimated_width > estimated_max_width then + estimated_max_width = estimated_width + end + end + + -- Also check menu title + local menu_title_length = this.title and this.title:len() or 0 + local estimated_menu_title_width = text_width_estimate(menu_title_length, this.font_size) + if estimated_menu_title_width > estimated_max_width then + estimated_max_width = estimated_menu_title_width + end + + -- Coordinates and sizes are of the scrollable area to make + -- consuming values in rendering easier. Title drawn above this, so + -- we need to account for that in max_height and ay position. + this.width = round(math.min(math.max(estimated_max_width, config.menu_min_width), display.width * 0.9)) + local title_height = this.title and this.scroll_step or 0 + local max_height = round(display.height * 0.9) - title_height + this.height = math.min(round(this.scroll_step * #items) - this.item_spacing, max_height) + this.scroll_height = math.max((this.scroll_step * #this.items) - this.height - this.item_spacing, 0) + this.ax = round((display.width - this.width) / 2) + this.offset_x + this.ay = round((display.height - this.height) / 2 + (title_height / 2)) + this.bx = round(this.ax + this.width) + this.by = round(this.ay + this.height) + + if this.parent_menu then + this.parent_menu:on_display_resize() + end + end, + set_items = function(this, items, props) + this.items = items + this.selected_item = nil + this.active_item = nil + if props then + for key, value in pairs(props) do this[key] = value end + end + this:on_display_resize() + request_render() + end, + set_offset_x = function(this, offset) + local delta = offset - this.offset_x + this.offset_x = offset + this.ax = this.ax + delta + this.bx = this.bx + delta + if this.parent_menu then + this.parent_menu:set_offset_x(offset - ((this.width + this.parent_menu.width) / 2) - this.item_spacing) + else + update_proximities() + end + end, + fadeout = function(this, callback) + this:tween(1, 0, function(this, pos) + this.opacity = pos + this:set_parent_opacity(pos * config.menu_parent_opacity) + end, callback) + end, + set_parent_opacity = function(this, opacity) + if this.parent_menu then + this.parent_menu.opacity = opacity + this.parent_menu:set_parent_opacity(opacity * config.menu_parent_opacity) + end + end, + get_item_index_below_cursor = function(this) + return math.ceil((cursor.y - this.ay + this.scroll_y) / this.scroll_step) + end, + get_first_visible_index = function(this) + return round(this.scroll_y / this.scroll_step) + 1 + end, + get_last_visible_index = function(this) + return round((this.scroll_y + this.height) / this.scroll_step) + end, + get_centermost_visible_index = function(this) + return round((this.scroll_y + (this.height / 2)) / this.scroll_step) + end, + scroll_to = function(this, pos) + this.scroll_y = math.max(math.min(pos, this.scroll_height), 0) + request_render() + end, + scroll_to_item = function(this, index) + if (index and index >= 1 and index <= #this.items) then + this:scroll_to(round((this.scroll_step * (index - 1)) - ((this.height - this.scroll_step) / 2))) + end + end, + select_index = function(this, index) + this.selected_item = (index and index >= 1 and index <= #this.items) and index or nil + request_render() + end, + select_value = function(this, value) + this:select_index(itable_find(this.items, function(_, item) return item.value == value end)) + end, + activate_index = function(this, index) + this.active_item = (index and index >= 1 and index <= #this.items) and index or nil + request_render() + end, + activate_value = function(this, value) + this:activate_index(itable_find(this.items, function(_, item) return item.value == value end)) + end, + delete_index = function(this, index) + if (index and index >= 1 and index <= #this.items) then + local previous_active_value = this.active_index and this.items[this.active_index].value or nil + table.remove(this.items, index) + this:on_display_resize() + if previous_active_value then this:activate_value(previous_active_value) end + this:scroll_to_item(this.selected_item) + end + end, + delete_value = function(this, value) + this:delete_index(itable_find(this.items, function(_, item) return item.value == value end)) + end, + prev = function(this) + local default_anchor = this.scroll_height > this.scroll_step and this:get_centermost_visible_index() or this:get_last_visible_index() + local current_index = this.selected_item or default_anchor + 1 + this.selected_item = math.max(current_index - 1, 1) + this:scroll_to_item(this.selected_item) + end, + next = function(this) + local default_anchor = this.scroll_height > this.scroll_step and this:get_centermost_visible_index() or this:get_first_visible_index() + local current_index = this.selected_item or default_anchor - 1 + this.selected_item = math.min(current_index + 1, #this.items) + this:scroll_to_item(this.selected_item) + end, + back = function(this) + if menu.transition then + local transition_target = menu.transition.target + local transition_target_type = menu.transition.target + tween_element_stop(transition_target) + if transition_target_type == 'parent' then + elements:add('menu', transition_target) + end + menu.transition = nil + transition_target:back() + return + else + menu.transition = {to = 'parent', target = this.parent_menu} + end + + if menu.transition.target == nil then + menu:close() + return + end + + local target = menu.transition.target + local to_offset = -target.offset_x + this.offset_x + + tween_element(target, 0, 1, function(_, pos) + this:set_offset_x(round(to_offset * pos)) + this.opacity = 1 - pos + this:set_parent_opacity(config.menu_parent_opacity + ((1 - config.menu_parent_opacity) * pos)) + end, function() + menu.transition = nil + elements:add('menu', target) + update_proximities() + end) + end, + open_selected_item = function(this) + -- If there is a transition active and this method got called, it + -- means we are animating from this menu to parent menu, and all + -- calls to this method should be relayed to the parent menu. + if menu.transition and menu.transition.to == 'parent' then + local target = menu.transition.target + tween_element_stop(target) + menu.transition = nil + target:open_selected_item() + return + end + + if this.selected_item then + local item = this.items[this.selected_item] + -- Is submenu + if item.items then + local opts = table_copy(opts) + opts.parent_menu = this + menu:open(item.items, this.open_item, opts) + else + menu:close(true) + this.open_item(item.value) + end + end + end, + close = function(this) + menu:close() + end, + on_global_mbtn_left_down = function(this) + if this.proximity_raw == 0 then + this.selected_item = this:get_item_index_below_cursor() + this:open_selected_item() + else + -- check if this is clicking on any parent menus + local parent_menu = this.parent_menu + repeat + if parent_menu then + if get_point_to_rectangle_proximity(cursor, parent_menu) == 0 then + this:back() + return + end + parent_menu = parent_menu.parent_menu + end + until parent_menu == nil + + menu:close() + end + end, + on_global_mouse_move = function(this) + if this.proximity_raw == 0 then + this.selected_item = this:get_item_index_below_cursor() + else + if this.selected_item then this.selected_item = nil end + end + request_render() + end, + on_wheel_up = function(this) + this.selected_item = nil + this:scroll_to(this.scroll_y - this.scroll_step) + -- Selects item below cursor + this:on_global_mouse_move() + request_render() + end, + on_wheel_down = function(this) + this.selected_item = nil + this:scroll_to(this.scroll_y + this.scroll_step) + -- Selects item below cursor + this:on_global_mouse_move() + request_render() + end, + on_pgup = function(this) + this.selected_item = nil + this:scroll_to(this.scroll_y - this.height) + end, + on_pgdwn = function(this) + this.selected_item = nil + this:scroll_to(this.scroll_y + this.height) + end, + on_home = function(this) + this.selected_item = nil + this:scroll_to(0) + end, + on_end = function(this) + this.selected_item = nil + this:scroll_to(this.scroll_height) + end, + render = render_menu, + })) + + elements.menu:maybe('on_open') +end + +function Menu:add_key_binding(key, name, fn, flags) + menu.key_bindings[#menu.key_bindings + 1] = name + mp.add_forced_key_binding(key, name, fn, flags) +end + +function Menu:enable_key_bindings() + menu.key_bindings = {} + -- The `mp.set_key_bindings()` method would be easier here, but that + -- doesn't support 'repeatable' flag, so we are stuck with this monster. + menu:add_key_binding('up', 'menu-prev', self:create_action('prev'), 'repeatable') + menu:add_key_binding('down', 'menu-next', self:create_action('next'), 'repeatable') + menu:add_key_binding('left', 'menu-back', self:create_action('back')) + menu:add_key_binding('right', 'menu-select', self:create_action('open_selected_item')) + + if options.menu_wasd_navigation then + menu:add_key_binding('w', 'menu-prev-alt', self:create_action('prev'), 'repeatable') + menu:add_key_binding('a', 'menu-back-alt', self:create_action('back')) + menu:add_key_binding('s', 'menu-next-alt', self:create_action('next'), 'repeatable') + menu:add_key_binding('d', 'menu-select-alt', self:create_action('open_selected_item')) + end + + if options.menu_hjkl_navigation then + menu:add_key_binding('h', 'menu-back-alt2', self:create_action('back')) + menu:add_key_binding('j', 'menu-next-alt2', self:create_action('next'), 'repeatable') + menu:add_key_binding('k', 'menu-prev-alt2', self:create_action('prev'), 'repeatable') + menu:add_key_binding('l', 'menu-select-alt2', self:create_action('open_selected_item')) + end + + menu:add_key_binding('mbtn_back', 'menu-back-alt3', self:create_action('back')) + menu:add_key_binding('bs', 'menu-back-alt4', self:create_action('back')) + menu:add_key_binding('enter', 'menu-select-alt3', self:create_action('open_selected_item')) + menu:add_key_binding('kp_enter', 'menu-select-alt4', self:create_action('open_selected_item')) + menu:add_key_binding('esc', 'menu-close', self:create_action('close')) + menu:add_key_binding('pgup', 'menu-page-up', self:create_action('on_pgup')) + menu:add_key_binding('pgdwn', 'menu-page-down', self:create_action('on_pgdwn')) + menu:add_key_binding('home', 'menu-home', self:create_action('on_home')) + menu:add_key_binding('end', 'menu-end', self:create_action('on_end')) +end + +function Menu:disable_key_bindings() + for _, name in ipairs(menu.key_bindings) do mp.remove_key_binding(name) end + menu.key_bindings = {} +end + +function Menu:create_action(name) + return function(...) + if elements.menu then elements.menu:maybe(name, ...) end + end +end + +function Menu:close(immediate, callback) + if type(immediate) ~= 'boolean' then callback = immediate end + + if elements:has('menu') and not menu.is_closing then + function close() + elements.menu:maybe('on_close') + elements.menu:destroy() + elements:remove('menu') + menu.is_closing = false + update_proximities() + menu:disable_key_bindings() + call_me_maybe(callback) + end + + menu.is_closing = true + elements.curtain:fadeout() + + if immediate then + close() + else + elements.menu:fadeout(close) + end + end +end + +-- ICONS +--[[ +ASS \shadN shadows are drawn also below the element, which when there is an +opacity in play, blends icon colors into ugly greys. The mess below is an +attempt to fix it by rendering shadows for icons with clipping. + +Add icons by adding functions to render them to `icons` table. + +Signature: function(pos_x, pos_y, size) => string + +Function has to return ass path coordinates to draw the icon centered at pox_x +and pos_y of passed size. +]] +local icons = {} +function icon(name, icon_x, icon_y, icon_size, shad_x, shad_y, shad_size, backdrop, opacity, clip) + local ass = assdraw.ass_new() + local icon_path = icons[name](icon_x, icon_y, icon_size) + local icon_color = options['color_'..backdrop..'_text'] + local shad_color = options['color_'..backdrop] + local use_border = (shad_x + shad_y) == 0 + local icon_border = use_border and shad_size or 0 + + -- clip can't clip out shadows, a very annoying limitation I can't work + -- around without going back to ugly default ass shadows, but atm I actually + -- don't need clipping of icons with shadows, so I'm choosing to ignore this + if not clip then + clip = '' + end + + if not use_border then + ass:new_event() + ass:append('{\\blur0\\bord0\\shad0\\1c&H'..shad_color..'\\iclip('..ass.scale..', '..icon_path..')}') + ass:append(ass_opacity(opacity)) + ass:pos(shad_x + shad_size, shad_y + shad_size) + ass:draw_start() + ass:append(icon_path) + ass:draw_stop() + end + + ass:new_event() + ass:append('{\\blur0\\bord'..icon_border..'\\shad0\\1c&H'..icon_color..'\\3c&H'..shad_color..clip..'}') + ass:append(ass_opacity(opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:append(icon_path) + ass:draw_stop() + + return ass.text +end + +function icons._volume(muted, pos_x, pos_y, size) + local ass = assdraw.ass_new() + local scale = size / 200 + function x(number) return pos_x + (number * scale) end + function y(number) return pos_y + (number * scale) end + ass:move_to(x(-85), y(-35)) + ass:line_to(x(-50), y(-35)) + ass:line_to(x(-5), y(-75)) + ass:line_to(x(-5), y(75)) + ass:line_to(x(-50), y(35)) + ass:line_to(x(-85), y(35)) + if muted then + ass:move_to(x(76), y(-35)) ass:line_to(x(50), y(-9)) ass:line_to(x(24), y(-35)) + ass:line_to(x(15), y(-26)) ass:line_to(x(41), y(0)) ass:line_to(x(15), y(26)) + ass:line_to(x(24), y(35)) ass:line_to(x(50), y(9)) ass:line_to(x(76), y(35)) + ass:line_to(x(85), y(26)) ass:line_to(x(59), y(0)) ass:line_to(x(85), y(-26)) + else + ass:move_to(x(20), y(-30)) ass:line_to(x(20), y(30)) + ass:line_to(x(35), y(30)) ass:line_to(x(35), y(-30)) + + ass:move_to(x(55), y(-60)) ass:line_to(x(55), y(60)) + ass:line_to(x(70), y(60)) ass:line_to(x(70), y(-60)) + end + return ass.text +end +function icons.volume(pos_x, pos_y, size) return icons._volume(false, pos_x, pos_y, size) end +function icons.volume_muted(pos_x, pos_y, size) return icons._volume(true, pos_x, pos_y, size) end + +function icons.arrow_right(pos_x, pos_y, size) + local ass = assdraw.ass_new() + local scale = size / 200 + function x(number) return pos_x + (number * scale) end + function y(number) return pos_y + (number * scale) end + ass:move_to(x(-22), y(-80)) + ass:line_to(x(-45), y(-57)) + ass:line_to(x(12), y(0)) + ass:line_to(x(-45), y(57)) + ass:line_to(x(-22), y(80)) + ass:line_to(x(58), y(0)) + return ass.text +end + +-- STATE UPDATES + +function update_display_dimensions() + local o = mp.get_property_native('osd-dimensions') + display.width = o.w + display.height = o.h + display.aspect = o.aspect + + -- Tell elements about this + for _, element in elements:ipairs() do + if element.on_display_resize ~= nil then + element.on_display_resize(element) + end + end +end + +function update_element_cursor_proximity(element) + if cursor.hidden then + element.proximity_raw = infinity + element.proximity = 0 + else + local range = options.proximity_out - options.proximity_in + element.proximity_raw = get_point_to_rectangle_proximity(cursor, element) + element.proximity = menu:is_open() and 0 or 1 - (math.min(math.max(element.proximity_raw - options.proximity_in, 0), range) / range) + end +end + +function update_proximities() + local capture_mouse_buttons = false + local capture_wheel = false + local menu_only = menu:is_open() + local mouse_left_elements = {} + local mouse_entered_elements = {} + + -- Calculates proximities and opacities for defined elements + for _, element in elements:ipairs() do + local previous_proximity_raw = element.proximity_raw + + -- If menu is open, all other elements have to be disabled + if menu_only then + if element.name == 'menu' then + capture_mouse_buttons = true + capture_wheel = true + update_element_cursor_proximity(element) + else + element.proximity_raw = infinity + element.proximity = 0 + end + else + update_element_cursor_proximity(element) + end + + if element.proximity_raw == 0 then + -- Mouse is over element + if element.captures and element.captures.mouse_buttons then capture_mouse_buttons = true end + if element.captures and element.captures.wheel then capture_wheel = true end + + -- Mouse entered element area + if previous_proximity_raw ~= 0 then + mouse_entered_elements[#mouse_entered_elements + 1] = element + end + else + -- Mouse left element area + if previous_proximity_raw == 0 then + mouse_left_elements[#mouse_left_elements + 1] = element + end + end + end + + -- Enable key group captures elements request. + if capture_mouse_buttons then + forced_key_bindings.mouse_buttons:enable() + else + forced_key_bindings.mouse_buttons:disable() + end + if capture_wheel then + forced_key_bindings.wheel:enable() + else + forced_key_bindings.wheel:disable() + end + + -- Trigger `mouse_leave` and `mouse_enter` events + for _, element in ipairs(mouse_left_elements) do element:trigger('mouse_leave') end + for _, element in ipairs(mouse_entered_elements) do element:trigger('mouse_enter') end +end + +-- ELEMENT RENDERERS + +function render_timeline(this) + if this.size_max == 0 or state.duration == nil or state.duration == 0 or state.position == nil then return end + + local size_min = this:get_effective_size_min() + local size = this:get_effective_size() + + if size < 1 then return end + + local ass = assdraw.ass_new() + + -- Text opacity rapidly drops to 0 just before it starts overflowing, or before it reaches timeline.size_min + local hide_text_below = math.max(this.font_size * 0.7, size_min * 2) + local hide_text_ramp = hide_text_below / 2 + local text_opacity = math.max(math.min(size - hide_text_below, hide_text_ramp), 0) / hide_text_ramp + + local spacing = math.max(math.floor((this.size_max - this.font_size) / 2.5), 4) + local progress = state.position / state.duration + + -- Background bar coordinates + local bax = 0 + local bay = display.height - size - this.bottom_border - this.top_border + local bbx = display.width + local bby = display.height + + -- Foreground bar coordinates + local fax = bax + local fay = bay + this.top_border + local fbx = bbx * progress + local fby = bby - this.bottom_border + local foreground_size = bby - bay + local foreground_coordinates = fax..','..fay..','..fbx..','..fby -- for clipping + + -- Background + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..options.color_background..'\\iclip('..foreground_coordinates..')}') + ass:append(ass_opacity(math.max(options.timeline_opacity - 0.1, 0))) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw(bax, bay, bbx, bby) + ass:draw_stop() + + -- Foreground + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..options.color_foreground..'}') + ass:append(ass_opacity(options.timeline_opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw(fax, fay, fbx, fby) + ass:draw_stop() + + -- Seekable ranges + if options.timeline_cached_ranges and state.cached_ranges then + local range_height = math.max(foreground_size / 8, size_min) + local range_ay = fby - range_height + for _, range in ipairs(state.cached_ranges) do + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..options.timeline_cached_ranges.color..'}') + ass:append(ass_opacity(options.timeline_cached_ranges.opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw( + bbx * (range['start'] / state.duration), range_ay, + bbx * (range['end'] / state.duration), range_ay + range_height + ) + ass:draw_stop() + end + end + + -- Custom ranges + if state.chapter_ranges ~= nil then + for i, chapter_range in ipairs(state.chapter_ranges) do + for i, range in ipairs(chapter_range.ranges) do + local rax = display.width * (range['start'].time / state.duration) + local rbx = display.width * (range['end'].time / state.duration) + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..chapter_range.color..'}') + ass:append(ass_opacity(chapter_range.opacity)) + ass:pos(0, 0) + ass:draw_start() + -- for 1px chapter size, use the whole size of the bar including padding + if size <= 1 then + ass:rect_cw(rax, bay, rbx, bby) + else + ass:rect_cw(rax, fay, rbx, fby) + end + ass:draw_stop() + end + end + end + + -- Chapters + if options.chapters ~= 'none' and state.chapters ~= nil and #state.chapters > 0 then + local half_size = size / 2 + local dots = false + local chapter_size, chapter_y + if options.chapters == 'dots' then + dots = true + chapter_size = math.min(6, (foreground_size / 2) + 2) + chapter_y = math.min(fay + chapter_size, fay + half_size) + elseif options.chapters == 'lines' then + chapter_size = size + chapter_y = fay + (chapter_size / 2) + elseif options.chapters == 'lines-top' then + chapter_size = math.min(this.size_max / 3.5, size) + chapter_y = fay + (chapter_size / 2) + elseif options.chapters == 'lines-bottom' then + chapter_size = math.min(this.size_max / 3.5, size) + chapter_y = fay + size - (chapter_size / 2) + end + + if chapter_size ~= nil then + -- for 1px chapter size, use the whole size of the bar including padding + chapter_size = size <= 1 and foreground_size or chapter_size + local chapter_half_size = chapter_size / 2 + + for i, chapter in ipairs(state.chapters) do + local chapter_x = display.width * (chapter.time / state.duration) + local color = chapter_x > fbx and options.color_foreground or options.color_background + + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..color..'}') + ass:append(ass_opacity(options.chapters_opacity)) + ass:pos(0, 0) + ass:draw_start() + + if dots then + local bezier_stretch = chapter_size * 0.67 + ass:move_to(chapter_x - chapter_half_size, chapter_y) + ass:bezier_curve( + chapter_x - chapter_half_size, chapter_y - bezier_stretch, + chapter_x + chapter_half_size, chapter_y - bezier_stretch, + chapter_x + chapter_half_size, chapter_y + ) + ass:bezier_curve( + chapter_x + chapter_half_size, chapter_y + bezier_stretch, + chapter_x - chapter_half_size, chapter_y + bezier_stretch, + chapter_x - chapter_half_size, chapter_y + ) + else + ass:rect_cw(chapter_x, chapter_y - chapter_half_size, chapter_x + 1, chapter_y + chapter_half_size) + end + + ass:draw_stop() + end + end + end + + if text_opacity > 0 then + -- Elapsed time + if state.elapsed_seconds then + ass:new_event() + ass:append('{\\blur0\\bord0\\shad0\\1c&H'..options.color_foreground_text..'\\fn'..config.font..'\\fs'..this.font_size..bold_tag..'\\clip('..foreground_coordinates..')') + ass:append(ass_opacity(math.min(options.timeline_opacity + 0.1, 1), text_opacity)) + ass:pos(spacing, fay + (size / 2)) + ass:an(4) + ass:append(state.elapsed_time) + ass:new_event() + ass:append('{\\blur0\\bord0\\shad1\\1c&H'..options.color_background_text..'\\4c&H'..options.color_background..'\\fn'..config.font..'\\fs'..this.font_size..bold_tag..'\\iclip('..foreground_coordinates..')') + ass:append(ass_opacity(math.min(options.timeline_opacity + 0.1, 1), text_opacity)) + ass:pos(spacing, fay + (size / 2)) + ass:an(4) + ass:append(state.elapsed_time) + end + + -- Remaining time + if state.remaining_seconds then + ass:new_event() + ass:append('{\\blur0\\bord0\\shad0\\1c&H'..options.color_foreground_text..'\\fn'..config.font..'\\fs'..this.font_size..bold_tag..'\\clip('..foreground_coordinates..')') + ass:append(ass_opacity(math.min(options.timeline_opacity + 0.1, 1), text_opacity)) + ass:pos(display.width - spacing, fay + (size / 2)) + ass:an(6) + ass:append('-'..state.remaining_time) + ass:new_event() + ass:append('{\\blur0\\bord0\\shad1\\1c&H'..options.color_background_text..'\\4c&H'..options.color_background..'\\fn'..config.font..'\\fs'..this.font_size..bold_tag..'\\iclip('..foreground_coordinates..')') + ass:append(ass_opacity(math.min(options.timeline_opacity + 0.1, 1), text_opacity)) + ass:pos(display.width - spacing, fay + (size / 2)) + ass:an(6) + ass:append('-'..state.remaining_time) + end + end + + if (this.proximity_raw == 0 or this.pressed) and not (elements.speed and elements.speed.dragging) then + -- Hovered time + local hovered_seconds = state.duration * (cursor.x / display.width) + local box_half_width_guesstimate = (this.font_size * 4.2) / 2 + ass:new_event() + ass:append('{\\blur0\\bord1\\shad0\\1c&H'..options.color_background_text..'\\3c&H'..options.color_background..'\\fn'..config.font..'\\fs'..this.font_size..bold_tag..'') + ass:append(ass_opacity(math.min(options.timeline_opacity + 0.1, 1))) + ass:pos(math.min(math.max(cursor.x, box_half_width_guesstimate), display.width - box_half_width_guesstimate), fay) + ass:an(2) + ass:append(mp.format_time(hovered_seconds)) + + -- Cursor line + ass:new_event() + ass:append('{\\blur0\\bord0\\xshad-1\\yshad0\\1c&H'..options.color_foreground..'\\4c&H'..options.color_background..'}') + ass:append(ass_opacity(0.2)) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw(cursor.x, fay, cursor.x + 1, fby) + ass:draw_stop() + end + + return ass +end + +function render_top_bar(this) + local opacity = this:get_effective_proximity() + + if not this.enabled or opacity == 0 then return end + + local ass = assdraw.ass_new() + + if options.top_bar_controls then + -- Close button + local close = elements.window_controls_close + if close.proximity_raw == 0 then + -- Background on hover + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H2311e8}') + ass:append(ass_opacity(this.button_opacity, opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw(close.ax, close.ay, close.bx, close.by) + ass:draw_stop() + end + ass:new_event() + ass:append('{\\blur0\\bord1\\shad1\\3c&HFFFFFF\\4c&H000000}') + ass:append(ass_opacity(this.button_opacity, opacity)) + ass:pos(close.ax + (this.button_width / 2), (this.size / 2)) + ass:draw_start() + ass:move_to(-this.icon_size, this.icon_size) + ass:line_to(this.icon_size, -this.icon_size) + ass:move_to(-this.icon_size, -this.icon_size) + ass:line_to(this.icon_size, this.icon_size) + ass:draw_stop() + + -- Maximize button + local maximize = elements.window_controls_maximize + if maximize.proximity_raw == 0 then + -- Background on hover + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H222222}') + ass:append(ass_opacity(this.button_opacity, opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw(maximize.ax, maximize.ay, maximize.bx, maximize.by) + ass:draw_stop() + end + ass:new_event() + ass:append('{\\blur0\\bord2\\shad0\\1c\\3c&H000000}') + ass:append(ass_opacity({[3] = this.button_opacity}, opacity)) + ass:pos(maximize.ax + (this.button_width / 2), (this.size / 2)) + ass:draw_start() + ass:rect_cw(-this.icon_size + 1, -this.icon_size + 1, this.icon_size + 1, this.icon_size + 1) + ass:draw_stop() + ass:new_event() + ass:append('{\\blur0\\bord2\\shad0\\1c\\3c&HFFFFFF}') + ass:append(ass_opacity({[3] = this.button_opacity}, opacity)) + ass:pos(maximize.ax + (this.button_width / 2), (this.size / 2)) + ass:draw_start() + ass:rect_cw(-this.icon_size, -this.icon_size, this.icon_size, this.icon_size) + ass:draw_stop() + + -- Minimize button + local minimize = elements.window_controls_minimize + if minimize.proximity_raw == 0 then + -- Background on hover + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H222222}') + ass:append(ass_opacity(this.button_opacity, opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw(minimize.ax, minimize.ay, minimize.bx, minimize.by) + ass:draw_stop() + end + ass:new_event() + ass:append('{\\blur0\\bord1\\shad1\\3c&HFFFFFF\\4c&H000000}') + ass:append(ass_opacity(this.button_opacity, opacity)) + ass:append('{\\1a&HFF&}') + ass:pos(minimize.ax + (this.button_width / 2), (this.size / 2)) + ass:draw_start() + ass:move_to(-this.icon_size, 0) + ass:line_to(this.icon_size, 0) + ass:draw_stop() + end + + -- Window title + if options.top_bar_title and state.media_title then + local clip_coordinates = '0,0,'..(this.title_bx - this.spacing)..','..this.size + + ass:new_event() + ass:append('{\\q2\\blur0\\bord1\\shad0\\1c&HFFFFFF\\3c&H000000\\fn'..config.font..'\\fs'..this.font_size..bold_tag..'\\clip('..clip_coordinates..')') + ass:append(ass_opacity(1, opacity)) + ass:pos(0 + this.spacing, this.size / 2) + ass:an(4) + ass:append(state.media_title) + end + + return ass +end + +function render_volume(this) + local slider = elements.volume_slider + local opacity = this:get_effective_proximity() + + if this.width == 0 or opacity == 0 then return end + + local ass = assdraw.ass_new() + + if slider.height > 0 then + -- Background bar coordinates + local bax = slider.ax + local bay = slider.ay + local bbx = slider.bx + local bby = slider.by + + -- Foreground bar coordinates + local height_without_border = slider.height - (options.volume_border * 2) + local fax = slider.ax + options.volume_border + local fay = slider.ay + (height_without_border * (1 - math.min(state.volume / state.volume_max, 1))) + options.volume_border + local fbx = slider.bx - options.volume_border + local fby = slider.by - options.volume_border + + -- Path to draw a foreground bar with a 100% volume indicator, already + -- clipped by volume level. Can't just clip it with rectangle, as it itself + -- also needs to be used as a path to clip the background bar and volume + -- number. + local fpath = assdraw.ass_new() + fpath:move_to(fbx, fby) + fpath:line_to(fax, fby) + local nudge_bottom_y = slider.nudge_y + slider.nudge_size + if fay <= nudge_bottom_y and slider.draw_nudge then + fpath:line_to(fax, math.min(nudge_bottom_y)) + if fay <= slider.nudge_y then + fpath:line_to((fax + slider.nudge_size), slider.nudge_y) + local nudge_top_y = slider.nudge_y - slider.nudge_size + if fay <= nudge_top_y then + fpath:line_to(fax, nudge_top_y) + fpath:line_to(fax, fay) + fpath:line_to(fbx, fay) + fpath:line_to(fbx, nudge_top_y) + else + local triangle_side = fay - nudge_top_y + fpath:line_to((fax + triangle_side), fay) + fpath:line_to((fbx - triangle_side), fay) + end + fpath:line_to((fbx - slider.nudge_size), slider.nudge_y) + else + local triangle_side = nudge_bottom_y - fay + fpath:line_to((fax + triangle_side), fay) + fpath:line_to((fbx - triangle_side), fay) + end + fpath:line_to(fbx, nudge_bottom_y) + else + fpath:line_to(fax, fay) + fpath:line_to(fbx, fay) + end + fpath:line_to(fbx, fby) + + -- Background + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..options.color_background..'\\iclip('..fpath.scale..', '..fpath.text..')}') + ass:append(ass_opacity(math.max(options.volume_opacity - 0.1, 0), opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:move_to(bax, bay) + ass:line_to(bbx, bay) + local half_border = options.volume_border / 2 + if slider.draw_nudge then + ass:line_to(bbx, math.max(slider.nudge_y - slider.nudge_size + half_border, bay)) + ass:line_to(bbx - slider.nudge_size + half_border, slider.nudge_y) + ass:line_to(bbx, slider.nudge_y + slider.nudge_size - half_border) + end + ass:line_to(bbx, bby) + ass:line_to(bax, bby) + if slider.draw_nudge then + ass:line_to(bax, slider.nudge_y + slider.nudge_size - half_border) + ass:line_to(bax + slider.nudge_size - half_border, slider.nudge_y) + ass:line_to(bax, math.max(slider.nudge_y - slider.nudge_size + half_border, bay)) + end + ass:line_to(bax, bay) + ass:draw_stop() + + -- Foreground + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..options.color_foreground..'}') + ass:append(ass_opacity(options.volume_opacity, opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:append(fpath.text) + ass:draw_stop() + + -- Current volume value + local volume_string = tostring(round(state.volume * 10) / 10) + local font_size = round(((this.width * 0.6) - (#volume_string * (this.width / 20))) * options.volume_font_scale) + if fay < slider.by - slider.spacing then + ass:new_event() + ass:append('{\\blur0\\bord0\\shad0\\1c&H'..options.color_foreground_text..'\\fn'..config.font..'\\fs'..font_size..bold_tag..'\\clip('..fpath.scale..', '..fpath.text..')}') + ass:append(ass_opacity(math.min(options.volume_opacity + 0.1, 1), opacity)) + ass:pos(slider.ax + (slider.width / 2), slider.by - slider.spacing) + ass:an(2) + ass:append(volume_string) + end + if fay > slider.by - slider.spacing - font_size then + ass:new_event() + ass:append('{\\blur0\\bord0\\shad1\\1c&H'..options.color_background_text..'\\4c&H'..options.color_background..'\\fn'..config.font..'\\fs'..font_size..bold_tag..'\\iclip('..fpath.scale..', '..fpath.text..')}') + ass:append(ass_opacity(math.min(options.volume_opacity + 0.1, 1), opacity)) + ass:pos(slider.ax + (slider.width / 2), slider.by - slider.spacing) + ass:an(2) + ass:append(volume_string) + end + end + + -- Mute button + local mute = elements.volume_mute + local icon_name = state.mute and 'volume_muted' or 'volume' + ass:new_event() + ass:append(icon( + icon_name, + mute.ax + (mute.width / 2), mute.ay + (mute.height / 2), mute.width * 0.7, -- x, y, size + 0, 0, options.volume_border, -- shadow_x, shadow_y, shadow_size + 'background', options.volume_opacity * opacity -- backdrop, opacity + )) + return ass +end + +function render_speed(this) + if not this.dragging and (elements.curtain.opacity > 0) then return end + + local timeline = elements.timeline + local proximity = timeline:get_effective_proximity() + local opacity = this.forced_proximity and this.forced_proximity or (this.dragging and 1 or proximity) + + if opacity == 0 then return end + + local ass = assdraw.ass_new() + + -- Coordinates + local ax = this.ax + local ay = this.ay + timeline.size_max - timeline:get_effective_size() - timeline.top_border - timeline.bottom_border + local bx = this.bx + local by = ay + this.height + local half_width = (this.width / 2) + local half_x = ax + half_width + + -- Notches + local speed_at_center = state.speed + if this.dragging then + speed_at_center = this.dragging.start_speed + ((-this.dragging.distance / this.step_distance) * options.speed_step) + speed_at_center = math.min(math.max(speed_at_center, 0.01), 100) + end + local nearest_notch_speed = round(speed_at_center / this.notch_every) * this.notch_every + local nearest_notch_x = half_x + (((nearest_notch_speed - speed_at_center) / this.notch_every) * this.notch_spacing) + local guide_size = math.floor(this.height / 7.5) + local notch_by = by - guide_size + local notch_ay_big = ay + round(this.font_size * 1.1) + local notch_ay_medium = notch_ay_big + ((notch_by - notch_ay_big) * 0.2) + local notch_ay_small = notch_ay_big + ((notch_by - notch_ay_big) * 0.4) + local from_to_index = math.floor(this.notches / 2) + + for i = -from_to_index, from_to_index do + local notch_speed = nearest_notch_speed + (i * this.notch_every) + + if notch_speed < 0 or notch_speed > 100 then goto continue end + + local notch_x = nearest_notch_x + (i * this.notch_spacing) + local notch_thickness = 1 + local notch_ay = notch_ay_small + if (notch_speed % (this.notch_every * 10)) < 0.00000001 then + notch_ay = notch_ay_big + notch_thickness = 1 + elseif (notch_speed % (this.notch_every * 5)) < 0.00000001 then + notch_ay = notch_ay_medium + end + + ass:new_event() + ass:append('{\\blur0\\bord1\\shad0\\1c&HFFFFFF\\3c&H000000}') + ass:append(ass_opacity(math.min(1.2 - (math.abs((notch_x - ax - half_width) / half_width)), 1), opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:move_to(notch_x - notch_thickness, notch_ay) + ass:line_to(notch_x + notch_thickness, notch_ay) + ass:line_to(notch_x + notch_thickness, notch_by) + ass:line_to(notch_x - notch_thickness, notch_by) + ass:draw_stop() + + ::continue:: + end + + -- Center guide + ass:new_event() + ass:append('{\\blur0\\bord1\\shad0\\1c&HFFFFFF\\3c&H000000}') + ass:append(ass_opacity(options.speed_opacity, opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:move_to(half_x, by - 2 - guide_size) + ass:line_to(half_x + guide_size, by - 2) + ass:line_to(half_x - guide_size, by - 2) + ass:draw_stop() + + -- Speed value + local speed_text = (round(state.speed * 100) / 100)..'x' + ass:new_event() + ass:append('{\\blur0\\bord1\\shad0\\1c&H'..options.color_background_text..'\\3c&H'..options.color_background..'\\fn'..config.font..'\\fs'..this.font_size..bold_tag..'}') + ass:append(ass_opacity(options.speed_opacity, opacity)) + ass:pos(half_x, ay) + ass:an(8) + ass:append(speed_text) + + return ass +end + +function render_menu(this) + local ass = assdraw.ass_new() + + if this.parent_menu then + ass:merge(this.parent_menu:render()) + end + + -- Menu title + if this.title then + -- Background + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..options.color_background..'}') + ass:append(ass_opacity(options.menu_opacity, this.opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw(this.ax, this.ay - this.item_height, this.bx, this.ay - 1) + ass:draw_stop() + + -- Title + ass:new_event() + ass:append('{\\blur0\\bord0\\shad1\\b1\\1c&H'..options.color_background_text..'\\4c&H'..options.color_background..'\\fn'..config.font..'\\fs'..this.font_size..'\\q2\\clip('..this.ax..','..this.ay - this.item_height..','..this.bx..','..this.ay..')}') + ass:append(ass_opacity(options.menu_opacity, this.opacity)) + ass:pos(display.width / 2, this.ay - (this.item_height * 0.5)) + ass:an(5) + ass:append(this.title) + end + + local scroll_area_clip = '\\clip('..this.ax..','..this.ay..','..this.bx..','..this.by..')' + + for index, item in ipairs(this.items) do + local item_ay = this.ay - this.scroll_y + (this.item_height * (index - 1) + this.item_spacing * (index - 1)) + local item_by = item_ay + this.item_height + local item_clip = '' + + -- Clip items overflowing scroll area + if item_ay <= this.ay or item_by >= this.by then + item_clip = scroll_area_clip + end + + if item_by < this.ay or item_ay > this.by then goto continue end + + local is_active = this.active_item == index + local font_color, background_color, ass_shadow, ass_shadow_color + local icon_size = this.font_size + + if is_active then + font_color, background_color = options.color_foreground_text, options.color_foreground + ass_shadow, ass_shadow_color = '\\shad0', '' + else + font_color, background_color = options.color_background_text, options.color_background + ass_shadow, ass_shadow_color = '\\shad1', '\\4c&H'..background_color + end + + local has_submenu = item.items ~= nil + local hint_width = 0 + if item.hint then + hint_width = text_width_estimate(item.hint:len(), this.font_size) + this.item_content_spacing + elseif has_submenu then + hint_width = icon_size + this.item_content_spacing + end + + -- Background + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..background_color..item_clip..'}') + ass:append(ass_opacity(options.menu_opacity, this.opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw(this.ax, item_ay, this.bx, item_by) + ass:draw_stop() + + -- Selected highlight + if this.selected_item == index then + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..options.color_foreground..item_clip..'}') + ass:append(ass_opacity(0.1, this.opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw(this.ax, item_ay, this.bx, item_by) + ass:draw_stop() + end + + -- Title + if item.title then + item.ass_save_title = item.ass_save_title or item.title:gsub("([{}])","\\%1") + local title_clip_x = (this.bx - hint_width - this.item_content_spacing) + local title_clip = '\\clip('..this.ax..','..math.max(item_ay, this.ay)..','..title_clip_x..','..math.min(item_by, this.by)..')' + ass:new_event() + ass:append('{\\blur0\\bord0\\shad1\\1c&H'..font_color..'\\4c&H'..background_color..'\\fn'..config.font..'\\fs'..this.font_size..bold_tag..title_clip..'\\q2}') + ass:append(ass_opacity(options.menu_opacity, this.opacity)) + ass:pos(this.ax + this.item_content_spacing, item_ay + (this.item_height / 2)) + ass:an(4) + ass:append(item.ass_save_title) + end + + -- Hint + if item.hint then + item.ass_save_hint = item.ass_save_hint or item.hint:gsub("([{}])","\\%1") + ass:new_event() + ass:append('{\\blur0\\bord0'..ass_shadow..'\\1c&H'..font_color..''..ass_shadow_color..'\\fn'..config.font..'\\fs'..(this.font_size - 1)..bold_tag..item_clip..'}') + ass:append(ass_opacity(options.menu_opacity * (has_submenu and 1 or 0.5), this.opacity)) + ass:pos(this.bx - this.item_content_spacing, item_ay + (this.item_height / 2)) + ass:an(6) + ass:append(item.ass_save_hint) + elseif has_submenu then + ass:new_event() + ass:append(icon( + 'arrow_right', + this.bx - this.item_content_spacing - (icon_size / 2), -- x + item_ay + (this.item_height / 2), -- y + icon_size, -- size + 0, 0, 1, -- shadow_x, shadow_y, shadow_size + is_active and 'foreground' or 'background', this.opacity, -- backdrop, opacity + item_clip + )) + end + + ::continue:: + end + + -- Scrollbar + if this.scroll_height > 0 then + local groove_height = this.height - 2 + local thumb_height = math.max((this.height / (this.scroll_height + this.height)) * groove_height, 40) + local thumb_y = this.ay + 1 + ((this.scroll_y / this.scroll_height) * (groove_height - thumb_height)) + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..options.color_foreground..'}') + ass:append(ass_opacity(options.menu_opacity, this.opacity * 0.8)) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw(this.bx - 3, thumb_y, this.bx - 1, thumb_y + thumb_height) + ass:draw_stop() + end + + return ass +end + +-- MAIN RENDERING + +-- Request that render() is called. +-- The render is then either executed immediately, or rate-limited if it was +-- called a small time ago. +function request_render() + if state.render_timer == nil then + state.render_timer = mp.add_timeout(0, render) + end + + if not state.render_timer:is_enabled() then + local now = mp.get_time() + local timeout = config.render_delay - (now - state.render_last_time) + if timeout < 0 then + timeout = 0 + end + state.render_timer.timeout = timeout + state.render_timer:resume() + end +end + +function render() + state.render_last_time = mp.get_time() + + -- Actual rendering + local ass = assdraw.ass_new() + + for _, element in elements.ipairs() do + local result = element:maybe('render') + if result then + ass:new_event() + ass:merge(result) + end + end + + -- submit + if osd.res_x == display.width and osd.res_y == display.height and osd.data == ass.text then + return + end + + osd.res_x = display.width + osd.res_y = display.height + osd.data = ass.text + osd.z = 2000 + osd:update() +end + +-- STATIC ELEMENTS + +if itable_find({'flash', 'static'}, options.pause_indicator) then + elements:add('pause_indicator', Element.new({ + base_icon_opacity = options.pause_indicator == 'flash' and 1 or 0.8, + paused = false, + is_flash = options.pause_indicator == 'flash', + is_static = options.pause_indicator == 'static', + opacity = 0, + init = function(this) + local initial_call = true + mp.observe_property('pause', 'bool', function(_, paused) + if initial_call then + initial_call = false + return + end + + this.paused = paused + + if options.pause_indicator == 'flash' then + this.opacity = 1 + this:tween_property('opacity', 1, 0, 0.15) + else + this.opacity = paused and 1 or 0 + request_render() + end + + end) + end, + render = function(this) + if this.opacity == 0 then return end + + local ass = assdraw.ass_new() + + -- Background fadeout + if this.is_static then + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..options.color_background..'}') + ass:append(ass_opacity(0.3, this.opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw(0, 0, display.width, display.height) + ass:draw_stop() + end + + -- Icon + local size = round((math.min(display.width, display.height) * (this.is_static and 0.20 or 0.15)) / 2) + + size = size + size * (1 - this.opacity) + + if this.paused then + ass:new_event() + ass:append('{\\blur0\\bord1\\1c&H'..options.color_foreground..'\\3c&H'..options.color_background..'}') + ass:append(ass_opacity(this.base_icon_opacity, this.opacity)) + ass:pos(display.width / 2, display.height / 2) + ass:draw_start() + ass:rect_cw(-size, -size, -size / 3, size) + ass:draw_stop() + + ass:new_event() + ass:append('{\\blur0\\bord1\\1c&H'..options.color_foreground..'\\3c&H'..options.color_background..'}') + ass:append(ass_opacity(this.base_icon_opacity, this.opacity)) + ass:pos(display.width / 2, display.height / 2) + ass:draw_start() + ass:rect_cw(size / 3, -size, size, size) + ass:draw_stop() + elseif this.is_flash then + ass:new_event() + ass:append('{\\blur0\\bord1\\1c&H'..options.color_foreground..'\\3c&H'..options.color_background..'}') + ass:append(ass_opacity(this.base_icon_opacity, this.opacity)) + ass:pos(display.width / 2, display.height / 2) + ass:draw_start() + ass:move_to(-size * 0.6, -size) + ass:line_to(size, 0) + ass:line_to(-size * 0.6, size) + ass:draw_stop() + end + + return ass + end + })) +end +elements:add('timeline', Element.new({ + captures = {mouse_buttons = true, wheel = true}, + pressed = false, + size_max = 0, size_min = 0, -- set in `on_display_resize` handler based on `state.fullscreen` + size_min_override = options.timeline_start_hidden and 0 or nil, -- used for toggle-progress command + font_size = 0, -- calculated in on_display_resize + top_border = options.timeline_border, + bottom_border = 0, -- set dynamically in `border` property observer + init = function(this) + -- Toggle 1px bottom border for timeline in no-border mode + mp.observe_property('border', 'bool', function(_, border) + this.bottom_border = not border and options.timeline_border or 0 + request_render() + end) + end, + get_effective_proximity = function(this) + if (elements.volume_slider and elements.volume_slider.pressed) then return 0 end + if this.pressed then return 1 end + return this.forced_proximity and this.forced_proximity or this.proximity + end, + get_effective_size_min = function(this) + return this.size_min_override or this.size_min + end, + get_effective_size = function(this) + if elements.speed and elements.speed.dragging then return this.size_max end + local size_min = this:get_effective_size_min() + return size_min + math.ceil((this.size_max - size_min) * this:get_effective_proximity()) + end, + on_display_resize = function(this) + if state.fullscreen or state.maximized then + this.size_min = options.timeline_size_min_fullscreen + this.size_max = options.timeline_size_max_fullscreen + else + this.size_min = options.timeline_size_min + this.size_max = options.timeline_size_max + end + this.font_size = math.floor(math.min((this.size_max + 60) * 0.2, this.size_max * 0.96) * options.timeline_font_scale) + this.ax = 0 + this.ay = display.height - this.size_max - this.top_border - this.bottom_border + this.bx = display.width + this.by = display.height + end, + set_from_cursor = function(this) + mp.commandv('seek', ((cursor.x / display.width) * 100), 'absolute-percent+exact') + end, + on_mbtn_left_down = function(this) + this.pressed = true + this:set_from_cursor() + end, + on_global_mbtn_left_up = function(this) this.pressed = false end, + on_global_mouse_leave = function(this) this.pressed = false end, + on_global_mouse_move = function(this) + if this.pressed then this:set_from_cursor() end + end, + on_wheel_up = function(this) + if options.timeline_step > 0 then mp.commandv('seek', -options.timeline_step) end + end, + on_wheel_down = function(this) + if options.timeline_step > 0 then mp.commandv('seek', options.timeline_step) end + end, + render = render_timeline, +})) +if options.top_bar_controls or options.top_bar_title then + elements:add('top_bar', Element.new({ + button_opacity = 0.8, + enabled = false, + init = function(this) + mp.observe_property('border', 'bool', function(_, border) + this.enabled = not border + end) + end, + get_effective_proximity = function(this) + if (elements.volume_slider and elements.volume_slider.pressed) or elements.curtain.opacity > 0 then return 0 end + return this.forced_proximity and this.forced_proximity or this.proximity + end, + on_display_resize = function(this) + this.size = (state.fullscreen or state.maximized) and options.top_bar_size_fullscreen or options.top_bar_size + this.icon_size = round(this.size / 8) + this.spacing = math.ceil(this.size * 0.25) + this.font_size = math.floor(this.size - (this.spacing * 2)) + this.button_width = round(this.size * 1.15) + this.title_bx = display.width - (options.top_bar_controls and (this.button_width * 3) or 0) + this.ax = options.top_bar_title and 0 or this.title_bx + this.ay = 0 + this.bx = display.width + this.by = this.size + end, + render = render_top_bar, + })) +end +if options.top_bar_controls then + elements:add('window_controls_minimize', Element.new({ + captures = {mouse_buttons = true}, + on_display_resize = function(this) + this.ax = display.width - (elements.top_bar.button_width * 3) + this.ay = 0 + this.bx = this.ax + elements.top_bar.button_width + this.by = elements.top_bar.size + end, + on_mbtn_left_down = function() mp.commandv('cycle', 'window-minimized') end + })) + elements:add('window_controls_maximize', Element.new({ + captures = {mouse_buttons = true}, + on_display_resize = function(this) + this.ax = display.width - (elements.top_bar.button_width * 2) + this.ay = 0 + this.bx = this.ax + elements.top_bar.button_width + this.by = elements.top_bar.size + end, + on_mbtn_left_down = function() mp.commandv('cycle', 'window-maximized') end + })) + elements:add('window_controls_close', Element.new({ + captures = {mouse_buttons = true}, + on_display_resize = function(this) + this.ax = display.width - elements.top_bar.button_width + this.ay = 0 + this.bx = this.ax + elements.top_bar.button_width + this.by = elements.top_bar.size + end, + on_mbtn_left_down = function() mp.commandv('quit') end + })) +end +if itable_find({'left', 'right'}, options.volume) then + elements:add('volume', Element.new({ + width = nil, -- set in `on_display_resize` handler based on `state.fullscreen` + height = nil, -- set in `on_display_resize` handler based on `state.fullscreen` + margin = nil, -- set in `on_display_resize` handler based on `state.fullscreen` + get_effective_proximity = function(this) + if elements.volume_slider.pressed then return 1 end + if elements.timeline.proximity_raw == 0 or elements.curtain.opacity > 0 then return 0 end + return this.forced_proximity and this.forced_proximity or this.proximity + end, + on_display_resize = function(this) + this.width = (state.fullscreen or state.maximized) and options.volume_size_fullscreen or options.volume_size + this.height = round(math.min(this.width * 8, (elements.timeline.ay - elements.top_bar.size) * 0.8)) + -- Don't bother rendering this if too small + if this.height < (this.width * 2) then + this.height = 0 + end + this.margin = this.width / 2 + this.ax = round(options.volume == 'left' and this.margin or display.width - this.margin - this.width) + this.ay = round((display.height - this.height) / 2) + this.bx = round(this.ax + this.width) + this.by = round(this.ay + this.height) + end, + render = render_volume, + })) + elements:add('volume_mute', Element.new({ + captures = {mouse_buttons = true}, + width = 0, + height = 0, + on_display_resize = function(this) + this.width = elements.volume.width + this.height = this.width + this.ax = elements.volume.ax + this.ay = elements.volume.by - this.height + this.bx = elements.volume.bx + this.by = elements.volume.by + end, + on_mbtn_left_down = function(this) mp.commandv('cycle', 'mute') end + })) + elements:add('volume_slider', Element.new({ + captures = {mouse_buttons = true, wheel = true}, + pressed = false, + width = 0, + height = 0, + nudge_y = 0, -- vertical position where volume overflows 100 + nudge_size = nil, -- set on resize + font_size = nil, + spacing = nil, + on_display_resize = function(this) + this.ax = elements.volume.ax + this.ay = elements.volume.ay + this.bx = elements.volume.bx + this.by = elements.volume_mute.ay + this.width = this.bx - this.ax + this.height = this.by - this.ay + this.nudge_y = this.by - round(this.height * (100 / state.volume_max)) + this.nudge_size = round(elements.volume.width * 0.18) + this.draw_nudge = this.ay < this.nudge_y + this.spacing = round(this.width * 0.2) + end, + set_from_cursor = function(this) + local volume_fraction = (this.by - cursor.y - options.volume_border) / (this.height - options.volume_border) + local new_volume = math.min(math.max(volume_fraction, 0), 1) * state.volume_max + new_volume = round(new_volume / options.volume_step) * options.volume_step + if state.volume ~= new_volume then mp.commandv('set', 'volume', math.min(new_volume, state.volume_max)) end + end, + on_mbtn_left_down = function(this) + this.pressed = true + this:set_from_cursor() + end, + on_global_mbtn_left_up = function(this) this.pressed = false end, + on_global_mouse_leave = function(this) this.pressed = false end, + on_global_mouse_move = function(this) + if this.pressed then this:set_from_cursor() end + end, + on_wheel_up = function(this) + local current_rounded_volume = round(state.volume / options.volume_step) * options.volume_step + mp.commandv('set', 'volume', math.min(current_rounded_volume + options.volume_step, state.volume_max)) + end, + on_wheel_down = function(this) + local current_rounded_volume = round(state.volume / options.volume_step) * options.volume_step + mp.commandv('set', 'volume', math.min(current_rounded_volume - options.volume_step, state.volume_max)) + end, + })) +end +if options.speed then + elements:add('speed', Element.new({ + captures = {mouse_buttons = true, wheel = true}, + dragging = nil, + width = 0, + height = 0, + notches = 10, + notch_every = 0.1, + step_distance = nil, + font_size = nil, + init = function(this) + -- Fade out/in on timeline mouse enter/leave + elements.timeline:on('mouse_enter', function() + if not this.dragging then this:fadeout() end + end) + elements.timeline:on('mouse_leave', function() + if not this.dragging then this:fadein() end + end) + end, + fadeout = function(this) + this:tween_property('forced_proximity', 1, 0, function(this) + this.forced_proximity = 0 + end) + end, + fadein = function(this) + local get_current_proximity = function() return this.proximity end + this:tween_property('forced_proximity', 0, get_current_proximity, function(this) + this.forced_proximity = nil + end) + end, + on_display_resize = function(this) + this.height = (state.fullscreen or state.maximized) and options.speed_size_fullscreen or options.speed_size + this.width = round(this.height * 3.6) + this.notch_spacing = this.width / this.notches + this.step_distance = this.notch_spacing * (options.speed_step / this.notch_every) + this.ax = (display.width - this.width) / 2 + this.by = display.height - elements.timeline.size_max + this.ay = this.by - this.height + this.bx = this.ax + this.width + this.font_size = round(this.height * 0.48 * options.speed_font_scale) + end, + set_from_cursor = function(this) + local volume_fraction = (this.by - cursor.y - options.volume_border) / (this.height - options.volume_border) + local new_volume = math.min(math.max(volume_fraction, 0), 1) * state.volume_max + new_volume = round(new_volume / options.volume_step) * options.volume_step + if state.volume ~= new_volume then mp.commandv('set', 'volume', new_volume) end + end, + on_mbtn_left_down = function(this) + this:tween_stop() -- Stop and cleanup possible ongoing animations + this.dragging = { + start_time = mp.get_time(), + start_x = cursor.x, + distance = 0, + start_speed = state.speed + } + end, + on_global_mouse_move = function(this) + if not this.dragging then return end + + this.dragging.distance = cursor.x - this.dragging.start_x + local steps_dragged = round(-this.dragging.distance / this.step_distance) + local new_speed = this.dragging.start_speed + (steps_dragged * options.speed_step) + mp.set_property_native('speed', round(new_speed * 100) / 100) + end, + on_mbtn_left_up = function(this) + -- Reset speed on short clicks + if this.dragging and math.abs(this.dragging.distance) < 6 and mp.get_time() - this.dragging.start_time < 0.15 then + mp.set_property_native('speed', 1) + end + end, + on_global_mbtn_left_up = function(this) + if this.dragging and elements.timeline.proximity_raw == 0 then + this:fadeout() + end + this.dragging = nil + request_render() + end, + on_global_mouse_leave = function(this) + this.dragging = nil + request_render() + end, + on_wheel_up = function(this) + mp.set_property_native('speed', state.speed - options.speed_step) + end, + on_wheel_down = function(this) + mp.set_property_native('speed', state.speed + options.speed_step) + end, + render = render_speed, + })) +end +elements:add('curtain', Element.new({ + opacity = 0, + fadeout = function(this) + this:tween_property('opacity', this.opacity, 0); + end, + fadein = function(this) + this:tween_property('opacity', this.opacity, 1); + end, + render = function(this) + if this.opacity > 0 then + local ass = assdraw.ass_new() + ass:new_event() + ass:append('{\\blur0\\bord0\\1c&H'..options.color_background..'}') + ass:append(ass_opacity(0.4, this.opacity)) + ass:pos(0, 0) + ass:draw_start() + ass:rect_cw(0, 0, display.width, display.height) + ass:draw_stop() + return ass + end + end +})) + +-- CHAPTERS SERIALIZATION + +-- Parse `chapter_ranges` option into workable data structure +for _, definition in ipairs(split(options.chapter_ranges, ' *,+ *')) do + local start_patterns, color, opacity, end_patterns = string.match(definition, '([^<]+)<(%x%x%x%x%x%x):(%d?%.?%d*)>([^>]+)') + + -- Invalid definition + if start_patterns == nil then goto continue end + + start_patterns = start_patterns:lower() + end_patterns = end_patterns:lower() + local uses_bof = start_patterns:find('{bof}') ~= nil + local uses_eof = end_patterns:find('{eof}') ~= nil + local chapter_range = { + start_patterns = split(start_patterns, '|'), + end_patterns = split(end_patterns, '|'), + color = color, + opacity = tonumber(opacity), + ranges = {} + } + + -- Filter out special keywords so we don't use them when matching titles + if uses_bof then + chapter_range.start_patterns = itable_remove(chapter_range.start_patterns, '{bof}') + end + if uses_eof and chapter_range.end_patterns then + chapter_range.end_patterns = itable_remove(chapter_range.end_patterns, '{eof}') + end + + chapter_range['serialize'] = function (chapters) + chapter_range.ranges = {} + local current_range = nil + -- bof and eof should be used only once per timeline + -- eof is only used when last range is missing end + local bof_used = false + + function start_range(chapter) + -- If there is already a range started, should we append or overwrite? + -- I chose overwrite here. + current_range = {['start'] = chapter} + end + + function end_range(chapter) + current_range['end'] = chapter + chapter_range.ranges[#chapter_range.ranges + 1] = current_range + -- Mark both chapter objects + current_range['start']._uosc_used_as_range_point = true + current_range['end']._uosc_used_as_range_point = true + -- Clear for next range + current_range = nil + end + + for _, chapter in ipairs(chapters) do + if type(chapter.title) == 'string' then + local lowercase_title = chapter.title:lower() + local is_end = false + local is_start = false + + -- Is ending check and handling + if chapter_range.end_patterns then + for _, end_pattern in ipairs(chapter_range.end_patterns) do + is_end = is_end or lowercase_title:find(end_pattern) ~= nil + end + + if is_end then + if current_range == nil and uses_bof and not bof_used then + bof_used = true + start_range({time = 0}) + end + if current_range ~= nil then + end_range(chapter) + else + is_end = false + end + end + end + + -- Is start check and handling + for _, start_pattern in ipairs(chapter_range.start_patterns) do + is_start = is_start or lowercase_title:find(start_pattern) ~= nil + end + + if is_start then start_range(chapter) end + end + end + + -- If there is an unfinished range and range type accepts eof, use it + if current_range ~= nil and uses_eof then + end_range({time = state.duration or infinity}) + end + end + + state.chapter_ranges = state.chapter_ranges or {} + state.chapter_ranges[#state.chapter_ranges + 1] = chapter_range + + ::continue:: +end + +function parse_chapters() + -- Sometimes state.duration is not initialized yet for some reason + state.duration = mp.get_property_native('duration') + + local chapters = get_normalized_chapters() + + if not chapters or not state.duration then return end + + -- Reset custom ranges + for _, chapter_range in ipairs(state.chapter_ranges or {}) do + chapter_range.serialize(chapters) + end + + -- Filter out chapters that were used as ranges + state.chapters = itable_remove(chapters, function(chapter) + return chapter._uosc_used_as_range_point == true + end) + + request_render() +end + +-- CONTEXT MENU SERIALIZATION + +state.context_menu_items = (function() + local input_conf_path = mp.command_native({'expand-path', '~~/input.conf'}) + local input_conf_meta, meta_error = utils.file_info(input_conf_path) + + -- File doesn't exist + if not input_conf_meta or not input_conf_meta.is_file then return end + + local items = {} + local items_by_command = {} + local submenus_by_id = {} + + for line in io.lines(input_conf_path) do + local key, command, title = string.match(line, ' *([%S]+) +(.*) #! *(.*)') + if key then + local is_dummy = key:sub(1, 1) == '#' + local submenu_id = '' + local target_menu = items + local title_parts = split(title or '', ' *> *') + + for index, title_part in ipairs(#title_parts > 0 and title_parts or {''}) do + if index < #title_parts then + submenu_id = submenu_id .. title_part + + if not submenus_by_id[submenu_id] then + submenus_by_id[submenu_id] = {title = title_part, items = {}} + target_menu[#target_menu + 1] = submenus_by_id[submenu_id] + end + + target_menu = submenus_by_id[submenu_id].items + else + -- If command is already in menu, just append the key to it + if items_by_command[command] then + items_by_command[command].hint = items_by_command[command].hint..', '..key + else + items_by_command[command] = { + title = title_part, + hint = not is_dummy and key or nil, + value = command + } + target_menu[#target_menu + 1] = items_by_command[command] + end + end + end + end + end + + if #items > 0 then return items end +end)() + +-- EVENT HANDLERS + +function create_state_setter(name) + return function(_, value) + state[name] = value + dispatch_event_to_elements('prop_'..name, value) + request_render() + end +end + +function dispatch_event_to_elements(name, ...) + for _, element in pairs(elements) do + if element.proximity_raw == 0 then + element:maybe('on_'..name, ...) + end + element:maybe('on_global_'..name, ...) + end +end + +function create_event_to_elements_dispatcher(name, ...) + return function(...) dispatch_event_to_elements(name, ...) end +end + +function handle_mouse_leave() + -- Slowly fadeout elements that are currently visible + for _, element_name in ipairs({'timeline', 'volume', 'top_bar'}) do + local element = elements[element_name] + if element and element.proximity > 0 then + element:tween_property('forced_proximity', element:get_effective_proximity(), 0, function() + element.forced_proximity = nil + end) + end + end + + cursor.hidden = true + update_proximities() + dispatch_event_to_elements('mouse_leave') +end + +function handle_mouse_enter() + cursor.hidden = false + cursor.x, cursor.y = mp.get_mouse_pos() + tween_element_stop(state) + dispatch_event_to_elements('mouse_enter') +end + +function handle_mouse_move() + -- Handle case when we are in cursor hidden state but not left the actual + -- window (i.e. when autohide simulates mouse_leave). + if cursor.hidden then + handle_mouse_enter() + return + end + + cursor.x, cursor.y = mp.get_mouse_pos() + update_proximities() + dispatch_event_to_elements('mouse_move') + request_render() + + -- Restart timer that hides UI when mouse is autohidden + if options.autohide then + state.cursor_autohide_timer:kill() + state.cursor_autohide_timer:resume() + end +end + +function navigate_directory(direction) + local path = mp.get_property_native("path") + + if not path or is_protocol(path) then return end + + local next_file = get_adjacent_file(path, direction, options.media_types) + + if next_file then + mp.commandv("loadfile", utils.join_path(serialize_path(path).dirname, next_file)) + end +end + +function load_file_in_current_directory(index) + local path = mp.get_property_native("path") + + if not path or is_protocol(path) then return end + + local dirname = serialize_path(path).dirname + local files = get_files_in_directory(dirname, options.media_types) + + if not files then return end + if index < 0 then index = #files + index + 1 end + + if files[index] then + mp.commandv("loadfile", utils.join_path(dirname, files[index])) + end +end + +-- MENUS + +function create_select_tracklist_type_menu_opener(menu_title, track_type, track_prop) + return function() + if menu:is_open(track_type) then menu:close() return end + + local items = {} + local active_item = nil + + for index, track in ipairs(mp.get_property_native('track-list')) do + if track.type == track_type then + if track.selected then active_item = track.id end + + items[#items + 1] = { + title = (track.title and track.title or 'Track '..track.id), + hint = track.lang and track.lang:upper() or nil, + value = track.id + } + end + end + + -- Add option to disable a subtitle track. This works for all tracks, + -- but why would anyone want to disable audio or video? Better to not + -- let people mistakenly select what is unwanted 99.999% of the time. + -- If I'm mistaken and there is an active need for this, feel free to + -- open an issue. + if track_type == 'sub' then + active_item = active_item and active_item + 1 or 1 + table.insert(items, 1, {hint = 'disabled', value = nil}) + end + + menu:open(items, function(id) + mp.commandv('set', track_prop, id and id or 'no') + + -- If subtitle track was selected, assume user also wants to see it + if id and track_type == 'sub' then + mp.commandv('set', 'sub-visibility', 'yes') + end + + menu:close() + end, {type = track_type, title = menu_title, active_item = active_item}) + end +end + +-- `menu_options`: +-- **allowed_types** - table with file extensions to display +-- **active_path** - full path of a file to preselect +-- Rest of the options are passed to `menu:open()` +function open_file_navigation_menu(directory, handle_select, menu_options) + directory = serialize_path(directory) + local directories, error = utils.readdir(directory.path, 'dirs') + local files, error = get_files_in_directory(directory.path, menu_options.allowed_types) + + if not files or not directories then + msg.error('Retrieving files from '..directory..' failed: '..(error or '')) + return + end + + -- Files are already sorted + table.sort(directories, word_order_comparator) + + -- Pre-populate items with parent directory selector if not at root + local items = not directory.dirname and {} or { + {title = '..', hint = 'parent dir', value = directory.dirname} + } + + for _, dir in ipairs(directories) do + local serialized = serialize_path(utils.join_path(directory.path, dir)) + items[#items + 1] = {title = serialized.basename, value = serialized.path, hint = '/'} + end + + menu_options.active_item = nil + + for _, file in ipairs(files) do + local serialized = serialize_path(utils.join_path(directory.path, file)) + local item_index = #items + 1 + + items[item_index] = { + title = serialized.basename, + value = serialized.path, + } + + if menu_options.active_path == serialized.path then + menu_options.active_item = item_index + end + end + + menu_options.title = directory.basename..'/' + + menu:open(items, function(path) + local meta, error = utils.file_info(path) + + if not meta then + msg.error('Retrieving file info for '..path..' failed: '..(error or '')) + return + end + + if meta.is_dir then + open_file_navigation_menu(path, handle_select, menu_options) + else + handle_select(path) + menu:close() + end + end, menu_options) +end + +-- VALUE SERIALIZATION/NORMALIZATION + +options.proximity_out = math.max(options.proximity_out, options.proximity_in + 1) +options.chapters = itable_find({'dots', 'lines', 'lines-top', 'lines-bottom'}, options.chapters) and options.chapters or 'none' +options.media_types = split(options.media_types, ' *, *') +options.subtitle_types = split(options.subtitle_types, ' *, *') +options.timeline_cached_ranges = (function() + if options.timeline_cached_ranges == '' or options.timeline_cached_ranges == 'no' then return nil end + local parts = split(options.timeline_cached_ranges, ':') + return parts[1] and {color = parts[1], opacity = tonumber(parts[2])} or nil +end)() + +-- HOOKS +mp.register_event('file-loaded', parse_chapters) +mp.observe_property('chapter-list', 'native', parse_chapters) +mp.observe_property('duration', 'number', create_state_setter('duration')) +mp.observe_property('media-title', 'string', create_state_setter('media_title')) +mp.observe_property('fullscreen', 'bool', create_state_setter('fullscreen')) +mp.observe_property('window-maximized', 'bool', create_state_setter('maximized')) +mp.observe_property('idle-active', 'bool', create_state_setter('idle')) +mp.observe_property('speed', 'number', create_state_setter('speed')) +mp.observe_property('pause', 'bool', create_state_setter('pause')) +mp.observe_property('volume', 'number', create_state_setter('volume')) +mp.observe_property('volume-max', 'number', create_state_setter('volume_max')) +mp.observe_property('mute', 'bool', create_state_setter('mute')) +mp.observe_property('playback-time', 'number', function(name, val) + -- Ignore the initial call with nil value + if val == nil then return end + + state.position = val + state.elapsed_seconds = val + state.elapsed_time = state.elapsed_seconds and mp.format_time(state.elapsed_seconds) or nil + state.remaining_seconds = mp.get_property_native('playtime-remaining') + state.remaining_time = state.remaining_seconds and mp.format_time(state.remaining_seconds) or nil + + request_render() +end) +mp.observe_property('osd-dimensions', 'native', function(name, val) + update_display_dimensions() + request_render() +end) +mp.observe_property('demuxer-cache-state', 'native', function(prop, cache_state) + if cache_state == nil then + state.cached_ranges = nil + return + end + local cache_ranges = cache_state['seekable-ranges'] + state.cached_ranges = #cache_ranges > 0 and cache_ranges or nil +end) + +-- CONTROLS + +-- Mouse movement key binds +local base_keybinds = { + {'mouse_move', handle_mouse_move}, + {'mouse_leave', handle_mouse_leave}, + {'mouse_enter', handle_mouse_enter}, +} +if options.pause_on_click_shorter_than > 0 then + -- Cycles pause when click is shorter than `options.pause_on_click_shorter_than` + -- while filtering out double clicks. + local duration_seconds = options.pause_on_click_shorter_than / 1000 + local last_down_event; + local click_timer = mp.add_timeout(duration_seconds, function() + mp.command('cycle pause') + end); + click_timer:kill() + base_keybinds[#base_keybinds + 1] = {'mbtn_left', function() + if mp.get_time() - last_down_event < duration_seconds then + click_timer:resume() + end + end, function() + if click_timer:is_enabled() then + click_timer:kill() + last_down_event = 0 + else + last_down_event = mp.get_time() + end + end + } +end +mp.set_key_bindings(base_keybinds, 'mouse_movement', 'force') +mp.enable_key_bindings('mouse_movement', 'allow-vo-dragging+allow-hide-cursor') + +-- Context based key bind groups + +forced_key_bindings = (function() + mp.set_key_bindings({ + {'mbtn_left', create_event_to_elements_dispatcher('mbtn_left_up'), create_event_to_elements_dispatcher('mbtn_left_down')}, + {'mbtn_left_dbl', 'ignore'}, + }, 'mouse_buttons', 'force') + mp.set_key_bindings({ + {'wheel_up', create_event_to_elements_dispatcher('wheel_up')}, + {'wheel_down', create_event_to_elements_dispatcher('wheel_down')}, + }, 'wheel', 'force') + + local groups = {} + for _, group in ipairs({'mouse_buttons', 'wheel'}) do + groups[group] = { + is_enabled = false, + enable = function(this) + if this.is_enabled then return end + this.is_enabled = true + mp.enable_key_bindings(group) + end, + disable = function(this) + if not this.is_enabled then return end + this.is_enabled = false + mp.disable_key_bindings(group) + end, + } + end + return groups +end)() + +-- KEY BINDABLE FEATURES + +mp.add_key_binding(nil, 'peek-timeline', function() + if elements.timeline.proximity > 0.5 then + elements.timeline:tween_property('proximity', elements.timeline.proximity, 0) + else + elements.timeline:tween_property('proximity', elements.timeline.proximity, 1) + end +end) +mp.add_key_binding(nil, 'toggle-progress', function() + local timeline = elements.timeline + if timeline.size_min_override then + timeline:tween_property('size_min_override', timeline.size_min_override, timeline.size_min, function() + timeline.size_min_override = nil + end) + else + timeline:tween_property('size_min_override', timeline.size_min, 0) + end +end) +mp.add_key_binding(nil, 'flash-timeline', function() + elements.timeline:flash() +end) +mp.add_key_binding(nil, 'flash-volume', function() + if elements.volume then elements.volume:flash() end +end) +mp.add_key_binding(nil, 'flash-speed', function() + if elements.speed then elements.speed:flash() end +end) +mp.add_key_binding(nil, 'menu', function() + if menu:is_open('menu') then + menu:close() + elseif state.context_menu_items then + menu:open(state.context_menu_items, function(command) + mp.command(command) + end, {type = 'menu'}) + end +end) +mp.add_key_binding(nil, 'load-subtitles', function() + if menu:is_open('load-subtitles') then menu:close() return end + + local path = mp.get_property_native('path') + if path and not is_protocol(path) then + open_file_navigation_menu( + serialize_path(path).dirname, + function(path) mp.commandv('sub-add', path) end, + { + type = 'load-subtitles', + allowed_types = options.subtitle_types + } + ) + end +end) +mp.add_key_binding(nil, 'subtitles', create_select_tracklist_type_menu_opener('Subtitles', 'sub', 'sid')) +mp.add_key_binding(nil, 'audio', create_select_tracklist_type_menu_opener('Audio', 'audio', 'aid')) +mp.add_key_binding(nil, 'video', create_select_tracklist_type_menu_opener('Video', 'video', 'vid')) +mp.add_key_binding(nil, 'playlist', function() + if menu:is_open('playlist') then menu:close() return end + + function serialize_playlist() + local pos = mp.get_property_number('playlist-pos-1', 0) + local items = {} + local active_item + for index, item in ipairs(mp.get_property_native('playlist')) do + local is_url = item.filename:find('://') + items[index] = { + title = is_url and item.filename or serialize_path(item.filename).basename, + hint = tostring(index), + value = index + } + + if index == pos then active_item = index end + end + return items, active_item + end + + -- Update active index and playlist content on playlist changes + function handle_playlist_change() + if menu:is_open('playlist') then + local items, active_item = serialize_playlist() + elements.menu:set_items(items, { + active_item = active_item, + selected_item = active_item + }) + end + end + + local items, active_item = serialize_playlist() + + menu:open(items, function(index) + mp.commandv('set', 'playlist-pos-1', tostring(index)) + end, { + type = 'playlist', + title = 'Playlist', + active_item = active_item, + on_open = function() + mp.observe_property('playlist', 'native', handle_playlist_change) + mp.observe_property('playlist-pos-1', 'native', handle_playlist_change) + end, + on_close = function() + mp.unobserve_property(handle_playlist_change) + end, + }) +end) +mp.add_key_binding(nil, 'chapters', function() + if menu:is_open('chapters') then menu:close() return end + + local items = {} + local chapters = get_normalized_chapters() + + for index, chapter in ipairs(chapters) do + items[#items + 1] = { + title = chapter.title or '', + hint = mp.format_time(chapter.time), + value = chapter.time + } + end + + -- Select first chapter from the end with time lower + -- than current playing position (with 100ms leeway). + function get_selected_chapter_index() + local position = mp.get_property_native('playback-time') + if not position then return nil end + for index = #items, 1, -1 do + if position - 0.1 > items[index].value then return index end + end + end + + -- Update selected chapter in chapter navigation menu + function seek_handler() + if menu:is_open('chapters') then + elements.menu:activate_index(get_selected_chapter_index()) + end + end + + menu:open(items, function(time) + mp.commandv('seek', tostring(time), 'absolute') + end, { + type = 'chapters', + title = 'Chapters', + active_item = get_selected_chapter_index(), + on_open = function() mp.register_event('seek', seek_handler) end, + on_close = function() mp.unregister_event(seek_handler) end + }) +end) +mp.add_key_binding(nil, 'show-in-directory', function() + local path = mp.get_property_native('path') + + -- Ignore URLs + if not path or is_protocol(path) then return end + + path = normalize_path(path) + + if state.os == 'windows' then + utils.subprocess_detached({args = {'explorer', '/select,', path}, cancellable = false}) + elseif state.os == 'macos' then + utils.subprocess_detached({args = {'open', '-R', path}, cancellable = false}) + elseif state.os == 'linux' then + local result = utils.subprocess({args = {'nautilus', path}, cancellable = false}) + + -- Fallback opens the folder with xdg-open instead + if result.status ~= 0 then + utils.subprocess({args = {'xdg-open', serialize_path(path).dirname}, cancellable = false}) + end + end +end) +mp.add_key_binding(nil, 'open-file', function() + if menu:is_open('open-file') then menu:close() return end + + local path = mp.get_property_native('path') + local directory + local active_file + + if path == nil or is_protocol(path) then + local path = serialize_path(mp.command_native({'expand-path', '~/'})) + directory = path.path + active_file = nil + else + local path = serialize_path(path) + directory = path.dirname + active_file = path.path + end + + -- Update selected file in directory navigation menu + function handle_file_loaded() + if menu:is_open('open-file') then + local path = normalize_path(mp.get_property_native('path')) + elements.menu:activate_value(path) + elements.menu:select_value(path) + end + end + + open_file_navigation_menu( + directory, + function(path) mp.commandv('loadfile', path) end, + { + type = 'open-file', + allowed_types = options.media_types, + active_path = active_file, + on_open = function() mp.register_event('file-loaded', handle_file_loaded) end, + on_close = function() mp.unregister_event(handle_file_loaded) end, + } + ) +end) +mp.add_key_binding(nil, 'next', function() + if mp.get_property_native('playlist-count') > 1 then + mp.command('playlist-next') + else + navigate_directory('forward') + end +end) +mp.add_key_binding(nil, 'prev', function() + if mp.get_property_native('playlist-count') > 1 then + mp.command('playlist-prev') + else + navigate_directory('backward') + end +end) +mp.add_key_binding(nil, 'next-file', function() navigate_directory('forward') end) +mp.add_key_binding(nil, 'prev-file', function() navigate_directory('backward') end) +mp.add_key_binding(nil, 'first', function() + if mp.get_property_native('playlist-count') > 1 then + mp.commandv('set', 'playlist-pos-1', '1') + else + load_file_in_current_directory(1) + end +end) +mp.add_key_binding(nil, 'last', function() + local playlist_count = mp.get_property_native('playlist-count') + if playlist_count > 1 then + mp.commandv('set', 'playlist-pos-1', tostring(playlist_count)) + else + load_file_in_current_directory(-1) + end +end) +mp.add_key_binding(nil, 'first-file', function() load_file_in_current_directory(1) end) +mp.add_key_binding(nil, 'last-file', function() load_file_in_current_directory(-1) end) +mp.add_key_binding(nil, 'delete-file-next', function() + local path = mp.get_property_native('path') + + if not path or is_protocol(path) then return end + + path = normalize_path(path) + local playlist_count = mp.get_property_native('playlist-count') + + if playlist_count > 1 then + mp.commandv('playlist-remove', 'current') + else + local next_file = get_adjacent_file(path, 'forward', options.media_types) + + if menu:is_open('open-file') then + elements.menu:delete_value(path) + end + + if next_file then + mp.commandv('loadfile', next_file) + else + mp.commandv('stop') + end + end + + os.remove(path) +end) +mp.add_key_binding(nil, 'delete-file-quit', function() + local path = mp.get_property_native('path') + if not path or is_protocol(path) then return end + os.remove(normalize_path(path)) + mp.command('quit') +end) +mp.add_key_binding(nil, 'open-config-directory', function() + local config = serialize_path(mp.command_native({'expand-path', '~~/mpv.conf'})) + local args + + if state.os == 'windows' then + args = {'explorer', '/select,', config.path} + elseif state.os == 'macos' then + args = {'open', '-R', config.path} + elseif state.os == 'linux' then + args = {'xdg-open', config.dirname} + end + + utils.subprocess_detached({args = args, cancellable = false}) +end) diff --git a/mpv/scripts/webm.lua b/mpv/scripts/webm.lua new file mode 100644 index 0000000..edfc164 --- /dev/null +++ b/mpv/scripts/webm.lua @@ -0,0 +1,2689 @@ +local mp = require("mp") +local assdraw = require("mp.assdraw") +local msg = require("mp.msg") +local utils = require("mp.utils") +local mpopts = require("mp.options") +local options = { + -- Defaults to shift+w + keybind = "W", + -- If empty, saves on the same directory of the playing video. + -- A starting "~" will be replaced by the home dir. + -- This field is delimited by double-square-brackets - [[ and ]] - instead of + -- quotes, because Windows users might run into a issue when using + -- backslashes as a path separator. Examples of valid inputs for this field + -- would be: [[]] (the default, empty value), [[C:\Users\John]] (on Windows), + -- and [[/home/john]] (on Unix-like systems eg. Linux). + output_directory = [[]], + run_detached = false, + -- Template string for the output file + -- %f - Filename, with extension + -- %F - Filename, without extension + -- %T - Media title, if it exists, or filename, with extension (useful for some streams, such as YouTube). + -- %s, %e - Start and end time, with milliseconds + -- %S, %E - Start and end time, without milliseconds + -- %M - "-audio", if audio is enabled, empty otherwise + -- %R - "-(height)p", where height is the video's height, or scale_height, if it's enabled. + -- More specifiers are supported, see https://mpv.io/manual/master/#options-screenshot-template + -- Property expansion is supported (with %{} at top level, ${} when nested), see https://mpv.io/manual/master/#property-expansion + output_template = "%F-[%s-%e]%M", + -- Scale video to a certain height, keeping the aspect ratio. -1 disables it. + scale_height = -1, + -- Change the FPS of the output video, dropping or duplicating frames as needed. + -- -1 means the FPS will be unchanged from the source. + fps = -1, + -- Target filesize, in kB. This will be used to calculate the bitrate + -- used on the encode. If this is set to <= 0, the video bitrate will be set + -- to 0, which might enable constant quality modes, depending on the + -- video codec that's used (VP8 and VP9, for example). + target_filesize = 2500, + -- If true, will use stricter flags to ensure the resulting file doesn't + -- overshoot the target filesize. Not recommended, as constrained quality + -- mode should work well, unless you're really having trouble hitting + -- the target size. + strict_filesize_constraint = false, + strict_bitrate_multiplier = 0.95, + -- In kilobits. + strict_audio_bitrate = 64, + -- Sets the output format, from a few predefined ones. + -- Currently we have webm-vp8 (libvpx/libvorbis), webm-vp9 (libvpx-vp9/libvorbis) + -- and raw (rawvideo/pcm_s16le). + output_format = "webm-vp8", + twopass = false, + -- If set, applies the video filters currently used on the playback to the encode. + apply_current_filters = true, + -- If set, writes the video's filename to the "Title" field on the metadata. + write_filename_on_metadata = false, + -- Set the number of encoding threads, for codecs libvpx and libvpx-vp9 + libvpx_threads = 4, + additional_flags = "", + -- Constant Rate Factor (CRF). The value meaning and limits may change, + -- from codec to codec. Set to -1 to disable. + crf = 10, + -- Useful for flags that may impact output filesize, such as qmin, qmax etc + -- Won't be applied when strict_filesize_constraint is on. + non_strict_additional_flags = "", + -- Display the encode progress, in %. Requires run_detached to be disabled. + -- On Windows, it shows a cmd popup. "auto" will display progress on non-Windows platforms. + display_progress = "auto", + -- The font size used in the menu. Isn't used for the notifications (started encode, finished encode etc) + font_size = 28, + margin = 10, + message_duration = 5 +} + +mpopts.read_options(options) +local base64_chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' + +-- encoding +function base64_encode(data) + return ((data:gsub('.', function(x) + local r,b='',x:byte() + for i=8,1,-1 do r=r..(b%2^i-b%2^(i-1)>0 and '1' or '0') end + return r; + end)..'0000'):gsub('%d%d%d?%d?%d?%d?', function(x) + if (#x < 6) then return '' end + local c=0 + for i=1,6 do c=c+(x:sub(i,i)=='1' and 2^(6-i) or 0) end + return base64_chars:sub(c+1,c+1) + end)..({ '', '==', '=' })[#data%3+1]) +end + +-- decoding +function base64_decode(data) + data = string.gsub(data, '[^'..base64_chars..'=]', '') + return (data:gsub('.', function(x) + if (x == '=') then return '' end + local r,f='',(base64_chars:find(x)-1) + for i=6,1,-1 do r=r..(f%2^i-f%2^(i-1)>0 and '1' or '0') end + return r; + end):gsub('%d%d%d?%d?%d?%d?%d?%d?', function(x) + if (#x ~= 8) then return '' end + local c=0 + for i=1,8 do c=c+(x:sub(i,i)=='1' and 2^(8-i) or 0) end + return string.char(c) + end)) +end +local bold +bold = function(text) + return "{\\b1}" .. tostring(text) .. "{\\b0}" +end +local message +message = function(text, duration) + local ass = mp.get_property_osd("osd-ass-cc/0") + ass = ass .. text + return mp.osd_message(ass, duration or options.message_duration) +end +local append +append = function(a, b) + for _, val in ipairs(b) do + a[#a + 1] = val + end + return a +end +local seconds_to_time_string +seconds_to_time_string = function(seconds, no_ms, full) + if seconds < 0 then + return "unknown" + end + local ret = "" + if not (no_ms) then + ret = string.format(".%03d", seconds * 1000 % 1000) + end + ret = string.format("%02d:%02d%s", math.floor(seconds / 60) % 60, math.floor(seconds) % 60, ret) + if full or seconds > 3600 then + ret = string.format("%d:%s", math.floor(seconds / 3600), ret) + end + return ret +end +local seconds_to_path_element +seconds_to_path_element = function(seconds, no_ms, full) + local time_string = seconds_to_time_string(seconds, no_ms, full) + local _ + time_string, _ = time_string:gsub(":", ".") + return time_string +end +local file_exists +file_exists = function(name) + local info, err = utils.file_info(name) + if info ~= nil then + return true + end + return false +end +local expand_properties +expand_properties = function(text, magic) + if magic == nil then + magic = "$" + end + for prefix, raw, prop, colon, fallback, closing in text:gmatch("%" .. magic .. "{([?!]?)(=?)([^}:]*)(:?)([^}]*)(}*)}") do + local err + local prop_value + local compare_value + local original_prop = prop + local get_property = mp.get_property_osd + if raw == "=" then + get_property = mp.get_property + end + if prefix ~= "" then + for actual_prop, compare in prop:gmatch("(.-)==(.*)") do + prop = actual_prop + compare_value = compare + end + end + if colon == ":" then + prop_value, err = get_property(prop, fallback) + else + prop_value, err = get_property(prop, "(error)") + end + prop_value = tostring(prop_value) + if prefix == "?" then + if compare_value == nil then + prop_value = err == nil and fallback .. closing or "" + else + prop_value = prop_value == compare_value and fallback .. closing or "" + end + prefix = "%" .. prefix + elseif prefix == "!" then + if compare_value == nil then + prop_value = err ~= nil and fallback .. closing or "" + else + prop_value = prop_value ~= compare_value and fallback .. closing or "" + end + else + prop_value = prop_value .. closing + end + if colon == ":" then + local _ + text, _ = text:gsub("%" .. magic .. "{" .. prefix .. raw .. original_prop:gsub("%W", "%%%1") .. ":" .. fallback:gsub("%W", "%%%1") .. closing .. "}", expand_properties(prop_value)) + else + local _ + text, _ = text:gsub("%" .. magic .. "{" .. prefix .. raw .. original_prop:gsub("%W", "%%%1") .. closing .. "}", prop_value) + end + end + return text +end +local format_filename +format_filename = function(startTime, endTime, videoFormat) + local hasAudioCodec = videoFormat.audioCodec ~= "" + local replaceFirst = { + ["%%mp"] = "%%mH.%%mM.%%mS", + ["%%mP"] = "%%mH.%%mM.%%mS.%%mT", + ["%%p"] = "%%wH.%%wM.%%wS", + ["%%P"] = "%%wH.%%wM.%%wS.%%wT" + } + local replaceTable = { + ["%%wH"] = string.format("%02d", math.floor(startTime / (60 * 60))), + ["%%wh"] = string.format("%d", math.floor(startTime / (60 * 60))), + ["%%wM"] = string.format("%02d", math.floor(startTime / 60 % 60)), + ["%%wm"] = string.format("%d", math.floor(startTime / 60)), + ["%%wS"] = string.format("%02d", math.floor(startTime % 60)), + ["%%ws"] = string.format("%d", math.floor(startTime)), + ["%%wf"] = string.format("%s", startTime), + ["%%wT"] = string.sub(string.format("%.3f", startTime % 1), 3), + ["%%mH"] = string.format("%02d", math.floor(endTime / (60 * 60))), + ["%%mh"] = string.format("%d", math.floor(endTime / (60 * 60))), + ["%%mM"] = string.format("%02d", math.floor(endTime / 60 % 60)), + ["%%mm"] = string.format("%d", math.floor(endTime / 60)), + ["%%mS"] = string.format("%02d", math.floor(endTime % 60)), + ["%%ms"] = string.format("%d", math.floor(endTime)), + ["%%mf"] = string.format("%s", endTime), + ["%%mT"] = string.sub(string.format("%.3f", endTime % 1), 3), + ["%%f"] = mp.get_property("filename"), + ["%%F"] = mp.get_property("filename/no-ext"), + ["%%s"] = seconds_to_path_element(startTime), + ["%%S"] = seconds_to_path_element(startTime, true), + ["%%e"] = seconds_to_path_element(endTime), + ["%%E"] = seconds_to_path_element(endTime, true), + ["%%T"] = mp.get_property("media-title"), + ["%%M"] = (mp.get_property_native('aid') and not mp.get_property_native('mute') and hasAudioCodec) and '-audio' or '', + ["%%R"] = (options.scale_height ~= -1) and "-" .. tostring(options.scale_height) .. "p" or "-" .. tostring(mp.get_property_native('height')) .. "p", + ["%%t%%"] = "%%" + } + local filename = options.output_template + for format, value in pairs(replaceFirst) do + local _ + filename, _ = filename:gsub(format, value) + end + for format, value in pairs(replaceTable) do + local _ + filename, _ = filename:gsub(format, value) + end + if mp.get_property_bool("demuxer-via-network", false) then + local _ + filename, _ = filename:gsub("%%X{([^}]*)}", "%1") + filename, _ = filename:gsub("%%x", "") + else + local x = string.gsub(mp.get_property("stream-open-filename", ""), string.gsub(mp.get_property("filename", ""), "%W", "%%%1") .. "$", "") + local _ + filename, _ = filename:gsub("%%X{[^}]*}", x) + filename, _ = filename:gsub("%%x", x) + end + filename = expand_properties(filename, "%") + for format in filename:gmatch("%%t([aAbBcCdDeFgGhHIjmMnprRStTuUVwWxXyYzZ])") do + local _ + filename, _ = filename:gsub("%%t" .. format, os.date("%" .. format)) + end + local _ + filename, _ = filename:gsub("[<>:\"/\\|?*]", "") + return tostring(filename) .. "." .. tostring(videoFormat.outputExtension) +end +local parse_directory +parse_directory = function(dir) + local home_dir = os.getenv("HOME") + if not home_dir then + home_dir = os.getenv("USERPROFILE") + end + if not home_dir then + local drive = os.getenv("HOMEDRIVE") + local path = os.getenv("HOMEPATH") + if drive and path then + home_dir = utils.join_path(drive, path) + else + msg.warn("Couldn't find home dir.") + home_dir = "" + end + end + local _ + dir, _ = dir:gsub("^~", home_dir) + return dir +end +local is_windows = type(package) == "table" and type(package.config) == "string" and package.config:sub(1, 1) == "\\" +local trim +trim = function(s) + return s:match("^%s*(.-)%s*$") +end +local get_null_path +get_null_path = function() + if file_exists("/dev/null") then + return "/dev/null" + end + return "NUL" +end +local run_subprocess +run_subprocess = function(params) + local res = utils.subprocess(params) + msg.verbose("Command stdout: ") + msg.verbose(res.stdout) + if res.status ~= 0 then + msg.verbose("Command failed! Reason: ", res.error, " Killed by us? ", res.killed_by_us and "yes" or "no") + return false + end + return true +end +local shell_escape +shell_escape = function(args) + local ret = { } + for i, a in ipairs(args) do + local s = tostring(a) + if string.match(s, "[^A-Za-z0-9_/:=-]") then + if is_windows then + s = '"' .. string.gsub(s, '"', '"\\""') .. '"' + else + s = "'" .. string.gsub(s, "'", "'\\''") .. "'" + end + end + table.insert(ret, s) + end + local concat = table.concat(ret, " ") + if is_windows then + concat = '"' .. concat .. '"' + end + return concat +end +local run_subprocess_popen +run_subprocess_popen = function(command_line) + local command_line_string = shell_escape(command_line) + command_line_string = command_line_string .. " 2>&1" + msg.verbose("run_subprocess_popen: running " .. tostring(command_line_string)) + return io.popen(command_line_string) +end +local calculate_scale_factor +calculate_scale_factor = function() + local baseResY = 720 + local osd_w, osd_h = mp.get_osd_size() + return osd_h / baseResY +end +local should_display_progress +should_display_progress = function() + if options.display_progress == "auto" then + return not is_windows + end + return options.display_progress +end +local reverse +reverse = function(list) + local _accum_0 = { } + local _len_0 = 1 + local _max_0 = 1 + for _index_0 = #list, _max_0 < 0 and #list + _max_0 or _max_0, -1 do + local element = list[_index_0] + _accum_0[_len_0] = element + _len_0 = _len_0 + 1 + end + return _accum_0 +end +local get_pass_logfile_path +get_pass_logfile_path = function(encode_out_path) + return tostring(encode_out_path) .. "-video-pass1.log" +end +local dimensions_changed = true +local _video_dimensions = { } +local get_video_dimensions +get_video_dimensions = function() + if not (dimensions_changed) then + return _video_dimensions + end + local video_params = mp.get_property_native("video-out-params") + if not video_params then + return nil + end + dimensions_changed = false + local keep_aspect = mp.get_property_bool("keepaspect") + local w = video_params["w"] + local h = video_params["h"] + local dw = video_params["dw"] + local dh = video_params["dh"] + if mp.get_property_number("video-rotate") % 180 == 90 then + w, h = h, w + dw, dh = dh, dw + end + _video_dimensions = { + top_left = { }, + bottom_right = { }, + ratios = { } + } + local window_w, window_h = mp.get_osd_size() + if keep_aspect then + local unscaled = mp.get_property_native("video-unscaled") + local panscan = mp.get_property_number("panscan") + local fwidth = window_w + local fheight = math.floor(window_w / dw * dh) + if fheight > window_h or fheight < h then + local tmpw = math.floor(window_h / dh * dw) + if tmpw <= window_w then + fheight = window_h + fwidth = tmpw + end + end + local vo_panscan_area = window_h - fheight + local f_w = fwidth / fheight + local f_h = 1 + if vo_panscan_area == 0 then + vo_panscan_area = window_h - fwidth + f_w = 1 + f_h = fheight / fwidth + end + if unscaled or unscaled == "downscale-big" then + vo_panscan_area = 0 + if unscaled or (dw <= window_w and dh <= window_h) then + fwidth = dw + fheight = dh + end + end + local scaled_width = fwidth + math.floor(vo_panscan_area * panscan * f_w) + local scaled_height = fheight + math.floor(vo_panscan_area * panscan * f_h) + local split_scaling + split_scaling = function(dst_size, scaled_src_size, zoom, align, pan) + scaled_src_size = math.floor(scaled_src_size * 2 ^ zoom) + align = (align + 1) / 2 + local dst_start = math.floor((dst_size - scaled_src_size) * align + pan * scaled_src_size) + if dst_start < 0 then + dst_start = dst_start + 1 + end + local dst_end = dst_start + scaled_src_size + if dst_start >= dst_end then + dst_start = 0 + dst_end = 1 + end + return dst_start, dst_end + end + local zoom = mp.get_property_number("video-zoom") + local align_x = mp.get_property_number("video-align-x") + local pan_x = mp.get_property_number("video-pan-x") + _video_dimensions.top_left.x, _video_dimensions.bottom_right.x = split_scaling(window_w, scaled_width, zoom, align_x, pan_x) + local align_y = mp.get_property_number("video-align-y") + local pan_y = mp.get_property_number("video-pan-y") + _video_dimensions.top_left.y, _video_dimensions.bottom_right.y = split_scaling(window_h, scaled_height, zoom, align_y, pan_y) + else + _video_dimensions.top_left.x = 0 + _video_dimensions.bottom_right.x = window_w + _video_dimensions.top_left.y = 0 + _video_dimensions.bottom_right.y = window_h + end + _video_dimensions.ratios.w = w / (_video_dimensions.bottom_right.x - _video_dimensions.top_left.x) + _video_dimensions.ratios.h = h / (_video_dimensions.bottom_right.y - _video_dimensions.top_left.y) + return _video_dimensions +end +local set_dimensions_changed +set_dimensions_changed = function() + dimensions_changed = true +end +local monitor_dimensions +monitor_dimensions = function() + local properties = { + "keepaspect", + "video-out-params", + "video-unscaled", + "panscan", + "video-zoom", + "video-align-x", + "video-pan-x", + "video-align-y", + "video-pan-y", + "osd-width", + "osd-height" + } + for _, p in ipairs(properties) do + mp.observe_property(p, "native", set_dimensions_changed) + end +end +local clamp +clamp = function(min, val, max) + if val <= min then + return min + end + if val >= max then + return max + end + return val +end +local clamp_point +clamp_point = function(top_left, point, bottom_right) + return { + x = clamp(top_left.x, point.x, bottom_right.x), + y = clamp(top_left.y, point.y, bottom_right.y) + } +end +local VideoPoint +do + local _class_0 + local _base_0 = { + set_from_screen = function(self, sx, sy) + local d = get_video_dimensions() + local point = clamp_point(d.top_left, { + x = sx, + y = sy + }, d.bottom_right) + self.x = math.floor(d.ratios.w * (point.x - d.top_left.x) + 0.5) + self.y = math.floor(d.ratios.h * (point.y - d.top_left.y) + 0.5) + end, + to_screen = function(self) + local d = get_video_dimensions() + return { + x = math.floor(self.x / d.ratios.w + d.top_left.x + 0.5), + y = math.floor(self.y / d.ratios.h + d.top_left.y + 0.5) + } + end + } + _base_0.__index = _base_0 + _class_0 = setmetatable({ + __init = function(self) + self.x = -1 + self.y = -1 + end, + __base = _base_0, + __name = "VideoPoint" + }, { + __index = _base_0, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + VideoPoint = _class_0 +end +local Region +do + local _class_0 + local _base_0 = { + is_valid = function(self) + return self.x > -1 and self.y > -1 and self.w > -1 and self.h > -1 + end, + set_from_points = function(self, p1, p2) + self.x = math.min(p1.x, p2.x) + self.y = math.min(p1.y, p2.y) + self.w = math.abs(p1.x - p2.x) + self.h = math.abs(p1.y - p2.y) + end + } + _base_0.__index = _base_0 + _class_0 = setmetatable({ + __init = function(self) + self.x = -1 + self.y = -1 + self.w = -1 + self.h = -1 + end, + __base = _base_0, + __name = "Region" + }, { + __index = _base_0, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + Region = _class_0 +end +local make_fullscreen_region +make_fullscreen_region = function() + local r = Region() + local d = get_video_dimensions() + local a = VideoPoint() + local b = VideoPoint() + local xa, ya + do + local _obj_0 = d.top_left + xa, ya = _obj_0.x, _obj_0.y + end + a:set_from_screen(xa, ya) + local xb, yb + do + local _obj_0 = d.bottom_right + xb, yb = _obj_0.x, _obj_0.y + end + b:set_from_screen(xb, yb) + r:set_from_points(a, b) + return r +end +local read_double +read_double = function(bytes) + local sign = 1 + local mantissa = bytes[2] % 2 ^ 4 + for i = 3, 8 do + mantissa = mantissa * 256 + bytes[i] + end + if bytes[1] > 127 then + sign = -1 + end + local exponent = (bytes[1] % 128) * 2 ^ 4 + math.floor(bytes[2] / 2 ^ 4) + if exponent == 0 then + return 0 + end + mantissa = (math.ldexp(mantissa, -52) + 1) * sign + return math.ldexp(mantissa, exponent - 1023) +end +local write_double +write_double = function(num) + local bytes = { + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + } + if num == 0 then + return bytes + end + local anum = math.abs(num) + local mantissa, exponent = math.frexp(anum) + exponent = exponent - 1 + mantissa = mantissa * 2 - 1 + local sign = num ~= anum and 128 or 0 + exponent = exponent + 1023 + bytes[1] = sign + math.floor(exponent / 2 ^ 4) + mantissa = mantissa * 2 ^ 4 + local currentmantissa = math.floor(mantissa) + mantissa = mantissa - currentmantissa + bytes[2] = (exponent % 2 ^ 4) * 2 ^ 4 + currentmantissa + for i = 3, 8 do + mantissa = mantissa * 2 ^ 8 + currentmantissa = math.floor(mantissa) + mantissa = mantissa - currentmantissa + bytes[i] = currentmantissa + end + return bytes +end +local FirstpassStats +do + local _class_0 + local duration_multiplier, fields_before_duration, fields_after_duration + local _base_0 = { + get_duration = function(self) + local big_endian_binary_duration = reverse(self.binary_duration) + return read_double(reversed_binary_duration) / duration_multiplier + end, + set_duration = function(self, duration) + local big_endian_binary_duration = write_double(duration * duration_multiplier) + self.binary_duration = reverse(big_endian_binary_duration) + end, + _bytes_to_string = function(self, bytes) + return string.char(unpack(bytes)) + end, + as_binary_string = function(self) + local before_duration_string = self:_bytes_to_string(self.binary_data_before_duration) + local duration_string = self:_bytes_to_string(self.binary_duration) + local after_duration_string = self:_bytes_to_string(self.binary_data_after_duration) + return before_duration_string .. duration_string .. after_duration_string + end + } + _base_0.__index = _base_0 + _class_0 = setmetatable({ + __init = function(self, before_duration, duration, after_duration) + self.binary_data_before_duration = before_duration + self.binary_duration = duration + self.binary_data_after_duration = after_duration + end, + __base = _base_0, + __name = "FirstpassStats" + }, { + __index = _base_0, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + local self = _class_0 + duration_multiplier = 10000000.0 + fields_before_duration = 16 + fields_after_duration = 1 + self.data_before_duration_size = function(self) + return fields_before_duration * 8 + end + self.data_after_duration_size = function(self) + return fields_after_duration * 8 + end + self.size = function(self) + return (fields_before_duration + 1 + fields_after_duration) * 8 + end + self.from_bytes = function(self, bytes) + local before_duration + do + local _accum_0 = { } + local _len_0 = 1 + local _max_0 = self:data_before_duration_size() + for _index_0 = 1, _max_0 < 0 and #bytes + _max_0 or _max_0 do + local b = bytes[_index_0] + _accum_0[_len_0] = b + _len_0 = _len_0 + 1 + end + before_duration = _accum_0 + end + local duration + do + local _accum_0 = { } + local _len_0 = 1 + local _max_0 = self:data_before_duration_size() + 8 + for _index_0 = self:data_before_duration_size() + 1, _max_0 < 0 and #bytes + _max_0 or _max_0 do + local b = bytes[_index_0] + _accum_0[_len_0] = b + _len_0 = _len_0 + 1 + end + duration = _accum_0 + end + local after_duration + do + local _accum_0 = { } + local _len_0 = 1 + for _index_0 = self:data_before_duration_size() + 8 + 1, #bytes do + local b = bytes[_index_0] + _accum_0[_len_0] = b + _len_0 = _len_0 + 1 + end + after_duration = _accum_0 + end + return self(before_duration, duration, after_duration) + end + FirstpassStats = _class_0 +end +local read_logfile_into_stats_array +read_logfile_into_stats_array = function(logfile_path) + local file = assert(io.open(logfile_path, "rb")) + local logfile_string = base64_decode(file:read()) + file:close() + local stats_size = FirstpassStats:size() + assert(logfile_string:len() % stats_size == 0) + local stats = { } + for offset = 1, #logfile_string, stats_size do + local bytes = { + logfile_string:byte(offset, offset + stats_size - 1) + } + assert(#bytes == stats_size) + stats[#stats + 1] = FirstpassStats:from_bytes(bytes) + end + return stats +end +local write_stats_array_to_logfile +write_stats_array_to_logfile = function(stats_array, logfile_path) + local file = assert(io.open(logfile_path, "wb")) + local logfile_string = "" + for _index_0 = 1, #stats_array do + local stat = stats_array[_index_0] + logfile_string = logfile_string .. stat:as_binary_string() + end + file:write(base64_encode(logfile_string)) + return file:close() +end +local vp8_patch_logfile +vp8_patch_logfile = function(logfile_path, encode_total_duration) + local stats_array = read_logfile_into_stats_array(logfile_path) + local average_duration = encode_total_duration / (#stats_array - 1) + for i = 1, #stats_array - 1 do + stats_array[i]:set_duration(average_duration) + end + stats_array[#stats_array]:set_duration(encode_total_duration) + return write_stats_array_to_logfile(stats_array, logfile_path) +end +local formats = { } +local Format +do + local _class_0 + local _base_0 = { + getPreFilters = function(self) + return { } + end, + getPostFilters = function(self) + return { } + end, + getFlags = function(self) + return { } + end, + getCodecFlags = function(self) + local codecs = { } + if self.videoCodec ~= "" then + codecs[#codecs + 1] = "--ovc=" .. tostring(self.videoCodec) + end + if self.audioCodec ~= "" then + codecs[#codecs + 1] = "--oac=" .. tostring(self.audioCodec) + end + return codecs + end + } + _base_0.__index = _base_0 + _class_0 = setmetatable({ + __init = function(self) + self.displayName = "Basic" + self.supportsTwopass = true + self.videoCodec = "" + self.audioCodec = "" + self.outputExtension = "" + self.acceptsBitrate = true + end, + __base = _base_0, + __name = "Format" + }, { + __index = _base_0, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + Format = _class_0 +end +local RawVideo +do + local _class_0 + local _parent_0 = Format + local _base_0 = { + getColorspace = function(self) + local csp = mp.get_property("colormatrix") + local _exp_0 = csp + if "bt.601" == _exp_0 then + return "bt601" + elseif "bt.709" == _exp_0 then + return "bt709" + elseif "bt.2020" == _exp_0 then + return "bt2020" + elseif "smpte-240m" == _exp_0 then + return "smpte240m" + else + msg.info("Warning, unknown colorspace " .. tostring(csp) .. " detected, using bt.601.") + return "bt601" + end + end, + getPostFilters = function(self) + return { + "format=yuv444p16", + "lavfi-scale=in_color_matrix=" .. self:getColorspace(), + "format=bgr24" + } + end + } + _base_0.__index = _base_0 + setmetatable(_base_0, _parent_0.__base) + _class_0 = setmetatable({ + __init = function(self) + self.displayName = "Raw" + self.supportsTwopass = false + self.videoCodec = "rawvideo" + self.audioCodec = "pcm_s16le" + self.outputExtension = "avi" + self.acceptsBitrate = false + end, + __base = _base_0, + __name = "RawVideo", + __parent = _parent_0 + }, { + __index = function(cls, name) + local val = rawget(_base_0, name) + if val == nil then + local parent = rawget(cls, "__parent") + if parent then + return parent[name] + end + else + return val + end + end, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + if _parent_0.__inherited then + _parent_0.__inherited(_parent_0, _class_0) + end + RawVideo = _class_0 +end +formats["raw"] = RawVideo() +local WebmVP8 +do + local _class_0 + local _parent_0 = Format + local _base_0 = { + getPreFilters = function(self) + local colormatrixFilter = { + ["bt.709"] = "bt709", + ["bt.2020"] = "bt2020", + ["smpte-240m"] = "smpte240m" + } + local ret = { } + local colormatrix = mp.get_property_native("video-params/colormatrix") + if colormatrixFilter[colormatrix] then + append(ret, { + "lavfi-colormatrix=" .. tostring(colormatrixFilter[colormatrix]) .. ":bt601" + }) + end + return ret + end, + getFlags = function(self) + return { + "--ovcopts-add=threads=" .. tostring(options.libvpx_threads) + } + end + } + _base_0.__index = _base_0 + setmetatable(_base_0, _parent_0.__base) + _class_0 = setmetatable({ + __init = function(self) + self.displayName = "WebM" + self.supportsTwopass = true + self.videoCodec = "libvpx" + self.audioCodec = "libvorbis" + self.outputExtension = "webm" + self.acceptsBitrate = true + end, + __base = _base_0, + __name = "WebmVP8", + __parent = _parent_0 + }, { + __index = function(cls, name) + local val = rawget(_base_0, name) + if val == nil then + local parent = rawget(cls, "__parent") + if parent then + return parent[name] + end + else + return val + end + end, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + if _parent_0.__inherited then + _parent_0.__inherited(_parent_0, _class_0) + end + WebmVP8 = _class_0 +end +formats["webm-vp8"] = WebmVP8() +local WebmVP9 +do + local _class_0 + local _parent_0 = Format + local _base_0 = { + getFlags = function(self) + return { + "--ovcopts-add=threads=" .. tostring(options.libvpx_threads) + } + end + } + _base_0.__index = _base_0 + setmetatable(_base_0, _parent_0.__base) + _class_0 = setmetatable({ + __init = function(self) + self.displayName = "WebM (VP9)" + self.supportsTwopass = true + self.videoCodec = "libvpx-vp9" + self.audioCodec = "libvorbis" + self.outputExtension = "webm" + self.acceptsBitrate = true + end, + __base = _base_0, + __name = "WebmVP9", + __parent = _parent_0 + }, { + __index = function(cls, name) + local val = rawget(_base_0, name) + if val == nil then + local parent = rawget(cls, "__parent") + if parent then + return parent[name] + end + else + return val + end + end, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + if _parent_0.__inherited then + _parent_0.__inherited(_parent_0, _class_0) + end + WebmVP9 = _class_0 +end +formats["webm-vp9"] = WebmVP9() +local MP4 +do + local _class_0 + local _parent_0 = Format + local _base_0 = { } + _base_0.__index = _base_0 + setmetatable(_base_0, _parent_0.__base) + _class_0 = setmetatable({ + __init = function(self) + self.displayName = "MP4 (h264/AAC)" + self.supportsTwopass = true + self.videoCodec = "libx264" + self.audioCodec = "aac" + self.outputExtension = "mp4" + self.acceptsBitrate = true + end, + __base = _base_0, + __name = "MP4", + __parent = _parent_0 + }, { + __index = function(cls, name) + local val = rawget(_base_0, name) + if val == nil then + local parent = rawget(cls, "__parent") + if parent then + return parent[name] + end + else + return val + end + end, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + if _parent_0.__inherited then + _parent_0.__inherited(_parent_0, _class_0) + end + MP4 = _class_0 +end +formats["mp4"] = MP4() +local MP4NVENC +do + local _class_0 + local _parent_0 = Format + local _base_0 = { } + _base_0.__index = _base_0 + setmetatable(_base_0, _parent_0.__base) + _class_0 = setmetatable({ + __init = function(self) + self.displayName = "MP4 (h264-NVENC/AAC)" + self.supportsTwopass = true + self.videoCodec = "h264_nvenc" + self.audioCodec = "aac" + self.outputExtension = "mp4" + self.acceptsBitrate = true + end, + __base = _base_0, + __name = "MP4NVENC", + __parent = _parent_0 + }, { + __index = function(cls, name) + local val = rawget(_base_0, name) + if val == nil then + local parent = rawget(cls, "__parent") + if parent then + return parent[name] + end + else + return val + end + end, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + if _parent_0.__inherited then + _parent_0.__inherited(_parent_0, _class_0) + end + MP4NVENC = _class_0 +end +formats["mp4-nvenc"] = MP4NVENC() +local MP3 +do + local _class_0 + local _parent_0 = Format + local _base_0 = { } + _base_0.__index = _base_0 + setmetatable(_base_0, _parent_0.__base) + _class_0 = setmetatable({ + __init = function(self) + self.displayName = "MP3 (libmp3lame)" + self.supportsTwopass = false + self.videoCodec = "" + self.audioCodec = "libmp3lame" + self.outputExtension = "mp3" + self.acceptsBitrate = true + end, + __base = _base_0, + __name = "MP3", + __parent = _parent_0 + }, { + __index = function(cls, name) + local val = rawget(_base_0, name) + if val == nil then + local parent = rawget(cls, "__parent") + if parent then + return parent[name] + end + else + return val + end + end, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + if _parent_0.__inherited then + _parent_0.__inherited(_parent_0, _class_0) + end + MP3 = _class_0 +end +formats["mp3"] = MP3() +local GIF +do + local _class_0 + local _parent_0 = Format + local _base_0 = { } + _base_0.__index = _base_0 + setmetatable(_base_0, _parent_0.__base) + _class_0 = setmetatable({ + __init = function(self) + self.displayName = "GIF" + self.supportsTwopass = false + self.videoCodec = "gif" + self.audioCodec = "" + self.outputExtension = "gif" + self.acceptsBitrate = false + end, + __base = _base_0, + __name = "GIF", + __parent = _parent_0 + }, { + __index = function(cls, name) + local val = rawget(_base_0, name) + if val == nil then + local parent = rawget(cls, "__parent") + if parent then + return parent[name] + end + else + return val + end + end, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + if _parent_0.__inherited then + _parent_0.__inherited(_parent_0, _class_0) + end + GIF = _class_0 +end +formats["gif"] = GIF() +local Page +do + local _class_0 + local _base_0 = { + add_keybinds = function(self) + if not self.keybinds then + return + end + for key, func in pairs(self.keybinds) do + mp.add_forced_key_binding(key, key, func, { + repeatable = true + }) + end + end, + remove_keybinds = function(self) + if not self.keybinds then + return + end + for key, _ in pairs(self.keybinds) do + mp.remove_key_binding(key) + end + end, + observe_properties = function(self) + self.sizeCallback = function() + return self:draw() + end + local properties = { + "keepaspect", + "video-out-params", + "video-unscaled", + "panscan", + "video-zoom", + "video-align-x", + "video-pan-x", + "video-align-y", + "video-pan-y", + "osd-width", + "osd-height" + } + for _index_0 = 1, #properties do + local p = properties[_index_0] + mp.observe_property(p, "native", self.sizeCallback) + end + end, + unobserve_properties = function(self) + if self.sizeCallback then + mp.unobserve_property(self.sizeCallback) + self.sizeCallback = nil + end + end, + clear = function(self) + local window_w, window_h = mp.get_osd_size() + mp.set_osd_ass(window_w, window_h, "") + return mp.osd_message("", 0) + end, + prepare = function(self) + return nil + end, + dispose = function(self) + return nil + end, + show = function(self) + if self.visible then + return + end + self.visible = true + self:observe_properties() + self:add_keybinds() + self:prepare() + self:clear() + return self:draw() + end, + hide = function(self) + if not self.visible then + return + end + self.visible = false + self:unobserve_properties() + self:remove_keybinds() + self:clear() + return self:dispose() + end, + setup_text = function(self, ass) + local scale = calculate_scale_factor() + local margin = options.margin * scale + ass:append("{\\an7}") + ass:pos(margin, margin) + return ass:append("{\\fs" .. tostring(options.font_size * scale) .. "}") + end + } + _base_0.__index = _base_0 + _class_0 = setmetatable({ + __init = function() end, + __base = _base_0, + __name = "Page" + }, { + __index = _base_0, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + Page = _class_0 +end +local EncodeWithProgress +do + local _class_0 + local _parent_0 = Page + local _base_0 = { + draw = function(self) + local progress = 100 * ((self.currentTime - self.startTime) / self.duration) + local progressText = string.format("%d%%", progress) + local window_w, window_h = mp.get_osd_size() + local ass = assdraw.ass_new() + ass:new_event() + self:setup_text(ass) + ass:append("Encoding (" .. tostring(bold(progressText)) .. ")\\N") + return mp.set_osd_ass(window_w, window_h, ass.text) + end, + parseLine = function(self, line) + local matchTime = string.match(line, "Encode time[-]pos: ([0-9.]+)") + local matchExit = string.match(line, "Exiting... [(]([%a ]+)[)]") + if matchTime == nil and matchExit == nil then + return + end + if matchTime ~= nil and tonumber(matchTime) > self.currentTime then + self.currentTime = tonumber(matchTime) + end + if matchExit ~= nil then + self.finished = true + self.finishedReason = matchExit + end + end, + startEncode = function(self, command_line) + local copy_command_line + do + local _accum_0 = { } + local _len_0 = 1 + for _index_0 = 1, #command_line do + local arg = command_line[_index_0] + _accum_0[_len_0] = arg + _len_0 = _len_0 + 1 + end + copy_command_line = _accum_0 + end + append(copy_command_line, { + '--term-status-msg=Encode time-pos: ${=time-pos}\\n' + }) + self:show() + local processFd = run_subprocess_popen(copy_command_line) + for line in processFd:lines() do + msg.verbose(string.format('%q', line)) + self:parseLine(line) + self:draw() + end + processFd:close() + self:hide() + if self.finishedReason == "End of file" then + return true + end + return false + end + } + _base_0.__index = _base_0 + setmetatable(_base_0, _parent_0.__base) + _class_0 = setmetatable({ + __init = function(self, startTime, endTime) + self.startTime = startTime + self.endTime = endTime + self.duration = endTime - startTime + self.currentTime = startTime + end, + __base = _base_0, + __name = "EncodeWithProgress", + __parent = _parent_0 + }, { + __index = function(cls, name) + local val = rawget(_base_0, name) + if val == nil then + local parent = rawget(cls, "__parent") + if parent then + return parent[name] + end + else + return val + end + end, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + if _parent_0.__inherited then + _parent_0.__inherited(_parent_0, _class_0) + end + EncodeWithProgress = _class_0 +end +local get_active_tracks +get_active_tracks = function() + local accepted = { + video = true, + audio = not mp.get_property_bool("mute"), + sub = mp.get_property_bool("sub-visibility") + } + local active = { + video = { }, + audio = { }, + sub = { } + } + for _, track in ipairs(mp.get_property_native("track-list")) do + if track["selected"] and accepted[track["type"]] then + local count = #active[track["type"]] + active[track["type"]][count + 1] = track + end + end + return active +end +local filter_tracks_supported_by_format +filter_tracks_supported_by_format = function(active_tracks, format) + local has_video_codec = format.videoCodec ~= "" + local has_audio_codec = format.audioCodec ~= "" + local supported = { + video = has_video_codec and active_tracks["video"] or { }, + audio = has_audio_codec and active_tracks["audio"] or { }, + sub = has_video_codec and active_tracks["sub"] or { } + } + return supported +end +local append_track +append_track = function(out, track) + local external_flag = { + ["audio"] = "audio-file", + ["sub"] = "sub-file" + } + local internal_flag = { + ["video"] = "vid", + ["audio"] = "aid", + ["sub"] = "sid" + } + if track['external'] and string.len(track['external-filename']) <= 2048 then + return append(out, { + "--" .. tostring(external_flag[track['type']]) .. "=" .. tostring(track['external-filename']) + }) + else + return append(out, { + "--" .. tostring(internal_flag[track['type']]) .. "=" .. tostring(track['id']) + }) + end +end +local append_audio_tracks +append_audio_tracks = function(out, tracks) + local internal_tracks = { } + for _index_0 = 1, #tracks do + local track = tracks[_index_0] + if track['external'] then + append_track(out, track) + else + append(internal_tracks, { + track + }) + end + end + if #internal_tracks > 1 then + local filter_string = "" + for _index_0 = 1, #internal_tracks do + local track = internal_tracks[_index_0] + filter_string = filter_string .. "[aid" .. tostring(track['id']) .. "]" + end + filter_string = filter_string .. "amix[ao]" + return append(out, { + "--lavfi-complex=" .. tostring(filter_string) + }) + else + if #internal_tracks == 1 then + return append_track(out, internal_tracks[1]) + end + end +end +local get_scale_filters +get_scale_filters = function() + if options.scale_height > 0 then + return { + "lavfi-scale=-2:" .. tostring(options.scale_height) + } + end + return { } +end +local get_fps_filters +get_fps_filters = function() + if options.fps > 0 then + return { + "fps=" .. tostring(options.fps) + } + end + return { } +end +local append_property +append_property = function(out, property_name, option_name) + option_name = option_name or property_name + local prop = mp.get_property(property_name) + if prop and prop ~= "" then + return append(out, { + "--" .. tostring(option_name) .. "=" .. tostring(prop) + }) + end +end +local append_list_options +append_list_options = function(out, property_name, option_prefix) + option_prefix = option_prefix or property_name + local prop = mp.get_property_native(property_name) + if prop then + for _index_0 = 1, #prop do + local value = prop[_index_0] + append(out, { + "--" .. tostring(option_prefix) .. "-append=" .. tostring(value) + }) + end + end +end +local get_playback_options +get_playback_options = function() + local ret = { } + append_property(ret, "sub-ass-override") + append_property(ret, "sub-ass-force-style") + append_property(ret, "sub-ass-vsfilter-aspect-compat") + append_property(ret, "sub-auto") + append_property(ret, "sub-delay") + append_property(ret, "video-rotate") + append_property(ret, "ytdl-format") + return ret +end +local get_speed_flags +get_speed_flags = function() + local ret = { } + local speed = mp.get_property_native("speed") + if speed ~= 1 then + append(ret, { + "--vf-add=setpts=PTS/" .. tostring(speed), + "--af-add=atempo=" .. tostring(speed), + "--sub-speed=1/" .. tostring(speed) + }) + end + return ret +end +local get_metadata_flags +get_metadata_flags = function() + local title = mp.get_property("filename/no-ext") + return { + "--oset-metadata=title=%" .. tostring(string.len(title)) .. "%" .. tostring(title) + } +end +local apply_current_filters +apply_current_filters = function(filters) + local vf = mp.get_property_native("vf") + msg.verbose("apply_current_filters: got " .. tostring(#vf) .. " currently applied.") + for _index_0 = 1, #vf do + local _continue_0 = false + repeat + local filter = vf[_index_0] + msg.verbose("apply_current_filters: filter name: " .. tostring(filter['name'])) + if filter["enabled"] == false then + _continue_0 = true + break + end + local str = filter["name"] + local params = filter["params"] or { } + for k, v in pairs(params) do + str = str .. ":" .. tostring(k) .. "=%" .. tostring(string.len(v)) .. "%" .. tostring(v) + end + append(filters, { + str + }) + _continue_0 = true + until true + if not _continue_0 then + break + end + end +end +local get_video_filters +get_video_filters = function(format, region) + local filters = { } + append(filters, format:getPreFilters()) + if options.apply_current_filters then + apply_current_filters(filters) + end + if region and region:is_valid() then + append(filters, { + "lavfi-crop=" .. tostring(region.w) .. ":" .. tostring(region.h) .. ":" .. tostring(region.x) .. ":" .. tostring(region.y) + }) + end + append(filters, get_scale_filters()) + append(filters, get_fps_filters()) + append(filters, format:getPostFilters()) + return filters +end +local get_video_encode_flags +get_video_encode_flags = function(format, region) + local flags = { } + append(flags, get_playback_options()) + local filters = get_video_filters(format, region) + for _index_0 = 1, #filters do + local f = filters[_index_0] + append(flags, { + "--vf-add=" .. tostring(f) + }) + end + append(flags, get_speed_flags()) + return flags +end +local calculate_bitrate +calculate_bitrate = function(active_tracks, format, length) + if format.videoCodec == "" then + return nil, options.target_filesize * 8 / length + end + local video_kilobits = options.target_filesize * 8 + local audio_kilobits = nil + local has_audio_track = #active_tracks["audio"] > 0 + if options.strict_filesize_constraint and has_audio_track then + audio_kilobits = length * options.strict_audio_bitrate + video_kilobits = video_kilobits - audio_kilobits + end + local video_bitrate = math.floor(video_kilobits / length) + local audio_bitrate = audio_kilobits and math.floor(audio_kilobits / length) or nil + return video_bitrate, audio_bitrate +end +local encode +encode = function(region, startTime, endTime) + local format = formats[options.output_format] + local path = mp.get_property("path") + if not path then + message("No file is being played") + return + end + local is_stream = not file_exists(path) + local command = { + "mpv", + path, + "--start=" .. seconds_to_time_string(startTime, false, true), + "--end=" .. seconds_to_time_string(endTime, false, true), + "--loop-file=no" + } + append(command, format:getCodecFlags()) + local active_tracks = get_active_tracks() + local supported_active_tracks = filter_tracks_supported_by_format(active_tracks, format) + for track_type, tracks in pairs(supported_active_tracks) do + if track_type == "audio" then + append_audio_tracks(command, tracks) + else + for _index_0 = 1, #tracks do + local track = tracks[_index_0] + append_track(command, track) + end + end + end + for track_type, tracks in pairs(supported_active_tracks) do + local _continue_0 = false + repeat + if #tracks > 0 then + _continue_0 = true + break + end + local _exp_0 = track_type + if "video" == _exp_0 then + append(command, { + "--vid=no" + }) + elseif "audio" == _exp_0 then + append(command, { + "--aid=no" + }) + elseif "sub" == _exp_0 then + append(command, { + "--sid=no" + }) + end + _continue_0 = true + until true + if not _continue_0 then + break + end + end + if format.videoCodec ~= "" then + append(command, get_video_encode_flags(format, region)) + end + append(command, format:getFlags()) + if options.write_filename_on_metadata then + append(command, get_metadata_flags()) + end + if format.acceptsBitrate then + if options.target_filesize > 0 then + local length = endTime - startTime + local video_bitrate, audio_bitrate = calculate_bitrate(supported_active_tracks, format, length) + if video_bitrate then + append(command, { + "--ovcopts-add=b=" .. tostring(video_bitrate) .. "k" + }) + end + if audio_bitrate then + append(command, { + "--oacopts-add=b=" .. tostring(audio_bitrate) .. "k" + }) + end + if options.strict_filesize_constraint then + local type = format.videoCodec ~= "" and "ovc" or "oac" + append(command, { + "--" .. tostring(type) .. "opts-add=minrate=" .. tostring(bitrate) .. "k", + "--" .. tostring(type) .. "opts-add=maxrate=" .. tostring(bitrate) .. "k" + }) + end + else + local type = format.videoCodec ~= "" and "ovc" or "oac" + append(command, { + "--" .. tostring(type) .. "opts-add=b=0" + }) + end + end + for token in string.gmatch(options.additional_flags, "[^%s]+") do + command[#command + 1] = token + end + if not options.strict_filesize_constraint then + for token in string.gmatch(options.non_strict_additional_flags, "[^%s]+") do + command[#command + 1] = token + end + if options.crf >= 0 then + append(command, { + "--ovcopts-add=crf=" .. tostring(options.crf) + }) + end + end + local dir = "" + if is_stream then + dir = parse_directory("~") + else + local _ + dir, _ = utils.split_path(path) + end + if options.output_directory ~= "" then + dir = parse_directory(options.output_directory) + end + local formatted_filename = format_filename(startTime, endTime, format) + local out_path = utils.join_path(dir, formatted_filename) + append(command, { + "--o=" .. tostring(out_path) + }) + if options.twopass and format.supportsTwopass and not is_stream then + local first_pass_cmdline + do + local _accum_0 = { } + local _len_0 = 1 + for _index_0 = 1, #command do + local arg = command[_index_0] + _accum_0[_len_0] = arg + _len_0 = _len_0 + 1 + end + first_pass_cmdline = _accum_0 + end + append(first_pass_cmdline, { + "--ovcopts-add=flags=+pass1" + }) + message("Starting first pass...") + msg.verbose("First-pass command line: ", table.concat(first_pass_cmdline, " ")) + local res = run_subprocess({ + args = first_pass_cmdline, + cancellable = false + }) + if not res then + message("First pass failed! Check the logs for details.") + return + end + append(command, { + "--ovcopts-add=flags=+pass2" + }) + if format.videoCodec == "libvpx" then + msg.verbose("Patching libvpx pass log file...") + vp8_patch_logfile(get_pass_logfile_path(out_path), endTime - startTime) + end + end + msg.info("Encoding to", out_path) + msg.verbose("Command line:", table.concat(command, " ")) + if options.run_detached then + message("Started encode, process was detached.") + return utils.subprocess_detached({ + args = command + }) + else + local res = false + if not should_display_progress() then + message("Started encode...") + res = run_subprocess({ + args = command, + cancellable = false + }) + else + local ewp = EncodeWithProgress(startTime, endTime) + res = ewp:startEncode(command) + end + if res then + message("Encoded successfully! Saved to\\N" .. tostring(bold(out_path))) + else + message("Encode failed! Check the logs for details.") + end + return os.remove(get_pass_logfile_path(out_path)) + end +end +local CropPage +do + local _class_0 + local _parent_0 = Page + local _base_0 = { + reset = function(self) + local dimensions = get_video_dimensions() + local xa, ya + do + local _obj_0 = dimensions.top_left + xa, ya = _obj_0.x, _obj_0.y + end + self.pointA:set_from_screen(xa, ya) + local xb, yb + do + local _obj_0 = dimensions.bottom_right + xb, yb = _obj_0.x, _obj_0.y + end + self.pointB:set_from_screen(xb, yb) + if self.visible then + return self:draw() + end + end, + setPointA = function(self) + local posX, posY = mp.get_mouse_pos() + self.pointA:set_from_screen(posX, posY) + if self.visible then + return self:draw() + end + end, + setPointB = function(self) + local posX, posY = mp.get_mouse_pos() + self.pointB:set_from_screen(posX, posY) + if self.visible then + return self:draw() + end + end, + cancel = function(self) + self:hide() + return self.callback(false, nil) + end, + finish = function(self) + local region = Region() + region:set_from_points(self.pointA, self.pointB) + self:hide() + return self.callback(true, region) + end, + draw_box = function(self, ass) + local region = Region() + region:set_from_points(self.pointA:to_screen(), self.pointB:to_screen()) + local d = get_video_dimensions() + ass:new_event() + ass:append("{\\an7}") + ass:pos(0, 0) + ass:append('{\\bord0}') + ass:append('{\\shad0}') + ass:append('{\\c&H000000&}') + ass:append('{\\alpha&H77}') + ass:draw_start() + ass:rect_cw(d.top_left.x, d.top_left.y, region.x, region.y + region.h) + ass:rect_cw(region.x, d.top_left.y, d.bottom_right.x, region.y) + ass:rect_cw(d.top_left.x, region.y + region.h, region.x + region.w, d.bottom_right.y) + ass:rect_cw(region.x + region.w, region.y, d.bottom_right.x, d.bottom_right.y) + return ass:draw_stop() + end, + draw = function(self) + local window = { } + window.w, window.h = mp.get_osd_size() + local ass = assdraw.ass_new() + self:draw_box(ass) + ass:new_event() + self:setup_text(ass) + ass:append(tostring(bold('Crop:')) .. "\\N") + ass:append(tostring(bold('1:')) .. " change point A (" .. tostring(self.pointA.x) .. ", " .. tostring(self.pointA.y) .. ")\\N") + ass:append(tostring(bold('2:')) .. " change point B (" .. tostring(self.pointB.x) .. ", " .. tostring(self.pointB.y) .. ")\\N") + ass:append(tostring(bold('r:')) .. " reset to whole screen\\N") + ass:append(tostring(bold('ESC:')) .. " cancel crop\\N") + local width, height = math.abs(self.pointA.x - self.pointB.x), math.abs(self.pointA.y - self.pointB.y) + ass:append(tostring(bold('ENTER:')) .. " confirm crop (" .. tostring(width) .. "x" .. tostring(height) .. ")\\N") + return mp.set_osd_ass(window.w, window.h, ass.text) + end + } + _base_0.__index = _base_0 + setmetatable(_base_0, _parent_0.__base) + _class_0 = setmetatable({ + __init = function(self, callback, region) + self.pointA = VideoPoint() + self.pointB = VideoPoint() + self.keybinds = { + ["1"] = (function() + local _base_1 = self + local _fn_0 = _base_1.setPointA + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["2"] = (function() + local _base_1 = self + local _fn_0 = _base_1.setPointB + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["r"] = (function() + local _base_1 = self + local _fn_0 = _base_1.reset + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["ESC"] = (function() + local _base_1 = self + local _fn_0 = _base_1.cancel + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["ENTER"] = (function() + local _base_1 = self + local _fn_0 = _base_1.finish + return function(...) + return _fn_0(_base_1, ...) + end + end)() + } + self:reset() + self.callback = callback + if region and region:is_valid() then + self.pointA.x = region.x + self.pointA.y = region.y + self.pointB.x = region.x + region.w + self.pointB.y = region.y + region.h + end + end, + __base = _base_0, + __name = "CropPage", + __parent = _parent_0 + }, { + __index = function(cls, name) + local val = rawget(_base_0, name) + if val == nil then + local parent = rawget(cls, "__parent") + if parent then + return parent[name] + end + else + return val + end + end, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + if _parent_0.__inherited then + _parent_0.__inherited(_parent_0, _class_0) + end + CropPage = _class_0 +end +local Option +do + local _class_0 + local _base_0 = { + hasPrevious = function(self) + local _exp_0 = self.optType + if "bool" == _exp_0 then + return true + elseif "int" == _exp_0 then + if self.opts.min then + return self.value > self.opts.min + else + return true + end + elseif "list" == _exp_0 then + return self.value > 1 + end + end, + hasNext = function(self) + local _exp_0 = self.optType + if "bool" == _exp_0 then + return true + elseif "int" == _exp_0 then + if self.opts.max then + return self.value < self.opts.max + else + return true + end + elseif "list" == _exp_0 then + return self.value < #self.opts.possibleValues + end + end, + leftKey = function(self) + local _exp_0 = self.optType + if "bool" == _exp_0 then + self.value = not self.value + elseif "int" == _exp_0 then + self.value = self.value - self.opts.step + if self.opts.min and self.opts.min > self.value then + self.value = self.opts.min + end + elseif "list" == _exp_0 then + if self.value > 1 then + self.value = self.value - 1 + end + end + end, + rightKey = function(self) + local _exp_0 = self.optType + if "bool" == _exp_0 then + self.value = not self.value + elseif "int" == _exp_0 then + self.value = self.value + self.opts.step + if self.opts.max and self.opts.max < self.value then + self.value = self.opts.max + end + elseif "list" == _exp_0 then + if self.value < #self.opts.possibleValues then + self.value = self.value + 1 + end + end + end, + getValue = function(self) + local _exp_0 = self.optType + if "bool" == _exp_0 then + return self.value + elseif "int" == _exp_0 then + return self.value + elseif "list" == _exp_0 then + local value, _ + do + local _obj_0 = self.opts.possibleValues[self.value] + value, _ = _obj_0[1], _obj_0[2] + end + return value + end + end, + setValue = function(self, value) + local _exp_0 = self.optType + if "bool" == _exp_0 then + self.value = value + elseif "int" == _exp_0 then + self.value = value + elseif "list" == _exp_0 then + local set = false + for i, possiblePair in ipairs(self.opts.possibleValues) do + local possibleValue, _ + possibleValue, _ = possiblePair[1], possiblePair[2] + if possibleValue == value then + set = true + self.value = i + break + end + end + if not set then + return msg.warn("Tried to set invalid value " .. tostring(value) .. " to " .. tostring(self.displayText) .. " option.") + end + end + end, + getDisplayValue = function(self) + local _exp_0 = self.optType + if "bool" == _exp_0 then + return self.value and "yes" or "no" + elseif "int" == _exp_0 then + if self.opts.altDisplayNames and self.opts.altDisplayNames[self.value] then + return self.opts.altDisplayNames[self.value] + else + return tostring(self.value) + end + elseif "list" == _exp_0 then + local value, displayValue + do + local _obj_0 = self.opts.possibleValues[self.value] + value, displayValue = _obj_0[1], _obj_0[2] + end + return displayValue or value + end + end, + draw = function(self, ass, selected) + if selected then + ass:append(tostring(bold(self.displayText)) .. ": ") + else + ass:append(tostring(self.displayText) .. ": ") + end + if self:hasPrevious() then + ass:append("◀ ") + end + ass:append(self:getDisplayValue()) + if self:hasNext() then + ass:append(" ▶") + end + return ass:append("\\N") + end + } + _base_0.__index = _base_0 + _class_0 = setmetatable({ + __init = function(self, optType, displayText, value, opts) + self.optType = optType + self.displayText = displayText + self.opts = opts + self.value = 1 + return self:setValue(value) + end, + __base = _base_0, + __name = "Option" + }, { + __index = _base_0, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + Option = _class_0 +end +local EncodeOptionsPage +do + local _class_0 + local _parent_0 = Page + local _base_0 = { + getCurrentOption = function(self) + return self.options[self.currentOption][2] + end, + leftKey = function(self) + (self:getCurrentOption()):leftKey() + return self:draw() + end, + rightKey = function(self) + (self:getCurrentOption()):rightKey() + return self:draw() + end, + prevOpt = function(self) + self.currentOption = math.max(1, self.currentOption - 1) + return self:draw() + end, + nextOpt = function(self) + self.currentOption = math.min(#self.options, self.currentOption + 1) + return self:draw() + end, + confirmOpts = function(self) + for _, optPair in ipairs(self.options) do + local optName, opt + optName, opt = optPair[1], optPair[2] + options[optName] = opt:getValue() + end + self:hide() + return self.callback(true) + end, + cancelOpts = function(self) + self:hide() + return self.callback(false) + end, + draw = function(self) + local window_w, window_h = mp.get_osd_size() + local ass = assdraw.ass_new() + ass:new_event() + self:setup_text(ass) + ass:append(tostring(bold('Options:')) .. "\\N\\N") + for i, optPair in ipairs(self.options) do + local opt = optPair[2] + opt:draw(ass, self.currentOption == i) + end + ass:append("\\N▲ / ▼: navigate\\N") + ass:append(tostring(bold('ENTER:')) .. " confirm options\\N") + ass:append(tostring(bold('ESC:')) .. " cancel\\N") + return mp.set_osd_ass(window_w, window_h, ass.text) + end + } + _base_0.__index = _base_0 + setmetatable(_base_0, _parent_0.__base) + _class_0 = setmetatable({ + __init = function(self, callback) + self.callback = callback + self.currentOption = 1 + local scaleHeightOpts = { + possibleValues = { + { + -1, + "no" + }, + { + 240 + }, + { + 360 + }, + { + 480 + }, + { + 720 + }, + { + 1080 + }, + { + 1440 + }, + { + 2160 + } + } + } + local filesizeOpts = { + step = 250, + min = 0, + altDisplayNames = { + [0] = "0 (constant quality)" + } + } + local crfOpts = { + step = 1, + min = -1, + altDisplayNames = { + [-1] = "disabled" + } + } + local fpsOpts = { + possibleValues = { + { + -1, + "source" + }, + { + 15 + }, + { + 24 + }, + { + 30 + }, + { + 48 + }, + { + 50 + }, + { + 60 + }, + { + 120 + }, + { + 240 + } + } + } + local formatIds = { + "webm-vp8", + "webm-vp9", + "mp4", + "mp4-nvenc", + "raw", + "mp3", + "gif" + } + local formatOpts = { + possibleValues = (function() + local _accum_0 = { } + local _len_0 = 1 + for _index_0 = 1, #formatIds do + local fId = formatIds[_index_0] + _accum_0[_len_0] = { + fId, + formats[fId].displayName + } + _len_0 = _len_0 + 1 + end + return _accum_0 + end)() + } + self.options = { + { + "output_format", + Option("list", "Output Format", options.output_format, formatOpts) + }, + { + "twopass", + Option("bool", "Two Pass", options.twopass) + }, + { + "apply_current_filters", + Option("bool", "Apply Current Video Filters", options.apply_current_filters) + }, + { + "scale_height", + Option("list", "Scale Height", options.scale_height, scaleHeightOpts) + }, + { + "strict_filesize_constraint", + Option("bool", "Strict Filesize Constraint", options.strict_filesize_constraint) + }, + { + "write_filename_on_metadata", + Option("bool", "Write Filename on Metadata", options.write_filename_on_metadata) + }, + { + "target_filesize", + Option("int", "Target Filesize", options.target_filesize, filesizeOpts) + }, + { + "crf", + Option("int", "CRF", options.crf, crfOpts) + }, + { + "fps", + Option("list", "FPS", options.fps, fpsOpts) + } + } + self.keybinds = { + ["LEFT"] = (function() + local _base_1 = self + local _fn_0 = _base_1.leftKey + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["RIGHT"] = (function() + local _base_1 = self + local _fn_0 = _base_1.rightKey + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["UP"] = (function() + local _base_1 = self + local _fn_0 = _base_1.prevOpt + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["DOWN"] = (function() + local _base_1 = self + local _fn_0 = _base_1.nextOpt + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["ENTER"] = (function() + local _base_1 = self + local _fn_0 = _base_1.confirmOpts + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["ESC"] = (function() + local _base_1 = self + local _fn_0 = _base_1.cancelOpts + return function(...) + return _fn_0(_base_1, ...) + end + end)() + } + end, + __base = _base_0, + __name = "EncodeOptionsPage", + __parent = _parent_0 + }, { + __index = function(cls, name) + local val = rawget(_base_0, name) + if val == nil then + local parent = rawget(cls, "__parent") + if parent then + return parent[name] + end + else + return val + end + end, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + if _parent_0.__inherited then + _parent_0.__inherited(_parent_0, _class_0) + end + EncodeOptionsPage = _class_0 +end +local PreviewPage +do + local _class_0 + local _parent_0 = Page + local _base_0 = { + prepare = function(self) + local vf = mp.get_property_native("vf") + vf[#vf + 1] = { + name = "sub" + } + if self.region:is_valid() then + vf[#vf + 1] = { + name = "crop", + params = { + w = tostring(self.region.w), + h = tostring(self.region.h), + x = tostring(self.region.x), + y = tostring(self.region.y) + } + } + end + mp.set_property_native("vf", vf) + if self.startTime > -1 and self.endTime > -1 then + mp.set_property_native("ab-loop-a", self.startTime) + mp.set_property_native("ab-loop-b", self.endTime) + mp.set_property_native("time-pos", self.startTime) + end + return mp.set_property_native("pause", false) + end, + dispose = function(self) + mp.set_property("ab-loop-a", "no") + mp.set_property("ab-loop-b", "no") + for prop, value in pairs(self.originalProperties) do + mp.set_property_native(prop, value) + end + end, + draw = function(self) + local window_w, window_h = mp.get_osd_size() + local ass = assdraw.ass_new() + ass:new_event() + self:setup_text(ass) + ass:append("Press " .. tostring(bold('ESC')) .. " to exit preview.\\N") + return mp.set_osd_ass(window_w, window_h, ass.text) + end, + cancel = function(self) + self:hide() + return self.callback() + end + } + _base_0.__index = _base_0 + setmetatable(_base_0, _parent_0.__base) + _class_0 = setmetatable({ + __init = function(self, callback, region, startTime, endTime) + self.callback = callback + self.originalProperties = { + ["vf"] = mp.get_property_native("vf"), + ["time-pos"] = mp.get_property_native("time-pos"), + ["pause"] = mp.get_property_native("pause") + } + self.keybinds = { + ["ESC"] = (function() + local _base_1 = self + local _fn_0 = _base_1.cancel + return function(...) + return _fn_0(_base_1, ...) + end + end)() + } + self.region = region + self.startTime = startTime + self.endTime = endTime + self.isLoop = false + end, + __base = _base_0, + __name = "PreviewPage", + __parent = _parent_0 + }, { + __index = function(cls, name) + local val = rawget(_base_0, name) + if val == nil then + local parent = rawget(cls, "__parent") + if parent then + return parent[name] + end + else + return val + end + end, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + if _parent_0.__inherited then + _parent_0.__inherited(_parent_0, _class_0) + end + PreviewPage = _class_0 +end +local MainPage +do + local _class_0 + local _parent_0 = Page + local _base_0 = { + setStartTime = function(self) + self.startTime = mp.get_property_number("time-pos") + if self.visible then + self:clear() + return self:draw() + end + end, + setEndTime = function(self) + self.endTime = mp.get_property_number("time-pos") + if self.visible then + self:clear() + return self:draw() + end + end, + setupStartAndEndTimes = function(self) + if mp.get_property_native("duration") then + self.startTime = 0 + self.endTime = mp.get_property_native("duration") + else + self.startTime = -1 + self.endTime = -1 + end + if self.visible then + self:clear() + return self:draw() + end + end, + draw = function(self) + local window_w, window_h = mp.get_osd_size() + local ass = assdraw.ass_new() + ass:new_event() + self:setup_text(ass) + ass:append(tostring(bold('WebM maker')) .. "\\N\\N") + ass:append(tostring(bold('c:')) .. " crop\\N") + ass:append(tostring(bold('1:')) .. " set start time (current is " .. tostring(seconds_to_time_string(self.startTime)) .. ")\\N") + ass:append(tostring(bold('2:')) .. " set end time (current is " .. tostring(seconds_to_time_string(self.endTime)) .. ")\\N") + ass:append(tostring(bold('o:')) .. " change encode options\\N") + ass:append(tostring(bold('p:')) .. " preview\\N") + ass:append(tostring(bold('e:')) .. " encode\\N\\N") + ass:append(tostring(bold('ESC:')) .. " close\\N") + return mp.set_osd_ass(window_w, window_h, ass.text) + end, + onUpdateCropRegion = function(self, updated, newRegion) + if updated then + self.region = newRegion + end + return self:show() + end, + crop = function(self) + self:hide() + local cropPage = CropPage((function() + local _base_1 = self + local _fn_0 = _base_1.onUpdateCropRegion + return function(...) + return _fn_0(_base_1, ...) + end + end)(), self.region) + return cropPage:show() + end, + onOptionsChanged = function(self, updated) + return self:show() + end, + changeOptions = function(self) + self:hide() + local encodeOptsPage = EncodeOptionsPage((function() + local _base_1 = self + local _fn_0 = _base_1.onOptionsChanged + return function(...) + return _fn_0(_base_1, ...) + end + end)()) + return encodeOptsPage:show() + end, + onPreviewEnded = function(self) + return self:show() + end, + preview = function(self) + self:hide() + local previewPage = PreviewPage((function() + local _base_1 = self + local _fn_0 = _base_1.onPreviewEnded + return function(...) + return _fn_0(_base_1, ...) + end + end)(), self.region, self.startTime, self.endTime) + return previewPage:show() + end, + encode = function(self) + self:hide() + if self.startTime < 0 then + message("No start time, aborting") + return + end + if self.endTime < 0 then + message("No end time, aborting") + return + end + if self.startTime >= self.endTime then + message("Start time is ahead of end time, aborting") + return + end + return encode(self.region, self.startTime, self.endTime) + end + } + _base_0.__index = _base_0 + setmetatable(_base_0, _parent_0.__base) + _class_0 = setmetatable({ + __init = function(self) + self.keybinds = { + ["c"] = (function() + local _base_1 = self + local _fn_0 = _base_1.crop + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["1"] = (function() + local _base_1 = self + local _fn_0 = _base_1.setStartTime + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["2"] = (function() + local _base_1 = self + local _fn_0 = _base_1.setEndTime + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["o"] = (function() + local _base_1 = self + local _fn_0 = _base_1.changeOptions + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["p"] = (function() + local _base_1 = self + local _fn_0 = _base_1.preview + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["e"] = (function() + local _base_1 = self + local _fn_0 = _base_1.encode + return function(...) + return _fn_0(_base_1, ...) + end + end)(), + ["ESC"] = (function() + local _base_1 = self + local _fn_0 = _base_1.hide + return function(...) + return _fn_0(_base_1, ...) + end + end)() + } + self.startTime = -1 + self.endTime = -1 + self.region = Region() + end, + __base = _base_0, + __name = "MainPage", + __parent = _parent_0 + }, { + __index = function(cls, name) + local val = rawget(_base_0, name) + if val == nil then + local parent = rawget(cls, "__parent") + if parent then + return parent[name] + end + else + return val + end + end, + __call = function(cls, ...) + local _self_0 = setmetatable({}, _base_0) + cls.__init(_self_0, ...) + return _self_0 + end + }) + _base_0.__class = _class_0 + if _parent_0.__inherited then + _parent_0.__inherited(_parent_0, _class_0) + end + MainPage = _class_0 +end +monitor_dimensions() +local mainPage = MainPage() +mp.add_key_binding(options.keybind, "display-webm-encoder", (function() + local _base_0 = mainPage + local _fn_0 = _base_0.show + return function(...) + return _fn_0(_base_0, ...) + end +end)(), { + repeatable = false +}) +return mp.register_event("file-loaded", (function() + local _base_0 = mainPage + local _fn_0 = _base_0.setupStartAndEndTimes + return function(...) + return _fn_0(_base_0, ...) + end +end)()) diff --git a/mpv/scripts/youtube-quality.lua b/mpv/scripts/youtube-quality.lua new file mode 100644 index 0000000..ba95fef --- /dev/null +++ b/mpv/scripts/youtube-quality.lua @@ -0,0 +1,275 @@ +-- youtube-quality.lua +-- +-- Change youtube video quality on the fly. +-- +-- Diplays a menu that lets you switch to different ytdl-format settings while +-- you're in the middle of a video (just like you were using the web player). +-- +-- Bound to ctrl-f by default. + +local mp = require 'mp' +local utils = require 'mp.utils' +local msg = require 'mp.msg' +local assdraw = require 'mp.assdraw' + +local opts = { + --key bindings + toggle_menu_binding = "ctrl+f", + up_binding = "UP", + down_binding = "DOWN", + select_binding = "ENTER", + + --formatting / cursors + selected_and_active = "▶ - ", + selected_and_inactive = "● - ", + unselected_and_active = "▷ - ", + unselected_and_inactive = "○ - ", + + --font size scales by window, if false requires larger font and padding sizes + scale_playlist_by_window=false, + + --playlist ass style overrides inside curly brackets, \keyvalue is one field, extra \ for escape in lua + --example {\\fnUbuntu\\fs10\\b0\\bord1} equals: font=Ubuntu, size=10, bold=no, border=1 + --read http://docs.aegisub.org/3.2/ASS_Tags/ for reference of tags + --undeclared tags will use default osd settings + --these styles will be used for the whole playlist. More specific styling will need to be hacked in + -- + --(a monospaced font is recommended but not required) + style_ass_tags = "{\\fnmonospace}", + + --paddings for top left corner + text_padding_x = 5, + text_padding_y = 5, + + --other + menu_timeout = 10, + + --use youtube-dl to fetch a list of available formats (overrides quality_strings) + fetch_formats = true, + + --default menu entries + quality_strings=[[ + [ + {"4320p" : "bestvideo[height<=?4320p]+bestaudio/best"}, + {"2160p" : "bestvideo[height<=?2160]+bestaudio/best"}, + {"1440p" : "bestvideo[height<=?1440]+bestaudio/best"}, + {"1080p" : "bestvideo[height<=?1080]+bestaudio/best"}, + {"720p" : "bestvideo[height<=?720]+bestaudio/best"}, + {"480p" : "bestvideo[height<=?480]+bestaudio/best"}, + {"360p" : "bestvideo[height<=?360]+bestaudio/best"}, + {"240p" : "bestvideo[height<=?240]+bestaudio/best"}, + {"144p" : "bestvideo[height<=?144]+bestaudio/best"} + ] + ]], +} +(require 'mp.options').read_options(opts, "youtube-quality") +opts.quality_strings = utils.parse_json(opts.quality_strings) + +local destroyer = nil + + +function show_menu() + local selected = 1 + local active = 0 + local current_ytdl_format = mp.get_property("ytdl-format") + msg.verbose("current ytdl-format: "..current_ytdl_format) + local num_options = 0 + local options = {} + + + if opts.fetch_formats then + options, num_options = download_formats() + end + + if next(options) == nil then + for i,v in ipairs(opts.quality_strings) do + num_options = num_options + 1 + for k,v2 in pairs(v) do + options[i] = {label = k, format=v2} + if v2 == current_ytdl_format then + active = i + selected = active + end + end + end + end + + --set the cursor to the currently format + for i,v in ipairs(options) do + if v.format == current_ytdl_format then + active = i + selected = active + break + end + end + + function selected_move(amt) + selected = selected + amt + if selected < 1 then selected = num_options + elseif selected > num_options then selected = 1 end + timeout:kill() + timeout:resume() + draw_menu() + end + function choose_prefix(i) + if i == selected and i == active then return opts.selected_and_active + elseif i == selected then return opts.selected_and_inactive end + + if i ~= selected and i == active then return opts.unselected_and_active + elseif i ~= selected then return opts.unselected_and_inactive end + return "> " --shouldn't get here. + end + + function draw_menu() + local ass = assdraw.ass_new() + + ass:pos(opts.text_padding_x, opts.text_padding_y) + ass:append(opts.style_ass_tags) + + for i,v in ipairs(options) do + ass:append(choose_prefix(i)..v.label.."\\N") + end + + local w, h = mp.get_osd_size() + if opts.scale_playlist_by_window then w,h = 0, 0 end + mp.set_osd_ass(w, h, ass.text) + end + + function destroy() + timeout:kill() + mp.set_osd_ass(0,0,"") + mp.remove_key_binding("move_up") + mp.remove_key_binding("move_down") + mp.remove_key_binding("select") + mp.remove_key_binding("escape") + destroyer = nil + end + timeout = mp.add_periodic_timer(opts.menu_timeout, destroy) + destroyer = destroy + + mp.add_forced_key_binding(opts.up_binding, "move_up", function() selected_move(-1) end, {repeatable=true}) + mp.add_forced_key_binding(opts.down_binding, "move_down", function() selected_move(1) end, {repeatable=true}) + mp.add_forced_key_binding(opts.select_binding, "select", function() + destroy() + mp.set_property("ytdl-format", options[selected].format) + reload_resume() + end) + mp.add_forced_key_binding(opts.toggle_menu_binding, "escape", destroy) + + draw_menu() + return +end + +local ytdl = { + path = "youtube-dl", + searched = false, + blacklisted = {} +} + +format_cache={} +function download_formats() + local function exec(args) + local ret = utils.subprocess({args = args}) + return ret.status, ret.stdout, ret + end + + local function table_size(t) + s = 0 + for i,v in ipairs(t) do + s = s+1 + end + return s + end + + local url = mp.get_property("path") + + url = string.gsub(url, "ytdl://", "") -- Strip possible ytdl:// prefix. + + -- don't fetch the format list if we already have it + if format_cache[url] ~= nil then + local res = format_cache[url] + return res, table_size(res) + end + mp.osd_message("fetching available formats with youtube-dl...", 60) + + if not (ytdl.searched) then + local ytdl_mcd = mp.find_config_file("youtube-dl") + if not (ytdl_mcd == nil) then + msg.verbose("found youtube-dl at: " .. ytdl_mcd) + ytdl.path = ytdl_mcd + end + ytdl.searched = true + end + + local command = {ytdl.path, "--no-warnings", "--no-playlist", "-J"} + table.insert(command, url) + local es, json, result = exec(command) + + if (es < 0) or (json == nil) or (json == "") then + mp.osd_message("fetching formats failed...", 1) + msg.error("failed to get format list: " .. err) + return {}, 0 + end + + local json, err = utils.parse_json(json) + + if (json == nil) then + mp.osd_message("fetching formats failed...", 1) + msg.error("failed to parse JSON data: " .. err) + return {}, 0 + end + + res = {} + msg.verbose("youtube-dl succeeded!") + for i,v in ipairs(json.formats) do + if v.vcodec ~= "none" then + local fps = v.fps and v.fps.."fps" or "" + local resolution = string.format("%sx%s", v.width, v.height) + local l = string.format("%-9s %-5s (%-4s / %s)", resolution, fps, v.ext, v.vcodec) + local f = string.format("%s+bestaudio/best", v.format_id) + table.insert(res, {label=l, format=f, width=v.width }) + end + end + + table.sort(res, function(a, b) return a.width > b.width end) + + mp.osd_message("", 0) + format_cache[url] = res + return res, table_size(res) +end + + +-- register script message to show menu +mp.register_script_message("toggle-quality-menu", +function() + if destroyer ~= nil then + destroyer() + else + show_menu() + end +end) + +-- keybind to launch menu +mp.add_forced_key_binding(opts.toggle_menu_binding, "quality-menu", show_menu) + +-- special thanks to reload.lua (https://github.com/4e6/mpv-reload/) +function reload_resume() + local playlist_pos = mp.get_property_number("playlist-pos") + local reload_duration = mp.get_property_native("duration") + local time_pos = mp.get_property("time-pos") + + mp.set_property_number("playlist-pos", playlist_pos) + + -- Tries to determine live stream vs. pre-recordered VOD. VOD has non-zero + -- duration property. When reloading VOD, to keep the current time position + -- we should provide offset from the start. Stream doesn't have fixed start. + -- Decent choice would be to reload stream from it's current 'live' positon. + -- That's the reason we don't pass the offset when reloading streams. + if reload_duration and reload_duration > 0 then + local function seeker() + mp.commandv("seek", time_pos, "absolute") + mp.unregister_event(seeker) + end + mp.register_event("file-loaded", seeker) + end +end diff --git a/mutt/.mailsynclastrun b/mutt/.mailsynclastrun new file mode 100644 index 0000000..e69de29 diff --git a/mutt/signature b/mutt/signature new file mode 100644 index 0000000..44537b0 --- /dev/null +++ b/mutt/signature @@ -0,0 +1 @@ +To all NSA and FBI agents, or any government official reading this email without my explicit consent, please ask yourself whether invading my Fourth Amendment rights really is for the "greater good." diff --git a/ncmpcpp/bindings b/ncmpcpp/bindings new file mode 100644 index 0000000..01e9543 --- /dev/null +++ b/ncmpcpp/bindings @@ -0,0 +1,46 @@ +def_key "+" + show_clock +def_key "=" + volume_up + +def_key "j" + scroll_down +def_key "k" + scroll_up + +def_key "ctrl-u" + page_up +#push_characters "kkkkkkkkkkkkkkk" +def_key "ctrl-d" + page_down +#push_characters "jjjjjjjjjjjjjjj" + +def_key "h" + previous_column +def_key "l" + next_column + +def_key "." + show_lyrics + +def_key "n" + next_found_item +def_key "N" + previous_found_item + +def_key "M" + move_selected_items_up +def_key "m" + move_selected_items_down + +# not used but bound +def_key "J" + move_sort_order_down +def_key "K" + move_sort_order_up + +def_key "g" + move_home + +def_key "G" + move_end diff --git a/ncmpcpp/config b/ncmpcpp/config new file mode 100644 index 0000000..2b23993 --- /dev/null +++ b/ncmpcpp/config @@ -0,0 +1,92 @@ +############################################################################## +## This is the example configuration file. Copy it to $HOME/.ncmpcpp/config ## +## or $XDG_CONFIG_HOME/ncmpcpp/config and set up your preferences. ## +############################################################################## +# +##### directories ###### +## +## Directory for storing ncmpcpp related files. Changing it is useful if you +## want to store everything somewhere else and provide command line setting for +## alternative location to config file which defines that while launching +## ncmpcpp. +## +# +ncmpcpp_directory = ~/.config/ncmpcpp +# +## +## Directory for storing downloaded lyrics. It defaults to ~/.lyrics since other +## MPD clients (eg. ncmpc) also use that location. +## +# +lyrics_directory = ~/.config/ncmpcpp/lyrics +# +##### connection settings ##### mpd_host = "localhost" +mpd_port = 6600 +# +mpd_connection_timeout = 5 +# +## Needed for tag editor and file operations to work. +## +mpd_music_dir = "/mnt/Music" +# +mpd_crossfade_time = 5 + + +media_library_primary_tag = album_artist + +follow_now_playing_lyrics = yes + +allow_for_physical_item_deletion = no + +lastfm_preferred_language = en + +show_hidden_files_in_local_browser = yes + +screen_switcher_mode = playlist, browser, last_fm + +display_bitrate = yes + +external_editor = vim + +visualizer_look = " " +startup_screen = visualizer +startup_slave_screen = playlist +startup_slave_screen_focus = yes +locked_screen_width_part = 30 +#### Playlist formatting + +song_list_format = "$3{%a »$7 %t $/r$/u$R$b$6%l$/b }|{%f$/r}" +now_playing_prefix = "$b$6 »» " +now_playing_suffix = "$/b" +/*now_playing_suffix = " >>>>"*/ +playlist_display_mode = "classic" + +song_columns_list_format = "(50)[6]{t} (50)[4]{ar} $b(5f)[9]{lr}$/b" +#song_columns_list_format = "(25)[6]{a} (25)[4]{tr} (5)[6]{lr:Length}" + +#### General formatting +titles_visibility = "no" +header_visibility = "no" +statusbar_visibility = "no" +playlist_show_remaining_time = yes +#volume_color = "black:b" +#/*alternative_header_first_line_format = $(2_16)$b» {%f} «$/b$9*/ +alternative_header_first_line_format = $3$b» {%t} «$/b +alternative_header_second_line_format = $7{%b}|{/%D/} +user_interface = alternative +current_item_prefix = $(16)$r +current_item_suffix = $/r$(end) + + +#### Misc stuff +discard_colors_if_item_is_selected = "yes" +autocenter_mode = "yes" +centered_cursor = "yes" +mouse_support = "yes" +colors_enabled = "yes" +store_lyrics_in_song_dir = "yes" +song_window_title_format = ncmpcpp +ask_before_clearing_playlists = "yes" +volume_change_step = "1" + +execute_on_song_change = ~/.config/ncmpcpp/ncmpcpp-ueberzug/ncmpcpp_cover_art.sh && notify-send "Now Playing" "$(mpc --format '%title% \n%artist% - %album%' current)" diff --git a/ncmpcpp/error.log b/ncmpcpp/error.log new file mode 100644 index 0000000..15aa72d --- /dev/null +++ b/ncmpcpp/error.log @@ -0,0 +1 @@ +TagLib: Could not open file /mnt/trollshotlol@maeve/Music/RADWIMPS/Your Name (Original Motion Picture Soundtrack)/01 Dream Lantern.mp3 diff --git a/ncmpcpp/lyrics/100 gecs - 745 sticky.txt b/ncmpcpp/lyrics/100 gecs - 745 sticky.txt new file mode 100644 index 0000000..0b0266c --- /dev/null +++ b/ncmpcpp/lyrics/100 gecs - 745 sticky.txt @@ -0,0 +1,48 @@ +[Laura Les:] +I make my money on my own, yeah +Wakin' up five in the morning, yeah +Throwin' money in the oven, yeah +Fuck sleep and his cousin, yeah +I've been on a roll, yeah +I spend my money like it's stolen, yeah +Shit, I'm already broke and it's only 7:45 in the morning, yeah + +[Dylan Brady:] +Goddamn, what the fuck? +Feel like I'm not good enough +Get off of me, I swear I'll do it all +Do it all, do it all +I can swear I can do it all +Do it all, do it all +I can swear I can do it all + +[Laura Les:] +I'm done trying to plan +Do what I want, don't hold my hand +I can do anything I want, first try +You take like ten tries, hurtin' my eyes +(Oh my god) + +[Dylan Brady:] +Batshit, got a check and I spent it +Money got me feelin' like a dentist +I can do anything I put my mind to +You can't do anything even if you wanted to (Yeah) + +[Laura Les:] +I make my money on my own, yeah +Wakin' up five in the morning, yeah +Throwin' money in the oven, yeah +Fuck sleep and his cousin, yeah +I've been on a roll, yeah +I spend my money like it's stolen, yeah +Shit, I'm already broke and it's only 7:45 in the morning, yeah + +[Dylan Brady:] +Goddamn, what the fuck? +Feel like I'm not good enough +Get off of me, I swear I'll do it all +Do it all, do it all +I can swear I can do it all +Do it all, do it all +I can swear I can do it all \ No newline at end of file diff --git a/ncmpcpp/lyrics/100 gecs - 800db cloud.txt b/ncmpcpp/lyrics/100 gecs - 800db cloud.txt new file mode 100644 index 0000000..670b7ce --- /dev/null +++ b/ncmpcpp/lyrics/100 gecs - 800db cloud.txt @@ -0,0 +1,52 @@ +[Laura Les:] +He said, "I love you," on the plane +I said, "I love you too" +He said, "Everything is different now, everything has changed +Always on a plane, always something new" +I said, "Nothing's new, nothing's changed, I still need you" +I'm 'bout to hit the boof +Smokin' somethin' new + +[Dylan Brady:] +No rules, then I smoke, then it's all gone +Hit that G so hard that I fall off +Taking shots in the dark, that's a bad call +Going straight for your head, gotta saw it off +(Go, go, go, go, go) +I got a bag on the way +(Go, go, go, go, go) +Smokin' a zip in a day +(Go, go, go, go, go) +What were you trying to say? +(Go, go, go, go, go) +Making it up on the way + +[Laura Les:] +I never say what I need, when I need you +Never say what I need, when I need you +I'm good on the weed but I need you +I might hit the weed, I might hit the boof +I'm addicted to Monster, money, and weed, yeah +I'm blowin' clouds so loud, you can't fuckin' see, yeah +I'm addicted to everything that I see, yeah +I'm addicted to making money off weed, yeah +I might go and throw my phone into the lake, yeah +It ain't hard to quit caring what you think, yeah +Burnt me one too many times like a tree, yeah +Now there's fire raining down on your screams, yeah + +[Laura Les & Dylan Brady:] +Ohhhh +Yeah +(AAAAAAAA) +I hit the big boof then it's all gone +(AAAAAAAA) +I hit the big boof then it's gone +(AAAAAAAA) +I hit the big boof and the weed, yeah +(AAAAAAAA) +I hit the big boof then it's gone +Just shut the fuck up, where's the weed at? +Just shut the fuck up, where's the weed? +Just please fuck me up, where's the weed at? +Just shut the fuck up \ No newline at end of file diff --git a/ncmpcpp/lyrics/100 gecs - money machine.txt b/ncmpcpp/lyrics/100 gecs - money machine.txt new file mode 100644 index 0000000..fe835eb --- /dev/null +++ b/ncmpcpp/lyrics/100 gecs - money machine.txt @@ -0,0 +1,51 @@ +[Laura Les:] +Hey, you lil' piss baby +You think you're so fucking cool? Huh? +You think you're so fucking tough? +You talk a lotta big game for someone with such a small truck +Aw, look at those arms +Your arms look so fucking cute +They look like lil' cigarettes +I bet I could smoke you +I could roast you +And then you'd love it and you'd text me "I love you" +And then I'd fucking ghost you + +With the big boys coming with the big stuff +I feel so clean like a money machine, oh yeah +Big boys coming with the big trucks +Feel so clean like a money machine, oh yeah +Big boys coming with the big trucks +Feel so clean like a money machine, oh yeah +Big boys coming with the picture +Feel so clean like a money machine, oh yeah (oh yeah) + +Feel so clean like a money machine +Feel so clean like a money machine +Feel so clean like a money machine +Feel so clean like a money machine + +[Dylan Brady:] +Tell me what's the deal, I've been tryin' to go to bed +I've been up for days, I've been tryna get ahead +Said it all before, and I'll say it once again +I'm better off alone +Tell me what's the deal, I've been trying to go to bed +I've been up for days, I've been tryna get ahead +Said it all before, and I'll say it once again +I'm better off alone + +[Laura Les:] +With the big boys coming with the big stuff +I feel so clean like a money machine, oh yeah +Big boys coming with the big trucks +Feel so clean like a money machine, oh yeah +Big boys coming with the big trucks +Feel so clean like a money machine, oh yeah +Big boys coming with the picture +Feel so clean like a money machine, oh yeah (oh yeah) + +Feel so clean like a money machine +Feel so clean like a money machine +Feel so clean like a money machine +Feel so clean like a money machine \ No newline at end of file diff --git "a/ncmpcpp/lyrics/100 gecs - xXXi_wud_nvrst\303\270p_\303\234XXx.txt" "b/ncmpcpp/lyrics/100 gecs - xXXi_wud_nvrst\303\270p_\303\234XXx.txt" new file mode 100644 index 0000000..75acfd7 --- /dev/null +++ "b/ncmpcpp/lyrics/100 gecs - xXXi_wud_nvrst\303\270p_\303\234XXx.txt" @@ -0,0 +1,142 @@ +[Tommy Cash:] +Mr. Worldwide +International killa +(Babe, babe, babe, babe) +100 gecs, Tommy Cash in this bitch + +[Hannah Diamond (Tommy Cash):] +Baby, you know that I got you (Got you) +I could never stop you (Stop you) +I would never stop you (Stop you) +'Cause you know I'm crazy (Crazy) +Crazy for you, baby +And you gotta know (Babe, babe) +Every day, you got me always feeling like +Baby, you know that I got you +I could never stop you +I would never stop you +'Cause you know I'm crazy +Crazy for you, baby +And you gotta know +Every day, you got me always feeling like +Baby, you know that I got you +I could never stop you +I would never stop you +'Cause you know I'm crazy +Crazy for you, baby +And you gotta know +Every day, you got me always feeling like + +[Tommy Cash:] +I'm always highest in the room +There's nothing new +Trippin' on, trippin' on mushrooms +Flyin' through the rooms +I'm a madman from the Moon +Change up your view +I be bossin', bossin' on them rules +Smokin' out the school +Slowly gliding, gliding in the pure +I found the cure +This way to truest, truest you +Boy, you can do +I'm lookin', lookin' out for you +Pay-per-view +There is nothing I can't do +Now you need to find my crew +Find my crew, find my crew + +[Hannah Diamond:] +Ba-ba-ba-ba-baby, you know that I got you +I could never stop you +I would never stop you +'Cause you know I'm crazy +Crazy for you, baby +And you gotta know +Every day, you got me always feeling like +Baby, you know that I got you +I could never stop you +I would never stop you +'Cause you know I'm crazy +Crazy for you, baby +And you gotta know +Every day, you got me always feeling like + +[Dylan Brady:] +Giving my heart for you to take +We could go and drive and leave this place +Getting my strength from your embrace +Baby, let's go all the way +Giving my heart for you to take +We could go and drive and leave this place +Getting my strength from your embrace +Baby, let's go all the way + +[Tommy Cash:] +Death is easy, life is hard +Every second is a path +Every moment, piece of art +I'm the dopest, shooting star +Death is easy, life is hard +Every second is a path +Every moment, piece of art (Yeah) +I'm the dopest, shooting star + +[Hannah Diamond:] +Baby, you know that I got you +I could never stop you +I would never stop you +'Cause you know I'm crazy +Crazy for you, baby +And you gotta know +Every day, you got me always feeling like +Baby, you know that I got you +I could never stop you +I would never stop you +'Cause you know I'm crazy +Crazy for you, baby +And you gotta know +Every day, you got me always feeling (Go!) + +[Hannah Diamond:] +Every day, you got me always feeling like +Every day, you got me always feeling like + +Baby, you know that I got you +I could never stop you +I would never stop you +'Cause you know I'm crazy +Crazy for you, baby +And you gotta know +Every day, you got me always feeling like +Baby, you know that I got you +I could never stop you +I would never stop you +'Cause you know I'm crazy +Crazy for you, baby +And you gotta know +Every day, you got me always feeling like +Baby, you know that I got you +I could never stop you +I would never stop you +'Cause you know I'm crazy +Crazy for you, baby +And you gotta know +Every day, you got me always feeling like +Baby, you know that I got you +I could never stop you +I would never stop you +'Cause you know I'm crazy +Crazy for you, baby +And you gotta know +Every day, you got me always feeling like +Baby, you know that I got you +I could never stop you +I would never stop you +'Cause you know I'm crazy +Crazy for you, baby +And you gotta know +Every day, you got me always feeling like +Baby, you know that I got you +I could never stop you +I would never stop you \ No newline at end of file diff --git a/ncmpcpp/lyrics/Death Grips - Bass Rattle Stars Out the Sky.txt b/ncmpcpp/lyrics/Death Grips - Bass Rattle Stars Out the Sky.txt new file mode 100644 index 0000000..9c65bae --- /dev/null +++ b/ncmpcpp/lyrics/Death Grips - Bass Rattle Stars Out the Sky.txt @@ -0,0 +1,47 @@ +Everybody anybody anybody everybody +Get off me +Everybody aint nobody anybody aint nobody +Get off me + +Bury two thumb disappear three eye run among you +Bass rattle stars out the sky + +Never not at war torn mystic sheddin bands form of linguistic +Subliminal exit lurk in cryptic black google search it won't find shit +Fifth attitude bury all my business + +Bury two thumb disappear three eye run among you +Bass rattle stars out the sky + +Chemical leak melts your reef dry heave crease your knees +Python in your belly nauseous got the chills +Draw the blinds its time to get +Can't explain its a feeling inhale the moment till I scorch your lips don't hurt me +Gypsy gallop does you dirty +Peak at three thirty in the morning with your voice in my headquarters and I'll take you there + +Everybody anybody anybody everybody +Get off me +Everybody aint nobody anybody aint nobody +Get off me + +Bury me two thumb disappear three eye I run among you +Bass rattle stars out the sky + +Sudden death in the west london connect live and direct +Mad cow on the beat break me speed lace your senses +Can't think straight I can't relate its all a dream mate leave a message +I'm slangin pain in the paint can't make it stop +Said knock that off I rep that gutter fly +Come from from where you run from hide aint no level bove this high +Off I rep that gutter fly off I rep that gutter fly +Base rattle stars out the sky + +Get off me + +Everybody anybody anybody everybody +Get off me +Everybody aint nobody anybody aint nobody +Get off me + +Bury two thumb disappear three eye run among you base rattle stars out the sky \ No newline at end of file diff --git a/ncmpcpp/lyrics/Death Grips - Black Dice.txt b/ncmpcpp/lyrics/Death Grips - Black Dice.txt new file mode 100644 index 0000000..b65878f --- /dev/null +++ b/ncmpcpp/lyrics/Death Grips - Black Dice.txt @@ -0,0 +1,52 @@ +Feel me now + +My forefinger flippin pentagrams +Left hand catch them pix by them peak facin south +Pinhole pic of my wingspan jail breakin doubt +Highest vibration ninth ring of fire crowned +War cry feel my call hear my chamber revolve +In your brain like the halls of Amenti +Treat a bitch like a whore +Leave your pink sock at the door +Saturn level flexed +Like these fractals I coalesce +I'm not takin this shit anymore +One way in come again one way in no way out +Cheek in tongue when in doubt feel me now +Violators feedem vapors don't do me no favors + +Feel me now + +Drop top changaa flow go boom boom off my rockers +Rollin doom bumbata choppers +See me through spot light cherry +Fog like Nunhead no teeth mary +Don't carry on +Don't where are we how far along +Me care not dare not key my brom +My life on a limb about to break +I'm a tower pon tectonic plate + +Feel me now + +Why you think I'm havin everything you're rimmin ass for askem +Whose ass they're rimmin when I'm flaggin +Load your cannon shutter flash heavy damage +Steady hand shit forget me you can't bitch +Slappin click clack tricks stretch please +My sleeves plastic can't breath in this atmos +Fuck atlas my ego palms planets +Fuck you yeah yeah its that fuck you can't stand slip +Cut you cause I can dip + +Feel me now + +I'm the man who press that button +Sweaty palm get caught bluffin +Fold a man into nothin for nothin +My oxidized gold shaft floods your jugular with lucifer +I'll shoot it word feel like you swallowed jupiter +Today your city tomorrow lifting the universe +One way in one way out +Cheek in tongue when in doubt +Feel me now \ No newline at end of file diff --git a/ncmpcpp/lyrics/Death Grips - Get Got.txt b/ncmpcpp/lyrics/Death Grips - Get Got.txt new file mode 100644 index 0000000..eae6699 --- /dev/null +++ b/ncmpcpp/lyrics/Death Grips - Get Got.txt @@ -0,0 +1,93 @@ +Get get get get +Got got got got +Blood rush to my +Head lit hot lock +Poppin’ off the +Fuckin’ block knot +Clockin’ wrist slit +Watch bent thought bot + +[Verse 1] +Tail pipe draggin’ volume blastin’ bailin’ out my brain +Red light flash +Dem stop I smash +Abraxas, hydroplane, massive +Catch this flight flow +Rainin’ madness +Mastered mine and laced +The ave with black cat fish tailin’ waves of stratus +Curb right ta far left lane + +Don’t wait for me, if I care +Bout anything, anywhere +Losin’ myself, I get the stares +What I’m lookin’ at, wasn’t there +(Wasn’t there) + +Nothin’ out there +Can’t stay inside +Hit the bar, sleep deprived +Who drove the car +I’m still alive +Up in smoke, moon was low +How’d you know +Didn’t say I did +Whose is this, you know what this is.. but do you know + +[Hook] +Fly inside out +Rot dem big shot simp slot shit but a one hit quick stop + +[Verse 2] +So many ways +Ta skin the frame +Remember when +First got strange +Now I just think it life obey +So what comes next +Right away +(Right away) + +Raise the cup, tilt it dry +Come black cloud +Cover the sky +Tongue thought pupil +Of your eye +Sickness moves you can’t deny +Lickin’ thought you mastermind +For mercy man cry + +Yeah I’m knowin’ and +You know why +Nail thought mental +Ever dem try +Pigeon hole me get crucified +Can’t clone this edge +What’s it cost +To lose your head +Wit out end up lost +Should be askin’ +Where’s the safe +Born wit a ski mask +On my face + +[Hook] + +[Verse 3] +Lycanthropic manic cycles +Fire water burnin’ bibles +Wake up ragin’ call a taxi +Take me to the nearest city +Cell light up yeah get at me make it quick though blood im busy (get busy) + +Drilled a hole into my head +Pierced the bone and +Felt the breeze +Lift my thoughts out +Dem sick bed +Wit a pair of crow +Skeleton wings +Know nothin’ since then +It seems +Been floatin’ thought +The nexus threadin’ dreams \ No newline at end of file diff --git a/ncmpcpp/lyrics/Death Grips - Lil Boy.txt b/ncmpcpp/lyrics/Death Grips - Lil Boy.txt new file mode 100644 index 0000000..3f09505 --- /dev/null +++ b/ncmpcpp/lyrics/Death Grips - Lil Boy.txt @@ -0,0 +1,65 @@ +Burn through it burn through it +I'm not takin turns to it turns to it +You know we burn through it burn through it +We aint takin turns to turns to it + +Coughin up sirens I'm firin +Krocadil lips off your smile +Quit that fidget looks suspicious +Who dat screw dat aint got my digits + +Fear over pride lil boy +Flood you can't hide lil boy +Face of a woman lil boy +Tears of a child lil boy + +I'm rising sign of sulfur +Skeletal bell toller +Handle in each of my tentacles +I'm moonshining juice don't try me +Live to feel life beat me nothing hurts +I'm seething your smoke signals proceed me +I'm inside my tv +Where everyone but I can see me +Why are you here + +Fear over pride lil boy +Flood you can't hide lil boy +Face of a woman lil boy +Tears of a child lil boy + +Burn through it burn through it +I'm not takin turns to it turns to it +You know we burn through it burn through it +We aint takin turns to it turns to it + +You know we burn through it burn through it +I'm not takin turns to it turns to it + +See myself come spin through top of you +My flint lit slit that attitude +Lil brain got confused +Choo choo train of thought in my logic loop + +Fear over pride lil boy +Flood you can't hide lil boy +Face of a woman lil boy +Tears of a child ll boy + +Broken hands on all my fingers +Buckle down my knuckles like screamers +Stitch up my blown out trench with leather streamers +I keepem hangin from my balcony shrivel in my sun +Warm piss showin through his cheap slacks this bitch is done +Open my front ragin like I've never slept +Make him cry like a baby formula on the breath +Needle of your eye lil boy +River nile wide lil boy +Fear over pride lil boy +Flood you can't hide lil boy +Face of a woman lil boy +Tears of a child lil boy +In a foreign land lil boy +Single file lil boy +You know we burn through it burn through it +We aint takin turns to it turns to it \ No newline at end of file diff --git a/ncmpcpp/lyrics/Death Grips - No Love.txt b/ncmpcpp/lyrics/Death Grips - No Love.txt new file mode 100644 index 0000000..f9caf71 --- /dev/null +++ b/ncmpcpp/lyrics/Death Grips - No Love.txt @@ -0,0 +1,87 @@ +How the trip never stops +On and on, it's beyond insane +Why I set myself up +In a raging sea of flames? + +You're fit to learn the proper meaning of a beatdown +Madness, chaos in the brain +Let my blood flow, make my blood flow through you, mane +You got no business questioning a thang +You're fit to learn the proper meaning of a beatdown +Madness, chaos in the brain +Let my blood flow, make my blood flow through you, mane +You got no business questioning a thang +You're fit to learn the proper meaning of a + +Never not on it, leanin' so hard you're ashamed +You can't dismiss this sick transmission, huffs your brain +Exhale your will and forget I ever knew you +Fuck do you do? +Fuck a man with hips for hulu +Rack a snitch, chalk and cue you +Corner pocket consume you +Too many hoes in my +Too many hoes in my motherfuckin' meal +Asking if I know how a motherfucker feels +How a motherfucker feels +Slit them choke, flip them boat +Dead bitch float, swollen corpse +No remorse, navigated off course +Off course I can make you scream but if you ask for more +Bullshit, matador, grab the floor, whip it cracked to all fours +You whimper while I check my phone +Who's next? Assassin roam +Music drifts, I have no home +Choose this life you're on your own + +You're fit to learn the proper meaning of a beatdown +Madness, chaos in the brain +Let my blood flow, make my blood flow through you, mane +You got no business questioning a thang +You're fit to learn the proper meaning of a beatdown +Madness, chaos in the brain +Let my blood flow, make my blood flow through you, mane +You got no business questioning a thang +You're fit to learn the proper meaning of a + +Swallowed way too much +Couldn't handle it, I fell +Down a spiral stair case winding to hell + +Fuck it, now I can't quit, will never be the same +I got that attitude, you got no thang +I'm fit to hurt you; gives a fuck about the way I move weight? +Dark matter, flu state of consciousness +Blew straight through you won't do shit +But beg me to do this +Again and again and again and again +Strangler clutch, sine wave deconstruct +My way or no way, bangin' hey makin' lust +Lucid nut shake shake it up +Booyakah +You're a bitch made to be crushed +Came like, what +Now you crave my, touch +Flat busted on front street cake cuppin' +Say you wasn't lion mane +I done been done with tame +Head hunter, fuck the fame +Switch lanin' ripper slangin' +Hit me nuclear wind at my back +Smokin' goldfish at the photo mat +Load my clap clap can't trust 'em never did +What it is? + +You're fit to learn the proper meaning of a beatdown +Madness, chaos in the brain +Let my blood flow, make my blood flow through you, mane +You got no business questioning a thang +You're fit to learn the proper meaning of a beatdown +Madness, chaos in the brain +Let my blood flow, make my blood flow through you, mane +You got no business questioning a thang +You're fit to learn the proper meaning of a beatdown +Madness, chaos in the brain +Let my blood flow, make my blood flow through you, mane +You got no business questioning a thang +You're fit to learn the proper meaning of a \ No newline at end of file diff --git a/ncmpcpp/lyrics/Death Grips - Pop.txt b/ncmpcpp/lyrics/Death Grips - Pop.txt new file mode 100644 index 0000000..fb86d92 --- /dev/null +++ b/ncmpcpp/lyrics/Death Grips - Pop.txt @@ -0,0 +1,28 @@ +Pop pop pop pop + +Your crisis is my alarm +Why I'm like shh stay calm +You fight shit I ride upon +My knife been drawn +3-6-5 light of dawn +Lit up rock you live under +Ass backwards muthafucka features like hot butter +Like your brothers your father and your sisters your mother +Trend setter maximum third planet from the sun orbit my lungs +Bulldozin cul de sacs ground under over every act +Cut no slack no slack + +Pop pop pop pop + +No chance to throw I rush the mound +Rage stormin off the chains remind me of rape house slave cock rings +You're played out like talking +Your cadence is sloppy +Can't break me I got me +You're grave stink I'm lofty +You're lady like lolli +Pop tramp on that jigaboo goddamn I'm so sick of you +I despise that shit what I would never align me with +Feel free to mime me but don't be saltine when I call you a biter bitch + +Pop pop pop pop \ No newline at end of file diff --git a/ncmpcpp/lyrics/Death Grips - Stockton.txt b/ncmpcpp/lyrics/Death Grips - Stockton.txt new file mode 100644 index 0000000..b5615c5 --- /dev/null +++ b/ncmpcpp/lyrics/Death Grips - Stockton.txt @@ -0,0 +1,51 @@ +I'm bouncin whoop whoop +Loud and lit Allen Poe poe shit +I'm bout ta loose that blue + +I can't feel hype I man kill hype +Slapped to still life +Actors posin plastic like token +Can't fit my low end splits your ocean +Obey the chosen the latent quotient raised to drogen +Heavy is the head you're blowin +I'm fuckin flippin +Minute ago wasn't schiz but now I'm itchin +Critical condition +Thought I told you not to listen +This road don't stop shiftin +I'm floatin I'm driftin + +I'm bouncin whoop whoop +Loud and lit Allen Poe poe shit +I'm bout ta loose that blue + +You aint heard not my problem +Past aint poppin calli curbed beyond forgotten +Pervin while them clutch the bottom +Feeders suck like stuck in Stockton +Cuttem off like drunks been clockin +Least three a month prestalkin +Noted symptoms hid like like Laden +Bin through shit like sodom +Instinct man no question looped me into no direction +No footprints in this bleach I tread them don't know yet but thats expected + +I'm bouncin whoop whoop +Loud and lit Allen Poe poe shit +I'm bout ta loose that blue + +Caved in my ribs drug out fucked out Samhain skid off bay bridge +Come with me and I'll unhurt you +Keep all I do locked kept your move +Keep all I do locked kept your move +Should we be worried what I'm not +Heard bleeders knock all types a shit +Is of no consequence +I'm out there I'm out there +I'm pushin mojo yo yo crack back and blow yo whole set lack +The k honas ta make it clap +Bouncin get up wit it + +I'm bouncin whoop whoop +Loud and lit Allen Poe poe shit +I'm bout ta loose that blue \ No newline at end of file diff --git a/ncmpcpp/lyrics/Emma Stone, Callie Hernandez, Sonoya Mizuno, Jessica Rothe - Someone in the Crowd.txt b/ncmpcpp/lyrics/Emma Stone, Callie Hernandez, Sonoya Mizuno, Jessica Rothe - Someone in the Crowd.txt new file mode 100644 index 0000000..5a7f6e7 --- /dev/null +++ b/ncmpcpp/lyrics/Emma Stone, Callie Hernandez, Sonoya Mizuno, Jessica Rothe - Someone in the Crowd.txt @@ -0,0 +1,84 @@ +[Tracy:] +You got the invitation + +[Alexis:] +You got the right address + +[Tracy:] +You need some medication? + +[Caitlin:] +The answer's always yes + +[Tracy:] +A little chance encounter +Could be the one you've waited for + +[Alexis, Caitlin & Tracy:] +Just squeeze a bit more + +[Alexis:] +Tonight we're on a mission +Tonight's the casting call + +[Caitlin:] +If this is the real audition + +[Mia:] +Oh, God, help us all + +[Tracy:] +You make the right impression +Then ev'rybody knows your name + +[Alexis & Caitlin:] +We're in the fast lane + +[Alexis:] +Someone in the crowd +Could be the one you need to know +The one to fin'lly lift you off the ground + +[Tracy:] +Someone in the crowd could +Take you where you wanna go +If you're the someone ready to be found + +[Alexis:] +The someone ready to be found + +[Caitlin & Tracy:] +Do what you need to do +'Til they discover you + +[Alexis, Caitlin & Tracy:] +And make you more than who +You're seeing now +So with the stars aligned + +[Mia:] +I think I'll stay behind + +[Alexis, Caitlin & Tracy:] +You've got to go and find + +[Caitlin:] +That someone in the crowd + +[All:] +That someone in the crowd + +[Mia:] +Is someone in the crowd the only thing you really see? +Watching while the world keeps spinning 'round? +Somewhere there's a place where I find who I'm gonna be +A somewhere that's just waiting to be found + +[All:] +Someone in the crowd could be the one you need to know +The someone who could lift you off the ground +Someone in the crowd could take you where you wanna go +Someone in the crowd could make you +Someone in the crowd could take you +Flying off the ground +If you're the someone ready to be found \ No newline at end of file diff --git a/ncmpcpp/lyrics/Godspeed You! Black Emperor - Antennas to Heaven.txt b/ncmpcpp/lyrics/Godspeed You! Black Emperor - Antennas to Heaven.txt new file mode 100644 index 0000000..c09d73c --- /dev/null +++ b/ncmpcpp/lyrics/Godspeed You! Black Emperor - Antennas to Heaven.txt @@ -0,0 +1,33 @@ +[Part I (0:00-1:00):"Moya Sings 'Baby-O'..."] +What'll we do with the baby-o? +What'll we do with the baby? +What'll we do with the baby-o? + +Wrap him up in a tablecloth +Throw him up in the old hayloft +That's what we do with the baby +That's what we do with the baby-o + +Every time the baby grins +Give my baby another bottle of gin +That's what we do with the baby +That's what we do with the baby-o + +Every time the baby cries +Stick my finger in the babies eyes +That's what we do with the baby +That's what we do with the baby-o + +[Part II (01:00-01:58):"Edgyswingsetacid"] + +[Part III (01:58-2:45):"[Glockenspiel Duet Recorded on a Campsite In Rhinebeck, N.Y.]"] + +[Part IV (2:45-4:03):"'Attention...Mon Ami...Fa-Lala-Lala-La-La...' [55-St. Laurent]"] +Mon ami! Mon ami! Coco, Coco, le petit singe… +Le bon roi Dagobert, le bon roi Dagobert, a, le bon roi Dagobert, a mis sa culotte à l'envers, le grand Saint Eloi lui dit: “O mon roi, votre majesté est mal culottée!” “Cest vrai, lui dit le roi, je vais la remettre à l'endroit!” C'était un idiot. J'ai vu Coco, Coco le petit singe, hier au Zoo de Toronto dans sa petite cage. Il m’a dit si tu veux on va jouer. Attention! Mon ami, mon ami! Fa-lala-lala-la-la… + +[Part V (4:03-13:46):"She Dreamt She Was a Bulldozer, She Dreamt She Was Alone in an Empty Field"] + +[Part VI (13:46-16:55):"Deathkamp Drone"] + +[Part VII (16:55-18:58):"[Antennas to Heaven...]"] \ No newline at end of file diff --git a/ncmpcpp/lyrics/Godspeed You! Black Emperor - Sleep.txt b/ncmpcpp/lyrics/Godspeed You! Black Emperor - Sleep.txt new file mode 100644 index 0000000..d643919 --- /dev/null +++ b/ncmpcpp/lyrics/Godspeed You! Black Emperor - Sleep.txt @@ -0,0 +1,6 @@ +[Part 1 (0:00-1:10):"Murray Ostril: '...They Don't Sleep Anymore on the Beach...'"] +Anyways, let's see what else I, uh... It was Coney Island. They called Coney Island, "the playground of the world." There was no place like it, in the whole world, like Coney Island when I was a youngster. No place in the world like it, and it was so fabulous. Now it's shrunk down to almost nothing, you see. And, uh, I still remember in my mind how things used to be, and uh, you know, I feel very bad. But people from all over the world came here. From all over the world, it was the playground -- they called it the playground of the world, over here. Anyways, uh, I... uh... you know... I even got -- when I was, uh, when I was very small, I even got lost at Coney Island, but they found me. On the, on, on the beach. And we used to sleep on the beach here, sleep overnight. They don't do that anymore. Things changed, you see. They don't sleep anymore on the beach... + +[Part 2 (1:10-13:24):"Monheim"] + +[Part 3 (13:24-23:18):"Broken Windows, Locks of Love Pt. III."] \ No newline at end of file diff --git a/ncmpcpp/lyrics/Godspeed You! Black Emperor - Static.txt b/ncmpcpp/lyrics/Godspeed You! Black Emperor - Static.txt new file mode 100644 index 0000000..424412e --- /dev/null +++ b/ncmpcpp/lyrics/Godspeed You! Black Emperor - Static.txt @@ -0,0 +1,67 @@ +[Part I (0:00-3:34):"Terrible Canyons of Static"] + +[Part II (3:34-4:43):"Atomic Clock."] +At the tone... 3 hours, 21 minutes; coordinated universal time + +[Part III (4:43-7:22):"Chart #3"] +...prepared in innocence to meet our king of glory +And so we have this +You have it in your secret windows +And you're understanding to understand it and to bring it forth +It takes minute detail +It takes a holy life +It takes emotions +It takes dedication +It takes dedication +It takes a death +And only God can allow it +And you couldn't do it if you're not the seed of God +And so the path through the great corridors +These are corridors unto his perfection +That is which the prophet and the Urim and Thummim has penetrated +That through this great sea of blackness +That I penetrated through these corridors +And I went through that last segment +Where I went through these dark serpentines +I passed through that corridor +Where they sat, where they are +And when you penetrate to the most high God +You will believe you are mad +You will believe you've gone insane +But I tell you if you follow the secret window +And you die to the ego nature +You will penetrate this darkness +Oh yes there's many a man or woman +That's been put in the insane asylum +When this has happened to them +And they're sitting there today, people think they're insane +But they saw something that's real +And they see it when they're on drugs +The only thing is they see it +Not through the light of God, and the way I show you +I show you to see it through the light of God +And the understanding of God +Because when you see the face of God, you will die +And there will be nothing left of you +Except the God-man, the God-woman +The heavenly man, the heavenly woman +The heavenly child +There'll be prayer on your lips day and night +There'll be a song of jubilee waiting for your king +There will be nothing you will not be be looking for in this world +Except in for your god +This is all a dream +A dream in death + +And so I went through that window +And the tower of hell and the great serpentines of the highest order +And I went through that when I showed you chart #3 +The question is asked and learned and someone who can turn this gift, this horrible gift of mine reclaimed +Or in front of me you can ask me a question +If it's asked, from the right being or the right soul out of Urim and Thummim +I can give you unspoken words that's never been spoken, it's not in your bible +Yet, it does clarify what is spoken in the bible... + +[Part IV (7:22-17:10):"World Police and Friendly Fire"] + +[Part V (17:10-22:36):"[...+The Buildings They Are Sleeping Now]"] \ No newline at end of file diff --git a/ncmpcpp/lyrics/Godspeed You! Black Emperor - Storm.txt b/ncmpcpp/lyrics/Godspeed You! Black Emperor - Storm.txt new file mode 100644 index 0000000..22a0408 --- /dev/null +++ b/ncmpcpp/lyrics/Godspeed You! Black Emperor - Storm.txt @@ -0,0 +1,15 @@ +[Part I (0:00-6:15):"Lift Yr. Skinny Fists, Like Antennas to Heaven..."] + +[Part II (6:15-17:25):"Gathering Storm/Il Pleut à Mourir [+Clatters Like Worry]"] + +[Part III (17:25-18:40):"'Welcome to Arco AM/PM...' [ L.A.X.; 5/14/00]"] +Bienvenido a Arco AM/PM Mini-Market. Queremos aconsejarles a nuestros clientes que cualquier persona que se ofrezca a ponerle gasolina a su automóvil, lavarle las ventanas, o solicitar productos, no es empleado ni está asociado con nuestra empresa. Les pedimos que no tengan contacto con estos personajes. Favor de reportar cualquier problema al personal uniformado dentro de la empresa. Gracias por comprar en AM/PM Mini Market y tenga un buen día + +Welcome to Arco AM/PM Mini-Market. We would like to advise our customers that any individual who offers to pump gas, wash windows, or solicit products is not employed by or associated with this facility. We discourage any contact with these individuals, and ask that you report any problems to uniformed personnel inside. Thank you for shopping at Arco AM/PM, and have a pleasant day + +Welcome to Arco AM/PM Mini-Market. We would like to advise our customers that any individual who offers to pump gas, wash windows, or solicit products is not employed by or associated with this facility. We discourage any contact with these individuals, and ask that you report any problems to uniformed personnel inside. Thank you for shopping at Arco AM/PM, and have a pleasant day + +[Part IV (18:40-22:32):"Cancer Towers on Holy Road Hi-Way"] +It's gonna be a long long time +It's gonna be a long long time +(indistinguishable talking) \ No newline at end of file diff --git a/ncmpcpp/lyrics/John Coltrane - Part I - Acknowledgement.txt b/ncmpcpp/lyrics/John Coltrane - Part I - Acknowledgement.txt new file mode 100644 index 0000000..8bd280b --- /dev/null +++ b/ncmpcpp/lyrics/John Coltrane - Part I - Acknowledgement.txt @@ -0,0 +1,10 @@ +A love supreme +A love supreme +A love supreme +A love supreme +A love supreme +A love supreme +A love supreme +A love supreme +A love supreme +A love supreme \ No newline at end of file diff --git "a/ncmpcpp/lyrics/Justin Hurwitz - Mia & Sebastian\342\200\231s Theme.txt" "b/ncmpcpp/lyrics/Justin Hurwitz - Mia & Sebastian\342\200\231s Theme.txt" new file mode 100644 index 0000000..dbcdf6b --- /dev/null +++ "b/ncmpcpp/lyrics/Justin Hurwitz - Mia & Sebastian\342\200\231s Theme.txt" @@ -0,0 +1,48 @@ +[Sebastian:] +City of stars +Are you shining just for me? +City of stars +There's so much that I can't see +Who knows? +I felt it from the first embrace I shared with you + +[Mia:] +That now our dreams may finally come true + +City of stars +Just one thing everybody wants +There in the bars +And through the smokescreen of the crowded restaurants +It's love +Yes, all we're looking for is love from someone else + +[Sebastian:] +A rush +[Mia:] +A glance +[Sebastian:] +A touch +[Mia:] +A dance + +[Both:] +A look in somebody's eyes +To light up the skies +To open the world and send it reeling +A voice that says, I'll be here +And you'll be alright + +I don't care if I know +Just where I will go +'Cause all that I need's this crazy feeling +A rat-tat-tat on my heart + +[Sebastian:] +Think I want it to stay + +City of stars +Are you shining just for me? +City of stars + +[Mia:] +You never shined so brightly \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kanye West - All of the Lights (interlude).txt b/ncmpcpp/lyrics/Kanye West - All of the Lights (interlude).txt new file mode 100644 index 0000000..4b97399 --- /dev/null +++ b/ncmpcpp/lyrics/Kanye West - All of the Lights (interlude).txt @@ -0,0 +1,10 @@ +[Frank Ocean:] +The rings all ringed out +Burn out, cave in +Blackened to dark out +I'm mixed now, fleshed out +There's light with no heat +We cooled out, it's cool out +Life is precious +We found out, we found out +We found out \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kanye West - All of the Lights.txt b/ncmpcpp/lyrics/Kanye West - All of the Lights.txt new file mode 100644 index 0000000..ae01376 --- /dev/null +++ b/ncmpcpp/lyrics/Kanye West - All of the Lights.txt @@ -0,0 +1,101 @@ +All of the lights +Lights, lights +All of the lights + +[Rihanna:] +Turn up the lights in here, baby +Extra bright, I want y'all to see this +Turn up the lights in here, baby +You know what I need, want you to see everything +Want you to see all of the lights + +[Elly Jackson and Rihanna:] +Fast cars, shooting stars +All of the lights, all of the lights +Until it's Vegas everywhere we are (All of the lights) +If you want it, you can get it for the rest of your life +If you want it, you can get it for the rest of your life + +[Kanye West:] +Somethin' wrong, I hold my head +MJ gone, our nigga dead +I slapped my girl, she called the feds +I did that time and spent that bread +I'm heading home, I'm almost there +I'm on my way, heading up the stairs +To my surprise, a nigga replacing me +I had to take him to that ghetto university + +[Kanye West:] +(All of the lights), lights +Cop lights, flashlights, spotlights +Strobe lights, street lights (All of the lights, all of the lights) +Fast life, drug life, thug life +Rock life every night (All of the lights) + +[Rihanna:] +Turn up the lights in here, baby +Extra bright, I want y'all to see this +Turn up the lights in here, baby +You know what I need, want you to see everything +Want you to see all of the lights + +[Kanye West:] +Restraining order, can't see my daughter +Her mother, brother, grandmother hate me in that order +Public visitation, we met at Borders +Told her she take me back, I'll be more supportive +I made mistakes, I bumped my head +Them courts sucked me dry, I spent that bread +She need her daddy, baby, please +Can't let her grow up in that ghetto university + +[Kanye West:] +(All of the lights), lights +Cop lights, flashlights, spotlights +Strobe lights, street lights (All of the lights, all of the lights) +Fast life, drug life, thug life +Rock life every night (All of the lights) + +[Rihanna:] +Turn up the lights in here, baby +Extra bright, I want y'all to see this +Turn up the lights in here, baby +You know what I need, want you to see everything +Want you to see all of the lights + +[Kid Cudi:] +Gettin' mine, baby +Gotta let these niggas know, yeah +Gettin' right, babe +You should go and get your own +Gettin' mine, baby +Gotta let these niggas know, yeah +Gettin' right, babe +You should go and get your own + +[Fergie, Rihanna and Drake:] +Unemployment line, credit card declined +Did I not mention I was about to lose my mind? +And also was about to do that line +'Kay, okay, you know we going all the way this time +We going all the way this time +We going all the way this time +We going all the way this time +We going all the way this time + +Turn up the lights in here, baby +Extra bright, I want y'all to see this +Turn up the lights in here, baby +You know what I need, want you to see everything +Want you to see all of the lights + +[Alicia Keys and Elton John:] +Whoa, whoa +(I tried to tell you, but all I could say was oh) +Whoa, whoa +(I tried to tell you, but all I could say was oh) +Whoa, whoa +(I tried to tell you, but all I could say was oh) +Whoa, whoa +(I tried to tell you, but all I could say) \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kanye West - Dark Fantasy.txt b/ncmpcpp/lyrics/Kanye West - Dark Fantasy.txt new file mode 100644 index 0000000..d86d886 --- /dev/null +++ b/ncmpcpp/lyrics/Kanye West - Dark Fantasy.txt @@ -0,0 +1,96 @@ +[Nicki Minaj:] +You might think you've peeped the scene +You haven't, the real one's far too mean +The watered-down one, the one you know +Was made up centuries ago +They made it sound all wack and corny +Yes, it's awful blasted boring +Twisted fictions, sick addiction +Well, gather 'round, children, zip it, listen + +[Justin Vernon and Teyana Taylor:] +Can we get much higher? (So high) +Oh, oh, oh +Oh, oh, oh-oh, oh (Oh) +Can we get much higher? (So high) +Oh, oh, oh +Oh, oh, oh-oh, oh +Can we get much higher? (So high) +Oh, oh, oh +Oh, oh, oh-oh, oh (Oh) +Can we get much higher? (So high) +Oh, oh, oh +Oh, oh, oh-oh, oh + +[Kanye West:] +Yeah, yeah, yeah, yeah +I fantasized 'bout this back in Chicago +Mercy, mercy me, that Murciélago +That's me the first year that I blow +How you say broke in Spanish? Mi no hablo +Me drown sorrow in that Diablo +Me found bravery in my bravado +DJs need to listen to the models +You ain't got no fuckin' Yeezy in your Serato? +(You ain't got no Yeezy, nigga?) +Stupid, but what the hell do I know? +I'm just a Chi-Town nigga with a Nas flow +And my chick in that new Phoebe Philo +So much head, I woke up to Sleepy Hollow + +[Justin Vernon and Teyana Taylor:] +Can we get much higher? +Oh, oh, oh +Oh, oh, oh-oh, oh + +[Kanye West:] +Look like a fat booty Celine Dion +Sex is on fire, I'm the King of Leona Lewis +Beyond the truest +Hey, teacher, teacher, tell me how do you respond to students? +And refresh the page and restart the memory? +Re-spark the soul and rebuild the energy? +We stopped the ignorance, we killed the enemy +Sorry for the night demons that still visit me +The plan was to drink until the pain over +But what's worse, the pain or the hangover? +Fresh air, rollin' down the window +Too many Urkels on your team, that's why your wins low +Don't make me pull the toys out, huh +Don't make me pull the toys +And fire up the engines, huh +And then they make noise + +[Justin Vernon and Teyana Taylor:] +Can we get much higher? (So high) +Oh, oh, oh +Oh, oh, oh-oh, oh + +[Justin Vernon and Kanye West:] +At the mall, there was a seance +Just kids, no parents +Then the sky filled with herons +Saw the devil in a Chrysler LeBaron +And the hell, it wouldn't spare us +And the fires did declare us +But after that, took pills, kissed an heiress +And woke up back in Paris + +[Justin Vernon and Teyana Taylor:] +Can we get much higher? (So high) +Oh, oh, oh +Oh, oh, oh-oh, oh, oh + +[Justin Vernon and Teyana Taylor:] +Can we get much higher? (So high) +Oh, oh, oh +Oh, oh, oh-oh, oh (Oh) +Can we get much higher? (So high) +Oh, oh, oh +Oh, oh, oh-oh, oh +Can we get much higher? (So high) +Oh, oh, oh +Oh, oh, oh-oh, oh (Oh) +Can we get much higher? (So high) +Oh, oh, oh +Oh, oh, oh-oh, oh, oh \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kanye West - Power.txt b/ncmpcpp/lyrics/Kanye West - Power.txt new file mode 100644 index 0000000..894bd69 --- /dev/null +++ b/ncmpcpp/lyrics/Kanye West - Power.txt @@ -0,0 +1,86 @@ +[Kanye West:] +I'm living in that 21st century, doing something mean to it +Do it better than anybody you ever seen do it +Screams from the haters got a nice ring to it +I guess every superhero need his theme music + +[Kanye West:] +No one man should have all that power +The clock's ticking, I just count the hours +Stop tripping, I'm tripping off the power +(21st-century schizoid man) + +[Kanye West:] +The system broken, the school's closed, the prison's open +We ain't got nothing to lose, motherfucker, we rolling +Huh? Motherfucker, we rolling +With some light-skinned girls and some Kelly Rowlands +In this white man world, we the ones chosen +So goodnight, cruel world, I'll see you in the morning +Huh? I'll see you in the morning +This is way too much, I need a moment + +[Kanye West:] +No one man should have all that power +The clock's ticking, I just count the hours +Stop tripping, I'm tripping off the power +'Til then, fuck that, the world's ours +And they say, and they say +And they say, and they say +And they say, and they say +(21st-century schizoid man) + +[Kanye West:] +Fuck SNL and the whole cast +Tell them Yeezy said they can kiss my whole ass +More specifically, they can kiss my asshole +I'm an asshole? You niggas got jokes +You short-minded niggas' thoughts is Napoleon +My furs is Mongolian, my ice brought the goalies in +I embody every characteristic of the egotistic +He knows he's so fuckin' gifted +I just needed time alone with my own thoughts +Got treasures in my mind, but couldn't open up my own vault +My childlike creativity, purity, and honesty +Is honestly being crowded by these grown thoughts +Reality is catching up with me +Taking my inner child, I'm fighting for custody +With these responsibilities that they entrusted me +As I look down at my diamond-encrusted piece + +[Kanye West:] +Thinking no one man should have all that power +The clock's ticking, I just count the hours +Stop tripping, I'm tripping off the powder +'Til then, fuck that, the world's ours +And they say, and they say +And they say, and they say +And they say, and they say +(21st-century schizoid man) + +[Kanye West:] +Colin Powells, Austin Powers +Lost in translation with a whole fuckin' nation +They say I was the abomination of Obama's nation +Well, that's a pretty bad way to start the conversation +At the end of the day, goddamned, I'm killing this shit +I know damn well y'all feeling this shit +I don't need your pussy, bitch, I'm on my own dick +I ain't gotta power trip, who you goin' home with? +How Ye doing? I'm survivin' +I was drinkin' earlier, now I'm drivin' +Where the bad bitches, huh? Where you hidin'? +I got the power make your life so excitin' + +[Kanye West and Dwele:] +Now this will be a beautiful death +I'm jumping out the window, I'm letting everything go +I'm letting everything go +Mmm, now this will be a beautiful death +I'm jumping out the window, I'm letting everything go +I'm letting everything go +Now this will be a beautiful death +Jumping out the window, letting everything go +Letting everything go +You got the power to let power go? +(21st-century schizoid man) \ No newline at end of file diff --git "a/ncmpcpp/lyrics/Kanye West feat. JAY\342\200\220Z, Pusha T, Cyhi the Prynce, Swizz Beatz & RZA - So Appalled.txt" "b/ncmpcpp/lyrics/Kanye West feat. JAY\342\200\220Z, Pusha T, Cyhi the Prynce, Swizz Beatz & RZA - So Appalled.txt" new file mode 100644 index 0000000..21af140 --- /dev/null +++ "b/ncmpcpp/lyrics/Kanye West feat. JAY\342\200\220Z, Pusha T, Cyhi the Prynce, Swizz Beatz & RZA - So Appalled.txt" @@ -0,0 +1,156 @@ +[Swizz Beatz:] +One hand in the air if you don't really care +Two hands in the air if you don't really care +It's like that sometimes, I mean ridiculous +It's like that sometimes, this shit ridiculous +One hand in the air if you don't really care +Middle finger in the air if you don't really care +It's like that sometimes, man, ridiculous +Life can be sometimes ridiculous + +[Kanye West:] +I'm so appalled, Spalding, ball +Balding Donald Trump taking dollars from y'all +Baby, you're fired, your girlfriend hired +But if you don't mind, I'ma keep you on call +We above the law, we don't give a fuck 'bout y'all +I got dogs that'll chew a fuckin' hole through the wall +But since they all lovers, I need more rubbers +And if I don't use rubbers, need more covers +Housekeeping, I mean, goddamn +One time, let it be a bad bitch sweeping +That know we get O's like Cheerios +That know because they seen us in the videos +That know the day that you play me +Would be the same day MTV play videos +That was a little joke, voila +Praises due to the most high, Allah +Praises due to the most fly, Prada +Baby, I'm magic, tada +Address me as your highness, high as United +Thirty thousand feet up and you are not invited +Niggas be writing bullshit like they gotta work +Niggas is going through real shit, man, they out of work +That's why another goddamn dance track gotta hurt +That's why I'd rather spit something that got a purp' + +[Kanye West and CyHi The Prynce:] +Champagne wishes, thirty white bitches +I mean this shit is fuckin' ridiculous +Fuckin' ridiculous +I mean this shit is fuckin' ridiculous +Five-star dishes, different exotic fishes +Man, this shit is fuckin' ridiculous +Fuckin' ridiculous + +[Jay-Z:] +How should I begin this? I'm just so offended +How am I even mentioned by all these fuckin' beginners? +I'm so appalled, I might buy the mall +Just to show niggas how much more I have in store +I'm fresher than you all, so I don't have to pause +All of y'all can suck my balls through my drawers +Dark Knight feeling, die and be a hero +Or live long enough to see yourself become a villain +I went from the favorite to the most hated +But would you rather be underpaid or overrated? +Moral victories is for minor league coaches +And Ye already told you we major, you cockroaches +Show me where the boats is, Ferrari Testarossas +And Hammer went broke so you know I'm more focused +I lost thirty mil', so I spent another thirty +'Cause unlike Hammer, thirty million can't hurt me +Fuckin' insane, the fuck am I saying? +Not only am I fly, I'm fuckin' not playing +All these little bitches too big for they britches +Burning they little bridges, fuckin' ridiculous + +[Kanye West and CyHi The Prynce:] +Champagne wishes, thirty white bitches +I mean this shit is fuckin' ridiculous +Fuckin' ridiculous +I mean this shit is fuckin' ridiculous +Five-star dishes, different exotic fishes +Man, this shit is fuckin' ridiculous +Fuckin' ridiculous + +[Pusha T:] +Success is what you make it, take it how it come +A half a mil' in twenties like a billion where I'm from +An arrogant drug dealer, the legend I become +CNN said I'd be dead by twenty-one +Blackjack, I just pulled an ace +As you looking at the king in his face +Everything I dream, motherfuckers, I'm watchin' it take shape +While to you I'm just a young rich nigga that lacks faith +Range Rove', leather roof, love war, fuck a truce +Still move a bird like I'm in bed with Mother Goose +Them hoes coming in a baker's dozen +Claiming they was with me when they know they really wasn't +I keep the city's best, never said she was the brightest +So if you had her too, it don't affect me in the slightest +I never met a bitch that didn't need a little guidance +So I dismiss her past until she disappoints your highness +I speak the gospel, hostile +Tony doing time for what he did to nostrils +Paranoid mind, I'm still under the watchful +Eye of the law, aspire for more +Them kilos came, we gave you Bobby Brown jaw +Flaws ain't flaws when it's you that makes the call +Flow similar to the legends of the falls +Spillin', I own you all, yuugh + +[Swizz Beatz:] +One hand in the air if you don't really care +Two hands in the air if you don't really care +It's like that sometimes, I mean ridiculous +It's like that sometimes, this shit ridiculous +One hand in the air if you don't really care +Middle finger in the air if you don't really care +It's like that sometimes, man, ridiculous +Life can be sometimes ridiculous + +[CyHi The Prynce:] +Hah, I am so outrageous +I wear my pride on my sleeve like a bracelet +If God had an iPod, I'd be on his playlist +My phrases amazes the faces in places +The favorite, hah, my cup overrunneth with hundreds +Dummy, damn, it's hard not for me to waste it +The new Commandment, "Thou shalt not hate, kid" +My movement is like the Civil Rights, I'm Ralph David +Abernathy, so call my lady Rosa Parks +I am nothing like them niggas, baby, those are marks +I met this girl on Valentine's Day, fucked her in May +She found out about April, so she chose to march +Hah, damn, another broken heart +I keep bitches by the twos, nigga, Noah's Ark +I got a seven on me, I call my 'dro Lamar +Plus a Trojan in my pocket, Matt Leinart, hah +G-A-T in the Pathfinder +'Cause you haters got PhDs +Y'all just some major haters and some math minors +Tiger Woods, don't make me grab iron + +[RZA:] +Ayy, yo, champagne wishes and thirty white bitches +You know this shit is fuckin' ridiculous +Fuckin' ridiculous +You know this shit is fuckin' ridiculous +Cars for the missus and furs for the mistress +You know that shit is fuckin' ridiculous +Fuckin' ridiculous +You know this shit is fuckin' ridiculous +Fuckin' ridiculous +Fuckin' ridiculous +Fuckin' ridiculous + +[Swizz Beatz:] +One hand in the air if you don't really care +Two hands in the air if you don't really care +It's like that sometimes, I mean ridiculous +It's like that sometimes, this shit ridiculous +One hand in the air if you don't really care +Middle finger in the air if you don't really care +It's like that sometimes, man, ridiculous +Life can be sometimes ridiculous, huh? \ No newline at end of file diff --git "a/ncmpcpp/lyrics/Kanye West feat. JAY\342\200\220Z, Rick Ross, Nicki Minaj & Bon Iver - Monster.txt" "b/ncmpcpp/lyrics/Kanye West feat. JAY\342\200\220Z, Rick Ross, Nicki Minaj & Bon Iver - Monster.txt" new file mode 100644 index 0000000..075edb5 --- /dev/null +++ "b/ncmpcpp/lyrics/Kanye West feat. JAY\342\200\220Z, Rick Ross, Nicki Minaj & Bon Iver - Monster.txt" @@ -0,0 +1,140 @@ +[Justin Vernon:] +I shoot the lights out +Hide 'til it's bright out +Oh, just another lonely night +Are you willing to sacrifice your life? + +[Rick Ross:] +Bitch, I'm a monster, no-good bloodsucker +Fat motherfucker, now look who's in trouble +As you run through my jungles, all you hear is rumbles +Kanye West samples, here's one for example + +[Kanye West:] +Gossip, gossip, nigga, just stop it +Everybody know I'm a motherfuckin' monster +I'ma need to see your fuckin' hands at the concert +I'ma need to see your fuckin' hands at the concert +Profit, profit, nigga, I got it +Everybody know I'm a motherfuckin' monster +I'ma need to see your fuckin' hands at the concert +I'ma need to see your fuckin' hands + +[Kanye West:] +Uh, the best living or dead hands down, huh +Less talk, more head right now, huh +And my eyes more red than the devil is +And I'm 'bout to take it to another level, bitch +Matter who you go and get, ain't nobody cold as this +Do the rap and the track, triple-double, no assists +And my only focus is stayin' on some bogus shit +Arguin' with my older bitch, actin' like I owe her shit +I heard the beat, the same raps that gave the track pain +Bought the chain that always give me back pain +Fucking up my money so, yeah, I had to act sane +Chi nigga, but these hoes love my accent +Chick came up to me and said, "This the number to dial +If you wanna make your number one your number two now" +Mix that Goose and Malibu, I call it "Malibooyah" +Goddamn, Yeezy always hit 'em with a new style +Know that motherfucker, well, what you gon' do now? +Whatever I wanna do, gosh, it's cool now +Know I'm gonna do, ah, it's the new now +Think you motherfuckers really really need to cool out +'Cause you'll never get on top of this +So, mami, best advice is just to get on top of this +Have you ever had sex with a pharaoh? +Ah, put the pussy in a sarcophagus +Now she claiming that I bruised her esophagus +Head of the class and she just won a swallowship +I'm livin' in the future so the present is my past +My presence is a present, kiss my ass + +[Kanye West and Jay Z:] +Gossip, gossip, nigga, just stop it +Everybody know I'm a motherfuckin' monster +I'ma need to see your fuckin' hands at the concert +I'ma need to see your fuckin' hands at the concert (Yeah) +Profit, profit, nigga, I got it +Everybody know I'm a motherfuckin' monster +I'ma need to see your fuckin' hands at the concert +I'ma need to see your fuckin' hands + +[Jay Z:] +Sasquatch, Godzilla, King Kong, Loch Ness +Goblin, ghoul, a zombie with no conscience +Question, what do these things all have in common? +Everybody knows I'm a motherfuckin' monster +Conquer, stomp ya, stop your silly nonsense +Nonsense, none of you niggas know where the swamp is +None of you niggas have seen the carnage that I've seen +I still hear fiends scream in my dreams +Murder, murder in black convertibles, I +Kill a block, I murder the avenues, I +Rape and pillage your village, women and children +Everybody want to know what my Achilles heel is +Love, I don't get enough of it +All I get is these vampires and bloodsuckers +All I see is these niggas I made millionaires +Millin' about, spillin' their feelings in the air +All I see is these fake fucks with no fangs +Tryna draw blood from my ice-cold veins +I smell a massacre +Seems to be the only way to back you bastards up + +[Kanye West:] +Gossip, gossip, nigga, just stop it +Everybody know I'm a motherfuckin' monster +I'ma need to see your fuckin' hands at the concert +I'ma need to see your fuckin' hands at the concert +Profit, profit, nigga, I got it +Everybody know I'm a motherfuckin' monster +I'ma need to see your fuckin' hands at the concert +I'ma need to see your fuckin' hands + +[Nicki Minaj:] +Pull up in the monster, automobile gangsta +With a bad bitch that came from Sri Lanka +Yeah, I'm in that Tonka, color of Willy Wonka +You could be the king, but watch the queen conquer +OK, first things first, I'll eat your brains +Then I'ma start rocking gold teeth and fangs +'Cause that's what a motherfuckin' monster do +Hair dresser from Milan, that's the monster 'do +Monster Giuseppe heel, that's the monster shoe +Young Money is the roster and a monster crew +And I'm all up, all up, all up in the bank with the funny face +And if I'm fake, I ain't notice 'cause my money ain't +So let me get this straight, wait, I'm the rookie? +But my features and my shows ten times your pay? +50K for a verse, no album out +Yeah, my money's so tall that my Barbies got to climb it +Hotter than a Middle Eastern climate, violent +Tony Matterhorn, dutty wine it, wine it +Nicki on them titties when I sign it +That's how these niggas so one-track-minded +But really, really I don't give an F-U-C-K +"Forget Barbie, fuck Nicki, sh-she's fake" +"She on a diet," but my pockets eatin' cheesecake +And I'll say, bride of Chucky, it's child's play +Just killed another career, it's a mild day +Besides, Ye, they can't stand besides me +I think me, you, and Am' should ménage Friday +Pink wig, thick ass, give 'em whiplash +I think big, get cash, make 'em blink fast +Now look at what you just saw, this is what you live for +Ah, I'm a motherfuckin' monster + +[Justin Vernon and Charlie Wilson:] +I, I crossed the limelight +And I'll, I'll let God decide +And I, I wouldn't last these shows +So I, I am headed home (Headed home) +I, I crossed the limelight +And I'll, I'll let God decide, 'cide (No) +And I, I wouldn't last these shows +So I, I am headed home (Head home) +I, I crossed the limelight (No, the limelight) +And I'll, I'll let God decide, 'cide +And I, I wouldn't last these shows +So I, I am headed home \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kanye West feat. Kid Cudi & Raekwon - Gorgeous.txt b/ncmpcpp/lyrics/Kanye West feat. Kid Cudi & Raekwon - Gorgeous.txt new file mode 100644 index 0000000..a17f98b --- /dev/null +++ b/ncmpcpp/lyrics/Kanye West feat. Kid Cudi & Raekwon - Gorgeous.txt @@ -0,0 +1,115 @@ +[Kid Cudi:] +Ain't no question if I want it, I need it +I can feel it slowly drifting away from me +I'm on the edge, so why you playing? I'm saying +I will never ever let you live this down, down, down +Not for nothing, I've foreseen it, I dreamed it +I can feel it slowly drifting away from me +No more chances, if you blow this, you bogus +I will never ever let you live this down, down, down + +[Kanye West:] +Penitentiary chances, the devil dances +And eventually answers to the call of autumn +All them fallin' for the love of ballin' +Got caught with thirty rocks, the cop look like Alec Baldwin +Inter-century anthems based off inner-city tantrums +Based off the way we was branded +Face it, Jerome get more time than Brandon +And at the airport, they check all through my bag +And tell me that it's random +But we stay winning +This week has been a bad massage, I need a happy ending +And a new beginning and a new fitted +And some job opportunities that's lucrative +This the real world, homie, school finished +They done stole your dreams, you don't know who did it +I treat the cash the way the government treats AIDS +I won't be satisfied 'til all my niggas get it, get it? + +[Kid Cudi:] +Ain't no question if I want it, I need it +I can feel it slowly drifting away from me +I'm on the edge, so why you playing? I'm saying +I will never ever let you live this down, down, down + +[Kanye West:] +Is hip-hop just a euphemism for a new religion? +The soul music of the slaves that the youth is missing +But this is more than just my road to redemption +Malcolm West had the whole nation standing at attention +As long as I'm in Polo smiling, they think they got me +But they'd try to crack me if they ever see a Black me +I thought I chose a field where they couldn't sack me +If a nigga ain't shootin' a jumpshot, runnin' a track meet +But this pimp is at the top of Mount Olympus +Ready for the world's games, this is my Olympics +We make 'em say ho 'cause the game is so pimpish +Choke a South Park writer with a fish-stick +I insisted to get up off of this dick +And these drugs, niggas can't resist it +Remind me when they tried to have Ali enlisted +If I ever wasn't the greatest, nigga, I must have missed it + +[Kid Cudi:] +Ain't no question if I want it, I need it +I can feel it slowly drifting away from me +I'm on the edge, so why you playing? I'm saying +I will never ever let you live this down, down, down + +[Kanye West:] +I need more drinks and less lights +And that American Apparel girl in just tights +She told the director she tryna get in a school +He said, "Take them glasses off and get in the pool" +It's been a while since I watched the tube +'Cause like a Crip set, I got way too many blues for any more bad news +I was looking at my resume, feeling real fresh today +They rewrite history, I don't believe in yesterday +And what's a Black Beatle anyway, a fuckin' roach? +I guess that's why they got me sitting in fuckin' coach +My guy said I need a different approach +'Cause people is looking at me like I'm sniffin' coke +It's not funny anymore, try different jokes +Tell 'em hug and kiss my ass, X and O +And kiss the ring while they at it, do my thing while I got it +Play strings for the dramatic ending of that wack shit +Act like I ain't had a belt in two classes +I ain't got it, I'm coming after whoever who has it +I'm coming after whoever, who has it? +You blowin' up, that's good, fantastic +That, y'all, it's like that, y'all +I don't really give a fuck about it at all +'Cause the same people that tried to blackball me +Forgot about two things, my Black balls + +[Kid Cudi:] +Ain't no question if I want it, I need it +I can feel it slowly drifting away from me +I'm on the edge, so why you playing? I'm saying +I will never ever let you live this down, down, down + +[Raekwon:] +Ayy, yo +I done copped Timbs, lived in lenses, kid +Armani suits, fresh fruits, Bally boots, and Benzes +Counting up, smoking, one cuff +Live as a red Jag', a Louis bag, grabbin' a blunt, fuck it +Steam about a hundred and one Ls +Kites off to jails, buyin' sweats, running up in Stetson +Nigga hat game was special +It matched every black pair of Nikes, throwing dice for decimals +The older head, bolder head, would train a soldier head +Make sure he right in the field, not a soldier dead +That meant code red, bent off the black skunk +The black Dutch, back of the old shed +If you can't live, you dying, you give or buy in +Keep it real or keep it moving, keep grinding +Keep shining, to every young man, this is a plan +Learn from others like your brothers Rae and Kanye + +[Kid Cudi:] +Not for nothing, I've foreseen it, I dreamed it +I can feel it slowly drifting away from me +No more chances, if you blow this, you bogus +I will never ever let you live this down, down, down \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar - Alright.txt b/ncmpcpp/lyrics/Kendrick Lamar - Alright.txt new file mode 100644 index 0000000..7520cca --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar - Alright.txt @@ -0,0 +1,80 @@ +Alls my life I has to fight, nigga +Alls my life I... +Hard times like yah +Bad trips like "God!" +Nazareth, I'm fucked up +Homie you fucked up +But if God got us then we gon' be alright + +[Hook - Pharrell Williams:] +Nigga, we gon' be alright +Nigga, we gon' be alright +We gon' be alright +Do you hear me, do you feel me? We gon' be alright +Nigga, we gon' be alright +Huh? We gon' be alright +Nigga, we gon' be alright +Do you hear me, do you feel me? We gon' be alright + +Uh, and when I wake up +I recognize you're lookin' at me for the pay cut +Behind my side we lookin' at you from the face down +What mac-11 even boom with the bass down +Schemin'! And let me tell you bout my life +Painkillers only put me in the twilight +Where pretty pussy and Benjamin is the highlight +Now tell my mama I love her but this what I like +Lord knows, 20 of 'em in my Chevy +Tell 'em all to come and get me, reapin' everything I sow +So my karma coming heavy +No preliminary hearings on my record +I'm a motherfucking gangster in silence for the record +Tell the world I know it's too late +Boys and girls I think I've gone cray +Drown inside my vices all day +Won't you please believe when I say + +[Pre-hook:] +When you know, we been hurt, been down before, nigga +When our pride was low, lookin' at the world like, "where do we go, nigga?" +And we hate Popo, wanna kill us dead in the street for sure, nigga +I'm at the preacher's door +My knees gettin' weak and my gun might blow but we gon' be alright + +[Hook] + +What you want, you a house you a car +40 acres and a mule, a piano a guitar +Anything, see my name is Lucy, I'm your dog +Motherfucker you can live at the mall +I can see the evil, I can tell it I know it's illegal +I don't think about it, I deposit every other zero +Thinkin' of my partner put the candy, paint it on the regal +Diggin' in my pocket ain't a profit, big enough to feed you +Everyday my logic, get another dollar just to keep you +In the presence of your chico... ah! +I don't talk about it, be about it, everyday I see cool +If I got it then you know you got it, Heaven, I can reach you +Pet dog, pet dog, pet dog, my dog that's all +Pick back and chat I shut the back for y'all +I rap, I'm black, on track so rest assured +My rights, my wrongs I write till I'm right with God + +[Pre-hook] + +[Hook] + +I keep my head up high +I cross my heart and hope to die +Lovin' me is complicated +Too afraid, a lot of changes +I'm alright and you're a favorite +Dark nights in my prayers + +I remembered you was conflicted +Misusing your influence, sometimes I did the same +Abusing my power full of resentment +Resentment that turned into a deep depression +Found myself screamin' in the hotel room +I didn't wanna self destruct, the evils of Lucy was all around me +So I went runnin' for answers \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar - FEAR..txt b/ncmpcpp/lyrics/Kendrick Lamar - FEAR..txt new file mode 100644 index 0000000..b1a8299 --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar - FEAR..txt @@ -0,0 +1,131 @@ +[Carl Duckworth:] +I don't think I could find a way to make it on this earth +What's up, family? Yeah, it's yo cousin Carl, man, just givin' you a call, man. I know you been havin' a lot on yo mind lately, and I know you feel like, you know, people ain't been prayin' for you. But you have to understand this, man, that we are a cursed people. Deuteronomy 28: 28 says, "The Lord shall smite thee with madness, and blindness, and astonishment of heart." See, family, that's why you feel like you feel like you got a chip on your shoulder. Until you finally get the memo, you will always feel that way... + +[Charles Edward Sydney Isom Jr.] +Why God, why God do I gotta suffer? +Pain in my heart carry burdens full of struggle +Why God, why God do I gotta bleed? +Every stone thrown at you restin' at my feet +Why God, why God do I gotta suffer? +Earth is no more, won't you burn this muh'fucka? +I don't think I could find a way to make it on this earth +(Reversed) + +I beat yo ass, keep talkin' back +I beat yo ass, who bought you that? +You stole it, I beat yo ass if you say that game is broken +I beat yo ass if you jump on my couch +I beat yo ass if you walk in this house +With tears in your eyes, runnin' from Poo Poo and Prentice +Go back outside, I beat yo ass, lil nigga +That homework better be finished, I beat yo ass +Your teachers better not be bitchin' 'bout you in class +That pizza better not be wasted, you eat it all +That TV better not be loud if you got it on +Them Jordans better not get dirty when I just bought 'em +Better not hear 'bout you humpin' on Keisha's daughter +Better not hear you got caught up +I beat yo ass, you better not run to your father +I beat yo ass, you know my patience runnin' thin +I got beaucoup payments to make +County building's on my ass +Tryna take my food stamps away +I beat yo ass if you tell them social workers he live here +I beat yo ass if I beat yo ass twice and you still here +Seven years old, think you run this house by yourself? +Nigga, you gon' fear me if you don't fear no one else + +If I could smoke fear away, I'd roll that mothafucka up +And then I'd take two puffs +I'm high now, I'm high now +I'm high now, I'm high now +Life's a bitch, pull them panties to the side now +I don't think I could find a way to make it on this earth + +I'll prolly die anonymous +I'll prolly die with promises +I'll prolly die walkin' back home from the candy house +I'll prolly die because these colors are standin' out +I'll prolly die because I ain't know Demarcus was snitchin' +I'll prolly die at these house parties, fuckin' with bitches +I'll prolly die from witnesses leavin' me falsed accused +I'll prolly die from thinkin' that me and your hood was cool +Or maybe die from pressin' the line, actin' too extra +Or maybe die because these smokers +Are more than desperate +I'll prolly die from one of these bats and blue badges +Body slammed on black and white paint, my bones snappin' +Or maybe die from panic or die from bein' too lax +Or die from waitin' on it, die 'cause I'm movin' too fast +I'll prolly die tryna buy weed at the apartments +I'll prolly die tryna diffuse two homies arguin' +I'll prolly die 'cause that's what you do when you're 17 +All worries in a hurry, I wish I controlled things + +If I could smoke fear away, I'd roll that mothafucka up +And then I'd take two puffs +I've been hungry all my life +I'm high now, I'm high now +I'm high now, I'm high now +Life's a bitch, pull them panties to the side now +Now... + +When I was 27, I grew accustomed to more fear +Accumulated 10 times over throughout the years +My newfound life made all of me magnified +How many accolades do I need to block denial? +The shock value of my success put bolts in me +All this money, is God playin' a joke on me? +Is it for the moment, and will he see me as Job? +Take it from me and leave me worse than I was before? +At 27, my biggest fear was losin' it all +Scared to spend money, had me sleepin' from hall to hall +Scared to go back to Section 8 with my mama stressin' +30 shows a month and I still won't buy me no Lexus +What is an advisor? Somebody that's holdin' my checks +Just to fuck me over and put my finances in debt? +I read a case about Rihanna's accountant and wondered +How did the bad girl feel when she looked at them numbers? +The type of shit'll make me flip out +And just kill somethin', drill somethin' +Get ill and fill ratchets with a lil' somethin' +I practiced runnin' from fear, guess I had some good luck +At 27 years old, my biggest fear was bein' judged +How they look at me reflect on myself, my family, my city +What they say 'bout me reveal +If my reputation would miss me +What they see from me +Would trickle down generations in time +What they hear from me +Would make 'em highlight my simplest lines + +I'm talkin' fear, fear of losin' creativity +I'm talkin' fear, fear of missin' out on you and me +I'm talkin' fear, fear of losin' loyalty from pride +'Cause my DNA won't let me involve in the light of God +I'm talkin' fear, fear that my humbleness is gone +I'm talkin' fear, fear that love ain't livin' here no more +I'm talkin' fear, fear that it's wickedness or weakness +Fear, whatever it is, both is distinctive +Fear, what happens on Earth stays on Earth +And I can't take these feelings with me +So hopefully they disperse +Within fourteen tracks, carried out over wax +Searchin' for resolutions until somebody get back +Fear, what happens on Earth stays on Earth +And I can't take these feelings with me +So hopefully they disperse +Within fourteen tracks, carried out over wax +Wonderin' if I'm livin' through fear or livin' through rap + +[Bēkon:] +Damn +Goddamn you +Goddamn me +Goddamn us +Goddamn we +Goddamn us all + +[Carl Duckworth:] +Verse two says you only have I known of all the families of the Earth, therefore I will punish you for all your iniquities. So until we come back to these commandments, until you come back to these commandments, we're gonna feel this way, we're gonna be under this curse. Because he said he's gonna punish us, the so-called Blacks, Hispanics, and Native American Indians, are the true children of Israel. We are the Israelites according to the Bible. The children of Israel, he's gonna punish us for our iniquities, for our disobedience, because we chose to follow other gods that aren't his son, so the Lord, thy God, chasten thee. So, just like you chasten your own son, he's gonna chastise you because he loves you. So that's why we get chastised, that's why we're in the position we're in. Until we come back to these laws, statutes and commandments, and do what the Lord said, these curses are gonna be upon us. We're gonna be at a lower state in this life that we live here in today, in the United States of America. I love you, son, and I pray for you. God bless you, shalom. \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar - HUMBLE..txt b/ncmpcpp/lyrics/Kendrick Lamar - HUMBLE..txt new file mode 100644 index 0000000..d414b22 --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar - HUMBLE..txt @@ -0,0 +1,75 @@ +[Music video version:] Wicked or weakness, you gotta see this, waaaaay (yeah, yeah!) +[Regular version:] Nobody pray for me, it been that day for me, waaaaay (yeah, yeah!) + +Aye, I remember syrup sandwiches and crime allowances +Finesse a nigga with some counterfeits +But now I'm counting this +Parmesan where my accountant lives in fact I'm down at this +D'usśe with my boo bae, tastes like kool aid for the analysts +Girl, I can buy your ass the world with my paystub +Ooh that pussy good, won't you sit it on my taste bloods +I get way too petty once you let me do the extras +Pull up on your block, then break it down we playing Tetris +A.M. to the P.M., P.M. to the A.M. funk +Piss out your per diem you just gotta hate em, funk +If I quit your BM I still ride Mercedes, funk +If I quit this season I still be the greatest, funk +My left stroke just went viral +Right stroke put lil baby in a spiral +Soprano C, we like to keep it on a high note +It's levels to it, you and I know, bitch be humble + +(Hol' up bitch) sit down, +(Hol' up lil bitch, hol' up, lil bitch) be humble +(Hol' up bitch) sit down (sit down hol' up lil bitch) +Be humble (bitch) +(Hol' up, hol' up, hol' up, hol' up) bitch sit down +Lil bitch (hol' up lil bitch) be humble +(Hol' up bitch) sit down +(Hol' up, hol' up, hol' up, hol' up) be humble +(Hol' up, hol' up, hol' up, hol' up lil bitch) sit down +(Hol' up lil bitch) be humble +(Hol' up bitch) sit down (hol' up sit down lil bitch) +(Sit down lil bitch) be humble +(Hol' up, hol' up, hol' up, hol' up lil bitch) bitch, sit down +(Hol' up lil bitch) be humble +(Hol' up bitch) sit down +(Hol' up, hol' up, hol' up, hol' up) + +Who dat nigga thinking that he fronting on man man (man man) +Get the fuck off my stage, I'm the sandman (sandman) +Get the fuck off my dick, that ain't right +I make a play fucking up your whole life +I'm so fucking sick and tired of the Photoshop +Show me something natural like afro on Richard Pryor +Show me something natural like ass with some stretch marks +Still will take you down right on your mamma's couch in polo socks, aye +This shit way too crazy, aye +You do not amaze me, aye +I blew cool from AC, aye +Obama just paged me, aye +I don't fabricate it, aye +Most of ya'll be faking, aye +I stay modest bout it, aye +She elaborate it, aye +This that Grey Poupon, that Evian, that Ted Talk, aye +Watch my soul speak, you let the meds talk, aye +If I kill a nigga it won't be the alcohol, aye +I'm the realest nigga after all, bitch be humble + +(Hol' up bitch) sit down, +(Hol' up lil bitch, hol' up, lil bitch) be humble +(Hol' up bitch) sit down (sit down hol' up lil bitch) +Be humble (bitch) +(Hol' up, hol' up, hol' up, hol' up) bitch sit down +(Lil bitch) (hol' up lil bitch) be humble +(Hol' up bitch) sit down +(Hol' up, hol' up, hol' up, hol' up) be humble +(Hol' up, hol' up, hol' up, hol' up lil bitch) sit down +(Hol' up lil bitch) be humble +(Hol' up bitch) sit down (hol' up sit down lil bitch) +(Sit down lil bitch) be humble +(Hol' up, hol' up, hol' up, hol' up lil bitch) bitch, sit down +(Hol' up lil bitch) be humble +(Hol' up bitch) sit down +(Hol' up, hol' up, hol' up, hol' up) \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar - King Kunta.txt b/ncmpcpp/lyrics/Kendrick Lamar - King Kunta.txt new file mode 100644 index 0000000..b9ec7a5 --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar - King Kunta.txt @@ -0,0 +1,94 @@ +I got a bone to pick +I don't want you monkey mouth motherfuckers sittin' in my throne again +(Aye aye nigga what's happenin' nigga, K Dot back in the hood nigga) +I'm mad (He mad), but I ain't stressin' +True friends, one question + +Bitch where you when I was walkin'? +Now I run the game got the whole world talkin' (King Kunta) +Everybody wanna cut the legs off him (King Kunta) Kunta +Black man taking no losses +Bitch where you when I was walkin'? +Now I run the game, got the whole world talkin' (King Kunta) +Everybody wanna cut the legs off him + +When you got the yams (What's the yams?) +The yam is the power that be +You can smell it when I'm walking down the street +(Oh yes we can, oh yes we can) +I can dig rapping, but a rapper with a ghost writer +What the fuck happened? +(Oh no) I swore I wouldn't tell +But most of you share bars like you got the bottom bunk in a two man cell +(A two man cell) +Something's in the water (Something's in the water) +And if I got a brown nose for some gold then I'd rather be a bum than a motherfuckin' baller + +Bitch where you when I was walkin'? +Now I run the game got the whole world talkin' (King Kunta) +Everybody wanna cut the legs off him (King Kunta) Kunta +Black man taking no losses +Bitch where you when I was walkin'? +Now I run the game, got the whole world talkin' (King Kunta) +Everybody wanna cut the legs off him + +When you got the yams (What's the yams?) +The yam brought it out of Richard Pryor +Manipulated Bill Clinton with desires +24/7, 365 days times two +I was contemplatin' gettin' on stage +Just to go back to the hood see my enemies and say... + +Bitch where you when I was walkin'? +Now I run the game got the whole world talkin' (King Kunta) +Everybody wanna cut the legs off him (King Kunta) Kunta +Black man taking no losses +Bitch where you when I was walkin'? +Now I run the game, got the whole world talkin' (King Kunta) +Everybody wanna cut the legs off him + +You goat mouth mammy fucker +I was gonna kill a couple rappers but they did it to themselves +Everybody's suicidal they don't even need my help +This shit is elementary, I'll probably go to jail +If I shoot at your identity and bounce to the left +Stuck a flag in my city, everybody's screamin' "Compton" +I should probably run for Mayor when I'm done, to be honest +And I put that on my Mama and my baby boo too +Twenty million walkin' out the court buildin' woo woo +Ah yeah fuck the judge +I made it past 25 and there I was +A little nappy headed nigga with the world behind him +Life ain't shit but a fat vagina +Screamin' "Annie are you ok? Annie are you ok?" +Limo tinted with the gold plates +Straight from the bottom, this the belly of the beast +From a peasant to a prince to a motherfucking king + +Bitch where was you when I was walkin'- +[POP] +(By the time you hear the next pop, the funk shall be within you) +[POP] +Now I run the game got the whole world talkin' (King Kunta) +Everybody wanna cut the legs off him (King Kunta) Kunta +Black man taking no losses +Bitch where was you when I was walkin' +Now I run the game got the whole world talkin' (King Kunta) +Everybody wanna cut the legs off him + +(Funk, funk, funk, funk, funk, funk) +We want the funk +We want the funk +(Now if I give you the funk, you gon' take it) +We want the funk +(Now if I give you the funk, you gon' take it) +We want the funk +(Now if I give you the funk, you gon' take it) +We want the funk +(Do you want the funk?) +We want the funk +(Do you want the funk?) +We want the funk +(Now if I give you the funk, you gon' take it) +We want the funk +I remember you was conflicted, misusing your influence \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar - LUST..txt b/ncmpcpp/lyrics/Kendrick Lamar - LUST..txt new file mode 100644 index 0000000..25211bb --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar - LUST..txt @@ -0,0 +1,127 @@ +[Kendrick Lamar:] +I need some water +Somethin' came over me +Way too hot to simmer down +Might as well overheat +Too close to comfort +As blood rush my favorite vein +Heartbeat racin' like a junkie's +I just need you to want me +Am I askin' too much? +Let me put the head in +Ooh, I don't want more than that +Girl, I respect the cat +I promise just a touch +Let me put the head in +If it's okay +She said, "It's okay." + +[Kendrick Lamar:] +Yeah, I need everybody's motherfuckin' hands up right now +I need everybody's motherfuckin'- +[RAT BOY:] +Door and his Nike Air Rattles +Rush the fire exit, no time for battles +Well I, I never expected +[Kendrick Lamar:] +This that new shit +This that new, new shit + +[Kendrick Lamar:] +Wake up in the mornin' +Thinkin' 'bout money, kick your feet up +Watch you a comedy, take a shit, then roll some weed up +Go hit you a lick, go fuck on a bitch +Don't go to work today, cop you a fit +Or maybe some kicks and make you- +[RAT BOY:] +Door in his Nike Air Rattles +Rush the fire exit, no time for battles +Well I, I never expected +[Kendrick Lamar:] +Wake up in the mornin' +Thinkin' 'bout money, kick your feet up +Watch you a comedy- hol' up! +Wake up in the mornin' +Thinkin' 'bout money, kick your feet up +Watch you a comedy, take a shit, then roll some weed up +Go hit you a lick, go fuck on a bitch, don't go to work today +Cop you a fit or maybe some kicks and make it work today +Hang with your homies, stunt on your baby mama +Sip some lean, go get a pistol, shoot out the window +Bet your favorite team, play you some Madden +Go to the club or your mama house +Whatever you doin', just make it count +(I need some water) +Wake up in the mornin' +Thinkin' 'bout money, kick your feet up +Hop in the shower, put on your makeup, lace your weave up +Touch on yourself, call up your nigga, tell him he ain't shit +Credit card scam, get you a Visa, make him pay your rent +Hop on the 'Gram, flex on the bitches that be hatin' on you +Pop you a pill, call up your bitches, have 'em waitin' on you +Go to the club, have you some fun, make that ass bounce +It's whatever, just make it count + +[Kendrick Lamar:] +I need some water +Somethin' came over me +Way too hot to simmer down +Might as well overheat +Too close to comfort +As blood rush my favorite vein +Heartbeat racin' like a junkie's +I just need you to want me +Am I askin' too much? +Let me put the head in +Ooh, I don't want more than that +Girl, I respect the cat +I promise just a touch +Let me put the head in +If it's okay +She said, "It's okay." + +I wake in the mornin', my head spinnin' from the last night +Both in the trance, feelings I did-what a fast life! +Manager called, the lobby called, it's 11: 30 +Did this before, promised myself I'd be a hour early +Room full of clothes, bag full of money: call it loose change +Fumbled my jewelry, 100k, I lost a new chain +Hop on the bird, hit the next city for another M +Take me a nap and do it again +We all woke up, tryna tune to the daily news +Lookin' for confirmation, hopin' election wasn't true +All of us worried, all of us buried, and our feeling's deep +None of us married to his proposal, make us feel cheap +Still and sad, distraught and mad, tell the neighbor 'bout it +Bet they agree, parade the streets with your voice proudly +Time passin', things change +Revertin' back to our daily programs, stuck in our ways; Lust + +Lately, I feel like I been lustin' over the fame +Lately, we lust on the same routine of shame +Lately, lately, lately, my lust been hidin' (Lately) +Lately, it's all contradiction +Lately, I'm not here +Lately, I lust over self +Lust turn into fear +Lately, in James 4: 4 says +Friend of the world is enemy of the Lord +Brace yourself, lust is all yours + +I need some water +Somethin' came over me +Way too high to simmer down +Might as well overheat +Too close to comfort +As blood rush my favorite vein +Heartbeat racin' like a junkie's +I just need you to want me +Am I askin' too much? +Let me put the head in +Ooh, I don't want more than that +Girl, I respect the cat +I promise just a touch +Let me put the head in +If it's okay +She said, "It's okay." \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar - Mortal Man.txt b/ncmpcpp/lyrics/Kendrick Lamar - Mortal Man.txt new file mode 100644 index 0000000..71fa146 --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar - Mortal Man.txt @@ -0,0 +1,256 @@ +The ghost of Mandela, hope my flows they propel it +Let these words be your earth and moon +You consume every message +As I lead this army make room for mistakes and depression +And with that being said my nigga, let me ask this question: + +When shit hit the fan, is you still a fan? +When shit hit the fan (one two, one two) +When shit hit the fan, is you still a fan? +When shit hit the fan, is you still a fan? + +The ghost of Mandela, hope my flows they propel it +Let these words be your earth and moon +You consume every message +As I lead this army make room for mistakes and depression +And with that being said my nigga, let me ask this question: + +When shit hit the fan, is you still a fan? +When shit hit the fan, is you still a fan? +Want you look to your left and right, make sure you ask your friends +When shit hit the fan, is you still a fan? + +Do you believe in me? Are you deceiving me? +Could I let you down easily, is your heart where it need to be? +Is your smile on permanent? Is your vow on lifetime? +Would you know where the sermon is if I died in this next line? +If I'm tried in a court of law, if the industry cut me off +If the government want me dead, plant cocaine in my car +Would you judge me a drug-head or see me as K. Lamar +Or question my character and degrade me on every blog +Want you to love me like Nelson, want you to hug me like Nelson +I freed you from being a slave in your mind, you're very welcome +You tell me my song is more than a song, it's surely a blessing +But a prophet ain't a prophet til they ask you this question: + +When shit hit the fan, is you still a fan? +When shit hit the fan, is you still a fan? +Want you look to your left and right, make sure you ask your friends +When shit hit the fan, is you still a fan? + +The ghost of Mandela, hope my flows they propel it +Let my words be your earth and moon you consume every message +As I lead this army make room for mistakes and depression +And with that + +Do you believe in me? How much you believe in her? +You think she gon' stick around if them 25 years occur? +You think he can hold you down when you down behind bars hurt? +You think y'all on common ground if you promise to be the first? Can you be immortalised without your life being expired? +Even though you share the same blood is it worth the time? +Like who got your best interest? +Like how much are you dependent? +How clutch are the people that say they love you? +And who pretending? +How tough is your skin when they turn you in? +Do you show forgiveness? +What brush do you bend when dusting your shoulders from being offended? +What kind of den did they put you in when the lions start hissing? +What kind of bridge did they burn? +Revenge or your mind when it's mentioned? +You wanna love like Nelson, you wanna be like Nelson +You wanna walk in his shoes but you peacemaking seldom +You wanna be remembered that delivered the message +That considered the blessing of everyone +This your lesson for everyone, say + +When shit hit the fan, is you still a fan? +When shit hit the fan, is you still a fan? +Want you look to your left and right, make sure you ask your friends +When shit hit the fan, is you still a fan? + +The voice of Mandela, hope this flow stay propellin' +Let my word be your Earth and moon +You consume every message +As I lead this army make room for mistakes and depression +And if you riding with me, nigga + +I been wrote off before, I got abandonment issues +I hold grudges like bad judges, don't let me resent you +That's not Nelson-like, want you to love me like Nelson +I went to Robben's Island analysing, that's where his cell is +So I could find clarity, like how much you cherish me +Is this relationship a fake or real as the heavens be? +See I got to question it all, family, friends, fans, cats, dogs +Trees, plants, grass, how the wind blow +Murphy's Law, generation X, will I ever be your X? +Floss off a baby step, mauled by the mouth of +Pit bulls, put me under stress +Crawled under rocks, ducking y'all, it's respect +But then tomorrow, put my back against the wall +How many leaders you said you needed then left 'em for dead? +Is it Moses, is it Huey Newton or Detroit Red? +Is it Martin Luther, JFK, shoot or you assassin +Is it Jackie, is it Jesse, oh I know, it's Michael Jackson, oh + +When shit hit the fan, is you still a fan? +When shit hit the fan, is you still a fan? +That nigga gave us "Billie Jean", you say he touched those kids? +When shit hit the fan, is you still a fan? + +The ghost of Mandela, hope my flows they propel it +Let my word be your earth and moon you consume every message +As I lead this army make room for mistakes and depression +And if you riding with me nigga, let me ask this question nigga + +[Kendrick Lamar:] +"I remember you was conflicted +Misusing your influence +Sometimes I did the same +Abusing my power, full of resentment +Resentment that turned into a deep depression +Found myself screaming in the hotel room +I didn't wanna self destruct +The evils of Lucy was all around me +So I went running for answers +Until I came home +But that didn't stop survivor's guilt +Going back and forth trying to convince myself the stripes I earned +Or maybe how A-1 my foundation was +But while my loved ones was fighting the continuous war back in the city, I was entering a new one +A war that was based on apartheid and discrimination +Made me wanna go back to the city and tell the homies what I learned +The word was respect +Just because you wore a different gang color than mine's +Doesn't mean I can't respect you as a black man +Forgetting all the pain and hurt we caused each other in these streets +If I respect you, we unify and stop the enemy from killing us +But I don't know, I'm no mortal man, maybe I'm just another nigga" + +Shit and that's all I wrote +I was gonna call it +Another Nigga but, it ain't really a poem, I just felt like it's +something you probably could relate to. Other than that, now that I +finally got a chance to holla at you, I always wanted to ask you about a +certain situa--, about a metaphor actually, you spoke on the ground. +What you mean 'bout that, what the ground represent? + +[2Pac:] +The ground is gonna open up and swallow the evil + +[Kendrick Lamar:] +Right + +[2Pac:] +That's how I see it, my word is bond. I see - and +the ground is the symbol for the poor people, the poor people is gonna +open up this whole world and swallow up the rich people. Cause the rich +people gonna be so fat, they gonna be so appetising, you know what I'm +saying, wealthy, appetising. The poor gonna be so poor and hungry, you +know what I'm saying it's gonna be like… there might be some cannibalism +out this mutha, they might eat the rich + +[Kendrick Lamar:] +Aight +so let me ask you this then, do you see yourself as somebody that's +rich or somebody that made the best of their own opportunities? + +[2Pac:] +I +see myself as a natural born hustler, a true hustler in every sense of +the word. I took nothin', I took the opportunities, I worked at the most +menial and degrading job and built myself up so I could get it to where +I owned it. I went from having somebody manage me to me hiring the +person that works my management company. I changed everything I realized +my destiny in a matter of five years you know what I'm saying I made +myself a millionaire. I made millions for a lot of people now it's time +to make millions for myself, you know what I'm saying. I made millions +for the record companies, I made millions for these movie companies, now +I make millions for us + +[Kendrick Lamar:] +And through your different avenues of success, how would you say you managed to keep a level of sanity? + +[2Pac:] +By +my faith in God, by my faith in the game, and by my faith in "all good +things come to those that stay true." You know what I'm saying, and it +was happening to me for a reason, you know what I'm saying, I was +noticing, shit, I was +punching the right buttons and it was happening. So it's no problem, you +know I mean it's a problem but I'm not finna let them know. I'm finna +go straight through + +[Kendrick Lamar:] +Would you consider yourself a fighter at heart or somebody that only reacts when they back is against the wall? + +[2Pac:] +Shit, +I like to think that at every opportunity I've ever been threatened +with resistance, it's been met with resistance. And not only me but it +goes down my family tree. You know what I'm saying, it's in my veins to +fight back + +[Kendrick Lamar:] +Aight well, how long you think it +take before niggas be like, we fighting a war, I'm fighting a war I +can't win and I wanna lay it all down + +[2Pac:] +In this country a +black man only have like 5 years we can exhibit maximum strength, and +that's right now while you a teenager, while you still strong or while +you still wanna lift weights, while you still wanna shoot back. Cause +once you turn 30 it's like they take the heart and soul out of a man, +out of a black man in this country. And you don't wanna fight no more. +And if you don't believe me you can look around, you don't see no loud +mouth 30-year old muthafuckas + +[Kendrick Lamar:] +That's crazy, +because me being one of your offspring of the legacy you left behind I +can truly tell you that there's nothing but turmoil goin' on so I wanted +to ask you what you think is the future for me and my generation today? + +[2Pac:] +I think that niggas is tired of grabbin' shit out the stores and next time it's a riot there's gonna be, like, uh, bloodshed for real. I don't think America +know that. I think American think we was just playing and it's gonna be +some more playing but it ain't gonna be no playing. It's gonna be +murder, you know what I'm saying, it's gonna be like Nat Turner, 1831, +up in this muthafucka. You know what I'm saying, it's gonna happen + +[Kendrick Lamar:] +That's +crazy man. In my opinion, only hope that we kinda have left is music +and vibrations, lotta people don't understand how important it is. +Sometimes I be like, get behind a mic and I don't know what type of +energy I'mma push out, or where it comes from. Trip me out sometimes + +[2Pac:] +Because the spirits, we ain't even really rappin', we just letting our dead homies tell stories for us + +[Kendrick Lamar:] +Damn + +I wanted to read one last thing to you. It's actually something a good friend had wrote describing my world. It says: + +"The caterpillar is a prisoner to the streets that conceived it +Its only job is to eat or consume everything around it, in order to protect itself from this mad city +While consuming its environment the caterpillar begins to notice ways to survive +One thing it noticed is how much the world shuns him, but praises the butterfly +The butterfly represents the talent, the thoughtfulness, and the beauty within the caterpillar +But +having a harsh outlook on life the caterpillar sees the butterfly as +weak and figures out a way to pimp it to his own benefits +Already surrounded by this mad city the caterpillar goes to work on the cocoon which institutionalizes him +He can no longer see past his own thoughts +He's trapped +When trapped inside these walls certain ideas take roots, such as going home, and bringing back new concepts to this mad city +The result? +Wings begin to emerge, breaking the cycle of feeling stagnant +Finally free, the butterfly sheds light on situations that the caterpillar never considered, ending the internal struggle +Although the butterfly and caterpillar are completely different, they are one and the same." + +What's your perspective on that? +Pac? Pac? +Pac?! \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar - PRIDE..txt b/ncmpcpp/lyrics/Kendrick Lamar - PRIDE..txt new file mode 100644 index 0000000..f4e9090 --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar - PRIDE..txt @@ -0,0 +1,75 @@ +[Bēkon:] +Love's gonna get you killed +But pride's gonna be the death of you and you and me +And you and you and you and me +And you and you and you and me +And you and you and you and me and- + +[Steve Lacy (Kendrick Lamar):] +Me, I wasn't taught to share, but care +(In another life, I surely was there) +Me, I wasn't taught to share, but care +(I care, I care) + +[Kendrick Lamar:] +Hell-raising, wheel-chasing, new worldy possessions +Flesh-making, spirit-breaking, which one would you lessen? +The better part, the human heart +You love 'em or dissect 'em +Happiness or flashiness? How do you serve the question? +See, in the perfect world, I would be perfect, world +I don't trust people enough beyond they surface, world +I don't love people enough to put my faith in men +I put my faith in these lyrics, hoping I make amend +I understand I ain't perfect +I probably won't come around +This time, I might put you down +Last time, I ain't give a fuck, I still feel the same now +My feelings might go numb, you're dealing with cold thumb +I'm willing to give up a leg and arm and show empathy from +Pity parties and functions and you and yours +A perfect world, you probably live another 24 +I can't fake humble just 'cause your ass is insecure +I can't fake humble just 'cause your ass is insecure + +[Steve Lacy (Kendrick Lamar):] +Me, I wasn't taught to share, but care +In another life, I surely was there +Me, I wasn't taught to share, but care +(I care, I care) + +[Kendrick Lamar & Anna Wise:] +Maybe I wasn't there +Maybe I wasn't there +Maybe I wasn't there +Maybe I wasn't there + +[Kendrick Lamar:] +Now, in a perfect world, I probably won't be insensitive +Cold as December, but never remember what Winter did +I wouldn't blame you for mistakes I made or the bed I laid +Seems like I point the finger just to make a point nowadays +Smiles and cold stares, the temperature goes there +Indigenous disposition, feel like we belong here +I know the walls, they can listen, I wish they could talk back +The hurt becomes repetition, the love almost lost that +Sick venom in men and women overcome with pride +A perfect world is never perfect, only filled with lies +Promises are broken and more resentment come alive +Race barriers make inferior of you and I +See, in a perfect world, I'll choose faith over riches +I'll choose work over bitches, I'll make schools out of prison +I'll take all the religions and put 'em all in one service +Just to tell 'em we ain't shit, but He's been perfect, world + +[Steve Lacy (Kendrick Lamar):] +Me, I wasn't taught to share, but care +(In another life, I surely was there) +Me, I wasn't taught to share, but care +(I care, I care) + +[Kendrick Lamar & Anna Wise:] +Maybe I wasn't there +Maybe I wasn't there +Maybe I wasn't there +Maybe I wasn't there \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar - The Blacker the Berry.txt b/ncmpcpp/lyrics/Kendrick Lamar - The Blacker the Berry.txt new file mode 100644 index 0000000..8ac14fa --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar - The Blacker the Berry.txt @@ -0,0 +1,97 @@ +Everything black, I don't want black +I want everything black, I ain't need black +Some white some black, I ain't mean black +I want everything black +[x2] + +Six in the mornin', fire in the street +Burn, baby burn, that's all I wanna see +And sometimes I get off watchin' you die in vain +It's such a shame they may call me crazy +They may say I suffer from schizophrenia or somethin' +But homie you made me +Black don't crack my nigga + +I'm the biggest hypocrite of 2015 +Once I finish this, witnesses will convey just what I mean +Been feeling this way since I was 16, came to my senses +You never liked us anyway, fuck your friendship, I meant it +I'm African-American, I'm African +I'm black as the moon, heritage of a small village +Pardon my residence +Came from the bottom of mankind +My hair is nappy, my dick is big, my nose is round and wide +You hate me don't you? +You hate my people, your plan is to terminate my culture +You're fuckin' evil I want you to recognize that I'm a proud monkey +You vandalize my perception but can't take style from me +And this is more than confession +I mean I might press the button just so you know my discretion +I'm guardin' my feelins, I know that you feel it +You sabotage my community, makin' a killin' +You made me a killer, emancipation of a real nigga + +[Pre-Hook:] +The blacker the berry, the sweeter the juice +The blacker the berry, the sweeter the juice +The blacker the berry, the sweeter the juice +The blacker the berry, the bigger I shoot + +[Hook:] +I said they treat me like a slave, cah' me black +Woi, we feel a whole heap of pain, cah' we black +And man a say they put me in a chain, cah' we black +Imagine now, big gold chain full of rocks +How you no see the whip, left scars pon' me back +But now we have a big whip, parked pon' the block +All them say we doomed from the start, cah' we black +Remember this, every race start from the black, just remember that + +I'm the biggest hypocrite of 2015 +Once I finish this, witnesses will convey just what I mean +I mean, it's evident that I'm irrelevant to society +That's what you're telling me, penitentiary would only hire me +Curse me till I'm dead +Church me with your fake prophesyzing that I'mma be just another slave in my head +Institutionalize manipulation and lies +Reciprocation of freedom only live in your eyes +You hate me don't you? +I know you hate me just as much as you hate yourself +Jealous of my wisdom and cards I dealt +Watchin' me as I pull up, fill up my tank, then peel out +Muscle cars like pull ups, show you what these big wheels 'bout, ah +Black and successful, this black man meant to be special +CAT scans on my radar bitch, how can I help you? +How can I tell you I'm making a killin'? +You made me a killer, emancipation of a real nigga + +[Pre-Hook] + +[Hook] + +I'm the biggest hypocrite of 2015 +When I finish this if you listenin' sure you will agree +This plot is bigger than me, it's generational hatred +It's genocism, it's grimy, little justification +I'm African-American, I'm African +I'm black as the heart of a fuckin' Aryan +I'm black as the name of Tyrone and Darius +Excuse my French but fuck you — no, fuck y'all +That's as blunt as it gets, I know you hate me, don't you? +You hate my people, I can tell cause it's threats when I see you +I can tell cause your ways deceitful +Know I can tell because you're in love with the Desert Eagle +Thinkin' maliciously, he get a chain then you gone bleed him +It's funny how Zulu and Xhosa might go to war +Two tribal armies that want to build and destroy +Remind me of these Compton Crip gangs that live next door +Beefin' with Piru's, only death settle the score +So don't matter how much I say I like to preach with the Panthers +Or tell Georgia State "Marcus Garvey got all the answers" +Or try to celebrate February like it's my B-Day +Or eat watermelon, chicken, and Kool-Aid on weekdays +Or jump high enough to get Michael Jordan endorsements +Or watch BET cause urban support is important +So why did I weep when Trayvon Martin was in the street? +When gang banging make me kill a nigga blacker than me? +Hypocrite! \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar - i.txt b/ncmpcpp/lyrics/Kendrick Lamar - i.txt new file mode 100644 index 0000000..492bce5 --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar - i.txt @@ -0,0 +1,147 @@ +[Produced by Rahki]​​​​​​​​​​​​​​​​​​​ +[Directed by Alexandre Moors and the Little Homies] + +[Intro] +Is this mic on? (Hey, move this way, this way) +Hey, Hey! Hey! Turn the mic up, c'mon, c'mon +Is the mic on or not? I want the mic +We're bringing up nobody, nobody... +Nobody but the number one rapper in the world +He done traveled all over the world +He came back just to give you some game +All of the little boys and girls, come up here +(One two, one two, what's happening, fool?) +Come right here, this is for you, come on up +Kendrick Lamar, make some noise, brother +I done been through a whole lot +Trial, tribulation, but I know God +The Devil wanna put me in a bow tie +Pray that the holy water don't go dry +As I look around me +So many motherfuckers wanna down me +But enemigo never drown me +In front of a dirty double-mirror they found me + +[Chorus] +And (I love myself) +When you lookin' at me, tell me what do you see? +(I love myself) +Ahh, I put a bullet in the back of the back of the head of the police +(I love myself) +Illuminated by the hand of God, boy, don't seem shy +(I love myself) +One day at a time + +[Verse 1] +They wanna say it's a war outside, bomb in the street +Gun in the hood, mob of police +Rock on the corner with a line for the fiend +And a bottle full of lean and a model on the scheme, uh +These days of frustration keep y'all on tuck and rotation (Come to the front) +I duck these cold faces, post up fi-fie-fo-fum basis +Dreams of reality's peace +Blow steam in the face of the beast +Sky could fall down, wind could cry now +Look at me motherfucker I smile- + +[Chorus] +And (I love myself) +When you lookin' at me, tell me what do you see? +(I love myself) +Ahh, I put a bullet in the back of the back of the head of the police +(I love myself) +Illuminated— +All ya'll come to the front, ya'll come up to the front +(I love myself) +Baby what about you, come on + +[Verse 2] +(Crazy, what you gon' do?) +Lift up your head and keep moving, (Keep moving) turn the mic up +(Haunt you) +Peace to fashion police, I wear my heart +On my sleeve, let the runway start +You know the miserable do love company +What do you want from me and my scars? +Everybody lack confidence, everybody lack confidence +How many times my potential was anonymous? +How many times the city making me promises? +So I promise this, nigga + +[Chorus] +(I love myself) +When you lookin' at me, tell me what do you see? +(I love myself) +Ahh, I put a bullet in the back of the back of the head of the police +(I love myself) +Illuminated by the hand of God, boy don't seem shy +(I love myself) + +[Bridge] +Huh (Walk my bare feet) Huh (Walk my bare feet) +Huh (Down, down valley deep) Huh (Down, down valley deep) +(I love myself) Huh (Fi-fie-fo-fum) Huh (Fi-fie-fo-fum) +(I love myself) Huh (My heart undone) one, two, three + +[Verse 3] +I went to war last night +With an automatic weapon, don't nobody call a medic +I'ma do it till I get it right (Oh no) +I went to war last night (Night, night, night, night) +I've been dealing with depression ever since an adolescent +Duckin' every other blessin', I can never see the message +I could never take the lead, I could never bob and weave +From a negative and letting them annihilate me +And it's evident I'm moving at a meteor speed +Finna run into a building, lay my body... + +[Spoken Interlude] +(Offstage Argument) +Not on my, not while I'm up here +Not on my time, kill the music, not on my time +We could save that shit for the streets +We could save that shit, this for the kids bro +2015, niggas tired of playin' victim dog +Niggas ain't trying to play vic— TuTu, how many niggas we done lost? +How many— Yan-Yan, how many we done lost? +No for real, answer the que—, how many niggas we done lost bro? +This—, this year alone +Exactly, so we ain't got time to waste time my nigga +Niggas gotta make time bro +The judge make time, you know that, the judge make time right? +The judge make time so it ain’t shit +It shouldn’t be shit for us to come out here and appreciate the little bit of life we got left, dog +On the dead homies, Charlie P, you know that bro +You know that +It’s mando, right, it's mando +And I— And I say this because I love you niggas man +I love all my niggas bro +Exac— enough said, enough said +And we gon' get back to the show and move on, because that shit petty my nigga +Mic check, mic check, mic check, mic check, mic check +We gon' do some acapella shit before we get back to- +All my niggas listen, listen to this: + +[Verse 4] +I promised Dave I'd never use the phrase "fuck nigga" +He said, "Think about what you saying: "Fuck niggas" +No better than Samuel on the Django +No better than a white man with slave boats" +Sound like I needed some soul searching +My Pops gave me some game in real person +Retraced my steps on what they never taught me +Did my homework fast before government caught me +So I'ma dedicate this one verse to Oprah +On how the infamous, sensitive N-word control us +So many artists gave her an explanation to hold us +Well, this is my explanation straight from Ethiopia +N-E-G-U-S definition: royalty; king royalty - wait listen +N-E-G-U-S description: black emperor, king, ruler, now let me finish +The history books overlook the word and hide it +America tried to make it to a house divided +The homies don't recognize we been using it wrong +So I'ma break it down and put my game in a song +N-E-G-U-S, say it with me, or say it no more +Black stars can come and get me +Take it from Oprah Winfrey, tell her she right on time +Kendrick Lamar, by far, realest Negus alive \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar - u.txt b/ncmpcpp/lyrics/Kendrick Lamar - u.txt new file mode 100644 index 0000000..e9988cb --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar - u.txt @@ -0,0 +1,74 @@ +[10x:] +Loving you is complicated + +I place blame on you still +Place shame on you still +Feel like you ain't shit +Feel like you don't feel, confidence in yourself +Breakin' on marble floors +Watchin' anonymous strangers tellin' me that I'm yours +But you ain't shit I'm convinced your talent's nothin' special +What can I blame him for? +Nigga, I can name several +Situation had stopped with your little sister bakin' +A baby inside, just a teenager, where your patience? +Where was your antennas, where was the influence you speak of? +You preached in front of 100,000 but never reached her +I fuckin' tell you, you're fuckin' failure, you ain't no leader +I never liked you, forever despise you, I don't need you +The world don't need you, don't let them deceive you +Numbers lie too, fuck your pride too, that's for dedication +Thought money would change you, made you more complacent +I fuckin' hate you, I hope you embrace it + +[5x:] +Loving you is complicated + +Lovin' you, lovin' you, not lovin' you, one hundred proof +I can feel you vibin', recognize that you're ashamed of me +Yes, I hate you too + +House keeping +[Knocks] +House keeping +¡Abre la puerta! ¡Abre la puerta tengo que limpiar el cuarto! +¡Es que no hay mucho tiempo tengo que limpiar el cuarto¡ +!Disculpe! + +And you the reason why mama and them leavin' +No, you ain't shit, you say you love them, I know you don't mean it +I know you're irresponsible, selfish, in denial, can't help it +Your trials and tribulations a burden, everyone felt it +Everyone heard it, multiple shots, corners cryin' out +You was deserted, where was your antennas again? +Where was your presence, where was your support that you pretend? +You ain't no brother, you ain't no disciple, you ain't no friend +A friend never leave Compton for profit, or leave his best friend +Little brother, you promised you'd watch him before they shot him +Where was your antennas? On the road, bottles and bitches +You FaceTime'd the one time, that's unforgiven +You even FaceTime'd instead of a hospital visit +'Cause you thought he would recover, well +The surgery couldn't stop the bleeding for real +Then he died, God himself will say, "You fuckin' failed." +You ain't try + +I know your secrets nigga +Mood swings is frequent nigga +I know depression is restin' on your heart for two reasons, nigga +I know you and a couple block boys ain't been speaking, nigga +Y'all damn near beefin', I seen it and you're the reason, nigga +And if this bottle could talk [gulp] I cry myself to sleep +Bitch, everything is your fault +Faults breakin' to pieces, earthquakes on every weekend +Because you shook as soon as you knew confinement was needed +I know your secrets +Don't let me tell them to the world about that shit you thinkin' +And that time you [gulp] I'm 'bout to hurl +I'm fucked up, but ain't as fucked up as you +You just can't get right, I think your heart made of bullet proof +Shoulda killed yo ass a long time ago +You shoulda filled that black revolver blast a long time ago +And if those mirrors could talk it would say, "You gotta go." +And if I told your secrets +The world'll know money can't stop a suicidal weakness \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar feat. U2 - XXX..txt b/ncmpcpp/lyrics/Kendrick Lamar feat. U2 - XXX..txt new file mode 100644 index 0000000..44a9a2c --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar feat. U2 - XXX..txt @@ -0,0 +1,92 @@ +[Bēkon:] +America, God bless you if it's good to you +America please take my hand +Can you help me underst- +[Kid Capri:] New Kung Fu Kenny + +[Kendrick Lamar:] +Throw a steak off the ark +To a pool full of sharks, he'll take it +Leave him in the wilderness +With a sworn nemesis, he'll make it +Take the gratitude from him +I bet he'll show you somethin', whoa +I'll chip a nigga little bit of nothin' +I'll chip a nigga little bit of nothin' +I'll chip a nigga little bit of nothin' +I'll chip a nigga, then throw the blower in his lap +Walk myself to the court like, "Bitch, I did that!" +X-rated + +Johnny don't wanna go to school no mo', no mo' +Johnny said books ain't cool no mo' (no mo') +Johnny wanna be a rapper like his big cousin +Johnny caught a body yesterday out hustlin' +God bless America, you know we all love him + +Yesterday I got a call like from my dog like 101 +Said they killed his only son because of insufficient funds +He was sobbin', he was mobbin', way belligerent and drunk +Talkin' out his head, philosphin' on what the Lord had done +He said: "K-Dot, can you pray for me? +It's been a fucked up day for me +I know that you anointed, show me how to overcome." +He was lookin' for some closure +Hopin' I could bring him closer +To the spiritual, my spirit do no better, but I told him +"I can't sugarcoat the answer for you, this is how I feel: +If somebody kill my son, that mean somebody gettin' killed." +Tell me what you do for love, loyalty, and passion of +All the memories collected, moments you could never touch + +I'll wait in front a niggas spot and watch him hit his block +I'll catch a nigga leavin' service if that's all I got +I'll chip a nigga, then throw the blower in his lap +Walk myself to the court like, "Bitch, I did that!" +Ain't no Black Power when your baby killed by a coward +I can't even keep the peace, don't you fuck with one of ours +It be murder in the street, it be bodies in the hour +Ghetto bird be on the street, paramedics on the dial +Let somebody touch my mama +Touch my sister, touch my woman +Touch my daddy, touch my niece +Touch my nephew, touch my brother + +You should chip a nigga, then throw the blower in his lap +Matter fact, I'm 'bout to speak at this convention +Call you back- + +Alright, kids, we're gonna talk about gun control +(Pray for me) Damn! + +[Bono:] +It's not a place +This country is to be a sound of drum and bass +You close your eyes to look around + +[Kendrick Lamar:] +Hail Mary, Jesus and Joseph +The great American flag +Is wrapped and dragged with explosives +Compulsive disorder, sons and daughters +Barricaded blocks and borders +Look what you taught us! +It's murder on my street, your street, back streets +Wall Street, corporate offices +Banks, employees, and bosses with +Homicidal thoughts; Donald Trump's in office +We lost Barack and promised to never doubt him again +But is America honest, or do we bask in sin? +Pass the gin, I mix it with American blood +Then bash him in, you Crippin' or you married to blood? +I'll ask again-oops-accident +It's nasty when you set us up +Then roll the dice, then bet us up +You overnight the big rifles, then tell Fox to be scared of us +Gang members or terrorists, et cetera, et cetera +America's reflections of me, that's what a mirror does + +[Bono:] +It's not a place +This country is to be a sound of drum and bass +You close your eyes to look ar- \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar feat. Zacari - LOVE..txt b/ncmpcpp/lyrics/Kendrick Lamar feat. Zacari - LOVE..txt new file mode 100644 index 0000000..f3ed675 --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar feat. Zacari - LOVE..txt @@ -0,0 +1,99 @@ +[Kendrick Lamar:] +Damn, love or lust +Damn, all of us + +[Zacari (Kendrick Lamar):] +Give me a run for my money +There is nobody, no one to outrun me +(Another world premiere!) +So give me a run for my money +Sippin' bubbly, feelin' lovely, livin' lovely +Just love me +(I wanna be with you, ay, I wanna be with) +Just love me, just love me, just love me +(I wanna be with you, ay, I wanna be with) +Love me +(I wanna be with you) +Love me, just love me + +[Kendrick Lamar (Zacari):] +If I didn't ride blade on curb, would you still (love me)? +If I minimized my net worth, would you still (love me)? +Keep it a hundred, I'd rather you trust me than to (love me) +Keep it a whole one hund': don't got you, I got nothin' + +[Kendrick Lamar:] +Ay, I got somethin' +Hol' up, we gon' function, no assumptions +Feelin' like Tyson with it +Knock it out twice, I'm with it +Only for the night, I'm kiddin' +Only for life, yeah, only for life, yeah +Only for life, let's get it +Hit that shoulder lean +I know what comin' over me +Backstroke oversea +I know what you need +Already on ten, all money come in +All feeling go out, this feeling don't drought +This party won't end + +[Kendrick Lamar (Zacari):] +If I didn't ride blade on curb, would you still (love me)? +If I minimized my net worth, would you still (love me)? +Keep it a hundred, I'd rather you trust me than to (love me) +Keep it a whole one hund': don't got you, I got nothin' + +[Zacari (Kendrick Lamar):] +Give me a run for my money +There is nobody, no one to outrun me +So give me a run for my money +Sippin' bubbly, feelin' lovely, livin' lovely +Just love me +(I wanna be with you, ay, I wanna be with) +Just love me, just love me, just love me +(I wanna be with you, ay, I wanna be with) +Love me +(I wanna be with you) +Love me, just love me + +[Kendrick Lamar:] +I'm on the way +We ain't got no time to waste +Poppin' your gum on the way +Am I in the way? +I don't wan' pressure you none +I want your blessing today +Oh, by the way, open the door by the way +Told you that I'm on the way +I'm on the way, I know connection is vague +Pick up the phone for me, babe +Damn it, we jammin' +Bad attitude from your nanny +Curves and your hips from your mammy +Remember Gardena, I took the studio camera +I know Top will be mad at me +I had to do it, I want your body, your music +I bought the big one to prove it +Look what you made +Told you that I'm on the way +I'm like an exit away, yep + +[Kendrick Lamar (Zacari):] +If I didn't ride blade on curb, would you still (love me)? +If I minimized my net worth, would you still (love me)? +Keep it a hundred, I'd rather you trust me than to (love me) +Keep it a whole one hund': don't got you, I got nothin' + +[Zacari (Kendrick Lamar):] +Give me a run for my money +There is nobody, no one to outrun me +So give me a run for my money +Sippin' bubbly, feelin' lovely, livin' lovely +Just love me +(I wanna be with you, ay, I wanna be with) +Just love me, just love me, just love me +(I wanna be with you, ay, I wanna be with) +Love me +(I wanna be with you) +Love me, just love me \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kendrick Lamar ft. Bilal, Anna Wise, & Thundercat - These Walls.txt b/ncmpcpp/lyrics/Kendrick Lamar ft. Bilal, Anna Wise, & Thundercat - These Walls.txt new file mode 100644 index 0000000..9e1adac --- /dev/null +++ b/ncmpcpp/lyrics/Kendrick Lamar ft. Bilal, Anna Wise, & Thundercat - These Walls.txt @@ -0,0 +1,86 @@ +I remember you was conflicted, misusing your influence +Sometimes, I did the same + +If these walls could talk [x6] + +[Anna Wise:] +Sex, she just want to close her eyes and sway +If you, if you, if you exercise your right to work it out +Its true, its true, its true, shout out to the birthday girls say hey +Say hey, everyone deserves a night to play +And shes plays only when you tell her no + +[Hook - Bilal:] +If these walls could talk +I can feel your reign when it cries gold lives inside of you +If these walls could talk +I love it when I’m in it, I love it when I’m in it + +If these walls could talk they’d tell me to swim good +No boat I float better than he would +No life jacket I’m not the guard in Nazareth +But your flood can be misunderstood +Wall telling me they full of pain, resentment +Need someone to live in them just to relieve tension +Me? I’m just a tenant +My lord said these walls vacant more than a minute +These walls are vulnerable, exclamation +Interior pink, color coordinated +I interrogated every nook and cranny +I mean its still amazing before they couldn’t stand me +These walls want to cry tears +These walls happier when I’m here +These walls never could hold up +Everytime I come around demolition might crush + +[Hook] + +If these walls could talk they’d tell me to go deep +Yelling at me continuously I can see +Your defense mechanism is my decision +Knock these walls down that’s my religion +Walls feeling like they ready to close in +I suffocate then catch my second wind +I resonate in these walls +I don’t know how long I can wait in these walls +I’ve been on these streets too long looking at you from the outside in +They sing the same old song about how they walls are always the cleanest +I beg to differ, I must’ve missed them +I’m not involved I’d rather diss them +I’d rather call all you put your wall up +Cause when I come around demolition gon’ crush + +[Hook] + +If your walls could talk they’d tell you it’s too late +Your destiny accepted your fate +Burn accessories and stash them where they are +Take the recipe, the bible and god +Wall telling you that commissary is low +Race wars happening no calling CO +No calling your mother to save you +Homies say to you, you're reputable, not acceptable +Your behavior is Sammy Da Bull like a killer that turned snitch +Walls is telling me you a bitch +You pray for appeals hoping the warden could afford them +That sentence so important +Walls telling you to listen to "Sing About Me" +Retaliation is strong you even dream about me +Killed my homeboy and God spared your life +Dumb criminal got indicted the same night +So when you play this song rewind the first verse +About me abusing my power so you can hurt +About me and her in the shower whenever she horny +About me and her in the after hours of the morning +About her baby daddy currently serving life +And how she think about you until we meet up at night +About the only girl that cared about you when you asked her +And how she fucking on a famous rapper +Walls could talk + +I remember you was conflicted +Misusing your influence +Sometimes I did the same +Abusing my power full of resentment +Resentment that turned into a deep depression +Found myself screaming in a hotel room \ No newline at end of file diff --git "a/ncmpcpp/lyrics/Kero Kero Bonito - If I\342\200\231d Known.txt" "b/ncmpcpp/lyrics/Kero Kero Bonito - If I\342\200\231d Known.txt" new file mode 100644 index 0000000..09c44c4 --- /dev/null +++ "b/ncmpcpp/lyrics/Kero Kero Bonito - If I\342\200\231d Known.txt" @@ -0,0 +1,37 @@ +Looking back, I ponder all the possibilities +That I had sat right in front of me +Every one an optional decision +Giving birth to a dedicated universe + +Only if I'd known long ago +That a choice will grow +Into another road + +But I heard that every single version of events +Will occur whatever we expect +And as such, I really needn't worry very much +'Cause I feel all worlds at once + +Only if I'd known long ago +Space is ours to roam +If you can find your own + +Reality proves me +It goes pretty smoothly +But I haven't found the meaning +Quite yet + +Only if I'd known long ago +That a choice will grow +Into another road +Only if I'd known long ago +Space is ours to roam +If you can find your own + +Who tore the sky? Who copied me? +Water going back on itself, up to the sea +Is that, a whole world talking from just behind a ceiling? +Watch me get my two timelines +Not going through the door all alone +I leave something on the side +So you know I said hello \ No newline at end of file diff --git a/ncmpcpp/lyrics/Kero Kero Bonito - Trampoline.txt b/ncmpcpp/lyrics/Kero Kero Bonito - Trampoline.txt new file mode 100644 index 0000000..7c62619 --- /dev/null +++ b/ncmpcpp/lyrics/Kero Kero Bonito - Trampoline.txt @@ -0,0 +1,69 @@ +As the rain came down my window +I heard the wind blow all around +I was stuck under the weather +Felt like forever out of the sun +But then I looked at my garden +And saw at the bottom my old trampoline +That's when I knew what to do +I could break right on through +Yeah, the clouds aren't so high + +First you fall down, then you jump back up again +Find your rhythm, momentum is the key +It's so easy, anyone can trampoline +So jump on up and you can see +The whole wide world +When you're ready, mix it up, try everything +Full twist, backflip, just set your body free +Life looks better when you're on your trampoline +But keep an eye on gravity and don't forget to bounce +(Bounce, bounce, bounce, bounce...) + +Though I love it when I'm floating +It's kind of lonely at the top +But if we all jump together +Then we'll go higher +We'll never stop +I know I've got to come down +Put my feet on the ground soon +But that's okay +You see, I'm safe in the knowledge +No matter what, I got my old trampoline + +First you fall down, then you jump back up again +Find your rhythm, momentum is the key +It's so easy, anyone can trampoline +So jump on up and you can see +The whole wide world +When you're ready, mix it up, try everything +Full twist, backflip, just set your body free +Life looks better when you're on your trampoline +But keep an eye on gravity and don't forget to bounce +(Bounce, bounce, bounce, bounce...) + +つまずいて落ちてくことってあるけど +どん底の底の底って何があるか知ってる? +どんどん落ちていくとトランポリンがあるんだよ +突き落とされても大丈夫 +手をあげて飛び上がれ! + +Even if you're falling, that's okay +There's a trampoline waiting for you +It's so easy, you just have to believe +信じればいいんだよ + +So jump, jump, trampoline, fly to where you want to be +Jump, jump, trampoline, fly to where you want to be +Jump, jump, trampoline, fly to where you want to be +Jump, jump, trampoline, fly to where you want to be + +First you fall down, then you jump back up again +Find your rhythm, momentum is the key +It's so easy, anyone can trampoline +So jump on up and you can see +The whole wide world +When you're ready, mix it up, try everything +Full twist, backflip, just set your body free +Life looks better when you're on your trampoline +But keep an eye on gravity and don't forget to bounce +(Bounce, bounce, bounce, bounce...) \ No newline at end of file diff --git a/ncmpcpp/lyrics/King Crimson - Epitaph (including March for No Reason and Tomorrow and Tomorrow).txt b/ncmpcpp/lyrics/King Crimson - Epitaph (including March for No Reason and Tomorrow and Tomorrow).txt new file mode 100644 index 0000000..a8c181f --- /dev/null +++ b/ncmpcpp/lyrics/King Crimson - Epitaph (including March for No Reason and Tomorrow and Tomorrow).txt @@ -0,0 +1,23 @@ +The wall on which the prophets wrote +Is cracking at the seams +Upon the instruments of death +The sunlight brightly gleams +When every man is torn apart +With nightmares and with dreams, +Will no one lay the laurel wreath +As silence drowns the screams + +Between the iron gates of fate, +The seeds of time were sown, +And watered by the deeds of those +Who know and who are known; +Knowledge is a deadly friend +When no one sets the rules +The fate of all mankind I see +Is in the hands of fools + +Confusion will be my epitaph +As I crawl a cracked and broken path +If we make it we can all sit back and laugh, +But I fear tomorrow I'll be crying, +Yes I fear tomorrow I'll be crying \ No newline at end of file diff --git a/ncmpcpp/lyrics/King Crimson - Moonchild (including The Dream and The Illusion).txt b/ncmpcpp/lyrics/King Crimson - Moonchild (including The Dream and The Illusion).txt new file mode 100644 index 0000000..3ce9094 --- /dev/null +++ b/ncmpcpp/lyrics/King Crimson - Moonchild (including The Dream and The Illusion).txt @@ -0,0 +1,19 @@ +Call her moonchild +Dancing in the shallows of a river +Lonely moonchild +Dreaming in the shadows of the willow + +Talking to the trees of the cobweb strange +Sleeping on the steps of a fountain +Waving silver wands to the night-birds song +Waiting for the sun on the mountain + +She's a moonchild +Gathering the flowers in a garden +Lovely moonchild +Drifting on the echoes of the hours + +Sailing on the wind in a milk white gown +Dropping circle stones on a sun dial +Playing hide and seek with the ghosts of dawn +Waiting for a smile from a sun child \ No newline at end of file diff --git a/ncmpcpp/lyrics/King Crimson - The Court of the Crimson King (including The Return of the Fire Witch and The Dance of the Puppets).txt b/ncmpcpp/lyrics/King Crimson - The Court of the Crimson King (including The Return of the Fire Witch and The Dance of the Puppets).txt new file mode 100644 index 0000000..ab302d3 --- /dev/null +++ b/ncmpcpp/lyrics/King Crimson - The Court of the Crimson King (including The Return of the Fire Witch and The Dance of the Puppets).txt @@ -0,0 +1,14 @@ +Cat's foot iron claw +Neuro-surgeons scream for more +At paranoia's poison door. +Twenty first century schizoid man. + +Blood rack barbed wire +Politicians' funeral pyre +Innocents raped with napalm fire +Twenty first century schizoid man. + +Death seed blind man's greed +Poets' starving children bleed +Nothing he's got he really needs +Twenty first century schizoid man. \ No newline at end of file diff --git a/ncmpcpp/lyrics/Marko Polo - Speedy Speed Boys.txt b/ncmpcpp/lyrics/Marko Polo - Speedy Speed Boys.txt new file mode 100644 index 0000000..381ae25 --- /dev/null +++ b/ncmpcpp/lyrics/Marko Polo - Speedy Speed Boys.txt @@ -0,0 +1,63 @@ +[Chorus] Speedy Speed Boy - gasoline's burnin' in +Speedy Speed Boy - as fast as I can be +Speedy Speed Boy - every night and day +Wind is on my face + +(Speedy Speed Boy) +(Speedy Speed Boy) + +Running with my car +Running in my dreams every night...Night +Born to overtake +Born to race and to overdrive...Drive + +Engine's over the red degrees +And my +Heart beats as much as I can breathe +But I +Don't want claim any stop +They wanna say I'm quitting...(Quitting) + +[Chorus] x 2 + +Squealing off the tyres +skidding to the left and the right...Right +My step on the brakes, +rear vision , mirror to spy...Spy + +Engine's over the red degrees +And my +Heart beats as much as I can breathe +But I +Don't want claim any stop +They wanna say I'm quitting...(Quitting) + +[Chorus] x 2 + +(Speedy Speed Boy woa oh woa oh) +(Speed Boy Speed Boy woa oh woa oh) +(Speedy Speed Boy woa oh woa oh) +(Speed Boy Speed Boy woa oh woa oh) + +(Night...night) +(Drive...drive) +(Stop...Quitting) +(Boy...Boy...Boy...Boy...Boy...Boy) + +Speedy Speed Boy... + +(Boy...Boy...Boy...Boy...Boy...Boy) + +Running with my car +Running in my dreams every night...Night +Born to overtake +Born to race and to overdrive...Drive + +Engine's over the red degrees +And my +Heart beats as much as I can breathe +But I +Don't want claim any stop +They wanna say I'm quitting...(Quitting) + +[Chorus] x 4 \ No newline at end of file diff --git a/ncmpcpp/lyrics/NUMBER GIRL - delayed brain.txt b/ncmpcpp/lyrics/NUMBER GIRL - delayed brain.txt new file mode 100644 index 0000000..f9c0178 --- /dev/null +++ b/ncmpcpp/lyrics/NUMBER GIRL - delayed brain.txt @@ -0,0 +1,96 @@ +(Uh) +(Yeah) +(Bishy Bish) +(Emperor in the room) +(Coming through) +(About to do what it do) +(Uh) + +[Verse 1: Bishop Nehru] +I was thinking we could kick it +And you'd be my Nehruvian empress +I promised that only dreams we would witness +But you seeing something different +I know that this your mind not your intuition +'Cause you in the system giving them tuition + +And yes, I respect your position +But I'm just saying that your brain ain't missin' +So while you playing these games let me listen +Me and you could be slaying all competition + +We both see the vision, so let's make it happen +Dreaming without napping, euphoric satisfaction +We've grown with the passion, in flame for each other +So I wonder why we don't have a name for each other + +Enough with the games, sweet lips soft land +Let me know what you saying, 'cause my flight ain't delayed +There's no time for waitin' +Forget about them hatin' +On the other side +Nehruvian [?] Bishy's trying to vibe + +[Hook: Bishop Nehru] +Girl, I'm thinking that you're beautiful +And I can tell by your eyes that you feel me, too +So why do you feel the way that you do? +Why do you feel the way that you do? + +I catch you in my dreams, just me and you +But you seem confused, I'm trying to break the move +So why do you feel the way that you do? +So why do you feel the way that you do? + +(Uh) + +[Second verse: Bishop Nehru] +They usually play games, so it ain't nothing new to me +I'm used to being the teen who wins the queens musically +I tried through unity +Emotion wasn't workin' +'Cause they weren't seein' +But I'm finally with a bein' who believes in + +With what I do or don't for that matter +The fact that we can chat attracts and makes you badder +I hoping that that will flatter, not push you down the ladder +Don't mean to make you sad or [?] so + +No pressure, my bless friend [?] +Don't even got a dress shirt, you divine sun dresser +And we avoiding lecture, so there's no need to dis +We know that you can't miss me without it ending in a mystery + +'Cause they know that we pounding out the misery +Is literally killing me +I'm hoping that you slip and see +That you and me were meant to be +That you and me were meant to be +We were meant to be + +[Hook: Bishop Nehru] +Girl, I'm thinking that you're beautiful +And I can tell by your eyes that you feel me, too +So why do you feel the way that you do? +Why do you feel the way that you do? + +I catch you in my dreams, just me and you +But you seem confused, I'm trying to break the move +So why do you feel the way that you do? +So why do you feel the way that you do? + +(Trying to break the hold) + +(Let's go) + +[Hook: Bishop Nehru] +Girl, I'm thinking that you're beautiful +And I can tell by your eyes that you feel me, too +So why do you feel the way that you do? +Why do you feel the way that you do? + +I catch you in my dreams, just me and you +But you seem confused, I'm trying to break the move +So why do you feel the way that you do? +So why do you feel the way that you do? \ No newline at end of file diff --git a/ncmpcpp/lyrics/Otoboke Beaver - I'm Tired of Your Repeating Story.txt b/ncmpcpp/lyrics/Otoboke Beaver - I'm Tired of Your Repeating Story.txt new file mode 100644 index 0000000..afb8a5f --- /dev/null +++ b/ncmpcpp/lyrics/Otoboke Beaver - I'm Tired of Your Repeating Story.txt @@ -0,0 +1,39 @@ +[おとぼけビ~バ~の「もうその話なんべんもきいた」歌詞] + +もうその話きいた +その話きいた +きいたきいたきいたきいたきいたきいた +きいた +もうその話きいた +もうその話きいた +もうその話なんべんもきいた +お茶っぴきOLライクア屍 +もうその話きいた +もうその話きいた +もうその話なんべんもきいた +お茶っぴきOLライクア屍 +耳タコ +耳にタコ 耳にタコ 耳タコ +耳に耳にタコ 耳にタコ 耳タコ +耳にタコ 耳に耳にタコ +耳に耳にタコ ミニにタコ! +さっきその話きいたー! +きいた、きいた、ききききき きいた +その話きいた(きいた) +もうその話なんべんもきいた +一、十、百、千、万、十万、百万、千万 +(Too many times for me) +かけまくもかしこきっきききいた +かけまくもかしこきっきききいた +(Too many times for me) +ママ友サークル・ライク・ア・ブルジョワ +タコ! +このタコ! +タココラ! +一、十、百、千、万、十万、百万、千万 +耳にタコ 耳にタコ +耳にタコ 耳にタコ +耳に耳にタコ +耳にタコ 耳にタコ +耳タコ 耳タコ +耳に耳にタコ ミニにタコ! \ No newline at end of file diff --git a/ncmpcpp/lyrics/Panchiko - DEATHMETAL.txt b/ncmpcpp/lyrics/Panchiko - DEATHMETAL.txt new file mode 100644 index 0000000..ef9f6fa --- /dev/null +++ b/ncmpcpp/lyrics/Panchiko - DEATHMETAL.txt @@ -0,0 +1,44 @@ +I'm walking down Roppongi +The night is hot and smoggy +I drink a little coffee +A sake and a beer +I run into a ginja man +He speaks but I don't understand +He grins at me and takes my hand +And whispers in my ear + +[Chorus:] +I play Deji Pachi +I play Deji Pachi +I play Deji Pachi +In my Pachinko dream +I go Uchi Domi +I go Uchi Domi +I go Uchi Domi +In my Pachinko dream + +My senses all asunder +I stand and stare in wonder +There's bright light and there's thunder +In Pachinko land + +Well versed in the way of Zen +My pockets lined full of yen +I walk the aisle and back again +And sit at Domo's hand + +[Chorus] + +I'm on the lexus fever +My hand tight on the lever +I'm shrieking like a diva +Staring in a trance + +Turn the handle to the right +A stream of silver balls in flight +It screams and howls a blaze of light +The earth moves below me +I'm laughing tears of sheer delight +As I go Uchi Domi + +[Chorus] \ No newline at end of file diff --git a/ncmpcpp/lyrics/Rina Sawayama - Comme des garcons (Like the Boys).txt b/ncmpcpp/lyrics/Rina Sawayama - Comme des garcons (Like the Boys).txt new file mode 100644 index 0000000..2d2d580 --- /dev/null +++ b/ncmpcpp/lyrics/Rina Sawayama - Comme des garcons (Like the Boys).txt @@ -0,0 +1,70 @@ +Ooh, I woke up today had to wash my fears away +Again +Ooh, I'm feeling okay, its just another day +To pretend + +I'm done waiting +Anticipating +Keep going and going +Yeah, I'm just in it +Born to win it +Keep going and going + +Comme des garçons +"Like the boys" +"Like the boys" +Comme des garçons +I'm so confident +Comme des garçons +"Like the boys" +"Like the boys" +Comme des garçons +I'm so confident + +Excuse my ego +Can't go Incognito +Every time you see me, its like winning big in Reno +Don't fuck wit me ho +Take you down like judo +Make it rain, I'm taking names from London to Meguro + +Yeah yeah +Girl, its ok, you should never be ashamed +To have it all +Yeah yeah +Its gonna be okay, yeah, you've come a long way + +Comme des garçons +"Like the boys" +"Like the boys" +Comme des garçons +I'm so confident +Comme des garçons +"Like the boys" +"Like the boys" +Comme des garçons +I'm so confident + +Hot like a fever +Make you a believer +Write my name up in the sky from Paris to Shibuya +Miu Miu, Prada, Mugler +Virgil, Ross, Nicola +Elavate your vision when you put me on your cover +Ooh... + +Comme des garçons +Comme des garçons +Comme des garçons + +Comme des garçons +"Like the boys" +"Like the boys" +Comme des garçons +I'm so confident +Comme des garçons +"Like the boys" +"Like the boys" +Comme des garçons +I'm so confident +... \ No newline at end of file diff --git "a/ncmpcpp/lyrics/The Velvet Underground - All Tomorrow\342\200\231s Parties.txt" "b/ncmpcpp/lyrics/The Velvet Underground - All Tomorrow\342\200\231s Parties.txt" new file mode 100644 index 0000000..4dec9fd --- /dev/null +++ "b/ncmpcpp/lyrics/The Velvet Underground - All Tomorrow\342\200\231s Parties.txt" @@ -0,0 +1,23 @@ +And what costume shall the poor girl wear +To all tomorrow's parties +A hand-me-down dress from who knows where +To all tomorrow's parties +And where will she go and what shall she do +When midnight comes around +She'll turn once more to Sunday's clown +And cry behind the door +And what costume shall the poor girl wear +To all tomorrow's parties +Why silks and linens of yesterday's gowns +To all tomorrow's parties +And what will she do with Thursday's rags When Monday comes around +She'll turn once more to Sunday's clown +And cry behind the door +And what costume shall the poor girl wear +To all tomorrow's parties +For Thursday's child is Sunday's clown +For whom none will go mourning +A blackened shroud, a hand-me-down gown +Of rags and silks, a costume +Fit for one who sits and cries +For all tomorrow's parties \ No newline at end of file diff --git a/ncmpcpp/lyrics/The Velvet Underground - Femme Fatale.txt b/ncmpcpp/lyrics/The Velvet Underground - Femme Fatale.txt new file mode 100644 index 0000000..1a12ca3 --- /dev/null +++ b/ncmpcpp/lyrics/The Velvet Underground - Femme Fatale.txt @@ -0,0 +1,19 @@ +Here she comes, you better watch your step +She's going to break your heart in two, it's true It's not hard to realize +Just look into her false colored eyes +She builds you up to just put you down, what a clown +'Cause everybody knows (She's a femme fatale) +The things she does to please (She's a femme fatale) +She's just a little tease (She's a femme fatale) +See the way she walks +Hear the way she talks +You're put down in her book +You're number 37, have a look +She's going to smile to make you frown, what a clown +Little boy, she's from the street +Before you start, you're already beat +She's gonna play you for a fool, yes it's true +'Cause everybody knows (She's a femme fatale) +The things she does to please (She's a femme fatale) +She's just a little tease (She's a femme fatale) +See the way she walks Hear the way she talks \ No newline at end of file diff --git "a/ncmpcpp/lyrics/The Velvet Underground - I\342\200\231m Waiting for the Man.txt" "b/ncmpcpp/lyrics/The Velvet Underground - I\342\200\231m Waiting for the Man.txt" new file mode 100644 index 0000000..3cb5dab --- /dev/null +++ "b/ncmpcpp/lyrics/The Velvet Underground - I\342\200\231m Waiting for the Man.txt" @@ -0,0 +1,24 @@ +I'm waiting for my man +Twenty-six dollars in my hand +Up to Lexington, 125 +Feel sick and dirty, more dead than alive +I'm waiting for my man +Hey, white boy, what you doin' uptown? +Hey, white boy, you chasin' our women around? +Oh pardon me sir, it's the furthest from my mind +I'm just lookin' for a dear, dear friend of mine +I'm waiting for my man +Here he comes, he's all dressed in black +Beat up shoes and a big straw hat +He's never early, he's always late +First thing you learn is you always gotta wait I'm waiting for my man +Up to a Brownstone, up three flights of stairs +Everybody's pinned you, but nobody cares +He's got the works, gives you sweet taste +Ah then you gotta split because you got no time to waste +I'm waiting for my man +Baby don't you holler, darlin' don't you bawl and shout +I'm feeling good, you know I'm gonna work it on out +I'm feeling good, I'm feeling oh so fine +Until tomorrow, but that's just some other time +I'm waiting for my man \ No newline at end of file diff --git a/ncmpcpp/lyrics/The Velvet Underground - Run Run Run.txt b/ncmpcpp/lyrics/The Velvet Underground - Run Run Run.txt new file mode 100644 index 0000000..26ce518 --- /dev/null +++ b/ncmpcpp/lyrics/The Velvet Underground - Run Run Run.txt @@ -0,0 +1,35 @@ +Teenage Mary said to Uncle Dave +I sold my soul, must be saved +Gonna take a walk down to Union Square +You never know who you're gonna find there +You gotta run, run, run, run, run +Take a drag or two +Run, run, run, run, run +Gypsy Death and you +Tell you whatcha do +Marguerita Passion had to get her fix +She wasn't well, she was getting sick +Went to sell her soul, she wasn't high +Didn't know, thinks she could buy it +And she would run, run, run, run, run +Take a drag or two +Run, run, run, run, run +Gypsy Death and you +Tell you whatcha do +Seasick Sarah had a golden nose +Hobnail boots wrapped around her toes +When she turned blue, all the angels screamed +They didn't know, they couldn't make the scene +She had to run, run, run, run, run +Take a drag or two +Run, run, run, run, run +Gypsy Death and you +Tell you whatcha do +Beardless Harry, what a waste +Couldn't even get a small-town taste +Rode the trolleys down to forty-seven +Figured he was good to get himself to heaven +'Cause he had to run, run, run, run, run Take a drag or two +Run, run, run, run, run +Gypsy Death and you +Tell you whatcha do \ No newline at end of file diff --git a/ncmpcpp/lyrics/The Velvet Underground - Sunday Morning.txt b/ncmpcpp/lyrics/The Velvet Underground - Sunday Morning.txt new file mode 100644 index 0000000..ffe1b58 --- /dev/null +++ b/ncmpcpp/lyrics/The Velvet Underground - Sunday Morning.txt @@ -0,0 +1,17 @@ +Sunday morning, praise the dawning +It's just a restless feeling by my side +Early dawning, Sunday morning +It's just the wasted years so close behind +Watch out, the world's behind you +There's always someone around you who will call It's nothing at all +Sunday morning and I'm falling +I've got a feeling I don't want to know +Early dawning, Sunday morning +It's all the streets you crossed, not so long ago +Watch out, the world's behind you +There's always someone around you who will call It's nothing at all +Watch out, the world's behind you +There's always someone around you who will call It's nothing at all +Sunday morning +Sunday morning +Sunday morning \ No newline at end of file diff --git a/ncmpcpp/lyrics/The Velvet Underground - There She Goes Again.txt b/ncmpcpp/lyrics/The Velvet Underground - There She Goes Again.txt new file mode 100644 index 0000000..afe9103 --- /dev/null +++ b/ncmpcpp/lyrics/The Velvet Underground - There She Goes Again.txt @@ -0,0 +1,27 @@ +There she goes again +She's out on the streets again +She's down on her knees, my friend +But you know she'll never ask you please again +Now take a look, there's no tears in her eyes +She won't take it from just any guy, what can you do +You see her walkin' on down the street +Look at all your friends she's gonna meet +You better hit her +There she goes again +She's knocked out on her feet again +She's down on her knees, my friend +But you know she'll never ask you please again +Now take a look, there's no tears in her eyes +Like a bird, you know she would fly, what can you do +You see her walkin' on down the street +Look at all your friends that she's gonna meet +You better hit her +Now take a look, there's no tears in her eyes +Like a bird, you know she will fly, fly, fly away +See her walking on down the street +Look at all your friends that she's gonna meet +She's gonna bawl and shout +She's gonna work it +She's gonna work it out, bye bye +Bye bye baby +All right \ No newline at end of file diff --git a/ncmpcpp/lyrics/The Velvet Underground - Venus in Furs.txt b/ncmpcpp/lyrics/The Velvet Underground - Venus in Furs.txt new file mode 100644 index 0000000..f0ac91a --- /dev/null +++ b/ncmpcpp/lyrics/The Velvet Underground - Venus in Furs.txt @@ -0,0 +1,34 @@ +Shiny, shiny, shiny boots of leather +Whiplash girlchild in the dark +Comes in bells, your servant, don't forsake him +Strike, dear mistress, and cure his heart + +Downy sins of streetlight fancies +Chase the costumes she shall wear +Ermine furs adorn the imperious +Severin, Severin awaits you there + +I am tired, I am weary +I could sleep for a thousand years +A thousand dreams that would awake me +Different colors made of tears + +Kiss the boot of shiny, shiny leather +Shiny leather in the dark +Tongue of thongs, the belt that does await you +Strike, dear mistress, and cure his heart + +Severin, Severin, speak so slightly +Severin, down on your bended knee +Taste the whip, in love not given lightly +Taste the whip, now bleed for me + +I am tired, I am weary +I could sleep for a thousand years +A thousand dreams that would awake me +Different colors made of tears + +Shiny, shiny, shiny boots of leather +Whiplash girlchild in the dark +Severin, your servant comes in bells, please don't forsake him +Strike, dear mistress, and cure his heart \ No newline at end of file diff --git a/ncmpcpp/lyrics/mus.hiba - Darkness.txt b/ncmpcpp/lyrics/mus.hiba - Darkness.txt new file mode 100644 index 0000000..82a4a47 --- /dev/null +++ b/ncmpcpp/lyrics/mus.hiba - Darkness.txt @@ -0,0 +1,118 @@ +[Romanized:] + +Mama no onaka ni iruaida ni +Itte okitai koto ga ayu +Umarete suguni wasurete shimau kara +Papa to Mama to Boku no tame +Tyanto kiite kudashai + +Bokuyori saki ni gohan wo taberuna +Jyunban to shite Boku Mama Inu Papa +Kisu ha kuchi ni suruna +Mushiba ni naru kara +Doushitemo shitakattara +…Inu ni shite + +Wasurete kureruna +Koko ha kurakute fuan ni naru kedo +Mama no koe to dokun dokun no oto to +Papa no ookina otete ga daisuki +Shigoto mo katei mo umaku yaruno ha taihen dakeredo +Papa to Mama nara daijyoubu sa +Datte Boku ga eranda Papa to Mama + +Mama no ninoude sawaruna yurasuna +Mama no nijyu ago sawaruna tsumamuna +Mama no ibiki wo urusai to iuna +Boku ga naitara sonnamonn jyanaiyo + +Onaka ni iru karate kikoeteru kara +Shigoto no guchi wo Mama ni takusan hanashuna +Hoka no Mama wo miru na sonna me de miru na +Donna mekatte iu to …sonna me da! + +Totuki tooka yonjyushu +Mousugu dane aeru ne +Umarete sugu ni naku to omou kedo +Boku ha naitenanka naitenanka nai kara +Wasurete kureruna +Boku ga koushite onaka ni iru no ha +Papa to Mama ga deatte +Aishite musubareta kara + +Douyara sorosoro …jikan ga kita yo +Odekake no jyunbi da Mama ni tsutaeru yo +Awatezu sawagazu jama nado mo sezu +Mama no soba ni ite Boku no soba ni ite + +Saigo ni hitotsu onegai ga arimasu +Boku ga umaretara sugu ni dakko shite +Sonotoki Papa ni iou to omouyo +"Hajimemashite anata no musume dessu"to + +Jinsei ha subete ga subete ga kiseki mitai sa +Mama ha mou wakatteru hazu dakara +Wasurete kureruna +Watashi ga koushite koko ni iruno ha +Papa to Mama ga deatte +Aishite musubareta kara + +[Japanese:] + +ママのお腹に Daddy, 居る間に There is something you should know +言っておきたい while I'm still here 事があゆ in Mama's tummy +産まれてすぐにI won't remember this 忘れてしまうから after I'm born +パパとママと僕の為 But it's for the three of us +ちゃんと聞いててくだしゃい so listen Papa + +僕より先にDon't eat first ご飯を食べるな Not before me +順番として The hierarchy is, 僕、ママ、犬、パパ me, Mama, dog, Papa +キスは口にするな And don't kiss me on the mouth +虫歯になるから It's bad for my teeth +どうしてもしたかったらIf you really have to, +…犬にして! then kiss the dog! + +忘れてくれるな Don't forget Papa +ここは暗くて不安になるけど Although it's dark in here +ママの声とドクンドクンの音と Mama's voice and thump-thump +パパの大きなお手手が大好き and Papa's big hand I love +仕事も家庭もBoth work and home 上手くやるのは大変だけれど I know, it's challenging! +パパとママなら大丈夫さ But you'll both do fine +だって僕が選んだパパとママ 'cause I chose you Mama and Papa + +ママの二の腕 Don't tease the baby fat 触るな揺らすな on Mama's arm +ママの二重アゴ and her double chin 触るなつまむな Don't touch! Don't pinch! +ママのイビキを and her snoringうるさいと言うな Don't tell her it's loud +僕が泣いたら 'cause you have no ideaそんなもんじゃないよ how loud I will cry + +お腹にいるからってI can hear you 聞こえてるから from inside, Papa +仕事の愚痴をDon't complain ママにたくさん話しゅな about work to Mama +他のママを見るな Don't look at other moms そんな目で見るな with such eyes +どんな目かって言うとSuch what eyes? …そんな目だ! Those eyes! + +十月十日、40週 9 months, 40 weeks +もうすぐだね 会えるね We will meet soon +産まれてすぐに、泣くと思うけど I'll cry as soon as I'm born +僕は泣いてなんか、泣いてなんかないから But it's not that I'm sad +忘れてくれるな Don't forget Papa +僕がこうしてお腹に居るのは I'm here in Mama's tummy because +パパとママが出会って Mama and Papa met, +愛して結ばれたから fell in love and tied the knot + +どうやら、そろそろ It seems like …時間が来たよ。 it's time +お出掛けの準備だ Time to get out there ママに伝えるよ I'll tell Mama +慌てず騒がず Don't panic 邪魔などもせず Stay out of the way +ママの側にいて Just be beside Mama 僕の側にいてand beside me + +最後に一つ One last thing お願いがあります Please Papa +僕が産まれたらWhen I'm born, すぐに抱っこして hold me right away +その時パパに Then I will tell you 言おうと思うよ Papa, +「初めまして、あなたの娘です」と。 Nice to meet you. It's a girl! + +人生は全てが Everything in life 全てが奇跡みたいさ It's like a miracle! +奇跡しか無いんだよ、パパ。 It's all a miracle, Papa! +ママはもう、分かってるはずだから Mama knows this already +忘れてくれるな Don't forget Papa +私がこうしてここに居るのは I'm here now because +パパとママが出会って Mama and Papa met, +愛して結ばれたから fell in love and tied the knot \ No newline at end of file diff --git "a/ncmpcpp/lyrics/\343\201\215\343\202\203\343\202\212\343\203\274\343\201\261\343\201\277\343\202\205\343\201\261\343\201\277\343\202\205 - Ninja Re Bang Bang.txt" "b/ncmpcpp/lyrics/\343\201\215\343\202\203\343\202\212\343\203\274\343\201\261\343\201\277\343\202\205\343\201\261\343\201\277\343\202\205 - Ninja Re Bang Bang.txt" new file mode 100644 index 0000000..9da6a45 --- /dev/null +++ "b/ncmpcpp/lyrics/\343\201\215\343\202\203\343\202\212\343\203\274\343\201\261\343\201\277\343\202\205\343\201\261\343\201\277\343\202\205 - Ninja Re Bang Bang.txt" @@ -0,0 +1,30 @@ +Azayaka ni koishite ninjari bang bang nandaka ninjari bang bang +bloom bloom bloom hanabira no mau tondeke ninjari bang bang jōshiki wakaru ka na +Odoroki ga nichijou ni koishite ninjari bang bang aishite ninjari bang bang +Ring Ring Ring naranai merodī funwari kemuri-maki +Sora o kakeru no wa nin nin nin kimi dakedakara + +Miete ita mono ga nanairo ni kawaru togi kimi wa kitto +Te o nobashite mo sawarenai hikari no yōdakara +Azayaka ni koishite ninjari bang bang nandaka ninjari bang bang +bloom bloom bloom hanabira no mau +Tondeke ninjari bang bang jōshiki wakaru ka na odoroki ga nichijō ni +Koishite ninjari bang bang aishite ninjari bang bang +Ring Ring Ring naranai merodī funwari kemuri-maki +Sora o kakeru no wa nin nin nin kimi dakedakara + +Don'na iro ni mo naranaide kimi wa machi wo someru yo +Hirogatte yuku ne korogaru makimono mitai ne +Michi wa tsukuru +Azayaka ni koishite ninjari bang bang nandaka ninjari bang bang +bloom bloom bloom hanabira no mau tondeke ninjari bang bang jōshiki wakaru ka na +Odoroki ga nichijō ni koishite ninjari bang bang aishite ninjari bang bang +Ring Ring Ring naranai merodī funwari kemuri-maki +Sora o kakeru no wa nin nin nin kimi dakedakara + +Azayaka ni koishite ninjari bang bang nandaka ninjari bang bang +bloom bloom bloom hanabira no mau tondeke ninjari bang bang jōshiki wakaru ka na +Odoroki ga nichijō ni koishite ninjari bang bang aishite ninjari bang bang +Ring Ring Ring naranai merodī +Funwari kemuri-maki +Sora o kakeru no wa nin nin nin kimi dakedakara \ No newline at end of file diff --git "a/ncmpcpp/lyrics/\346\235\217\351\207\214 - A HOPE FROM SAD STREET.txt" "b/ncmpcpp/lyrics/\346\235\217\351\207\214 - A HOPE FROM SAD STREET.txt" new file mode 100644 index 0000000..0adc34d --- /dev/null +++ "b/ncmpcpp/lyrics/\346\235\217\351\207\214 - A HOPE FROM SAD STREET.txt" @@ -0,0 +1,21 @@ +朝もやのかかる 都会の中で今 +一人歩いているの +過去思い出しながら 人波を覗いているの +貴方からの別れ言葉は 今はもう 日記のページの中 +生きて行けるわ そうよ貴方なしでもいい +夏の余韻を残すこの町はいつも Sad Street +夢を与えた やさしいリズムで +二人の好きなCafeの前を通れば +変らぬ人の流れ +コーヒーの香りさえ 懐しく心にしみるの + +明日からの応えは 今もないけど +素直な気持ちが好き +孤独な道を歩む事だけは したくないのよ +都会にそまる私を おそれてた 思いやりだったのね +夏の終わりにくれた 貴方からのプレゼント +冬の眠りにさめたこの町は いつも Sad Street +冷たい風に 閉ざされた思いは +朝日がうつるビルの窓をみれば +心の傷がうずく +だけど愛した事を 今だけは忘れずにいたいの \ No newline at end of file diff --git "a/ncmpcpp/lyrics/\346\235\217\351\207\214 - CAT'S EYE (NEW TAKE).txt" "b/ncmpcpp/lyrics/\346\235\217\351\207\214 - CAT'S EYE (NEW TAKE).txt" new file mode 100644 index 0000000..b7cd260 --- /dev/null +++ "b/ncmpcpp/lyrics/\346\235\217\351\207\214 - CAT'S EYE (NEW TAKE).txt" @@ -0,0 +1,51 @@ +One, two, three, four + +都会(はき)らめく passion fruit + +ウインクしてる every night +グラスの中の passion beat +一口だけで fall in love + +甘いメロディ 風にのれば今夜 +秘密めいた 扉がどこかで開くよ + +見つめる Cat's Eye +Magic play is dancing +緑色に光る +妖しく Cat's Eye +Magic play is dancing +月明かり浴びて +We get you... you... you... you... +Mysterious girl + +Bell を鳴らせば passion time +終わりを告げる every night +青いドレスの sexy girl +口づけしては幻 + +古いピアノ 風にのれば夜明け +愛を映すミラーが どこかで割れるよ + +魅かれて Cat's Eye +Magic play is dancing +緑色に光る +迷って Cat's Eye +Magic play is dancing +月明かり浴びて +We get you... you... you... you... + +見つめる Cat's Eye +Magic play is dancing +緑色に光る +妖しく Cat's Eye +Magic play is dancing +月明かり浴びて +We get you... + +魅かれて Cat's Eye +Magic play is dancing +緑色に光る +迷って Cat's Eye +Magic play is dancing +月明かり浴びて +We get you... you... you... you... \ No newline at end of file diff --git "a/ncmpcpp/lyrics/\346\235\217\351\207\214 - STAY BY ME.txt" "b/ncmpcpp/lyrics/\346\235\217\351\207\214 - STAY BY ME.txt" new file mode 100644 index 0000000..9534c46 --- /dev/null +++ "b/ncmpcpp/lyrics/\346\235\217\351\207\214 - STAY BY ME.txt" @@ -0,0 +1,92 @@ +Banana brains, you're the apple of my eye +Stay with me tonight +Cause I'm having the best time of my life +Banana brains, you're the apple of my eye +Stay with me tonight +Cause I'm having the best time of my life + +Made by God +Ninji + +Baby girl, you're so fine +So, so fine, you blow my mind +Look at you, coochie coo +Juicy, tushy, gushy, goo +Boobie one, boobie two +Bouncing like a Looney Tune +Booty boomin', cookie juice +Gushin' out your coochie, boo +You're so cute, like Pikachu +Ain't no one so sweet like you +I whistle then you sneak into +My lonely heart like peek-a-boo +Now every time I think of you not by my side I dry my eyes +I just wanna sing lullabies to my little butterfly + +Banana brains, you're the apple of my eye +Stay with me tonight +Cause I'm having the best time of my life +Banana brains, you're the apple of my eye +Stay with me tonight +Cause I'm having the best time of my life +Turn up! +Banana brains, you're the apple of my eye +Stay with me tonight +Cause I'm having the best time of my life +Banana brains, you're the apple of my eye +Stay with me tonight +Cause I'm having the best time of my life + +Baby boy, you so cool +How can I stay mad at you? +I love you and that's the truth +You so silly, you so stupid +You the best +I never want you to stress +Everything gonna be cool +Wait and see +Just hold my hand and stay with me + +B-B-Baby girl, you been there for me +Through thick and thin with cool energy +You cared for me, yeah, defended me +Helped me defeat my e-e-enemies +Life's weird it keeps testing me +No other girl in the world impressing me +You like Yudu, you voodoo fresh to me +You just wanna be different +Get the best of me +It was meant to be +You were sent to me +You and me got wild destiny +You're like a little angel won't ever pressure me +E-e-everything you do is so Zef to me +I love it that you best friends with me +Just wanna treat your heart carefully +Cause everyday I feel blessed to be +The boy chillin' with you right next to me + +Banana brains, you're the apple of my eye +Stay with me tonight +Cause I'm having the best time of my life +Banana brains, you're the apple of my eye +Stay with me tonight +Cause I'm having the best time of my life + +Stay with me tonight +Stay with me tonight +Stay with me tonight +Cause I'm having the best time of my life + +I love your energy! (the best time) +I love it that you're there for me! (the best time) +Everything is meant to be! (the best time) +Baby, you were sent to me! (I'm having the best time of my life) +I love your energy! +I love it that you're there for me! +Everything is meant to be! +Baby, you were sent to me! +I love your energy! +I love it that you're there for me! +Everything is meant to be! +Baby, you were sent to me! \ No newline at end of file diff --git "a/ncmpcpp/lyrics/\346\235\217\351\207\214 - WINDY SUMMER.txt" "b/ncmpcpp/lyrics/\346\235\217\351\207\214 - WINDY SUMMER.txt" new file mode 100644 index 0000000..4c44a5e --- /dev/null +++ "b/ncmpcpp/lyrics/\346\235\217\351\207\214 - WINDY SUMMER.txt" @@ -0,0 +1,33 @@ +光のしずくが +波のしぶきあびたセールを +浜辺に照らしだすと + +走りだす心 +何もかも今忘れたいの +風になれるなら +この身を陽射しにまかせても + +Windy Summer 遠ざかる浜辺に手をふって +Windy Summer 届かぬ想いもかなうわ!! +Here We're Windy Summer!! + +永遠の波が +黄昏の光をいざなう +遥かな想い出さえ + +心に一つの +きらめきを 感じたらすぐに +海へとかけだす +あのころの夢と変わらない + +Windy Summer 風も今は思い通りね +Windy Summer あなたの心へ今すぐ!! +Here We're Windy Summer!! + +Windy Summer 遠ざかる浜辺に手をふって +Windy Summer 届かぬ想いもかなうわ!! +Here We're Windy Summer!! + +Windy Summer 風も今は思い通りね +Windy Summer あなたの心へ今すぐ!! +Here We're Windy Summer!! \ No newline at end of file diff --git "a/ncmpcpp/lyrics/\346\235\217\351\207\214 - YOU ARE NOT ALONE.txt" "b/ncmpcpp/lyrics/\346\235\217\351\207\214 - YOU ARE NOT ALONE.txt" new file mode 100644 index 0000000..2d6a8bc --- /dev/null +++ "b/ncmpcpp/lyrics/\346\235\217\351\207\214 - YOU ARE NOT ALONE.txt" @@ -0,0 +1,43 @@ +海が見える窓 +椅子を引き寄せて +あなたいつのまにか +深い眠りの中 +夢の中でまだ +なにか探すように +膝に置いた指が +冬の月に光る + +ダーリン you +You are not alone +忘れずにいて +どんな時も +ダーリン you +You are not alone +すぐそばに yes me +私がいる いつも + +前髪をあげて +そっとくちづけた +けして見せなかった +孤独に触れたみたい + +ダーリン you +You are not alone +見守っている +どんな時も +ダーリン you +You are not alone +さびしさを my Love +つつむように ダーリン you +見えない場所で +いつもあなたに +勇気あげたい + +ダーリン you +You are not alone +忘れずにいて +どんな時も +ダーリン you +You are not alone +くちびるを寄せ +私がいるいつも \ No newline at end of file diff --git a/ncmpcpp/ncmpcpp-ueberzug/LICENSE b/ncmpcpp/ncmpcpp-ueberzug/LICENSE new file mode 100644 index 0000000..f288702 --- /dev/null +++ b/ncmpcpp/ncmpcpp-ueberzug/LICENSE @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/ncmpcpp/ncmpcpp-ueberzug/README.md b/ncmpcpp/ncmpcpp-ueberzug/README.md new file mode 100644 index 0000000..70c57a4 --- /dev/null +++ b/ncmpcpp/ncmpcpp-ueberzug/README.md @@ -0,0 +1,44 @@ +# ncmpcpp-ueberzug + +![ncmpcpp-ueberzug](img/demo.gif) + +`ncmpcpp-ueberzug` displays ncmpcpp album art using [ueberzug](https://github.com/seebye/ueberzug). It works on `alacritty`, `st`, `urxvt`, `kitty`, `xterm` and `lxterm`. Unlike existing scripts, it dynamically sizes and positions the cover art such that the window can be any size, even resized. It has many settings to customize the position of the album art to suit your ncmpcpp setup. + +**ncmpcpp-ueberzug is currently gradually being improved, expect more features in each version but also potential changes in how settings work. I will update this message when this script is feature-complete.** + +## Install + +Follow the instructions on the [Setup](https://github.com/alnj/ncmpcpp-ueberzug/wiki/Setup) wiki page. + +Check out [sacad](https://github.com/desbma/sacad) if you want to automatically download cover art for your music library. + +## Compatibility + +#### Working: +* `alacritty`, `st`, `urxvt`, `xterm`, `lxterm` +* `kitty` (might use wrong terminal if using `--single-instance` flag) + +#### Require manually setting character size in `ncmpcpp_cover_art.sh`: +* `cool-retro-term` +* `sakura` (resizing can break geometry) +* `gnome-terminal`, `terminator`, `xfce4-terminal` (Album art displays on the last opened terminal irrespective of which is the ncmpcpp window, resizing can break geometry) + +#### Broken: +* `konsole` (stops working randomly, geometry is wrong) +* `guake`, `terminology` (geometry is wrong) + + +## Similar scripts +* [Fixed-width, left-aligned Mopidy album art Python script using Ueberzug](https://www.reddit.com/r/unixporn/comments/addcrf/oc_mopidy_album_art_using_ueberzug/) + +* [Ueberzug script that opens the album art in a tmux pane](https://www.reddit.com/r/unixporn/comments/9bifne/ncmpcpp_with_cover_art_ueberzug_tmux_edition/) + +* [Fixed-geometry urxvt-compatible script using urxvt background escape codes](https://gist.github.com/vlevit/4588882) + +## TODO + +* Refactor alignment settings / Add alignment/scaling options for left-align +* Try out toggle? +* Update columns gif with new geometry behaviour, add more illustrations +* Change cleanup mechanism to allow for several ncmpcpp-ueberzug instances +* Support Spotify album art with mopidy diff --git a/ncmpcpp/ncmpcpp-ueberzug/img/demo.gif b/ncmpcpp/ncmpcpp-ueberzug/img/demo.gif new file mode 100644 index 0000000..d43c171 Binary files /dev/null and b/ncmpcpp/ncmpcpp-ueberzug/img/demo.gif differ diff --git a/ncmpcpp/ncmpcpp-ueberzug/img/demo.png b/ncmpcpp/ncmpcpp-ueberzug/img/demo.png new file mode 100644 index 0000000..16e7e7b Binary files /dev/null and b/ncmpcpp/ncmpcpp-ueberzug/img/demo.png differ diff --git a/ncmpcpp/ncmpcpp-ueberzug/img/demo_left_aligned.png b/ncmpcpp/ncmpcpp-ueberzug/img/demo_left_aligned.png new file mode 100644 index 0000000..37cee18 Binary files /dev/null and b/ncmpcpp/ncmpcpp-ueberzug/img/demo_left_aligned.png differ diff --git a/ncmpcpp/ncmpcpp-ueberzug/img/fallback.png b/ncmpcpp/ncmpcpp-ueberzug/img/fallback.png new file mode 100644 index 0000000..78217e2 Binary files /dev/null and b/ncmpcpp/ncmpcpp-ueberzug/img/fallback.png differ diff --git a/ncmpcpp/ncmpcpp-ueberzug/img/settings_explained.png b/ncmpcpp/ncmpcpp-ueberzug/img/settings_explained.png new file mode 100644 index 0000000..e618c86 Binary files /dev/null and b/ncmpcpp/ncmpcpp-ueberzug/img/settings_explained.png differ diff --git a/ncmpcpp/ncmpcpp-ueberzug/img/truncate_reserved_cols.gif b/ncmpcpp/ncmpcpp-ueberzug/img/truncate_reserved_cols.gif new file mode 100644 index 0000000..713931f Binary files /dev/null and b/ncmpcpp/ncmpcpp-ueberzug/img/truncate_reserved_cols.gif differ diff --git a/ncmpcpp/ncmpcpp-ueberzug/img/ueberzug_columns_mode.gif b/ncmpcpp/ncmpcpp-ueberzug/img/ueberzug_columns_mode.gif new file mode 100644 index 0000000..0c13006 Binary files /dev/null and b/ncmpcpp/ncmpcpp-ueberzug/img/ueberzug_columns_mode.gif differ diff --git a/ncmpcpp/ncmpcpp-ueberzug/ncmpcpp-ueberzug b/ncmpcpp/ncmpcpp-ueberzug/ncmpcpp-ueberzug new file mode 100755 index 0000000..028baa0 --- /dev/null +++ b/ncmpcpp/ncmpcpp-ueberzug/ncmpcpp-ueberzug @@ -0,0 +1,18 @@ +#!/bin/sh +export FIFO_UEBERZUG="/tmp/mpd-ueberzug-${PPID}" + +cleanup() { + rm "$FIFO_UEBERZUG" 2>/dev/null + rm /tmp/mpd_cover.jpg 2>/dev/null + pkill -P $$ 2>/dev/null + pkill ncmpcpp_cover_art.sh +} + +pkill -P $$ 2>/dev/null +rm "$FIFO_UEBERZUG" 2>/dev/null +mkfifo "$FIFO_UEBERZUG" >/dev/null +trap cleanup EXIT 2>/dev/null +tail --follow "$FIFO_UEBERZUG" | ueberzug layer --silent --parser simple >/dev/null 2>&1 & + +ncmpcpp +cleanup diff --git a/ncmpcpp/ncmpcpp-ueberzug/ncmpcpp_cover_art.sh b/ncmpcpp/ncmpcpp-ueberzug/ncmpcpp_cover_art.sh new file mode 100755 index 0000000..99a9403 --- /dev/null +++ b/ncmpcpp/ncmpcpp-ueberzug/ncmpcpp_cover_art.sh @@ -0,0 +1,246 @@ +#!/bin/sh +# Cover art script for ncmpcpp-ueberzug + +# SETTINGS +music_library="$HOME/music" +fallback_image="$HOME/.config/ncmpcpp/ncmpcpp-ueberzug/img/fallback.png" +padding_top=4 +padding_bottom=2 +padding_right=2 +max_width=30 +reserved_playlist_cols=70 +reserved_cols_in_percent="true" +force_square="true" +square_alignment="top" + +left_aligned="true" +padding_left=2 + +# Only set this if the geometries are wrong or ncmpcpp shouts at you to do it. +# Visually select/highlight a character on your terminal, zoom in an image +# editor and count how many pixels a character's width and height are. +font_height= +font_width= + +main() { + kill_previous_instances >/dev/null 2>&1 + find_cover_image >/dev/null 2>&1 + display_cover_image 2>/dev/null + detect_window_resizes >/dev/null 2>&1 +} + +# ==== Main functions ========================================================= + +kill_previous_instances() { + script_name=$(basename "$0") + for pid in $(pidof -x "$script_name"); do + if [ "$pid" != $$ ]; then + kill -15 "$pid" + fi + done +} + +find_cover_image() { + + # First we check if the audio file has an embedded album art + ext="$(mpc --format %file% current | sed 's/^.*\.//')" + if [ "$ext" = "flac" ]; then + # since FFMPEG cannot export embedded FLAC art we use metaflac + metaflac --export-picture-to=/tmp/mpd_cover.jpg \ + "$(mpc --format "$music_library"/%file% current)" && + cover_path="/tmp/mpd_cover.jpg" && return + else + ffmpeg -y -i "$(mpc --format "$music_library"/%file% | head -n 1)" \ + /tmp/mpd_cover.jpg && + cover_path="/tmp/mpd_cover.jpg" && return + fi + + # If no embedded art was found we look inside the music file's directory + album="$(mpc --format %album% current)" + file="$(mpc --format %file% current)" + album_dir="${file%/*}" + album_dir="$music_library/$album_dir" + found_covers="$(find "$album_dir" -type d -exec find {} -maxdepth 1 -type f \ + -iregex ".*/.*\(${album}\|cover\|folder\|artwork\|front\).*[.]\\(jpe?g\|png\|gif\|bmp\)" \; )" + cover_path="$(echo "$found_covers" | head -n1)" + if [ -n "$cover_path" ]; then + return + fi + + # If we still failed to find a cover image, we use the fallback + if [ -z "$cover_path" ]; then + cover_path=$fallback_image + fi +} + +display_cover_image() { + compute_geometry + + send_to_ueberzug \ + action "add" \ + identifier "mpd_cover" \ + path "$cover_path" \ + x "$ueber_left" \ + y "$padding_top" \ + height "$ueber_height" \ + width "$ueber_width" \ + synchronously_draw "True" \ + scaler "forced_cover" \ + scaling_position_x "0.5" +} + +detect_window_resizes() { + { + trap 'display_cover_image' WINCH + while :; do sleep .1; done + } & +} + + +# ==== Helper functions ========================================================= + +compute_geometry() { + unset LINES COLUMNS # Required in order for tput to work in a script + term_lines=$(tput lines) + term_cols=$(tput cols) + if [ -z "$font_height" ] || [ -z "$font_height" ]; then + guess_font_size + fi + + ueber_height=$(( term_lines - padding_top - padding_bottom )) + # Because Ueberzug uses characters as a unit we must multiply + # the line count (height) by the font size ratio in order to + # obtain an equivalent width in column count + ueber_width=$(( ueber_height * font_height / font_width )) + ueber_left=$(( term_cols - ueber_width - padding_right )) + + if [ "$left_aligned" = "true" ]; then + compute_geometry_left_aligned + else + compute_geometry_right_aligned + fi + + apply_force_square_setting +} + +compute_geometry_left_aligned() { + ueber_left=$padding_left + max_width_chars=$(( term_cols * max_width / 100 )) + if [ "$max_width" != 0 ] && + [ $(( ueber_width + padding_right + padding_left )) -gt "$max_width_chars" ]; then + ueber_width=$(( max_width_chars - padding_left - padding_right )) + fi +} + +compute_geometry_right_aligned() { + if [ "$reserved_cols_in_percent" = "true" ]; then + ueber_left_percent=$(printf "%.0f\n" $(calc "$ueber_left" / "$term_cols" '*' 100)) + if [ "$ueber_left_percent" -lt "$reserved_playlist_cols" ]; then + ueber_left=$(( term_cols * reserved_playlist_cols / 100 )) + ueber_width=$(( term_cols - ueber_left - padding_right )) + fi + else + if [ "$ueber_left" -lt "$reserved_playlist_cols" ]; then + ueber_left=$reserved_playlist_cols + ueber_width=$(( term_cols - ueber_left - padding_right )) + fi + + fi + + if [ "$max_width" != 0 ] && [ "$ueber_width" -gt "$max_width" ]; then + ueber_width=$max_width + ueber_left=$(( term_cols - ueber_width - padding_right )) + fi +} + +apply_force_square_setting() { + if [ $force_square = "true" ]; then + ueber_height=$(( ueber_width * font_width / font_height )) + case "$square_alignment" in + center) + area=$(( term_lines - padding_top - padding_bottom )) + padding_top=$(( padding_top + area / 2 - ueber_height / 2 )) + ;; + bottom) + padding_top=$(( term_lines - padding_bottom - ueber_height )) + ;; + *) ;; + esac + fi +} + +guess_font_size() { + # A font width and height estimate is required to + # properly compute the cover width (in columns). + # We are reproducing the arithmetic used by Ueberzug + # to guess font size. + # https://github.com/seebye/ueberzug/blob/master/ueberzug/terminal.py#L24 + + guess_terminal_pixelsize + + approx_font_width=$(( term_width / term_cols )) + approx_font_height=$(( term_height / term_lines )) + + term_xpadding=$(( ( - approx_font_width * term_cols + term_width ) / 2 )) + term_ypadding=$(( ( - approx_font_height * term_lines + term_height ) / 2 )) + + font_width=$(( (term_width - 2 * term_xpadding) / term_cols )) + font_height=$(( (term_height - 2 * term_ypadding) / term_lines )) +} + +guess_terminal_pixelsize() { + # We are re-using the same Python snippet that + # Ueberzug utilizes to retrieve terminal window size. + # https://github.com/seebye/ueberzug/blob/master/ueberzug/terminal.py#L10 + + python < "$FIFO_UEBERZUG" + + IFS=${old_IFS} +} + + +main diff --git a/ncmpcpp/patterns.list b/ncmpcpp/patterns.list new file mode 100644 index 0000000..e69de29 diff --git a/newsboat/cache.db b/newsboat/cache.db new file mode 100644 index 0000000..b1e5864 Binary files /dev/null and b/newsboat/cache.db differ diff --git a/newsboat/config b/newsboat/config new file mode 100644 index 0000000..6499499 --- /dev/null +++ b/newsboat/config @@ -0,0 +1,12 @@ +unbind-key g # bound to `sort` by default +unbind-key G # bound to `rev-sort` by default +bind-key g home +bind-key G end +bind-key k up +bind-key j down + +auto-reload yes +article-sort-order date-asc + +macro y set browser "devour mpv %u" +macro l set browser "devour brave %u" diff --git a/newsboat/history.cmdline b/newsboat/history.cmdline new file mode 100644 index 0000000..f246346 --- /dev/null +++ b/newsboat/history.cmdline @@ -0,0 +1,100 @@ +10 +21 +21 +25 +25 +21 +20 +11 +11 +26 +q +24 +5 +20 +14 +29 +38 +21 +20 +21 +6 +20 +38 +266 +25 +22 +5 +21 +15 +20 +21 +15 +20 +3 +21 +39 +3 +20 +6 +21 +39 +21 +6 +6 +24 +5 +200 +20 +29 +29 +20 +6 +21 +33 +5 +28 +39 +33 +20 +q +218 +145 +20 +20\ +8 +5 +37 +9 +19 +20 +q +9A +19 +19 +9 +19 +9 +20 +38 +20 +q +q +20 +5 +36 +6 +28 +10 +4 +19 +19 +250 +21 +18 +3 +8 +18 +8 +31 +18 diff --git a/newsboat/history.search b/newsboat/history.search new file mode 100644 index 0000000..6e3dc87 --- /dev/null +++ b/newsboat/history.search @@ -0,0 +1,46 @@ +demo +gta +cursed +demo +2018 +demo +demo +demo +gta +dunkey +DEMO +GTA +funhaus +gta +gta +like +groff +gta +insi +gta +drunk +wheel +demo +drunk +matrix +gta +White +gta +sxiv +gta +moder +drunk +gta +gta +GTA +gta +gta +gta +my su +gta +moder +fun +modern +poof +modern +mod diff --git a/newsboat/urls b/newsboat/urls new file mode 100644 index 0000000..0b6d5ba --- /dev/null +++ b/newsboat/urls @@ -0,0 +1,54 @@ +" " +"--- YOUTUBE ---" +" " +https://www.youtube.com/feeds/videos.xml?channel_id=UC6nSFpj9HTCZ5t-N3Rm3-HA "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UC3r2fHMP1OXoKt-FBgwVnOA "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCraOIV5tXbWQtq7ORVOG4gg "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCVls1GmFKf6WlTraIb_IaJg "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UC2eYFnH61tmytImy1mTYvhA "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCmYBTQilY7p8EQ9IsyA3oLw "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCbpMy0Fg74eXXkvxJrtEn3w "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCeR0n8d3ShTn_yrMhpwyE1Q "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCEY0yxj6QxG4RBVRSe5orig "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCdJdEguB1F1CiYe7OEi3SBg "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UC-wNjNTqCfXSKd4S1tNgWUg "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UC87PQkY3dDS-FastDm97emA "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCJHA_jMfCvEnv-3kRjTCQXw "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCsn6cjffsvyOZCZxvGoJxGg "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UC4USoIAL9qcsx5nCZV_QRnA "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCboMX_UNgaPBsUOIgasn3-Q "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UC-tsNNJ3yIW98MtPH6PWFAQ "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCIEv3lZ_tNXHzL3ox-_uUGQ "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCwV_0HmQkRrTcrReaMxPeDw "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UC42VsoDtra5hMiXZSsD6eGg "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCsvn_Po0SmunchJYOWpOxMg "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCRIZtPl9nb9RiXc9btSTQNw "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCjyNFmk6Ionj9Lw9iIo9LtQ "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UC4PooiX37Pld1T8J5SYT-SQ "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCRcgy6GzDeccI7dkbbBna3Q "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCUTXYARYwmf7XvVOU4qPUYw "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCKab3hYnOoTZZbEUQBMx-ww "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCDsO-0Yo5zpJk575nKXgMVA "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCekQr9znsk2vWxBo3YiLq2w "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCzoinqTgfEaQsKFFi9Tdmkg "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCdTH9d3ViHVlyQq3BMaCuIQ "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCwboyKXJkCiHajQorzh-agQ "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCnQC_G5Xsjhp9fEJKuIcrSw "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCDRbNGFusqlXX4a5vwi9ouQ "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCaeO5vkdj5xOQHp4UmIN6dw "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCpprBWvibvmOlI8yJOEAAjA "YouTube Subscriptions" +https://www.youtube.com/feeds/videos.xml?channel_id=UCLXo7UDZvByw2ixzpQCufnA "YouTube Subscriptions" + +" " +"--- ART ---" +" " +http://www.shadbase.com/feed/ "Shadbase" + +" " +" --- TECH ---" +" " +https://opentrackers.org/feed/ +https://digdeeper.neocities.org/atom.xml "Dig Deeper" +https://www.archlinux.org/feeds/news/ "Arch Linux +https://lukesmith.xyz/rss.xml "Luke Smith" +https://zoomersrants.xyz/rss/ "Zoomer's Rants" diff --git a/obs-studio/global.ini b/obs-studio/global.ini new file mode 100644 index 0000000..fc10658 --- /dev/null +++ b/obs-studio/global.ini @@ -0,0 +1,36 @@ +[General] +Pre19Defaults=false +Pre21Defaults=false +Pre23Defaults=false +FirstRun=true +LastVersion=436273154 +Pre24.1Defaults=true +CurrentTheme2=System + +[PropertiesWindow] +cx=720 +cy=580 + +[BasicWindow] +geometry=AdnQywADAAAAAAAAAAAAFQAAB38AAAQ3AAAAAAAAABUAAAd/AAAENwAAAAAAAAAAB4AAAAAAAAAAFQAAB38AAAQ3 +DockState=AAAA/wAAAAD9AAAAAQAAAAMAAAeAAAAAy/wBAAAABvsAAAAUAHMAYwBlAG4AZQBzAEQAbwBjAGsBAAAAAAAAAawAAACgAP////sAAAAWAHMAbwB1AHIAYwBlAHMARABvAGMAawEAAAGyAAABtAAAAKAA////+wAAABIAbQBpAHgAZQByAEQAbwBjAGsBAAADbAAAAtQAAADcAP////sAAAAYAGMAbwBuAHQAcgBvAGwAcwBEAG8AYwBrAQAABkYAAAE6AAAAngD////7AAAAHgB0AHIAYQBuAHMAaQB0AGkAbwBuAHMARABvAGMAawAAAAQoAAAAgAAAAJoA////+wAAABIAcwB0AGEAdABzAEQAbwBjAGsCAAABTQAAARwAAAK8AAAAyAAAB4AAAAMjAAAABAAAAAQAAAAIAAAACPwAAAAA +PreviewEnabled=true +AlwaysOnTop=false +SceneDuplicationMode=true +SwapScenesMode=true +EditPropertiesMode=false +PreviewProgramMode=false +DocksLocked=false +gridMode=false +WarnBeforeStartingStream=false +WarnBeforeStoppingStream=false +WarnBeforeStoppingRecord=false + +[Basic] +SceneCollection=podcast1 +SceneCollectionFile=podcast1 +Profile=Podcast +ProfileDir=Podcast + +[ScriptLogWindow] +geometry=AdnQywADAAAAAAAAAAAAFAAAAlcAAAGjAAAAAAAAABQAAAJXAAABowAAAAAAAAAAB4AAAAAAAAAAFAAAAlcAAAGj diff --git a/obs-studio/plugin_config/rtmp-services/meta.json b/obs-studio/plugin_config/rtmp-services/meta.json new file mode 100644 index 0000000..b1bce5f --- /dev/null +++ b/obs-studio/plugin_config/rtmp-services/meta.json @@ -0,0 +1,3 @@ +{ + "etag": "W/\"6044f63a-7a\"" +} \ No newline at end of file diff --git a/obs-studio/plugin_config/rtmp-services/package.json b/obs-studio/plugin_config/rtmp-services/package.json new file mode 100644 index 0000000..5434240 --- /dev/null +++ b/obs-studio/plugin_config/rtmp-services/package.json @@ -0,0 +1 @@ +{"url":"https://obsproject.com/obs2_update/rtmp-services","version":170,"files":[{"name":"services.json","version":170}]} diff --git a/obs-studio/plugin_config/rtmp-services/services.json b/obs-studio/plugin_config/rtmp-services/services.json new file mode 100644 index 0000000..5edfcc9 --- /dev/null +++ b/obs-studio/plugin_config/rtmp-services/services.json @@ -0,0 +1 @@ +{"format_version":3,"services":[{"name":"Twitch","common":true,"servers":[{"name":"Asia: Hong Kong","url":"rtmp://live-hkg.twitch.tv/app"},{"name":"Asia: Seoul, South Korea","url":"rtmp://live-sel.twitch.tv/app"},{"name":"Asia: Singapore","url":"rtmp://live-sin.twitch.tv/app"},{"name":"Asia: Taipei, Taiwan","url":"rtmp://live-tpe.twitch.tv/app"},{"name":"Asia: Tokyo, Japan","url":"rtmp://live-tyo.twitch.tv/app"},{"name":"Australia: Sydney","url":"rtmp://live-syd.twitch.tv/app"},{"name":"EU: Amsterdam, NL","url":"rtmp://live-ams.twitch.tv/app"},{"name":"EU: Berlin, DE","url":"rtmp://live-ber.twitch.tv/app"},{"name":"Europe: Copenhagen, DK","url":"rtmp://live-cph.twitch.tv/app"},{"name":"EU: Frankfurt, DE","url":"rtmp://live-fra.twitch.tv/app"},{"name":"EU: Helsinki, FI","url":"rtmp://live-hel.twitch.tv/app"},{"name":"EU: Lisbon, Portugal","url":"rtmp://live-lis.twitch.tv/app"},{"name":"EU: London, UK","url":"rtmp://live-lhr.twitch.tv/app"},{"name":"EU: Madrid, Spain","url":"rtmp://live-mad.twitch.tv/app"},{"name":"EU: Marseille, FR","url":"rtmp://live-mrs.twitch.tv/app"},{"name":"EU: Milan, Italy","url":"rtmp://live-mil.twitch.tv/app"},{"name":"EU: Norway, Oslo","url":"rtmp://live-osl.twitch.tv/app"},{"name":"EU: Paris, FR","url":"rtmp://live-cdg.twitch.tv/app"},{"name":"EU: Prague, CZ","url":"rtmp://live-prg.twitch.tv/app"},{"name":"EU: Stockholm, SE","url":"rtmp://live-arn.twitch.tv/app"},{"name":"EU: Vienna, Austria","url":"rtmp://live-vie.twitch.tv/app"},{"name":"EU: Warsaw, Poland","url":"rtmp://live-waw.twitch.tv/app"},{"name":"NA: Mexico City","url":"rtmp://live-qro.twitch.tv/app"},{"name":"NA: Quebec, Canada","url":"rtmp://live-ymq.twitch.tv/app"},{"name":"NA: Toronto, Canada","url":"rtmp://live-yto.twitch.tv/app"},{"name":"South America: Argentina","url":"rtmp://live-eze.twitch.tv/app"},{"name":"South America: Chile","url":"rtmp://live-scl.twitch.tv/app"},{"name":"South America: Lima, Peru","url":"rtmp://live-lim.twitch.tv/app"},{"name":"South America: Medellin, Colombia","url":"rtmp://live-mde.twitch.tv/app"},{"name":"South America: Rio de Janeiro, Brazil","url":"rtmp://live-rio.twitch.tv/app"},{"name":"South America: Sao Paulo, Brazil","url":"rtmp://live-sao.twitch.tv/app"},{"name":"US Central: Dallas, TX","url":"rtmp://live-dfw.twitch.tv/app"},{"name":"US Central: Denver, CO","url":"rtmp://live-den.twitch.tv/app"},{"name":"US Central: Houston, TX","url":"rtmp://live-hou.twitch.tv/app"},{"name":"US Central: Salt Lake City, UT","url":"rtmp://live-slc.twitch.tv/app"},{"name":"US East: Ashburn, VA","url":"rtmp://live-iad.twitch.tv/app"},{"name":"US East: Atlanta, GA","url":"rtmp://live-atl.twitch.tv/app"},{"name":"US East: Chicago","url":"rtmp://live-ord.twitch.tv/app"},{"name":"US East: Miami, FL","url":"rtmp://live-mia.twitch.tv/app"},{"name":"US East: New York, NY","url":"rtmp://live-jfk.twitch.tv/app"},{"name":"US West: Los Angeles, CA","url":"rtmp://live-lax.twitch.tv/app"},{"name":"US West: Phoenix, AZ","url":"rtmp://live-phx.twitch.tv/app"},{"name":"US West: Portland, Oregon","url":"rtmp://live-pdx.twitch.tv/app"},{"name":"US West: San Francisco, CA","url":"rtmp://live-sfo.twitch.tv/app"},{"name":"US West: San Jose, CA","url":"rtmp://live-sjc.twitch.tv/app"},{"name":"US West: Seattle, WA","url":"rtmp://live-sea.twitch.tv/app"}],"recommended":{"keyint":2,"max video bitrate":6000,"max audio bitrate":320,"x264opts":"scenecut=0"}},{"name":"YouTube - HLS","common":false,"more_info_link":"https://developers.google.com/youtube/v3/live/guides/ingestion-protocol-comparison","servers":[{"name":"Primary YouTube ingest server","url":"https://a.upload.youtube.com/http_upload_hls?cid={stream_key}©=0&file=out.m3u8"},{"name":"Backup YouTube ingest server","url":"https://b.upload.youtube.com/http_upload_hls?cid={stream_key}©=1&file=out.m3u8"}],"recommended":{"keyint":2,"output":"ffmpeg_hls_muxer","max video bitrate":51000,"max audio bitrate":160}},{"name":"YouTube - RTMP","common":true,"alt_names":["YouTube / YouTube Gaming"],"servers":[{"name":"Primary YouTube ingest server","url":"rtmp://a.rtmp.youtube.com/live2"},{"name":"Backup YouTube ingest server","url":"rtmp://b.rtmp.youtube.com/live2?backup=1"}],"recommended":{"keyint":2,"max video bitrate":51000,"max audio bitrate":160}},{"name":"YouTube - RTMPS (Beta)","common":true,"servers":[{"name":"Primary YouTube ingest server","url":"rtmps://a.rtmps.youtube.com:443/live2"},{"name":"Backup YouTube ingest server","url":"rtmps://b.rtmps.youtube.com:443/live2"}],"recommended":{"keyint":2,"max video bitrate":51000,"max audio bitrate":160}},{"name":"Loola.tv","common":false,"servers":[{"name":"US East: Virginia","url":"rtmp://rtmp.loola.tv/push"},{"name":"EU Central: Germany","url":"rtmp://rtmp-eu.loola.tv/push"},{"name":"South America: Brazil","url":"rtmp://rtmp-sa.loola.tv/push"},{"name":"Asia/Pacific: Singapore","url":"rtmp://rtmp-sg.loola.tv/push"},{"name":"Middle East: Bahrain","url":"rtmp://rtmp-me.loola.tv/push"}],"recommended":{"keyint":2,"profile":"high","max video bitrate":2500,"max audio bitrate":160,"bframes":2,"x264opts":"scenecut=0"}},{"name":"VIMM","servers":[{"name":"Europe: Frankfurt","url":"rtmp://eu.vimm.tv/live"},{"name":"North America: Montreal","url":"rtmp://us.vimm.tv/live"}],"recommended":{"keyint":2,"max video bitrate":8000,"max audio bitrate":320,"x264opts":"scenecut=0"}},{"name":"Mobcrush","servers":[{"name":"Primary","url":"rtmp://live.mobcrush.net/mob"}],"recommended":{"keyint":2,"profile":"main","max video bitrate":6000,"max audio bitrate":160}},{"name":"Web.TV","servers":[{"name":"Primary","url":"rtmp://live3.origins.web.tv/liveext"}],"recommended":{"keyint":2,"profile":"main","max video bitrate":3500,"max audio bitrate":160}},{"name":"GoodGame.ru","servers":[{"name":"Моscow","url":"rtmp://msk.goodgame.ru:1940/live"}]},{"name":"YouStreamer","servers":[{"name":"Moscow","url":"rtmp://push.youstreamer.com/in/"}]},{"name":"Vaughn Live / iNSTAGIB","servers":[{"name":"US: Chicago, IL","url":"rtmp://live-ord.vaughnsoft.net/live"},{"name":"US: Vint Hill, VA","url":"rtmp://live-iad.vaughnsoft.net/live"},{"name":"US: Denver, CO","url":"rtmp://live-den.vaughnsoft.net/live"},{"name":"US: New York, NY","url":"rtmp://live-nyc.vaughnsoft.net/live"},{"name":"US: Miami, FL","url":"rtmp://live-mia.vaughnsoft.net/live"},{"name":"US: Seattle, WA","url":"rtmp://live-sea.vaughnsoft.net/live"},{"name":"EU: Amsterdam, NL","url":"rtmp://live-ams.vaughnsoft.net/live"},{"name":"EU: London, UK","url":"rtmp://live-lhr.vaughnsoft.net/live"}],"recommended":{"keyint":2,"max video bitrate":15000,"max audio bitrate":320}},{"name":"Breakers.TV","servers":[{"name":"US: Chicago, IL","url":"rtmp://live-ord.vaughnsoft.net/live"},{"name":"US: Vint Hill, VA","url":"rtmp://live-iad.vaughnsoft.net/live"},{"name":"US: Denver, CO","url":"rtmp://live-den.vaughnsoft.net/live"},{"name":"US: New York, NY","url":"rtmp://live-nyc.vaughnsoft.net/live"},{"name":"US: Miami, FL","url":"rtmp://live-mia.vaughnsoft.net/live"},{"name":"US: Seattle, WA","url":"rtmp://live-sea.vaughnsoft.net/live"},{"name":"EU: Amsterdam, NL","url":"rtmp://live-ams.vaughnsoft.net/live"},{"name":"EU: London, UK","url":"rtmp://live-lhr.vaughnsoft.net/live"}],"recommended":{"keyint":2,"max video bitrate":15000,"max audio bitrate":320}},{"name":"Facebook Live","common":true,"servers":[{"name":"Default","url":"rtmps://rtmp-api.facebook.com:443/rtmp/"}],"recommended":{"keyint":2,"profile":"main","supported resolutions":["1280x720","852x480","480x360"],"max fps":30,"max video bitrate":6000,"max audio bitrate":128}},{"name":"Restream.io","alt_names":["Restream.io - RTMP","Restream.io - FTL"],"common":true,"servers":[{"name":"Autodetect","url":"rtmp://live.restream.io/live"},{"name":"EU-West (London, GB)","url":"rtmp://london.restream.io/live"},{"name":"EU-West (Amsterdam, NL)","url":"rtmp://amsterdam.restream.io/live"},{"name":"EU-West (Luxembourg)","url":"rtmp://luxembourg.restream.io/live"},{"name":"EU-West (Paris, FR)","url":"rtmp://paris.restream.io/live"},{"name":"EU-West (Milan, IT)","url":"rtmp://milan.restream.io/live"},{"name":"EU-Central (Frankfurt, DE)","url":"rtmp://frankfurt.restream.io/live"},{"name":"EU-East (Falkenstein, DE)","url":"rtmp://falkenstein.restream.io/live"},{"name":"EU-East (Prague, Czech)","url":"rtmp://prague.restream.io/live"},{"name":"EU-South (Madrid, Spain)","url":"rtmp://madrid.restream.io/live"},{"name":"Russia (Moscow)","url":"rtmp://moscow.restream.io/live"},{"name":"Turkey (Istanbul)","url":"rtmp://istanbul.restream.io/live"},{"name":"Israel (Tel Aviv)","url":"rtmp://telaviv.restream.io/live"},{"name":"US-West (Seattle, WA)","url":"rtmp://seattle.restream.io/live"},{"name":"US-West (San Jose, CA)","url":"rtmp://sanjose.restream.io/live"},{"name":"US-Central (Dallas, TX)","url":"rtmp://dallas.restream.io/live"},{"name":"US-East (Washington, DC)","url":"rtmp://washington.restream.io/live"},{"name":"US-East (Miami, FL)","url":"rtmp://miami.restream.io/live"},{"name":"US-East (Chicago, IL)","url":"rtmp://chicago.restream.io/live"},{"name":"NA-East (Toronto, Canada)","url":"rtmp://toronto.restream.io/live"},{"name":"SA (Saint Paul, Brazil)","url":"rtmp://saopaulo.restream.io/live"},{"name":"India (Bangalore)","url":"rtmp://bangalore.restream.io/live"},{"name":"Asia (Singapore)","url":"rtmp://singapore.restream.io/live"},{"name":"Asia (Seoul, South Korea)","url":"rtmp://seoul.restream.io/live"},{"name":"Asia (Tokyo, Japan)","url":"rtmp://tokyo.restream.io/live"},{"name":"Australia (Sydney)","url":"rtmp://sydney.restream.io/live"}],"recommended":{"keyint":2}},{"name":"Nood","servers":[{"name":"Global: Fastest (Recommended)","url":"rtmp://stream.nood.tv/live_source"},{"name":"NA East: Ashburn, VA, USA","url":"rtmp://us-east-1.stream.nood.tv/live_source"},{"name":"NA East: Columbus, OH, USA","url":"rtmp://us-east-2.stream.nood.tv/live_source"},{"name":"NA East: Montreal, QC, CAN","url":"rtmp://ca-central-1.stream.nood.tv/live_source"},{"name":"NA West: San Francisco, CA, USA","url":"rtmp://us-west-1.stream.nood.tv/live_source"},{"name":"NA West: Portland, OR, USA","url":"rtmp://us-west-2.stream.nood.tv/live_source"},{"name":"SA East: Sao Paulo, BRA","url":"rtmp://sa-east-1.stream.nood.tv/live_source"},{"name":"EU West: Dublin, IRL","url":"rtmp://eu-west-1.stream.nood.tv/live_source"},{"name":"EU West: London, GBR","url":"rtmp://eu-west-2.stream.nood.tv/live_source"},{"name":"EU West: Paris, FRA","url":"rtmp://eu-west-3.stream.nood.tv/live_source"},{"name":"EU West: Frankfurt, DEU","url":"rtmp://eu-central-1.stream.nood.tv/live_source"},{"name":"Asia North-East: Tokyo, JPN","url":"rtmp://ap-northeast-1.stream.nood.tv/live_source"},{"name":"Asia North-East: Seoul, KOR","url":"rtmp://ap-northeast-2.stream.nood.tv/live_source"},{"name":"Asia South-East: Singapore, SGP","url":"rtmp://ap-southeast-1.stream.nood.tv/live_source"},{"name":"Asia South-East: Sydney, AUS","url":"rtmp://ap-southeast-2.stream.nood.tv/live_source"},{"name":"Asia South: Mumbai, IND","url":"rtmp://ap-south-1.stream.nood.tv/live_source"}],"recommended":{"keyint":2,"max video bitrate":25000,"max audio bitrate":192,"x264opts":"scenecut=0"}},{"name":"Castr.io","servers":[{"name":"US-East (Chicago, IL)","url":"rtmp://cg.castr.io/static"},{"name":"US-East (New York, NY)","url":"rtmp://ny.castr.io/static"},{"name":"US-East (Miami, FL)","url":"rtmp://mi.castr.io/static"},{"name":"US-West (Seattle, WA)","url":"rtmp://se.castr.io/static"},{"name":"US-West (Los Angeles, CA)","url":"rtmp://la.castr.io/static"},{"name":"US-Central (Dallas, TX)","url":"rtmp://da.castr.io/static"},{"name":"NA-East (Toronto, CA)","url":"rtmp://qc.castr.io/static"},{"name":"SA (Sao Paulo, BR)","url":"rtmp://br.castr.io/static"},{"name":"EU-West (London, UK)","url":"rtmp://uk.castr.io/static"},{"name":"EU-Central (Frankfurt, DE)","url":"rtmp://fr.castr.io/static"},{"name":"Russia (Moscow)","url":"rtmp://ru.castr.io/static"},{"name":"Asia (Singapore)","url":"rtmp://sg.castr.io/static"},{"name":"Asia (India)","url":"rtmp://in.castr.io/static"},{"name":"Australia (Sydney)","url":"rtmp://au.castr.io/static"},{"name":"US Central","url":"rtmp://us-central.castr.io/static"},{"name":"US West","url":"rtmp://us-west.castr.io/static"},{"name":"US East","url":"rtmp://us-east.castr.io/static"},{"name":"US South","url":"rtmp://us-south.castr.io/static"},{"name":"South America","url":"rtmp://south-am.castr.io/static"},{"name":"EU Central","url":"rtmp://eu-central.castr.io/static"},{"name":"Singapore","url":"rtmp://sg-central.castr.io/static"}],"recommended":{"keyint":2}},{"name":"Boomstream","servers":[{"name":"Default","url":"rtmp://live.boomstream.com/live"}]},{"name":"Meridix Live Sports Platform","servers":[{"name":"Primary","url":"rtmp://publish.meridix.com/live"}],"recommended":{"max video bitrate":3500}},{"name":"AfreecaTV","alt_names":["아프리카TV","Afreeca.TV"],"servers":[{"name":"Asia : Korea","url":"rtmp://rtmpmanager-freecat.afreeca.tv/app"},{"name":"North America : US East","url":"rtmp://rtmp-esu.afreecatv.com/app"},{"name":"North America : US West","url":"rtmp://rtmp-wsu.afreecatv.com/app"},{"name":"Europe : UK","url":"rtmp://rtmp-uk.afreecatv.com/app"},{"name":"Asia : Singapore","url":"rtmp://rtmp-sgp.afreecatv.com/app"}],"recommended":{"keyint":2,"profile":"main","max video bitrate":8000,"max audio bitrate":192}},{"name":"CAM4","servers":[{"name":"CAM4","url":"rtmp://origin.cam4.com/cam4-origin-live"}],"recommended":{"keyint":1,"profile":"baseline","max video bitrate":3000,"max audio bitrate":128}},{"name":"ePlay","servers":[{"name":"ePlay Primary","url":"rtmp://live.eplay.link/origin"}],"recommended":{"keyint":2,"profile":"main","max video bitrate":7500,"max audio bitrate":192}},{"name":"Picarto","servers":[{"name":"US East (Chicago, USA)","url":"rtmp://live.us-east1.picarto.tv/golive"},{"name":"US West (Los Angeles, USA)","url":"rtmp://live.us-west1.picarto.tv/golive"},{"name":"EU West (Düsseldorf, Germany)","url":"rtmp://live.eu-west1.picarto.tv/golive"}],"recommended":{"keyint":2,"profile":"main","max video bitrate":3500}},{"name":"Pandora TV Korea","servers":[{"name":"Default","url":"rtmp://plive.pandora.tv:80/mediaHub"}]},{"name":"Livestream","servers":[{"name":"Primary","url":"rtmp://rtmpin.livestreamingest.com/rtmpin"}]},{"name":"Uscreen","servers":[{"name":"Default","url":"rtmp://global-live.uscreen.app:5222/app"}],"recommended":{"keyint":2,"max video bitrate":8000,"max audio bitrate":192}},{"name":"Stripchat","servers":[{"name":"Auto","url":"rtmp://s-sd.stripst.com/ext"}],"recommended":{"keyint":2,"profile":"main","bframes":0,"max video bitrate":6000,"max audio bitrate":128,"x264opts":"tune=zerolatency"}},{"name":"CamSoda","servers":[{"name":"North America","url":"rtmp://obs-ingest-na.camsoda.com/cam_obs"},{"name":"South America","url":"rtmp://obs-ingest-sa.camsoda.com/cam_obs"},{"name":"Asia","url":"rtmp://obs-ingest-as.camsoda.com/cam_obs"},{"name":"Europe","url":"rtmp://obs-ingest-eu.camsoda.com/cam_obs"},{"name":"Oceania","url":"rtmp://obs-ingest-oc.camsoda.com/cam_obs"}],"recommended":{"supported resolutions":["1920x1080","1280x720","852x480","480x360"],"max fps":30,"max video bitrate":6000,"max audio bitrate":160,"x264opts":"tune=zerolatency"}},{"name":"Chaturbate","servers":[{"name":"Global Main Fastest - Recommended","url":"rtmp://live.stream.highwebmedia.com/live-origin"},{"name":"Global Backup","url":"rtmp://live-backup.stream.highwebmedia.com/live-origin"},{"name":"US West: Seattle, WA","url":"rtmp://live-sea.stream.highwebmedia.com/live-origin"},{"name":"US West: Phoenix, AZ","url":"rtmp://live-phx.stream.highwebmedia.com/live-origin"},{"name":"US Central: Salt Lake City, UT","url":"rtmp://live-slc.stream.highwebmedia.com/live-origin"},{"name":"US Central: Chicago, IL","url":"rtmp://live-chi.stream.highwebmedia.com/live-origin"},{"name":"US East: Atlanta, GA","url":"rtmp://live-atl.stream.highwebmedia.com/live-origin"},{"name":"US East: Ashburn, VA","url":"rtmp://live-ash.stream.highwebmedia.com/live-origin"},{"name":"South America: Sao Paulo, Brazil","url":"rtmp://live-gru.stream.highwebmedia.com/live-origin"},{"name":"EU: Amsterdam, NL","url":"rtmp://live-nld.stream.highwebmedia.com/live-origin"},{"name":"EU: Alblasserdam, NL","url":"rtmp://live-alb.stream.highwebmedia.com/live-origin"},{"name":"EU: Frankfurt, DE","url":"rtmp://live-fra.stream.highwebmedia.com/live-origin"},{"name":"EU: Belgrade, Serbia","url":"rtmp://live-srb.stream.highwebmedia.com/live-origin"},{"name":"Asia: Singapore","url":"rtmp://live-sin.stream.highwebmedia.com/live-origin"},{"name":"Asia: Tokyo, Japan","url":"rtmp://live-nrt.stream.highwebmedia.com/live-origin"},{"name":"Australia: Sydney","url":"rtmp://live-syd.stream.highwebmedia.com/live-origin"}],"recommended":{"keyint":2,"max video bitrate":50000,"max audio bitrate":192}},{"name":"Twitter / Periscope","common":true,"servers":[{"name":"US West: California","url":"rtmp://ca.pscp.tv:80/x"},{"name":"US West: Oregon","url":"rtmp://or.pscp.tv:80/x"},{"name":"US East: Virginia","url":"rtmp://va.pscp.tv:80/x"},{"name":"South America: Brazil","url":"rtmp://br.pscp.tv:80/x"},{"name":"EU West: Ireland","url":"rtmp://ie.pscp.tv:80/x"},{"name":"EU Central: Germany","url":"rtmp://de.pscp.tv:80/x"},{"name":"Asia/Pacific: Australia","url":"rtmp://au.pscp.tv:80/x"},{"name":"Asia/Pacific: Japan","url":"rtmp://jp.pscp.tv:80/x"},{"name":"Asia/Pacific: Singapore","url":"rtmp://sg.pscp.tv:80/x"}],"recommended":{"keyint":3,"max video bitrate":4000,"max audio bitrate":128}},{"name":"Switchboard Live","alt_names":["Switchboard Live (Joicaster)"],"servers":[{"name":"Global Zone (geo based)","url":"rtmp://ingest-global-a.switchboard.zone/live"},{"name":"US Zone (geo based)","url":"rtmp://ingest-us.switchboard.zone/live"},{"name":"US West 1 (South)","url":"rtmp://ingest-us-west.a.switchboard.zone/live"},{"name":"US West 2 (North)","url":"rtmp://ingest-us-west.b.switchboard.zone/live"},{"name":"US East 1 (North)","url":"rtmp://ingest-us-east.a.switchboard.zone/live"},{"name":"US East 2 (South)","url":"rtmp://ingest-us-east.b.switchboard.zone/live"},{"name":"US Central (North)","url":"rtmp://ingest-us-central.a.switchboard.zone/live"},{"name":"South America East (São Paulo, BR)","url":"rtmp://ingest-sa-east.a.switchboard.zone/live"},{"name":"Europe West (London, UK)","url":"rtmp://ingest-eu-west.a.switchboard.zone/live"},{"name":"Europe North (Hamina, FI)","url":"rtmp://ingest-eu-north.a.switchboard.zone/live"},{"name":"Australia Southeast (Sydney, AU)","url":"rtmp://ingest-au-southeast.a.switchboard.zone/live"},{"name":"Asia East (Changhua County, TW)","url":"rtmp://ingest-as-east.a.switchboard.zone/live"},{"name":"Asia Northeast (Tokyo, JP)","url":"rtmp://ingest-as-northeast.a.switchboard.zone/live"},{"name":"Asia South (Mumbai, IN)","url":"rtmp://ingest-as-south.a.switchboard.zone/live"}],"recommended":{"keyint":2,"max audio bitrate":128,"max video bitrate":10000}},{"name":"Looch","common":false,"servers":[{"name":"Primary Looch ingest server","url":"rtmp://ingest.looch.tv/live"}],"recommended":{"keyint":2,"profile":"main","max video bitrate":6000,"max audio bitrate":160}},{"name":"Eventials","servers":[{"name":"Default","url":"rtmp://live.eventials.com/eventialsLiveOrigin"}],"recommended":{"keyint":1,"profile":"baseline","max video bitrate":900,"max audio bitrate":192}},{"name":"EventLive.pro","servers":[{"name":"Default","url":"rtmp://go.eventlive.pro/live"}],"recommended":{"keyint":2,"max video bitrate":3000,"max audio bitrate":192,"supported resolutions":["1920x1080","1280x720"],"max fps":30}},{"name":"Lahzenegar - StreamG | لحظه‌نگار - استریمجی","servers":[{"name":"Primary","url":"rtmp://rtmp.lahzecdn.com/pro"},{"name":"Iran","url":"rtmp://rtmp-iran.lahzecdn.com/pro"}],"recommended":{"keyint":2,"profile":"main","max video bitrate":4000,"max audio bitrate":192}},{"name":"MyLive","servers":[{"name":"Default","url":"rtmp://stream.mylive.in.th/live"}],"recommended":{"keyint":2,"profile":"main","max video bitrate":7000,"max audio bitrate":192}},{"name":"Trovo","alt_names":["Madcat"],"servers":[{"name":"Default","url":"rtmp://livepush.trovo.live/live/"}],"recommended":{"keyint":2,"max video bitrate":9000,"max audio bitrate":160,"x264opts":"scenecut=0"}},{"name":"Mixcloud","servers":[{"name":"Default","url":"rtmp://rtmp.mixcloud.com/broadcast"}],"recommended":{"keyint":2,"max video bitrate":6000,"max audio bitrate":320,"x264opts":"scenecut=0"}},{"name":"SermonAudio Cloud","alt_names":["SermonAudio.com"],"servers":[{"name":"Primary","url":"rtmp://webcast.sermonaudio.com/sa"}],"recommended":{"max video bitrate":2000,"max audio bitrate":128}},{"name":"Vimeo","servers":[{"name":"Default","url":"rtmp://rtmp.cloud.vimeo.com/live"}]},{"name":"Aparat","servers":[{"name":"Default","url":"rtmp://rtmp.cdn.asset.aparat.com:443/event"}]},{"name":"GameTips.TV","servers":[{"name":"Iran - Tehran | AsiaTech","url":"rtmp://rtmp.s2.gametips.tv:1935/live"},{"name":"Netherlands - Amsterdam | Serverius","url":"rtmp://rtmp.s3.gametips.tv:1935/live"},{"name":"Iran - Tehran | ParsOnline","url":"rtmp://rtmp.s4.gametips.tv:1935/live"},{"name":"Iran - Tehran | AfraNet","url":"rtmp://rtmp.s5.gametips.tv:1935/live"}]},{"name":"KakaoTV","servers":[{"name":"Default","url":"rtmp://rtmp.play.kakao.com/kakaotv"}],"recommended":{"max video bitrate":8000,"max audio bitrate":192}},{"name":"Piczel.tv","servers":[{"name":"Default","url":"rtmp://piczel.tv:1935/live"}],"recommended":{"keyint":4,"max video bitrate":2500,"max audio bitrate":256,"x264opts":"tune=zerolatency aq-strength=0"}},{"name":"STAGE TEN","servers":[{"name":"STAGE TEN","url":"rtmps://app-rtmp.stageten.tv:443/stageten"}],"recommended":{"keyint":2,"profile":"baseline","max video bitrate":4000,"max audio bitrate":128}},{"name":"DLive","servers":[{"name":"Default","url":"rtmp://stream.dlive.tv/live"}],"recommend":{"keyint":2,"max video bitrate":6000,"max audio bitrate":160}},{"name":"Lightcast.com","servers":[{"name":"North America / East","url":"rtmp://us-east.live.lightcast.com/202E1F/default"},{"name":"North America / West","url":"rtmp://us-west.live.lightcast.com/202E1F/default"},{"name":"Europe / Amsterdam","url":"rtmp://europe.live.lightcast.com/202E1F/default"},{"name":"Europe / Frankfurt","url":"rtmp://europe-fra.live.lightcast.com/202E1F/default"},{"name":"Europe / Stockholm","url":"rtmp://europe-sto.live.lightcast.com/202E1F/default"},{"name":"Asia / Hong Kong","url":"rtmp://asia.live.lightcast.com/202E1F/default"},{"name":"Australia / Sydney","url":"rtmp://australia.live.lightcast.com/202E1F/default"}],"recommend":{"keyint":2,"max video bitrate":6000,"max audio bitrate":160}},{"name":"Bongacams","servers":[{"name":"Automatic / Default","url":"rtmp://auto.origin.gnsbc.com:1934/live"},{"name":"Automatic / Backup","url":"rtmp://origin.bcvidorigin.com:1934/live"},{"name":"Europe","url":"rtmp://z-eu.origin.gnsbc.com:1934/live"},{"name":"North America","url":"rtmp://z-us.origin.gnsbc.com:1934/live"}],"recommend":{"keyint":2,"max video bitrate":6000,"max audio bitrate":192,"bframes":0,"x264opts":"tune=zerolatency"}},{"name":"show-it.tv","servers":[{"name":"Default","url":"rtmp://stream-1.show-it.tv:1935/live"}],"recommend":{"max video bitrate":6000,"max audio bitrate":192}},{"name":"Chathostess","servers":[{"name":"Chathostess - Default","url":"rtmp://wowza01.foobarweb.com/cmschatsys_video"},{"name":"Chathostess - Backup","url":"rtmp://wowza05.foobarweb.com/cmschatsys_video"}],"recommended":{"keyint":2,"max video bitrate":3600,"max audio bitrate":128}},{"name":"Camplace","servers":[{"name":"Camplace - Default","url":"rtmp://rtmp.camplace.com"}],"recommend":{"keyint":2,"max video bitrate":3000,"max audio bitrate":128}},{"name":"OnlyFans.com","servers":[{"name":"USA","url":"rtmp://route0.onlyfans.com/live"},{"name":"Europe","url":"rtmp://route0-dc2.onlyfans.com/live"}],"recommend":{"keyint":2,"profile":"main","max video bitrate":2500,"max audio bitrate":192,"bframes":0,"x264opts":"tune=zerolatency"}},{"name":"YouNow","common":false,"servers":[{"name":"younow.com","url":"https://signaling-api.younow-prod.video.propsproject.com/api/v1/ingest/server/"}],"recommended":{"keyint":2,"output":"ftl_output","max audio bitrate":160,"max video bitrate":7000,"profile":"main","bframes":0}},{"name":"Steam","common":false,"servers":[{"name":"Default","url":"rtmp://ingest-rtmp.broadcast.steamcontent.com/app"}],"recommended":{"keyint":2,"profile":"high","max video bitrate":7000,"max audio bitrate":128}},{"name":"Stars.AVN.com","servers":[{"name":"Default","url":"rtmp://alpha.gateway.stars.avn.com/live"}],"recommended":{"keyint":2,"profile":"main","max video bitrate":2500,"max audio bitrate":192,"bframes":0,"x264opts":"tune=zerolatency"}},{"name":"Konduit.live","servers":[{"name":"Default","url":"rtmp://rtmp.konduit.live/live"}],"recommended":{"keyint":2,"x264opts":"scenecut=0"}},{"name":"Uncanny.gg","servers":[{"name":"Default","url":"rtmp://stream.uncanny.gg/fortnite"}],"recommended":{"keyint":2,"profile":"main","max video bitrate":10000,"max audio bitrate":192}},{"name":"Whalebone.tv","servers":[{"name":"Automatic","url":"rtmp://live.whalebone.tv/live"},{"name":"Tokyo, Japan","url":"rtmp://ap-northeast.live.whalebone.tv/live"},{"name":"Frankfurt, Germany","url":"rtmp://eu-central.live.whalebone.tv/live"},{"name":"London, United Kingdom","url":"rtmp://eu-west.live.whalebone.tv/live"},{"name":"São Paulo, Brazil","url":"rtmp://sa-east.live.whalebone.tv/live"},{"name":"North Virgina, United States","url":"rtmp://us-east.live.whalebone.tv/live"},{"name":"Oregon, United States","url":"rtmp://us-west.live.whalebone.tv/live"}]},{"name":"LOCO","servers":[{"name":"Default","url":"rtmp://ivory-ingest.getloconow.com:1935/stream"}],"recommended":{"keyint":2}},{"name":"niconico, premium member (ニコニコ生放送 プレミアム会員)","servers":[{"name":"Default","url":"rtmp://aliveorigin.dmc.nico/named_input"}],"recommended":{"keyint":2,"profile":"high","max audio bitrate":192,"max video bitrate":5808,"x264opts":"tune=zerolatency"}},{"name":"niconico, free member (ニコニコ生放送 一般会員)","servers":[{"name":"Default","url":"rtmp://aliveorigin.dmc.nico/named_input"}],"recommended":{"keyint":2,"profile":"high","max audio bitrate":96,"max video bitrate":904,"x264opts":"tune=zerolatency"}},{"name":"WASD.TV","servers":[{"name":"Automatic","url":"rtmp://push.rtmp.wasd.tv/live"},{"name":"Russia, Moscow","url":"rtmp://ru-moscow.rtmp.wasd.tv/live"},{"name":"Germany, Frankfurt","url":"rtmp://de-frankfurt.rtmp.wasd.tv/live"},{"name":"Finland, Helsinki","url":"rtmp://fi-helsinki.rtmp.wasd.tv/live"}],"recommended":{"keyint":2,"max video bitrate":10000,"max audio bitrate":192}},{"name":"VirtWish","servers":[{"name":"Default","url":"rtmp://rtmp.virtwish.com/live"}]},{"name":"Nimo TV","servers":[{"name":"Global:1","url":"rtmp://wspush.rtmp.nimo.tv/live/"},{"name":"Global:2","url":"rtmp://txpush.rtmp.nimo.tv/live/"},{"name":"Global:3","url":"rtmp://alpush.rtmp.nimo.tv/live/"}],"recommended":{"keyint":2,"max video bitrate":6000,"max audio bitrate":160}},{"name":"XLoveCam.com","servers":[{"name":"Europe(main)","url":"rtmp://nl.eu.stream.xlove.com/performer-origin"},{"name":"Europe(Romania)","url":"rtmp://ro.eu.stream.xlove.com/performer-origin"},{"name":"Europe(Russia)","url":"rtmp://ru.eu.stream.xlove.com/performer-origin"},{"name":"North America(US East)","url":"rtmp://usec.na.stream.xlove.com/performer-origin"},{"name":"North America(US West)","url":"rtmp://uswc.na.stream.xlove.com/performer-origin"},{"name":"North America(Canada)","url":"rtmp://ca.na.stream.xlove.com/performer-origin"},{"name":"South America","url":"rtmp://co.sa.stream.xlove.com/performer-origin"},{"name":"Asia","url":"rtmp://sg.as.stream.xlove.com/performer-origin"}],"recommended":{"x264opts":"scenecut=0"}},{"name":"AngelThump","servers":[{"name":"Auto","url":"rtmp://ingest.angelthump.com/live"},{"name":"New York 3","url":"rtmp://nyc-ingest.angelthump.com:1935/live"},{"name":"San Francisco 2","url":"rtmp://sfo-ingest.angelthump.com:1935/live"},{"name":"Singapore 1","url":"rtmp://sgp-ingest.angelthump.com:1935/live"},{"name":"London 1","url":"rtmp://lon-ingest.angelthump.com:1935/live"},{"name":"Frankfurt 1","url":"rtmp://fra-ingest.angelthump.com:1935/live"},{"name":"Toronto 1","url":"rtmp://tor-ingest.angelthump.com:1935/live"},{"name":"Bangalore 1","url":"rtmp://blr-ingest.angelthump.com:1935/live"},{"name":"Amsterdam 3","url":"rtmp://ams-ingest.angelthump.com:1935/live"}],"recommended":{"keyint":2,"profile":"high","max video bitrate":3500,"max audio bitrate":160}},{"name":"Taryana - Apachat | تاریانا - آپاچت","servers":[{"name":"Global: Fastest (Recommended)","url":"rtmp://cdn.apachat.com:443/multistream"}],"recommended":{"keyint":2,"profile":"main","max video bitrate":4000,"max audio bitrate":192}},{"name":"api.video","servers":[{"name":"Default","url":"rtmp://broadcast.api.video/s"}],"recommended":{"keyint":2,"max video bitrate":20000,"max audio bitrate":192}},{"name":"SHOWROOM","servers":[{"name":"Default","url":"https://www.showroom-live.com/api/obs/streaming_info?obs_key="}],"recommended":{"keyint":2,"profile":"main","max video bitrate":1500,"max audio bitrate":160,"x264opts":"tune=zerolatency"}},{"name":"Mux","servers":[{"name":"Global (RTMPS)","url":"rtmps://global-live.mux.com:443/app"},{"name":"Global (RTMP)","url":"rtmp://global-live.mux.com:5222/app"}],"recommended":{"keyint":2,"max video bitrate":5000,"max audio bitrate":160}},{"name":"Viloud","servers":[{"name":"Default","url":"rtmp://live.viloud.tv:5222/app"}],"recommended":{"keyint":2,"max video bitrate":5000,"max audio bitrate":160}},{"name":"MyFreeCams","servers":[{"name":"Automatic","url":"rtmp://publish.myfreecams.com/NxServer"},{"name":"Australia","url":"rtmp://publish-syd.myfreecams.com/NxServer"},{"name":"East Asia","url":"rtmp://publish-tyo.myfreecams.com/NxServer"},{"name":"Europe (East)","url":"rtmp://publish-buh.myfreecams.com/NxServer"},{"name":"Europe (West)","url":"rtmp://publish-ams.myfreecams.com/NxServer"},{"name":"North America (East Coast)","url":"rtmp://publish-ord.myfreecams.com/NxServer"},{"name":"North America (West Coast)","url":"rtmp://publish-tuk.myfreecams.com/NxServer"},{"name":"South America","url":"rtmp://publish-sao.myfreecams.com/NxServer"}],"recommended":{"keyint":1,"profile":"high","max fps":60,"max video bitrate":10000,"max audio bitrate":192,"x264opts":"tune=zerolatency scenecut=0"}},{"name":"PolyStreamer.com","servers":[{"name":"Auto-select closest server","url":"rtmp://live.polystreamer.com/live"},{"name":"United States - West","url":"rtmp://us-west.live.polystreamer.com/live"},{"name":"United States - East","url":"rtmp://us-east.live.polystreamer.com/live"},{"name":"Australia","url":"rtmp://aus.live.polystreamer.com/live"},{"name":"India","url":"rtmp://ind.live.polystreamer.com/live"},{"name":"Germany","url":"rtmp://deu.live.polystreamer.com/live"},{"name":"Japan","url":"rtmp://jpn.live.polystreamer.com/live"},{"name":"Singapore","url":"rtmp://sgp.live.polystreamer.com/live"}],"recommended":{"keyint":2}},{"name":"Glimesh","servers":[{"name":"North America - Chicago, United States","url":"ingest.kord.live.glimesh.tv"},{"name":"North America - New York, United States","url":"ingest.kjfk.live.glimesh.tv"},{"name":"North America - San Francisco, United States","url":"ingest.ksfo.live.glimesh.tv"},{"name":"North America - Toronto, Canada","url":"ingest.cyyz.live.glimesh.tv"},{"name":"Europe - Amsterdam, Netherlands","url":"ingest.eham.live.glimesh.tv"},{"name":"Europe - Frankfurt, Germany","url":"ingest.eddf.live.glimesh.tv"},{"name":"Europe - London, United Kingdom","url":"ingest.egll.live.glimesh.tv"},{"name":"Asia - Bangalore, India","url":"ingest.vobl.live.glimesh.tv"},{"name":"Asia - Singapore","url":"ingest.wsss.live.glimesh.tv"}],"recommended":{"keyint":2,"output":"ftl_output","max audio bitrate":160,"max video bitrate":6000,"bframes":0,"x264opts":"scenecut=0"}},{"name":"OPENREC.tv - Premium member (プレミアム会員)","servers":[{"name":"Default","url":"rtmp://a.station.openrec.tv:1935/live1"}],"recommended":{"keyint":2,"max video bitrate":5000,"max audio bitrate":160}},{"name":"nanoStream Cloud / bintu","servers":[{"name":"bintu-stream global ingest (rtmp)","url":"rtmp://bintu-stream.nanocosmos.de/live"},{"name":"bintu-stream global ingest (rtmps)","url":"rtmps://bintu-stream.nanocosmos.de:1937/live"},{"name":"bintu-vtrans global ingest with transcoding/ABR (rtmp)","url":"rtmp://bintu-stream.nanocosmos.de/live"},{"name":"bintu-vtrans global ingest with transcoding/ABR (rtmps)","url":"rtmps://bintu-stream.nanocosmos.de:1937/live"},{"name":"bintu-stream Europe (EU)","url":"rtmp://bintu-stream-eu.nanocosmos.de/live"},{"name":"bintu-stream USA West (USW)","url":"rtmp://bintu-stream-usw.nanocosmos.de/live"},{"name":"bintu-stream US East (USE)","url":"rtmp://bintu-stream-use.nanocosmos.de/live"},{"name":"bintu-stream Asia South (ASS)","url":"rtmp://bintu-stream-ass.nanocosmos.de/live"},{"name":"bintu-stream Australia (AU)","url":"rtmp://bintu-stream-au.nanocosmos.de/live"},{"name":"bintu-vtrans Europe (EU)","url":"rtmp://bintu-vtrans-eu.nanocosmos.de/live"},{"name":"bintu-vtrans USA West (USW)","url":"rtmp://bintu-vtrans-usw.nanocosmos.de/live"},{"name":"bintu-vtrans US East (USE)","url":"rtmp://bintu-vtrans-use.nanocosmos.de/live"},{"name":"bintu-vtrans Asia South (ASS)","url":"rtmp://bintu-vtrans-ass.nanocosmos.de/live"},{"name":"bintu-vtrans Australia (AU)","url":"rtmp://bintu-vtrans-au.nanocosmos.de/live"}],"recommended":{"keyint":2,"profile":"baseline","bframes":0,"max video bitrate":5000,"max audio bitrate":192,"x264opts":"tune=zerolatency b-pyramid=0 scenecut=0"}}]} diff --git a/obs-studio/plugin_config/rtmp-services/twitch_ingests.json b/obs-studio/plugin_config/rtmp-services/twitch_ingests.json new file mode 100644 index 0000000..a9887cb --- /dev/null +++ b/obs-studio/plugin_config/rtmp-services/twitch_ingests.json @@ -0,0 +1,388 @@ +{ + "ingests": [ + { + "_id": 0, + "availability": 1.0, + "default": false, + "name": "US West: Los Angeles, CA", + "url_template": "rtmp://live-lax.twitch.tv/app/{stream_key}", + "priority": 0 + }, + { + "_id": 1, + "availability": 1.0, + "default": false, + "name": "US West: San Jose,CA", + "url_template": "rtmp://live-sjc.twitch.tv/app/{stream_key}", + "priority": 1 + }, + { + "_id": 2, + "availability": 1.0, + "default": false, + "name": "US West: Phoenix, AZ", + "url_template": "rtmp://live-phx.twitch.tv/app/{stream_key}", + "priority": 2 + }, + { + "_id": 3, + "availability": 1.0, + "default": true, + "name": "US West: San Francisco, CA", + "url_template": "rtmp://live-sfo.twitch.tv/app/{stream_key}", + "priority": 3 + }, + { + "_id": 4, + "availability": 1.0, + "default": false, + "name": "Salt Lake City, UT", + "url_template": "rtmp://live-slc.twitch.tv/app/{stream_key}", + "priority": 4 + }, + { + "_id": 5, + "availability": 1.0, + "default": false, + "name": "US Central: Denver, CO", + "url_template": "rtmp://live-den.twitch.tv/app/{stream_key}", + "priority": 5 + }, + { + "_id": 6, + "availability": 1.0, + "default": false, + "name": "US West: Portland, Oregon", + "url_template": "rtmp://live-pdx.twitch.tv/app/{stream_key}", + "priority": 6 + }, + { + "_id": 7, + "availability": 1.0, + "default": false, + "name": "US Central: Dallas, TX", + "url_template": "rtmp://live-dfw.twitch.tv/app/{stream_key}", + "priority": 7 + }, + { + "_id": 8, + "availability": 1.0, + "default": false, + "name": "US Central: Houston, TX", + "url_template": "rtmp://live-hou.twitch.tv/app/{stream_key}", + "priority": 8 + }, + { + "_id": 9, + "availability": 1.0, + "default": false, + "name": "NA: Queretaro, Mexico", + "url_template": "rtmp://live-qro.twitch.tv/app/{stream_key}", + "priority": 9 + }, + { + "_id": 10, + "availability": 1.0, + "default": false, + "name": "US East: Chicago", + "url_template": "rtmp://live-ord.twitch.tv/app/{stream_key}", + "priority": 10 + }, + { + "_id": 11, + "availability": 1.0, + "default": false, + "name": "US East: Atlanta, GA", + "url_template": "rtmp://live-atl.twitch.tv/app/{stream_key}", + "priority": 11 + }, + { + "_id": 12, + "availability": 1.0, + "default": false, + "name": "NA: Toronto, Canada", + "url_template": "rtmp://live-yto.twitch.tv/app/{stream_key}", + "priority": 12 + }, + { + "_id": 13, + "availability": 1.0, + "default": false, + "name": "US East: Ashburn, VA", + "url_template": "rtmp://live-iad.twitch.tv/app/{stream_key}", + "priority": 13 + }, + { + "_id": 14, + "availability": 1.0, + "default": false, + "name": "US East: Miami, FL", + "url_template": "rtmp://live-mia.twitch.tv/app/{stream_key}", + "priority": 14 + }, + { + "_id": 15, + "availability": 1.0, + "default": false, + "name": "US East: New York, NY", + "url_template": "rtmp://live-jfk.twitch.tv/app/{stream_key}", + "priority": 15 + }, + { + "_id": 16, + "availability": 1.0, + "default": false, + "name": "NA: Quebec, Canada", + "url_template": "rtmp://live-ymq.twitch.tv/app/{stream_key}", + "priority": 16 + }, + { + "_id": 17, + "availability": 1.0, + "default": false, + "name": "DEPRECATED South America: Medellin, Colombia", + "url_template": "rtmp://live-mde.twitch.tv/app/{stream_key}", + "priority": 17 + }, + { + "_id": 18, + "availability": 1.0, + "default": false, + "name": "DEPRECATED South America: Lima, Peru", + "url_template": "rtmp://live-lim.twitch.tv/app/{stream_key}", + "priority": 18 + }, + { + "_id": 19, + "availability": 1.0, + "default": false, + "name": "Europe: Norway, Oslo", + "url_template": "rtmp://live-osl.twitch.tv/app/{stream_key}", + "priority": 19 + }, + { + "_id": 20, + "availability": 1.0, + "default": false, + "name": "Europe: United Kingdom, London", + "url_template": "rtmp://live-lhr.twitch.tv/app/{stream_key}", + "priority": 20 + }, + { + "_id": 21, + "availability": 1.0, + "default": false, + "name": "Asia: Tokyo, Japan", + "url_template": "rtmp://live-tyo.twitch.tv/app/{stream_key}", + "priority": 21 + }, + { + "_id": 22, + "availability": 1.0, + "default": false, + "name": "Europe: Sweden, Stockholm", + "url_template": "rtmp://live-arn.twitch.tv/app/{stream_key}", + "priority": 22 + }, + { + "_id": 23, + "availability": 1.0, + "default": false, + "name": "DEPRECATED South America: Chile", + "url_template": "rtmp://live-scl.twitch.tv/app/{stream_key}", + "priority": 23 + }, + { + "_id": 24, + "availability": 1.0, + "default": false, + "name": "Europe: Netherlands, Amsterdam", + "url_template": "rtmp://live-ams.twitch.tv/app/{stream_key}", + "priority": 24 + }, + { + "_id": 25, + "availability": 1.0, + "default": false, + "name": "Europe: Copenhagen, Denmark", + "url_template": "rtmp://live-cph.twitch.tv/app/{stream_key}", + "priority": 25 + }, + { + "_id": 26, + "availability": 1.0, + "default": false, + "name": "Europe: Finland, Helsinki", + "url_template": "rtmp://live-hel.twitch.tv/app/{stream_key}", + "priority": 26 + }, + { + "_id": 27, + "availability": 1.0, + "default": false, + "name": "Europe: France, Paris", + "url_template": "rtmp://live-cdg.twitch.tv/app/{stream_key}", + "priority": 27 + }, + { + "_id": 28, + "availability": 1.0, + "default": false, + "name": "DEPRECATED Europe: Portugal, Lisbon", + "url_template": "rtmp://live-lis.twitch.tv/app/{stream_key}", + "priority": 28 + }, + { + "_id": 29, + "availability": 1.0, + "default": false, + "name": "Seattle, WA", + "url_template": "rtmp://live-sea.twitch.tv/app/{stream_key}", + "priority": 29 + }, + { + "_id": 30, + "availability": 1.0, + "default": false, + "name": "Europe: Spain, Madrid", + "url_template": "rtmp://live-mad.twitch.tv/app/{stream_key}", + "priority": 30 + }, + { + "_id": 31, + "availability": 1.0, + "default": false, + "name": "Europe: Germany, Frankfurt", + "url_template": "rtmp://live-fra.twitch.tv/app/{stream_key}", + "priority": 31 + }, + { + "_id": 32, + "availability": 1.0, + "default": false, + "name": "Europe: Germany, Berlin", + "url_template": "rtmp://live-ber.twitch.tv/app/{stream_key}", + "priority": 32 + }, + { + "_id": 33, + "availability": 1.0, + "default": false, + "name": "Europe: Czech Republic, Prague", + "url_template": "rtmp://live-prg.twitch.tv/app/{stream_key}", + "priority": 33 + }, + { + "_id": 34, + "availability": 1.0, + "default": false, + "name": "Europe: Poland, Warsaw", + "url_template": "rtmp://live-waw.twitch.tv/app/{stream_key}", + "priority": 34 + }, + { + "_id": 35, + "availability": 1.0, + "default": false, + "name": "Asia: Seoul, South Korea", + "url_template": "rtmp://live-sel.twitch.tv/app/{stream_key}", + "priority": 35 + }, + { + "_id": 36, + "availability": 1.0, + "default": false, + "name": "Europe: France, Marseille", + "url_template": "rtmp://live-mrs.twitch.tv/app/{stream_key}", + "priority": 36 + }, + { + "_id": 37, + "availability": 1.0, + "default": false, + "name": "Europe: Italy, Milan", + "url_template": "rtmp://live-mil.twitch.tv/app/{stream_key}", + "priority": 37 + }, + { + "_id": 38, + "availability": 1.0, + "default": false, + "name": "DEPRECATED: South America: Argentina", + "url_template": "rtmp://live-eze.twitch.tv/app/{stream_key}", + "priority": 38 + }, + { + "_id": 39, + "availability": 1.0, + "default": false, + "name": "Europe: Austria, Vienna", + "url_template": "rtmp://live-vie.twitch.tv/app/{stream_key}", + "priority": 39 + }, + { + "_id": 40, + "availability": 1.0, + "default": false, + "name": "DEPRECATED South America: Sao Paulo, Brazil ", + "url_template": "rtmp://live-gru.twitch.tv/app/{stream_key}", + "priority": 40 + }, + { + "_id": 41, + "availability": 1.0, + "default": false, + "name": "South America: Sao Paulo, Brazil", + "url_template": "rtmp://live-sao.twitch.tv/app/{stream_key}", + "priority": 41 + }, + { + "_id": 42, + "availability": 1.0, + "default": false, + "name": "DEPRECATED South America: Rio de Janeiro, Brazil", + "url_template": "rtmp://live-gig.twitch.tv/app/{stream_key}", + "priority": 42 + }, + { + "_id": 43, + "availability": 1.0, + "default": false, + "name": "South America: Rio de Janeiro, Brazil", + "url_template": "rtmp://live-rio.twitch.tv/app/{stream_key}", + "priority": 43 + }, + { + "_id": 44, + "availability": 1.0, + "default": false, + "name": "Asia: Taipei, Taiwan", + "url_template": "rtmp://live-tpe.twitch.tv/app/{stream_key}", + "priority": 44 + }, + { + "_id": 45, + "availability": 1.0, + "default": false, + "name": "Asia: Hong Kong", + "url_template": "rtmp://live-hkg.twitch.tv/app/{stream_key}", + "priority": 45 + }, + { + "_id": 46, + "availability": 1.0, + "default": false, + "name": "Australia: Sydney", + "url_template": "rtmp://live-syd.twitch.tv/app/{stream_key}", + "priority": 46 + }, + { + "_id": 47, + "availability": 1.0, + "default": false, + "name": "Asia: Singapore", + "url_template": "rtmp://live-sin.twitch.tv/app/{stream_key}", + "priority": 47 + } + ] +} diff --git a/polybar/config b/polybar/config new file mode 100644 index 0000000..c6aca3c --- /dev/null +++ b/polybar/config @@ -0,0 +1,393 @@ +[global/wm] +margin-top = 0 +margin-bottom = 0 + +[color] +background = ${xrdb:color0:#222} +foreground = ${xrdb:color15:#222} +foreground-alt = ${xrdb:color4:#222} +primary = ${xrdb:color3:#222} +secondary = ${xrdb:color2:#222} +alert = ${xrdb:color1:#222} + +[bar/momiji] +monitor = ${env:MONITOR:} +override-redirect = false +wm-restack = bspwm +bottom = false +fixed-center = true + +width = 100% +height = 19 + +font-0 = "JetBrains Mono:style=Medium:pixelsize=9" +font-1 = "IPAPGothic,IPA Pゴシック:style=Regular:size=9" +font-2 = "Baekmuk Dotum,백묵 돋움:style=Regular:size=9" +font-3 = "Siji:style=Regular:size=8" +font-4 = "Font Awesome 5 Free,Font Awesome 5 Free Solid:style=Solid:size=9" +font-5 = "Font Awesome 5 Brands,Font Awesome 5 Brands Regular:style=Regular:size=9" + +background = ${color.background} +foreground = ${color.foreground} + +line-color = ${color.foreground} +underline-size = 1 +overline-size = 2 + +border-bottom-size = 2 +border-bottom-color = ${color.foreground-alt} + +spacing = 0 +padding-right = 1 +padding-left = 1 +module-margin = 1 +#module-margin-left = 1 +#module-margin-right = 1 + +tray-position = right +tray-padding = 0 +tray-maxsize = 10 +tray-detached = false + +#scroll-up = i3wm-wsnext +#scroll-down = i3wm-wsprev +#scroll-up = bspwm-desknext +#scroll-down = bspwm-deskprev + +modules-left = mpd-playing mpd +modules-center = ewmh +modules-right = ethernet pulseaudio battery date time + +[module/ewmh] +type = internal/xworkspaces + +pin-workspaces = false +enable-click = true +enable-scroll = true +reverse-scroll = false + +format = +label-monitor = %name% + +label-active = %name% +label-active-foreground = ${color.foreground} +label-active-background = ${color.background} +label-active-underline= #6790eb +label-active-padding = 1 + +label-occupied = %name% +label-occupied-background = ${color.background} +label-occupied-padding = 1 + +label-urgent = %name% +label-urgent-foreground = ${color.foreground} +label-urgent-background = ${color.alert} +label-urgent-underline = ${color.alert} +label-urgent-padding = 1 + +label-empty = %name% +label-empty-foreground = ${color.foreground} +label-empty-padding = 1 +format-foreground = ${color.foreground} +format-background = ${color.background} +wrapping-scroll = false + + +[module/xwindow] +type = internal/xwindow +format =