diff -Nurd debian/asoundconf debian.new/asoundconf --- debian/asoundconf 2006-02-18 11:33:22.000000000 -0600 +++ debian.new/asoundconf 2006-02-18 11:35:04.000000000 -0600 @@ -33,6 +33,7 @@ asoundconf is-active asoundconf get|delete PARAMETER asoundconf set PARAMETER VALUE +asoundconf list ''' @@ -189,6 +190,22 @@ except IOError: return False +def list(): + '''Get card names from /proc/asound/cards''' + cardspath = "/proc/asound/cards" + if not os.path.exists(cardspath): + return False + procfile = open(cardspath,"rb") + cardline = re.compile('^\d+\s*\[') + card_lines = [] + lines = procfile.readlines() + for l in lines: + if cardline.match(l): + card_lines.append(re.sub(r'^\d+\s*\[(\w+)\s*\].+','\\1',l)) + print "Names of available sound cards:" + for cardname in card_lines: + print cardname.strip() + return True def delete(prmtr): '''Delete the given parameter. @@ -293,6 +310,9 @@ ## main ## +if sys.argv[1] == 'list': + exit_code(list()) + if len(sys.argv) < 2 or sys.argv[1] == '--help' or sys.argv[1] == '-h': help() sys.exit(0) diff -Nurd debian/asoundconf.1 debian.new/asoundconf.1 --- debian/asoundconf.1 2006-02-18 11:33:22.000000000 -0600 +++ debian.new/asoundconf.1 2006-02-18 11:35:05.000000000 -0600 @@ -7,6 +7,8 @@ \fBasoundconf\fR \fBget\fR|\fBdelete\fR \fIPARAMETER\fR .PP \fBasoundconf\fR \fBset\fR \fIPARAMETER\fR \fIVALUE\fR +.PP +\fBasoundconf\fR \fBlist\fR .SH DESCRIPTION .B asoundconf configures the ALSA library for the user.