Skip navigation.

Fredo's Blog

Humanities, Social Sciences and Free Software

Posts tagged with "OpenSource"

… wo sind all die Icons hin?

, ,

Auf bejonet ist heute zu lesen, wie man über einen Einstellungsdialog die Symbole in den Menüs wieder aktivieren kann. Der Hintergrund ist eine Entscheidung der GNOME-Entwickler, Icons aus den Menüs und von Schaltflächen zu entfernen. Damit will man sich aufgeräumter präsentieren und die Oberfläche beschleunigen.

Prinzipiell bin ich ja offen für neues, und habe es auch erst einmal ohne die Menü-Icons ausprobiert. Aber ich finde es in vielen Fällen schon unpraktisch. Visuell orientiert man sich nun mal wesentlich schneller.


Eigentlich noch störender finde ich aber, dass auch die Buttons keine Icons mehr anzeigen. So ist ein typischer Einrichtungsassistent mit Schaltflächen für „Vor“ und „Zurück“ ohne die Pfeilbuttons irgendwie witzlos. Genauso finde ich es bei den Warndialogen beim Schließen ungespeicherter Dokumente sehr hilfreich, wenn „Schließen, ohne zu Speichern“, „Abbrechen“ und „Speichern“ durch entsprechende Symbole unterstützt werden (und noch besser wäre es, wenn das Humanity-Icon-Theme nicht die alten Fehler von Tango wiederholen würde).

Auch dies kann man rückgängig machen, allerdings ist die Option hierzu nur über den Konfigurationseditor (gconf-editor) erreichbar. Der betreffende Schlüssel heißt /desktop/gnome/interface/buttons_have_icons. Das Problem wird allerdings auf Dauer so nicht zu lösen sein: Wenn die Symbole in den Standardeinstellungen nicht angezeigt werden, werden vermutlich die Anwendungsentwickler auch weniger darauf achten, Symbole zu ihren Anwendungen hinzuzufügen.

Aber wichtiger als die Entscheidung der GNOME-Entwickler finde ich die Frage, wie diese Entscheidung evaluiert wird. Wird es Usability-Tests geben, die den Sinn dieser Änderung überprüfen? Wird das Feedback der User eingeholt werden? Natürlich ist es immer schwierig, gegen die alten Gewohnheiten anzukommen. Deswegen bin ich auch gerne bereit, mich überzeugen zu lassen, dass ich mich nur etwas umgewöhnen muss. Aber bei einer so weitreichenden Änderung würde ich es schon begrüßen, wenn der Wert dieser Änderung auch überprüft wird.

Ich bin auf jeden Fall gespannt, wie die Diskussion weitergehen wird.

Notify-OSD revisited

, ,

Vor Kurzem hat martingr für Ikhaya einen Artikel zu Kubuntu und Notify-OSD geschrieben. Darin beleuchtet er Nachteile von Ubuntus Notify-OSD gegenüber KNotify. Die Integration von Notify-OSD in KDE sei daher ein Rückschritt gegenüber den Fähigkeiten, die KDE von Haus aus mitbringt.

Die Situation in KDE kann ich als GNOME-Nutzer gar nicht beurteilen. Aber auch der Einzug von Notify-OSD in GNOME, das mit notification-daemon ja ebenfalls ein eigenes Benachrichtigungssystem hat, sorgte für einige Diskussionen. Wie so oft ist vieles natürlich Ansichtssache, und einige Positionen lassen sich auch nicht miteinander in Einklang bringen. Um den Meinungsbildungsprozess ein bisschen ausgewogener zu gestalten, möchte ich an dieser Stelle einmal ein paar Argumente pro Notify-OSD anführen.

Dass ich dabei Martins Ausführungen zum Anlass nehme, soll dabei nicht heißen, dass ich seine Position für falsch halte. Aber in der Gegenüberstellung von Argument und Gegenargument lassen sich vielleicht einige Punkte verdeutlichen.

Argument 1: Für Notify-OSD müssen bestehende Anwendungen gepatcht werden.



Martin schreibt über die GNOME-Version von Notify-OSD:

Für die GNOME Implementierung müssen die existierenden Anwendungen angepasst werden.


Das Argument scheint auf den ersten Blick schwer zu entkräften, schaut man sich die lange Liste von Anwendungen an, die noch gepatcht werden müssten, um mit Notify-OSD kompatibel zu sein.

Wozu genau sind aber diese Anpassungen notwendig? Es geht, wie auch Martin schreibt, darum, dass Notify-OSD keine Actions unterstützt, also in die Benachrichtigung eingebettete Buttons. Ist damit nicht Notify-OSD unvollständig, und sollte nicht lieber dieser Bug in Notify-OSD behoben werden, anstatt alle Anwendungen anzupassen? An dieser Stelle kommen Standards und desktopübergreifende Spezifikationen ins Spiel: notification-daemon und KNotify implementieren eine Spezifikation des Galago-Projekts. Das ist auch sehr nützlich, denn so funktionieren Benachrichtigungen unabhängig vom Desktop.

Warum implementiert Notify-OSD diese Spezifikation dann nicht? Denn offenbar ist Notify-OSD ja umständlicher als die bisherigen Systeme. Der Eindruck entsteht zumindest, wenn Martin schreibt, es

sollen die Anwendungen einzeln überprüfen, ob der Benachrichtigungsprozess Aktionen unterstützt, dann sollen sie global verworfen werden.


Doch dies ist genau das, was die Spezifikation vorsieht: Nicht alle Implementierungen müssen alle möglichen Details umsetzen. Statt dessen gibt es eine Methode, mit der Anwendungen abfragen können, welche Fähigkeiten sie voraussetzen können, und welche nicht.

Damit muss man es also eigentlich genau andersherum formulieren: Die Änderungen, die die Ubuntu-Entwickler an den Anwendungen vornehmen, sind Bug-Fixes. Diese Bugs bestehen darin, dass die Anwendungen die Spezifikation nicht korrekt umsetzen, sondern sich daran orientieren, was de facto von den beiden bisherigen Implementierungen dieser Spezifikationen unterstützen. Das entspricht aber gerade nicht dem Sinn solcher Spezifikationen.

Warum aber implementiert Notify-OSD nicht einfach diese Aktionen in Benachrichtigungen? Das hängt mit dem zweiten Punkt zusammen:

Argument 2: Notify-OSD zeigt störende Dialoge, während KNotify ohne Dialoge auskommt.



Es geht bei dieser These um den Fall, dass eine Benachrichtigung eine direkte Aktion des Benutzers ermöglichen soll. Bisherige Benachrichtigungssysteme betten in diesem Fall einfach einen Button in das Benachrichtigungsfeld ein. Martin schreibt hierzu:

Die Plasma Benachrichtigungen haben das Ziel den Arbeitsfluss des Anwenders nicht zu unterbrechen und folgen dem Kein-Dialog Ziel für die Desktop Shells. Das Problem mit Dialogen ist, dass diese aus Versehen aktiviert werden können. Ein Dialog öffnet sich – wie der Name schon nahe legt – im Dialog mit einer Anwendung. Ein Dialog welcher nicht durch eine Interaktion des Nutzers geöffnet wird, ist daher falsch und der Fenstermanager verhindert zum Beispiel, dass dieser fokussiert werden kann.


Es bietet sich aber auch eine ganz andere Deutung an: Die Benachrichtungsfelder von KNotify (und übrigens auch von notification-daemon) sind eigentlich Dialoge. Sie haben zwar keine Fensterrahmen, aber sie bieten die Möglichkeit zur Interaktion mit dem Benutzer an. Die angesprochenen eingebetteten Buttons sind genau ein solcher Fall. Das Argument, dass solche Buttons versehentlich aktiviert werden können, trifft also auf klassische Dialoge ebenso zu wie auf Notification-Felder mit Buttons.

Die Entscheidung, Actions in Notify-OSD nicht zu implementieren, ist deswegen die eigentliche Neuerung: Ein Benachrichtigungssystem soll Benachrichtigen, aber eben keine Interaktionen ermöglichen. Deswegen kann man auch durch eine Benachrichtigung von Notify-OSD „hindurchklicken“. Praktisch etwa, wenn man ein Fenster schließen will, während oben rechts eine Benachrichtigung erscheint. Man klickt nicht versehentlich auf die plötzlich auftauchende Benachrichtigung, sondern, wie beabsichtigt, auf den Schließen-Knopf des Fensters.

Deswegen hat Martin auch die Ideen des Projektes etwas verzerrt wiedergegeben:

Nun sieht die Ayatana Implementierung vor, dass Dialoge anstelle von Aktionen in Benachrichtigungen angezeigt werden.


Die Implementierung zeigt Dialoge an, falls Anwendungen (fälschlich, wie ich oben dargestellt habe) Aktionen vorsehen, ohne die Fähigkeiten der Implementierung abgefragt zu haben. Damit ist das Anzeigen von Dialogen anstelle der Aktionen gerade nicht gewollt, sondern eine Übergangslösung für fehlerhafte Anwendungen. Bei der Implementierung von Notify-OSD wurde gerade sehr darauf geachtet, möglichst gut in der aktuellen Situation zu funktionieren, ohne die Vorteile des neuen Systems aufzugeben.

In einem Punkt muss ich Martin jedoch Recht geben: Auch ich bin nicht wirklich überzeugt davon, ob die vorgesehene Dauerlösung mit den Indikator-Applets wirklich der beste Weg ist. Es ist das eine, eine spezifikationskonforme Implementierung eines Standards zu entwickeln. Es ist aber etwas anderes, ein eigenes Aktions-System zu entwerfen, was von den Anwendungen upstream umgesetzt werden soll, ohne dass dieses System mit breiterer Beteiligung verschiedener Projekte entwickelt und spezifiziert wurde.

Ein Vorschlag für eine Spezifikation besteht, und es werden auch Kommentare erbeten. Um wirklich breite Akzeptanz für die meiner Auffassung nach richtige Idee zu finden, sollte der Prozess aber deutlicher von Ubuntu gelöst werden. Vielleicht wäre Freedesktop.org ein geeigneterer Ort für diese Diskussion als das Ubuntu-Wiki.

Deskbook: Deskbar meets Adressbuchsuche

, , ,

Der einen oder dem anderen ist die Deskbar sicherlich ein Begriff: Jenes kleine Panel-Applet, hinter dem sich eine universelle Suchleiste verbirgt. Damit lassen sich Dateien finden (unter anderem über Tracker), Programme starten, Übersetzungen nachschlagen und vieles mehr.

Unter anderem ist auch eine Adressbuchsuche enthalten, die die Evolution-Adressbücher durchsucht, so dass man schnell eine E-Mail an eine bestimmte Person erstellen kann. Das war mir aber zu wenig, denn – kaum zu glauben, aber wahr – es gibt noch andere Kontaktmöglichkeiten außer E-Mails. So habe ich nie die Telefonnummern der Kollegen im Kopf, und deswegen schlage ich die relativ häufig nach.

Zu diesem Zweck gibt es das Panel-Applet »Adressbuchsuche« (contact-lookup-applet). Es fügt eine kleine Suchleiste ins Panel ein und zeigt gefundene Kontakte in einem übersichtlichen Fenster als »Adresskarte« an. Auch von dort aus lassen sich dann leicht Mails erstellen.

Aber ich bin kein großer Freund von Suchleisten im Panel, die nehmen mir zu viel Platz weg, dafür dass sie doch nur einem sehr eingegrenzten Zweck dienen. Daher dachte ich mir, es wäre ganz hübsch, die Funktionalität der Adressbuchsuche (und vor allem die Ergebnisdarstellung) in der Deskbar zu haben. Da das ja ein begrenzt komplexes Unterfangen ist, habe ich es einfach zu meiner Abendbeschäftigung erklärt. Und nun ist es langsam fertig, die Adressbuchsuche in der Deskbar:





Da das contact-lookup-applet in C geschrieben ist, die Deskbar aber in Python, habe ich den Dialog nach Python portiert. Daher wird das Paket python-gnome2-desktop benötigt, das die Evolution-Anbindung für Python bereitstellt. Ansonsten sollte es für die Installation reichen, das Plugin-Paket in die Pluginliste der Deskbar (zu finden unter »Einstellungen«) zu ziehen.

deskbook.tar.bz2

Viel Spaß damit!

Update 2. Nov. 2009: Unter Karmic gab es ein ein kleines Problemchen mit dem Plugin. Deswegen habe ich eine neue Version hochgeladen, in der der Fehler nicht mehr auftaucht.

Scribus: The Next Generation

, , ,

Vor kurzem ist die neue Version 1.3.5 von Scribus erschienen. Diese ist zwar als Entwicklerversion ausgewiesen (deswegen ScribusNG), ist aber schon vergleichsweise stabil und bringt einige verbesserte und neue Features mit, die einen Testlauf rechtfertigen.

Während Firefox oder Googles Chrome trotz marginaler Änderungen ihre Versionssprünge mit Siebenmeilenstiefeln machen, stecken bei Scribus zwei Jahre Arbeit hinter der Änderung in der dritten Stelle der Versionsnummer. Und diese Arbeit sieht man auch. So wurde Scribus auf Qt4 portiert. Dies hat für GNOME-User den großen Vorteil, dass sich Scribus dank QGtkStyle nun erstmals sehr hübsch in den Desktop einfügt. Dieser positive Eindruck wird durch die Tango-Icons bestätigt. Aber auch darüber hinaus wurde die optische Erscheinung stark aufgewertet, Objekte auf dem Canvas sehen deutlich besser und moderner aus.



Aber auch einige Funktionen wurden um schon lange vermisste Features erweitert. So wurden die Möglichkeiten der Stile deutlich erweitert: Neben Absatzstilen sind jetzt auch endlich Zeichenstile möglich, und Stile können ihre Eigenschaften vererben. Diese etwa aus OpenOffice.org bekannten Funktionen werden bei Scribus aber noch eine Stufe weiter getrieben: Absatzstile können auch von Zeichenstile erben.

Neben diesen verbesserten Funktionen gibt es aber auch ganz neue Features. So wurde gerade die Arbeit im Pre-Press-Bereich stark vereinfacht: So lässt sich direkt in den Dokumenteneigenschaften ein Anschnitt definieren. Der PDF-Export erlaubt, Schneidemarken, Registrierungsmarken und ähnliches hinzuzufügen.

Ein neues, sehr interessantes Feature, das ich aber noch nicht ausprobiert habe, sind die sogenannten »Render Frames«. Hier kann man Befehle aus LaTeX und anderen Sprachen angeben, die im Dokument dann durch ihren Output ersetzt werden. So lassen sich dann z.B. mathematische Formeln sehr einfach integrieren. Könnte auch interessant sein, um Grafiken aus R einzubinden.

Wie man vielleicht merkt, bin ich vom neuen Release ziemlich begeistert. Während Scribus für mich bisher schon durch seinen guten PDF-Output überzeugte, aber sonst eher unsexy war, kommt das Programm jetzt schon dem sehr nahe, wie ich mir ein DTP-Programm vorstelle. Auf die stabile Version 1.4 freue ich mich jetzt schon. Der einzige Wermutstropfen ist, dass Ubuntu Hardy noch eine zu alte Qt4-Version mitbringt, und es daher keine Pakete der neuen Scribus-Version gibt. Jetzt muss ich mir überlegen, am Arbeitsplatz doch mal auf Jaunty zu aktualisieren – denn auf den zusätzlichen Komfort möchte ich nur ungern missen.

OpenStreetMap: Die Last des Ruhms

, ,

Die Kartensammlung von OpenStreetMap ist ja mittlerweile ganz beeindruckend, zumindest was die deutschen Großstädte angeht. Und so langsam häufen sich die Anzeichen, dass sich die freien Karten zu einer echten Alternative zu kommerziellen Anbietern mausern.

So fügt zum Beispiel Radio Bremen auf seiner Webseite aktuellen Meldungen eine dynamische OpenStreetMap-Karte von der betreffenden Region hinzu. Schön zu sehen etwa bei dieser Meldung. Und schön auch: In der Ecke der Karte wird auf OpenStreetMap und die Lizenzseite der CreativeCommons verlinkt.



Der WDR geht sogar noch ein bisschen weiter: Es wird nicht nur eine dynamische Karte eingebunden, sondern auch vom Recht auf Weiterbearbeitung Gebrauch gemacht. So wird zur Meldung eines Bohrer-Unglücks in Kamen die Unglücksstelle auf dieser Karte eingezeichnet, die offensichtlich von OpenStreetMap stammt:



Mit den Rechten scheint man es weniger genau zu nehmen: Es fällt auf, dass OpenStreetMap mit keinem Wort, geschweige denn Link, erwähnt wird. Da der WDR bei seinen eigenen Inhalten viel Wert auf Urheberrecht legt, habe ich dann einfach mal nachgefragt. Seitens des WDR verweist man auf die „Metadaten“ des Dokuments. Sprich: Der Alternativtext des Bildes enthalte den gewünschten Verweis. Und der Internet Explorer zeigt dies dann ja auch in einem Tooltip an.

Im Firefox erhält man die Information, wenn man sich die Eigenschaften des Bildes anzeigen lässt:



Das ist nicht nur kaum zu finden, die Angaben sind auch mehr als dürftig. So ist zwar der Hinweis auf OpenStreetMap enthalten, aber keiner auf die Lizenz des Kartenmaterials. Und die CC-BY-SA verlangt ja, auch Bearbeitungen unter der gleichen Lizenz freizugeben.

Nach meinem Hinweis ist man immerhin dazu übergegangen, den Hinweis auch allgemein lesbar auf der großen Version des Bildes anzubringen:



Ein Link auf Projekt und Lizenz lasse sich „aus technischen Gründen“ nicht anbringen. Die Schwierigkeit kann ich nachvollziehen, und die vorgenommene Änderung zeigt ja auch eine gewisse Bereitschaft, seine Pflichten zu erfüllen. Nur weiß wohl kaum jemand, was sich hinter dem kryptischen Kürzel CC-BY-SA verbirgt. Ohne dieses Wissen kann man aber auch von seinen Rechten keinen Gebrauch machen. Und ob die gewählte Form der Quellenangaben den formalen Anforderungen entspricht, überlasse ich dem Urteil der Leserinnen und Leser.

[Update] XeTeX: Bitte mit Gummi

, , , ...

Nur auf die Schnelle ein kurzer Post:

Heute habe ich endlich erste Schritte mit XeTeX gewagt. Irgendwie ist man ja pdfTeX gewohnt, und schon allein aufgrund der vielen verfügbaren Anleitungen hält sich das wohl noch einige Zeit. Aber XeTeX ist schon einen Blick wert: Vor allem die Verwendung der System-Schriften macht es wesentlich komfortabler, beliebige Schriften zu verwenden, als mit pdfTeX. Und die echte Unicode-Unterstützung ist Gold wert.

Nur benutze ich gerne rubber zum Kompilieren von LaTeX-Dokumenten. Dies unterstützt XeTeX jedoch noch nicht. Die Lösung ist jedoch recht einfach. Man erstellt einfach eine Datei »xetex.py« im Verzeichnis »/usr/share/rubber/rubber/rules/latex/«. In diese kopiert man folgenden Text:

# This file is part of Rubber and thus covered by the GPL
# (c) Emmanuel Beffara, 2002--2006
# (c) Frederik Elwert, 2009
"""
XeLaTeX support for Rubber.

"""

import rubber

class Module (rubber.rules.latex.Module):
        def __init__ (self, doc, dict):
                doc.vars["program"] = "xelatex"
                doc.vars["engine"] = "XeTeX"
                doc.prods = [doc.src_base + ".pdf"]
Nun kann man mit folgendem Befehl XeTeX-Dokumente übersetzen:
rubber -m xetex datei.tex
Bei einem ersten Test hat es problemlos geklappt, hoffen wir also mal das Beste.

Update:

Wie towolf netter Weise bemerkt hat, reicht auch eine Angabe im Kopf der LaTeX-Datei:

% rubber: set program xelatex

Das ist natürlich sehr praktisch, dieses Feature kannte ich noch gar nicht. Danke für den Hinweis!

ScheduleWorld wird kostenpflichtig – aber plötzlich!

, , , ...

Seit einiger Zeit nutze ich zur Synchronisierung meiner Evolution-Daten den Online-Dienst ScheduleWorld. Damit bin ich auch sehr zufrieden, und es scheint derzeit auch der einzige Dienst zu sein, der (zumindest fast) alle Evolution-Daten verlustfrei synchronisieren kann.

Read more...

Die Königin zum Tango bitten …

, , , ...

GNOME bringt ja eine Reihe ganz netter Spiele mit. Gerade die Kartenspiele glänzen jedoch nicht gerade durch ein hübsches Design. Das Kartenset Ornamental aus dem Paket gnome-games-extra-data gefällt mir ganz gut, ist aber sicherlich nicht für jeden was. Aber vielleicht könnte man der Königin ja Tango beibringen?

Read more...

Ubuntu Netbook Remix auf dem Dell Mini 9

, , ,

Dell hat für sein Netbook ja einen eigenen Starter entwickelt. Viele Komponenten bauen auf Techniken auf, die für den Ubuntu Netbook Remix entwickelt worden sind, aber der Starter, also der sichtbarste Teil, ist eine Eigenentwicklung. Der Starter macht auch optisch einiges her, die Knöpfe für die Kategorien und Programme sind schön groß, und dezente Animationen setzen die Menüs hübsch in Szene.

In letzter Zeit habe ich dann aber doch immer häufiger neidisch zu einem Kollegen rübergeschielt, der auf seinem eeePC den Ubuntu Netbook Remix laufen hat.

Read more...

LaTeX, Zotero und gedit

, , , ...

In der Tat, Zotero hat mich weitgehend überzeugt. Es ist ein recht brauchbares Literaturverwaltungsprogramm, vor allem aber wird es aktiv weiterentwickelt und von etablierten Institutionen unterstützt. Damit ist es eine recht zukunftssichere Wahl, schließlich will ich nicht alles halbe Jahr meine Literaturdatenbank umziehen.

Die Integration in OpenOffice.org ist außerdem wirklich gut. Nur schreibe ich eigentlich lieber mit LaTeX, und hier bietet Zotero von Haus aus keine Unterstützung. Aber gedit, mit dem LaTeX-Plugin mein favorisierter LaTeX-Editor, hat ja eine schöne Python-Plugin-API. Also kann man ja mal versuchen, ein gedit-Plugin für die Zotero-Einbindung zu schreiben…

Read more...

December 2009
M T W T F S S
November 2009January 2010
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31