about summary refs log tree commit diff
path: root/configs/shared/.emacs.d/wpc/playback.el
blob: e7ad4b2481a41195bddaf64d125399fe6f07fb03 (plain) (blame)
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
;;; playback.el --- Control playback with Elisp -*- lexical-binding: t -*-
;; Author: William Carroll <wpcarro@gmail.com>

;;; Commentary:
;; As you know, my whole universe is turning Elisp, so this should too!

;;; Code:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Dependencies
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(require 'prelude)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Library
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(defun playback/prev ()
  "Move to the previous song."
  (interactive)
  (prelude/start-process
   :name "playback/prev"
   :command "playerctl previous"))

(defun playback/next ()
  "Move to the next song."
  (interactive)
  (prelude/start-process
   :name "playback/next"
   :command "playerctl next"))

(defun playback/play-pause ()
  "Play or pause the current song."
  (interactive)
  (prelude/start-process
   :name "playback/play-pause"
   :command "playerctl play-pause"))

(provide 'playback)
;;; playback.el ends here