完成后将Eclipse配置为Beep(Python,Linux)

时间:2011-01-03 10:04:05

标签: python linux eclipse audio pydev

我完成后将我的应用程序配置为发出蜂鸣声(帮助我长时间执行多任务)。 在Windows上很简单:

def beep_please():
    """Beep on Windows"""
    if os.name == 'nt':
        import winsound #@UnresolvedImport
        winsound.MessageBeep(winsound.MB_ICONEXCLAMATION)

import atexit
atexit.register(beep_please)

问题是我最近切换到Linux并且简单的哔声不起作用。 打印'\a'也不起作用。 帮助

2 个答案:

答案 0 :(得分:0)

尝试sys.stdout.write('\007')代替print '\a'

答案 1 :(得分:0)

根本原因是大多数现代Linux发行版都会关闭恼人的默认“嘟嘟”声 潜在的解决方案是使用pygame,或直接使用已安装的“播放器”之一。

使用Pygame看起来像这样:

import pygame

pygame.init()
pygame.mixer.music.load("my_sound_file.ogg")
pygame.mixer.music.play()
pygame.event.wait()

但是为了非运行时实用程序,我不想要新的外部依赖,所以我最终做的是:

import os
os.system("/usr/bin/canberra-gtk-play --id='system-ready'")

Ubuntu主题中还有很多其他声音文件:

ls /usr/share/sounds/ubuntu/stereo