Index: README ================================================================== --- README +++ README @@ -102,10 +102,12 @@ - added [new] button in streamedit window - prepared remaining print syntax for python3 (still needs 2to3 though) - fix for https://bugzilla.redhat.com/show_bug.cgi?id=655596 array error - transitioned glade file to gtk.Builder, just a few things broke - made configuration window resizable +- locked station list columns, no longer resortable (associatation mismatch) +- applied Vincents fixed for Windows action.run and Shoutcast PQ parsing - 2.0.8 - configuration files use prettified json Index: _package.epm ================================================================== --- _package.epm +++ _package.epm @@ -159,10 +159,11 @@ #-- windows %system win32 %description Windows version gets no love, nor support. %description It requires manual installation of Python 2.6 and Gtk+ and Pygtk.org libraries first. +f 644 root root /usr/bin/streamtuner2.lnk ./streamtuner2.lnk f 644 root root /usr/share/applications/streamtuner2.lnk ./streamtuner2.lnk %shortcut $desktop$\streamtuner2.lnk|/usr/share/applications/streamtuner2.lnk %homepage http://streamtuner2.sourceforge.net/ @@ -176,15 +177,15 @@ %requires python-lxml %requires python-imaging %requires python-pyquery %requires python-keybinder %requires python-gtk2 -%requires python-glade2 +# %requires python-glade2 # %requires python-httplib2 # %requires python-json # %requires python-xdg # %requires python-xdgapp %format rpm %requires pygtk # %requires pyxdg # RPM package names are weirder, and there's no comprehensive list of them (Suse and Fedora depart anyway) Index: channels/shoutcast.py ================================================================== --- channels/shoutcast.py +++ channels/shoutcast.py @@ -112,31 +112,19 @@ if (not cat or cat == self.empty): __print__("nocat") return [] ucat = urllib.quote(cat) - - - # new extraction regex - if not conf.get("pyquery") or not pq: - rx_stream = re.compile(""" - ]+id="(\d+)".+? - ]+href="(http://[^">]+)"[^>]*>([^<>]+).+? - (?:Recently\s*played|Coming\s*soon|Now\s*playing):\s*([^<]*).+? - ners">(\d*)<.+? - bitrate">(\d*)<.+? - type">([MP3AAC]*) - """, re.S|re.I|re.X) - rx_next = re.compile("""onclick="showMoreGenre""") - # loop entries = [] next = 0 max = int(conf.max_streams) count = max + rx_stream = None + rx_next = re.compile("""onclick="showMoreGenre""") while (next < max): # page url = "http://www.shoutcast.com/genre-ajax/" + ucat referer = url.replace("/genre-ajax", "/radio") @@ -146,15 +134,29 @@ __print__(html) # regular expressions if not conf.get("pyquery") or not pq: + # new extraction regex + if not rx_stream: + rx_stream = re.compile( + """ + ]+id="(\d+)".+? + ]+href="(http://[^">]+)"[^>]*>([^<>]+).+? + (?:Recently\s*played|Coming\s*soon|Now\s*playing):\s*([^<]*).+? + ners">(\d*)<.+? + bitrate">(\d*)<.+? + type">([MP3AAC]*) + """, + re.S|re.I|re.X + ) + # extract entries self.parent.status("parsing document...") __print__("loop-rx") - for uu in rx_stream.findall(html): - (id, homepage, title, playing, ls, bit, fmt) = uu + for m in rx_stream.findall(html): + (id, homepage, title, playing, ls, bit, fmt) = m __print__(uu) entries += [{ "title": self.entity_decode(title), "url": "http://yp.shoutcast.com/sbin/tunein-station.pls?id=" + id, "homepage": http.fix_url(homepage), Index: st2.py ================================================================== --- st2.py +++ st2.py @@ -206,10 +206,12 @@ "bookmark": self.bookmark, "save_as": self.save_as, "menu_about": lambda w: AboutStreamtuner2(), "menu_help": action.action.help, "menu_onlineforum": lambda w: action.browser("http://sourceforge.net/projects/streamtuner2/forums/forum/1173108"), + "menu_fossilwiki": lambda w: action.browser("http://fossil.include-once.org/streamtuner2/"), + "menu_projhomepage": lambda w: action.browser("http://milki.include-once.org/streamtuner2/"), # "menu_bugreport": lambda w: BugReport(), "menu_copy": self.menu_copy, "delete_entry": self.delete_entry, "quicksearch_set": search.quicksearch_set, "search_open": search.menu_search, Index: ui.xml ================================================================== --- ui.xml +++ ui.xml @@ -672,10 +672,55 @@ timer_cancel timer_ok + + + False + + + True + False + + + True + False + http://sourceforge.net/projects/streamtuner2/forums/forum/1173108 + + + True + True + 0 + + + + + True + False + http://fossil.include-once.org/streamtuner2/ + + + True + True + 1 + + + + + True + False + http://milki.include-once.org/streamtuner2/ + + + True + True + 2 + + + + 565 False streamtuner settings @@ -1051,11 +1096,11 @@ True False placeholder -<a href="file:///usr/share/doc/streamtuner2/help/configuration.page">see help</a> +<a href="http://fossil.include-once.org/streamtuner2/wiki?name=player">see help</a> True 7 8 @@ -2282,11 +2327,11 @@ True False - + True False True @@ -2303,12 +2348,12 @@ True False False bookmark True - + @@ -2316,12 +2361,12 @@ True False False True True - + @@ -2329,13 +2374,13 @@ True False False True True - + - + @@ -2409,12 +2454,12 @@ True False False True True - + @@ -2639,10 +2684,20 @@ online forum True + + + True + False + False + wiki/fossil/bugs + True + + + gtk-about True False