xkcd kommt zurück auf den KDE Desktop [Update]

01.04.2015 19:46 von /cbx, derzeit 2.62491 Kommentare

Send to Kindle

Was war das für ein Drama! Seit Anfang dem Wochenende herrschte im xkcd Comic-Widget auf meinem KDE-4 Desktop gähnende Leere! Und – es tut mir leid, aber – ich kann so nicht arbeiten!

Diesmal half auch die vielgerühmte Community (→“xkcd comic plasmoid broken”) nicht weiter, sodass ich mich heute Mittag glatt genötigt sah, den zweiten Vorteil freier Software zu nutzen und glatt persönlich Hand anzulegen. Das hätte mich dann auch glatt 15 Minuten meiner fürstlich entlohnten Arbeitszeit gekostet, wenn ich es eben nicht in der Pause gemacht hätte. Denn – wie so oft bei diesen kleine Tools, die sich mehr oder weniger inoffiziell Daten aus Websites besorgen – hatte sich bei xkcd.com der URL des Bildes geringfügig geändert, sodass die ausgefeilten regulären Ausdrücke ins Leere liefen. So ganz en passant konnte ich dann auch noch ein Problem im Originalcode fixen, wodurch ein leeres Tag zum Ausfall der gesamten RegExp führte…

Mit diesem von Meisterhand liebevoll modifizierten Code der Datei ~/.kde4/share/apps/plasma/comics/xkcd/contents/code/main.es klappt dann wieder alles:


/* * Copyright © 2007 Tobias Koenig <tokoe@kde.org> * Copyright © 2009 Matthias Fuchs <mat69@gmx.net> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Library General Public License version 2 as * published by the Free Software Foundation * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details * * You should have received a copy of the GNU Library General Public * License along with this program; if not, write to the * Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */

function init()
{ comic.comicAuthor = "Randall Munroe"; comic.websiteUrl = "http://xkcd.com/"; comic.shopUrl = "http://store.xkcd.com/"; comic.requestPage(comic.websiteUrl, comic.User);
}
function pageRetrieved(id, data)
{ //find the most recent strip if (id == comic.User) { var re = new RegExp("Permanent link to this comic: http://xkcd.com/(\\d+)/"); var match = re.exec(data); if ( match != null ) { comic.lastIdentifier = match[1]; comic.websiteUrl += comic.identifier + "/"; comic.requestPage(comic.websiteUrl, comic.Page); } else { comic.error(); } } if (id == comic.Page) { var re = new RegExp("<img src=\"(//imgs\.xkcd\.com/comics/[^\"]+)\""); var match = re.exec(data); if (match != null) { comic.requestPage("http:" + match[1], comic.Image); } else { comic.error(); return; } //find the tooltip and the strip title of the comic re = new RegExp("<img src=\"(//imgs\.xkcd\.com/comics/[^\"]+)\" title=\"([^\"]+)\""); match = re.exec(data); if (match != null) { comic.additionalText = match[2]; } re = new RegExp("<img src=\"(//imgs\.xkcd\.com/comics/[^\"]+)\".+alt=\"([^\"]+)\""); match = re.exec(data); if (match != null) { comic.title = match[2]; } }
}

Diesen Triumph möchte ich natürlich nicht ungeteilt wissen. Seid umschlungen, Melonen…

Update: Matthias Fuchs hat den Patch inzwischen aufgegriffen…

/cbx, Kategorie: Linux LeidenSchaf(f)t -

 

Eigener Senf dazu?

  1. The Angry Nerd gab am 2. April 2015, 20:19 folgenden Senf dazu:

    Ich hoffe doch, dass Du auch gleich noch einen Pullrequest an den Maintainer geschickt hast, damit der Rest der Welt Deine Freude teilen kann.

    Aber dieses Widget lässt mich wieder darüber nachdenken, vielleicht doch endlich Linux auf dem Desktop zu nutzen. Unter Windows habe ich das nicht und OS X hat das auch nicht…

    /cbx meint dazu:

    Ich habe den Patch natürlich auch bei OpenDesktop gepostet. Ob er da allerdings irgendwelche Rezipienten finde, ist genauso fraglich...

    Und zu Linux am Desktop: Lass es bleiben. Ich habe diese Woche eine Win7 Workstation für die Konstruktion installiert und muss feststellen, dass mal als linuxverseuchter Depp keine Chance mehr hat, die Einfachheit, Schönheit, Stringenz und logische Eleganz von Windows zu erkennen. Ich stand sowas von im Wald....

  2. The Angry Nerd gab am 3. April 2015, 21:08 folgenden Senf dazu:

    Stringenz und logische Eleganz? Windows?
    HAHAHA! Der war gut!

    Dass Du Dir aber wie ein Depp vorkommst, wenn Du mit dem Zeug normalerweise nichts zu tun hast ist normal. Frag mich mal, wie meine erste Begegnung mit einem Mac war. Das “@” zu finden geht ja noch. Aber auf solche Dinge wie “mit gedrückter Optionstaste auf ‘skaliert’ klicken”, um alle Auflösungen für einen Monitor zu sehen, kommt keine Sau.

    Ich hätte ja gerne ein Video davon, wie Du zum ersten Mal ein Windows 8 (nicht 8.1) System versuchst herunter zu fahren. Ich habe es leider verpasst mich selbst dabei aufzunehmen, aber wenn jemand dabei gewesen wäre, wäre die Tonspur sicher voll mit Gekicher.

    Deshalb glaube ich ja, dass Linux so schlimm gar nicht sein kann. An ewige Fummelei mit irgendwelchen Konfigurationsdateien bin ich längst gewöhnt und am Ende ist jede Fensterumgebung voll mit ihren ganz eigenen, kruden Idiosynkrasien.

    /cbx meint dazu:

    Hm, ja, Windows 8 (auf meinen Notebooks), das war noch mal ein ganz neues Erlebnis. Von wegen - Windows ist was für Leute, de nix mehr dazulernen wollen...

    Ansonsten - meine Kollegen beschweren sich kaum über den KDE-Desktop. Vermutlich auch, weil die ganze Config-File-Frickelei eh allein mein Geschäft ist.

Kommentarfunktion für diesen Artikel geschlossen.