File: Music-audacious

package info (click to toggle)
fvwm-crystal 3.0.5.dfsg-5
  • links: PTS, VCS
  • area: main
  • in suites: squeeze, wheezy
  • size: 16,268 kB
  • ctags: 607
  • sloc: sh: 2,065; python: 875; cs: 648; makefile: 218
file content (147 lines) | stat: -rw-r--r-- 5,144 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# Support for Audacious music player
# Written by: Rafael Antonio Porras Samaniego <spoek@distrobit.net>

# Where are stored Audacious playlists
SetEnv Audacious-Playlists "$[FVWM_USERDIR]/playlists"

# Styles for Audacious windows
Style audacious		StaysOnTop
Style audacious		StartIconic, NoIcon, NoTitle, Sticky, WindowListSkip
Style playlist		StartIconic, NoIcon, NoTitle, Sticky, WindowListSkip
Style equalizer		StartIconic, NoIcon, NoTitle, Sticky, WindowListSkip

# If there is no selected mixer, load the default
CheckPreferences DefaultMixer "Include components/functions/Mixer-audacious"

# Main functions and menus
DestroyMenu /Music
AddToMenu /Music
+ DynamicPopupAction Function /Music-generator

DestroyFunc /Music-generator
AddToFunc /Music-generator
+ I DestroyMenu recreate /Music
+ I AddToMenu /Music '$[gt.Load playlist]'		Popup /Music/LoadPlaylist
+ I AddToMenu /Music '$[gt.Save playlist...]'	Music-SavePlaylist
+ I AddToMenu /Music '$[gt.Clear playlist]'	Music-ClearPlaylist
+ I AddToMenu /Music '$[gt.Remove current song]'	Music-RemoveSong
+ I AddToMenu /Music '$[gt.Remove playlist]'	Popup /Music/RemovePlaylist
+ I AddToMenu /Music "" Nop
+ I PipeRead 'audtool get-volume | sed -e "s:[ \t]::g" | sed -e "s:^.\\+$:AddToMenu\ /Music \'$[gt.Volume] \(&%%\)\' Popup /Mixer:"'

+ I AddToMenu /Music '$[gt.Toggle random]'	Music-ToggleRandom
+ I AddToMenu /Music '$[gt.Toggle repeat]'	Exec exec audtool playlist-repeat-toggle
+ I AddToMenu /Music "" Nop
+ I AddToMenu /Music '$[gt.Stop playback]'	Music-Stop
+ I AddToMenu /Music '$[gt.Show/hide player]'	Music-GUI
+ I AddToMenu /Music '$[gt.Play/Pause]'		Music-PlayPause

# ---------------------------------------------------------------------------
# Basic control functions
DestroyFunc Music-Play
AddToFunc Music-Play
+ I Exec exec audtool playback-play

DestroyFunc Music-Pause
AddToFunc Music-Pause
+ I Exec exec audtool playback-pause

DestroyFunc Music-Stop
AddToFunc Music-Stop
+ I Exec exec audtool playback-stop

DestroyFunc Music-PlayPause
AddToFunc Music-PlayPause
+ I Exec exec audacious -t

DestroyFunc Music-Next
AddToFunc Music-Next
+ I Exec exec audtool playlist-advance

DestroyFunc Music-Prev
AddToFunc Music-Prev
+ I Exec exec audtool playlist-reverse

DestroyFunc Music-Forward
AddToFunc Music-Forward
+ I Nop

DestroyFunc Music-Backward
AddToFunc Music-Backward
+ I Nop

DestroyFunc Music-ToggleRandom
AddToFunc Music-ToggleRandom
+ I Exec exec audtool playlist-shuffle-toggle

DestroyFunc Music-RemoveSong
AddToFunc Music-RemoveSong
+ I Exec exec audtool playlist-delete `audtool playlist-position`

DestroyFunc Music-GUI
AddToFunc Music-GUI
+ I All (audacious) Iconify toggle

DestroyFunc Music-Find
AddToFunc Music-Find
+ I Nop

# ---------------------------------------------------------------------------
# Playlist functions

DestroyMenu /Music/LoadPlaylist
AddToMenu /Music/LoadPlaylist
+ DynamicPopupAction Function /Music/LoadPlaylist-generator

DestroyFunc /Music/LoadPlaylist-generator
AddToFunc /Music/LoadPlaylist-generator
+ I DestroyMenu recreate /Music/LoadPlaylist
+ I AddToMenu /Music/LoadPlaylist
+ I PipeRead 'for i in $[Audacious-Playlists]/*.m3u $[Audacious-Playlists]/*.pls; do \
  name=$(basename "$i"); \
  sname=${name%%.m3u}; \
  sname=${sname%%.pls}; \
  echo \"AddToMenu /Music/LoadPlaylist \'$sname\' Exec exec audacious \'$i\'\"; done'

DestroyFunc Music-SavePlaylist
AddToFunc Music-SavePlaylist
+ I Exec exec mkdir -p $[Audacious-Playlists]
+ I Module FvwmForm Music-SavePlaylist-Dialog

All (Music-SavePlaylist-Dialog) Close
DestroyModuleConfig Music-SavePlaylist-Dialog: *
*Music-SavePlaylist-Dialog: Title "$[gt.Save playlist]"
*Music-SavePlaylist-Dialog: Text "$[gt.Name of the playlist]"
*Music-SavePlaylist-Dialog: Line center
*Music-SavePlaylist-Dialog: Input PlaylistName 40 ""
*Music-SavePlaylist-Dialog: Line center
*Music-SavePlaylist-Dialog: Line center
*Music-SavePlaylist-Dialog: Button quit " $[gt.Cancel] " ^[
*Music-SavePlaylist-Dialog: Command Nop
*Music-SavePlaylist-Dialog: Button quit " $[gt.Save] " ^M
*Music-SavePlaylist-Dialog: Command PipeRead 'numero=1; echo "#EXTM3U" > $[Audacious-Playlists]/$(PlaylistName).m3u; while [ $numero -le `audtool playlist-length` ]; do \
  echo "#EXTINF:-1,"`audtool playlist-song $numero` >> $[Audacious-Playlists]/$(PlaylistName).m3u; \
  audtool playlist-song-filename $numero >> $[Audacious-Playlists]/$(PlaylistName).m3u; \
  numero=`expr $numero + 1`; \
  done'
*Music-SavePlaylist-Dialog: Line center

DestroyFunc Music-ClearPlaylist
AddToFunc Music-ClearPlaylist
+ I Exec exec audtool playlist-clear

DestroyMenu /Music/RemovePlaylist
AddToMenu /Music/RemovePlaylist
+ DynamicPopupAction Function /Music/RemovePlaylist-generator

DestroyFunc /Music/RemovePlaylist-generator
AddToFunc /Music/RemovePlaylist-generator
+ I DestroyMenu recreate /Music/RemovePlaylist
+ I AddToMenu /Music/RemovePlaylist
+ I PipeRead 'for i in $[Audacious-Playlists]/*.m3u $[Audacious-Playlists]/*.pls; do \
  name=$(basename "$i"); \
  sname=${name%%.m3u}; \
  sname=${sname%%.pls}; \
  echo \"AddToMenu /Music/RemovePlaylist \'$sname\' Exec rm -f \'$i\'\"; done'

# vim:ft=fvwm