Für Linux-Nutzer sind sie längst ein alter Hut, seit Windows 10 lassen sie sich nun auch unter Microsofts Betriebssystem nutzen. Virtuelle Desktops bringen Ordnung in das Fensterchaos, wenn selbst ein großer HD-Bildschirm zu klein ist, um noch die Übersicht zu behalten. Doch nicht nur für Bildschirmnutzer können virtuelle Arbeitsoberflächen nützlich sein, auch mit der Tastatur lassen sich auf diese Weise viele Programmfenster bequem organisieren. Ein Praxisbeispiel gefällig?
Bekanntlich stelle ich für meine Radiosendungen die Software selbst zusammen, und nutze keine überteuerten Streaming-Komplettlösungen. Was die Software einerseits zwar sehr preisgünstig macht, kann andererseits jedoch für weniger Nutzungskomfort und einen Wust an Programmen und Programmfenstern sorgen. Musik, Jingles, Werbung, Show-Recorder, Streamer, Browser; für jede Aufgabe muss ein eigenes Programm her, und wenigstens die Hälfte davon bringt ein eigenes Fenster mit. Als Tastaturnutzer gerät man da mal schnell ins Schleudern, wenn zwischen all diesen Programmen während einer Sendung umgeschaltet werden muss. Nutzer des Screen-Readers JAWS konnten sich bislang mit der in den Bildschirmleser integrierten Fensterliste behelfen, um gezielt die richtige Anwendung herauszusuchen. Neuerdings gibt es eine ähnliche Fensterliste aber auch als Windows-Feature. Sie ist mittels der Tastenkombination Windows+TAB erreichbar, und enthält ebenfalls eine Liste aller aktiven Programmfenster. Nicht enthalten sind solche Programme, die ihr Fenster über ein Infobereichssymbol minimiert haben, bzw. überhaupt keine Programmoberfläche mitbringen. Die Liste dieser Anwendungen lässt sich stattdessen wie üblich mit der Tastenkombination Windows+B aufrufen.
Zurück zur Liste der aktiven Anwendungen. Darüber kann die gewünschte Anwendung nämlich nicht nur aufgerufen werden, sondern lässt sich über das Kontextmenü auch beliebig auf dem aktuellen Desktop andocken oder auf einen anderen Desktop verschieben, sofern ein solcher angelegt wurde. Ein Druck auf TAB wechselt zwischen der Anwendungsliste und der Liste der virtuellen Desktops. Die Schaltfläche "Neuer Desktop" erstellt einen weiteren Desktop. Auf diese Weise lassen sich sämtliche geöffneten Programmfenster beliebig gruppieren. Anwendungen, die während einer Live-Sendung nur untergeordnete Bedeutung haben, wie etwa Recorder und Streamer, verschwinden also einfach aus dem Navigationsbereich.
Damit die Fenster tatsächlich bei der Tastaturnavigation verschwunden bleiben, sollten unter Einstellungen -> System -> Multitasking noch einige Werte geprüft werden:
- In der Taskleiste Fenster anzeigen, die geöffnet sind auf: Nur auf dem aktuell verwendeten Desktop
- Beim Drücken von ALT+TAB Fenster anzeigen, die geöffnet sind auf: Nur auf dem aktuell verwendeten Desktop
und schon herrscht Ordnung im Fenstergewirr. Mittels ALT+TAB bzw. Windows+TAB tauchen nur noch die Programme des aktuellen Desktops auf. Um schneller auf einen anderen Desktop zu gelangen, drückt man die Tastenkombination STRG+Windows+Pfeil links oder rechts. Danach sind die Programmfenster des zweiten Desktops wieder erreichbar, währenddessen die der anderen Desktops ausgeblendet bleiben.
Heute wurde Version 0.6.5 des Markdown-CMS Yellow freigegeben. Wie üblich sind die Release-Notes für Yellow auch diesmal nicht sehr gesprächig. Der knappe Hinweis "Better Installation" bedeutet aber in der Tat eine enorme Verbesserung beim Installieren des Grundsystems sowie der mittlerweile rund 50 verfügbaren Plugins.
Musste man früher beim Installieren eines Plugins jede Datei von Hand in die dafür vorgesehenen Verzeichnisse kopieren, genügt es jetzt, das Zip-Archiv des entsprechenden Plugins von GitHub herunterzuladen und in den Ordner system/plugins
zu kopieren. Ruft man danach die Webseite auf, wird das Archiv automatisch entpackt und alle notwendigen Dateien werden in ihre jeweiligen Verzeichnisse geschoben. Plugin-Entwickler müssen ihren Projekten dazu lediglich eine Datei mit dem Namen update.ini hinzufügen, in welcher die Anweisungen zum Installieren (create) und/oder aktualisieren (update) für jede Plugin-Datei notiert werden. Ein Überschreiben vorhandener und vom Benutzer angepasster Template- oder Theme-Dateien kann auf diese Weise vermieden werden, sofern sie in den Update-Anweisungen nicht für ein Update vorgemerkt wurden.
Auch die Installation des Grundsystems wurde mittlerweile überarbeitet. So lassen sich bei Einsatz des Webinterface-Plugins nun bequem im Browser die Benutzerzugänge einrichten und verwalten, wofür man vorher die Kommandozeile bemühen musste. Wer das Webinterface nicht nutzen möchte, kann es natürlich auch einfach löschen und wie gewohnt seine Dateien per FTP verwalten. Des Weiteren gab es kleinere Veränderungen im Aufbau der Themes; der Ordner system/themes/assets
enthält jetzt Grafiken und sonstige Theme-Bestandteile, um sie logischer vom Rest des Codes zu trennen.
Wer von einer älteren Yellow-Version aktualisieren möchte, findet alle nötigen Anweisungen in diesem Issue auf GitHub. Ist zum Aktualisieren der Plugins kein Shellzugriff auf dem Server vorhanden, können natürlich auch die Dateien händisch aktualisiert werden.
Für das Markdown-CMS Yellow habe ich soeben mein zweites, bescheidenes Plugin veröffentlicht. Das Audio-Plugin implementiert einen simplen HTML5-Audioplayer, welcher ausschließlich auf dem HTML5-Audio-Tag basiert. Ein Flash-Fallback für ältere Browser wird nicht angeboten, dafür kann optional für die abzuspielende Datei ein Download-Link aktiviert werden. Das Plugin wandelt den HTML5-Audio-Tag in einen Shortcut um, der sich auch im Safe-Mode des Markdown-Parsers verwenden lässt:
[audio http://audio.url 1]
Es gibt also nur zwei Parameter, die URL zur Audiodatei sowie das Einschalten des Download-Fallbacks. Wird der zweite Parameter weggelassen, ist kein Download möglich. Der Download-Link wird nur dann angezeigt, wenn der Browser das Audio-Tag nicht unterstützt.
Ein ähnliches Plugin existierte bereits, jedoch wollte ich eine etwas einfachere Lösung haben, die Dateien nicht nur vom eigenen Webserver in einer Playlist abspielen kann, sondern von beliebiger Quelle, also auch Stream-Adressen.
Fernsehen unter Linux ist echt eine Wissenschaft für sich, aber ich wollte es mal wagen. Zum Einsatz kommt ein von Windows 10 befreiter MSI Cubi N sowie eine DVBSky S960 für den Satellitenempfang. Da ich den Rechner nicht ausschließlich zum Fernsehempfang benutze, habe ich mich für ein normales Debian Jessie entschieden, auch der für blinde Nutzer vollständig zugänglichen Installation wegen. Vielleicht werde ich es irgendwann auch noch mal mit einem meiner momentan arbeitslosen Raspberrys versuchen. Das System war binnen kurzer Zeit eingerichtet, wobei ich es mit einigen Backport-Paketen nachrüsten musste, da es z. B. Treiberprobleme und Anzeigeschwierigkeiten im X-Server gab. Auch die Firmware für die DVBSky-Box musste händisch nachinstalliert werden. Hier habe ich mich am OpenELEC-Firmware-Repository bedient und die Dateien dvb-demod-m88ds3103.fw sowie dvb-demod-m88rs6000.fw nach /lib/firmware kopiert. Zwar werden vom Hersteller ebenfalls Linux-Treiber angeboten, diese müssen jedoch selbst kompliliert werden, sofern ich die eher dürftige Dokumentation richtig verstanden habe.
Kleiner Tipp am Rande: Fehlende Firmware-Module lassen sich sehr bequem mittels Isenkram herausfinden und unter Umständen sogar automatisch nachinstallieren, sofern es sich nicht um proprietäre Software aus non-free oder von Drittanbietern handelt. Isenkram ist in den Debian-Paketquellen zu bekommen.
Die DVBSky-Box funktionierte problemlos, was ich mit einer hoffnungslos veralteten, aber zum Teil noch funktionierenden Channels.conf herausfinden konnte (Kann sich noch jemand an TM3 oder das ORB-Fernsehen erinnern?). Eine eigene Channels.conf zu erstellen schlug jedoch zunächst fehl:
steffen@Steffen-TV:~$ scan /usr/share/dvb/dvb-s/Astra-19.2E > ./channels.conf
scanning /usr/share/dvb/dvb-s/Astra-19.2E using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
ERROR: cannot parse'[CHANNEL]'
ERROR: cannot parse' DELIVERY_SYSTEM = DVBS'
ERROR: cannot parse' FREQUENCY = 12551500'
ERROR: cannot parse' POLARIZATION = VERTICAL'
ERROR: cannot parse' SYMBOL_RATE = 22000000'
ERROR: cannot parse' INNER_FEC = 5/6'
ERROR: cannot parse' INVERSION = AUTO'
ERROR: initial tuning failed
dumping lists (0 services)
Done.
Eine Suche nach Möglichkeiten, diesen Fehler zu beheben, brachte wenig Resultate, bis auf den Tipp, es doch mal mit W Scan zu versuchen. Hier ist die Syntax zwar etwas komplexer, jedoch funktionierte der Sendersuchlauf auf Anhieb.
w_scan -fs -s S19E2 -E0 -X > channels.conf
Dieser Befehl startet einen Suchlauf nach allen frei empfangbaren Radio- und Fernsehprogrammen auf der Satellitenposition Astra 19,2° Ost, und gibt sie in einer Channels.conf-Datei aus, welche sich z. B. in Me TV, MPlayer oder jedem beliebigen Xine-Frontend nutzen lässt. Die Liste sollte jedoch zunächst sortiert werden, da sie sonst ziemlich unübersichtlich wirkt.
Als Nächstes werde ich verschiedene Programme für den Fernsehempfang austesten. Eine ähnlich komfortable Software, die es mit DVBViewer unter Windows aufnehmen kann, darf ich wahrscheinlich nicht erwarten, auch was die Einrichtung angeht. Derzeit nutze ich Me TV, was aber schon seit mehreren Jahren nicht mehr weiterentwickelt wird, bisher allerdings am unproblematischsten einzurichten war und sich auf die grundlegenden Dinge des Fernsehvergnügens beschränkt. Durch die Senderliste blättern, hin und wieder eine Aufnahme anfertigen. Auch spielt hier natürlich die Zugänglichkeit mit Orca eine große Rolle, was bei eher visuell orientierten Tools nicht immer selbstverständlich ist. Was müssen diese Blinden aber auch Fernseh gucken? :)
Wer für Android noch nach einem brauchbaren Microblogging-Client sucht, dem kann ich nach ersten Tests AndStatus als eine quelloffene und werbefreie App empfehlen. Der Client beherrscht sowohl Twitter, als auch diverse andere Microblogging-Dienste, darunter Status.net. Man kann ihn gratis entweder im Playstore oder via F-Droid herunterladen.
Nach der Installation hat man die Wahl, ein neues Konto zu verknüpfen oder eine Sicherung wiederherzustellen. Die Einrichtung mit Twitter funktioniert gewohnt einfach, es muss nur die App genehmigt werden. Danach kann es auch schon losgehen. Sämtliche Nachrichten aus allen verknüpften Konten werden in einer einzigen Timeline angezeigt, wobei sich die Nachrichten natürlich trotzdem zuordnen lassen. Für Erwähnungen, Direktnachrichten, Favoriten usw. gibt es separate Zeitleisten, die sich per Tipp auf den Namen der aktuellen Zeitleiste aus einem Menü wählen lassen. Eine umfangreiche Einstellungsseite erlaubt es, das Verhalten des Clients seinen Bedürfnissen anzupassen.
AndStatus zielt darauf ab, möglichst wenig Traffic zu verursachen. Wer die App mit Twitter nutzt, muss daher auf die Streaming-API verzichten, bekommt also die Nachrichten nicht in Echtzeit zugestellt. Das Synchronisierungsintervall lässt sich jedoch auf 3 Minuten herabsetzen, ein niedrigeres Intervall wird von Twitter nicht unterstützt.
Auch für Talkback-Nutzer ist AndStatus sehr gut zugänglich. Sämtliche Buttons sind mit Alternativtexten beschriftet und lassen sich durch die bekannten Wisch- und Doppeltipp-Gesten ansteuern. Dadurch, dass immer nur eine Zeitleiste angezeigt wird, bleibt der Bildschirm stets sehr übersichtlich. Die Anzeige der Nachrichten erfolgt mit den neuesten Einträgen ganz oben, allerdings befindet man sich bei neu geöffneten Zeitleisten zunächst ganz am Ende der Liste, also bei den ältesten Einträgen. Wer zu den neuesten Einträgen springen möchte, muss jedoch nicht umständlich scrollen, sondern kann links oben über die "Nach oben"-Schaltfläche ein Menü öffnen, und dort auf "Nach oben springen" tippen. Eine Option, die Zeitleiste umzukehren, wäre speziell in Konversationen dennoch wünschenswert.
Artikel-Feed (RSS)