@@ -20,59 +20,35 @@ let s:plugin_root_dir = fnamemodify(resolve(expand('<sfile>:p:h')), ':h')
20
20
" *************************************************************************** "
21
21
22
22
fu ! s: GetActivePlayersCmd ()
23
- return s: plugin_root_dir . ' /dbus/get_active_players'
23
+ return s: plugin_root_dir . " /dbus/get_active_players"
24
24
endfu
25
25
26
- fu ! s: GetArtistCmd (player)
27
- return s: plugin_root_dir . ' /dbus/get_metadata ' . a: player . " Artist "
26
+ fu ! s: GetMetadataCmd (player, attribute )
27
+ return s: plugin_root_dir . " /dbus/get_metadata " . a: player . " " . a: attribute
28
28
endfu
29
29
30
- fu ! s: GetTitleCmd (player)
31
- return s: plugin_root_dir . ' /dbus/get_metadata ' . a: player . " Title"
32
- endfu
33
-
34
- fu ! s: GetPositionCmd (player)
35
- return s: plugin_root_dir . ' /dbus/get_property ' . a: player . ' Position'
36
- endfu
37
-
38
- fu ! s: GetShuffleCmd (player)
39
- return s: plugin_root_dir . ' /dbus/get_property ' . a: player . ' Shuffle'
40
- endfu
41
-
42
- fu ! s: GetVolumeCmd (player)
43
- return s: plugin_root_dir . ' /dbus/get_property ' . a: player . ' Volume'
30
+ fu ! s: GetPropertyCmd (player, property)
31
+ return s: plugin_root_dir . " /dbus/get_property " . a: player . " " . a: property
44
32
endfu
45
33
46
34
fu ! s: SetVolumeCmd (player, volume)
47
- return s: plugin_root_dir . ' /dbus/set_property ' . a: player . ' Volume double ' . string (a: volume )
35
+ return s: plugin_root_dir . " /dbus/set_property " . a: player . " Volume double " . string (a: volume )
48
36
endfu
49
37
50
38
fu ! s: SetShuffleCmd (player, shuffle_status)
51
- return s: plugin_root_dir . ' /dbus/set_property ' . a: player . ' Shuffle boolean ' . a: shuffle_status
52
- endfu
53
-
54
- fu ! s: PlayCmd (player)
55
- return s: plugin_root_dir . ' /dbus/control_playback ' . a: player . ' Play'
56
- endfu
57
-
58
- fu ! s: PauseCmd (player)
59
- return s: plugin_root_dir . ' /dbus/control_playback ' . a: player . ' Pause'
60
- endfu
61
-
62
- fu ! s: NextCmd (player)
63
- return s: plugin_root_dir . ' /dbus/control_playback ' . a: player . ' Next'
39
+ return s: plugin_root_dir . " /dbus/set_property " . a: player . " Shuffle boolean " . a: shuffle_status
64
40
endfu
65
41
66
- fu ! s: PreviousCmd (player)
67
- return s: plugin_root_dir . ' /dbus/control_playback ' . a: player . ' Previous '
42
+ fu ! s: ControlPlaybackCmd (player, action )
43
+ return s: plugin_root_dir . " /dbus/control_playback " . a: player . " " . a: action
68
44
endfu
69
45
70
46
fu ! s: SeekCmd (player, duration)
71
- return s: plugin_root_dir . ' /dbus/seek ' . a: player . ' ' . a: duration
47
+ return s: plugin_root_dir . " /dbus/seek " . a: player . " " . a: duration
72
48
endfu
73
49
74
50
fu ! s: QuitCmd (player)
75
- return s: plugin_root_dir . ' /dbus/quit ' . a: player
51
+ return s: plugin_root_dir . " /dbus/quit " . a: player
76
52
endfu
77
53
78
54
" *************************************************************************** "
@@ -86,7 +62,7 @@ fu! s:SetPlayerCallback(channel, msg)
86
62
endif
87
63
endfor
88
64
89
- call job_start (s: GetVolumeCmd (s: selected_player ), {" out_cb" : function (" s:GetVolumeCallback" )})
65
+ call job_start (s: GetPropertyCmd (s: selected_player, " Volume " ), {" out_cb" : function (" s:GetVolumeCallback" )})
90
66
endfu
91
67
92
68
fu ! s: GetPositionCallback (channel, msg)
113
89
fu ! s: PlayCallback (channel, msg)
114
90
call s: PauseAllPlayers (a: msg )
115
91
sleep 5 m
116
- call job_start (s: PlayCmd (s: selected_player ))
92
+ call job_start (s: ControlPlaybackCmd (s: selected_player, " Play " ))
117
93
endfu
118
94
119
95
fu ! s: PauseAllCallback (channel, msg)
@@ -178,9 +154,9 @@ fu! s:Refresh(timer)
178
154
return
179
155
endif
180
156
181
- call job_start (s: GetPositionCmd (s: selected_player ), {" out_cb" : function (" s:GetPositionCallback" )})
182
- call job_start (s: GetTitleCmd (s: selected_player ), {" out_cb" : function (" s:GetTitleCallback" )})
183
- call job_start (s: GetArtistCmd (s: selected_player ), {" out_cb" : function (" s:GetArtistCallback" )})
157
+ call job_start (s: GetPropertyCmd (s: selected_player, " Position " ), {" out_cb" : function (" s:GetPositionCallback" )})
158
+ call job_start (s: GetMetadataCmd (s: selected_player, " Title " ), {" out_cb" : function (" s:GetTitleCallback" )})
159
+ call job_start (s: GetMetadataCmd (s: selected_player, " Artist " ), {" out_cb" : function (" s:GetArtistCallback" )})
184
160
endfu
185
161
186
162
fu ! NowPlayingText ()
@@ -243,7 +219,7 @@ let s:toggle_volume_options = [s:toggle_volume_opt_up, s:toggle_volume_opt_down,
243
219
244
220
fu ! s: PauseAllPlayers (players_str)
245
221
for player in split (a: players_str , " ," )
246
- call job_start (s: PauseCmd (player))
222
+ call job_start (s: ControlPlaybackCmd (player, " Pause " ))
247
223
endfor
248
224
endfu
249
225
@@ -252,19 +228,19 @@ fu! s:Play() abort
252
228
endfu
253
229
254
230
fu ! s: Pause () abort
255
- call job_start (s: PauseCmd (s: selected_player ))
231
+ call job_start (s: ControlPlaybackCmd (s: selected_player, " Pause " ))
256
232
endfu
257
233
258
234
fu ! s: PauseAll () abort
259
235
call job_start (s: GetActivePlayersCmd (), {" out_cb" : function (" s:PauseAllCallback" )})
260
236
endfu
261
237
262
238
fu ! s: Skip () abort
263
- call job_start (s: NextCmd (s: selected_player ))
239
+ call job_start (s: ControlPlaybackCmd (s: selected_player, " Next " ))
264
240
endfu
265
241
266
242
fu ! s: Previous () abort
267
- call job_start (s: PreviousCmd (s: selected_player ))
243
+ call job_start (s: ControlPlaybackCmd (s: selected_player, " Previous " ))
268
244
endfu
269
245
270
246
fu ! s: Seek (duration_seconds) abort
@@ -273,7 +249,7 @@ fu! s:Seek(duration_seconds) abort
273
249
endfu
274
250
275
251
fu ! s: Shuffle () abort
276
- call job_start (s: GetShuffleCmd (s: selected_player ), {" out_cb" : function (" s:ShuffleCallback" )})
252
+ call job_start (s: GetPropertyCmd (s: selected_player, " Shuffle " ), {" out_cb" : function (" s:ShuffleCallback" )})
277
253
endfu
278
254
279
255
fu ! s: ActivePlayer () abort
0 commit comments