2

The default "bell.wav" sound file included in the org-pomodoro package that plays when an interval is concluded is much louder than other sounds on my computer. I'm trying to figure out how to change it by running M-x customize-group > org-pomodoro and then customizing Org Pomodoro Finished Sound Args. The problem is I'm not sure what kind of arguments this setting accepts.

I'm on macOS and, according to the Org Pomodoro Audio Player setting, using afplay. Entering afplay -h in Terminal tells me -v controls volume. But when I enter -v 0.5 and choose Set for Current Session, I get back Junk at end of expression: 0.5. Doing the same with square brackets seemed successful until the interval is about to run out, at which point it freezes while displaying an error message about the ticking sound.

I've also used C-h v, but nothing in "org-pomodoro.el" appears helpful.

I could just reduce the WAV file volume but I'm more interested in knowing how to go about finding the arguments that work here. Maybe they're not specific to the audio player or maybe I don't know how to format them. Most of the settings I've changed so far have been binary.

I'm not a programmer, so I may be overlooking something obvious. Thanks!

1 Answer 1

3

Looks to me like org-pomodoro has a minor bug. It tells the Customization system that it wants that variable to be a string, but gives it a default value of nil. The type declaration should probably be changed, and the author will probably make that change if you let them know about it.

In the mean time, enter the string with double–quotes around it, like this: "-v 0.5". This is necessary because Customize defaults to taking input as an arbitrary lisp expression in this case.

Or you could edit org-pomodoro.el. Find the defcustom for the org-pomodoro-finished-sound-args variable and replace it with this:

(defcustom org-pomodoro-finished-sound-args nil
  "Arguments used when playing the `org-pomodoro-finished-sound'."
  :group 'org-pomodoro
  :type '(choice (const :tag "No arguments" nil)
                 string))

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.