KOffice2 vs OpenOffice.org

Ich habe sehr spezielle Anforderungen an eine Textverarbeitung. Für alles was “schön” aussehen soll, oder mehr wird als eine Seite benutze ich eh LaTeX. Für Textverarbeitungen bleibt also alles was übrig ist. Da es nicht schön aussehen muss, konkurriert dann die Textverarbeitung mit dem Texteditor, der für einfache Sachen ja auch ausreichend ist.

Also Textverarbeitung muss schneller sein als der Overhead von LaTeX, mindestens genauso schnell wie ein Texteditor und sollte bessere Ergebnisse als ein Texteditor liefern.

Was also absolut nicht geht, sind Textverarbeitungsprogramme, die z.B. über eine Büroklammer versuchen mir zu erklären, dass ich offensichtlich einen Brief schreibe – auch wenn ich das nicht tue – und mir dazu Hilfe anbieten. In dem Fall hat sich die Textverarbeitung selbst disqualifiziert, weil sie mich nervt und damit in der Geschwindigkeit hinter den Texteditor zurückfällt.

Nun gestern hab ich ein Übungsblatt bearbeitet. Fällt in die Kategorie Textverarbeitung, da LaTeX sich nicht lohnt und es ein bißchen besser als Texteditor aussehen sollte. Also OpenOffice.org gestartet und begonnen zu schreiben. Plötzlich fängt er an aus 2.1 eine Nummerierung zu machen und in der nächsten Zeile die 3. zu setzen und das Punkt 1 aus der vorherigen Zeile zu entfernen. Nichts was ich wollte und nichts wozu ich Lust habe mich mit zu beschäftigen. wie ich die ungewollte Nummerierung wegbekomme und OpenOffice.org dazu zu bringen zu machen was ich will. Also Faktor Zeit/Aussehen wieder zu Gunsten des Texteditors geschwappt.

Also OpenOffice.org geschlossen und da ist mir was eingefallen: “Hey vor Kurzem wurde doch KOffice 2 veröffentlicht und es gibt doch auch Pakete”. Kurz auf Kubuntu.org gegangen, Paketquellen bearbeitet, installiert und ausprobiert. Und siehe da, KOffice macht das was ich will. Keine Probleme gehabt. Natürlich die Aufmachung von KOffice ist etwas gewöhnungsbedürtig, aber dennoch intuitiv. Der Platz wird einfach perfekt genutzt.

Tja damit hat OpenOffice.org wahrscheinlich bei mir nie wieder eine Chance. KOffice ist installiert, ist in KDE sehr gut integriert (immer ein wichtiger Faktor 😉 ) und lässt die Plasma Kontrollleiste nicht komisch aussehen – keine Ahnung wer für den Bug verantwortlich ist 😀

Da KOffice OpenDocument beherrscht sollte es auch keine Probleme geben wenn ich Dokumente weitergebe oder bekomme. Und wenn es identisch aussehen soll: dafür gibt’s PDF.

Animierter BoxSwitch Effekt

Heute habe ich in den Entwicklungszweig der KDE eine Überarbeitung des BoxSwitch Fensterwechsel (Alt+Tab) Effekt eingespielt. Nun gibt es auch eine Animation wie in dem bei Compiz bekannten Effekt. Jedoch erst in KDE 4.2.

Worte sagen nicht viel daher ein Video:

Bei YouTube
Wer Flash nicht mag: es gibt auch eine hochauflösende Version.

Sehr interessant war heute übrigens die Erfahrung wie schnell ein Server in die Knie gehen kann. Ich hab das Video auch auf Planet KDE veröffentlicht, was sehr viele Zugriffe verursachte. Irgendwann hat Apache nicht mehr mitgemacht 🙁 Nach einer Umkonfiguration sollte jetzt alles wieder funktionieren.

Animated boxswitch effect

Today animation support for boxswitch hit trunk. So you can enable animation like in the Compiz one. The animation is optional. So if you don’t like animations you won’t see it.

Well what is better to show new animations than a video?

For those who don’t like Flash or want to see a better version of the video

KWin in Intrepid Ibex

Gute Nachrichten für alle Freunde des *BLING*. Mir ist zu Ohren gekommen (OK eher per Mail in mein Postfach), dass in Kubuntu Intrepid Ibex der OpenSuSE 11.1 Branch von KWin verwendet wird. Das ist richtig toll. Lubos Lunak (mein Mentor bei GSoC und Maintainer von KWin) hat richtig tolle Arbeit geleistet und alle bis jetzt existierenden Neuerungen und Verbesserungen für KDE 4.2 auf KDE 4.1 zurückportiert. Ich hatte schon ernsthaft mit dem Gedanken gespielt mir den openSUSE Build Service anzuschauen um mir selbst das Paket zu bauen. Die Verbesserungen sind so toll, dass ich sie selber haben will.

Ich muss auch sagen ich finde es richtig toll, dass openSUSE so stark Upstream ihre Distribution bauen. Alle Änderungen werden direkt im KDE SVN Repository gemacht und sind somit von Anfang an transparent. Davon kann dann zum Beispiel auch Kubuntu profitieren und deren Branch übernehmen. In diesem Fall ist ja klar, dass die SuSE Leute Ahnung haben, schließlich wird der Branch vom KWin Maintainer gepflegt. Wer jetzt denkt, dass hier Kubuntu mal wieder nur nimmt und nicht gibt: wir Kubuntu User spielen ja jetzt im Prinzip den Beta-Tester für SuSE. Bugs die jetzt in Kubuntu auftreten, sind dann in openSUSE 11.1 behoben. Also mal wieder win-win für alle – so läuft richtig gutes Open Source 😉

So jetzt mal was gibt es denn tolles neues im Vergleich zu KDE 4.1:

  • Compositing Selbsttest
  • Würfel/Zylinder/Kugel Effekt
  • Verbesserter PresentWindows (Exposé) Effekt. Natürliche Anordnung und die Möglichkeit als Alt+Tab Wechsler zu verwenden
  • Verbesserte Konfiguration: einfaches Auswählen des Alt+Tab Effekts über ein Dropdown
  • Performance Verbesserungen

Auf jeden Fall mal ein Grund mein Laptop am Wochenende auf Intrepid upzugraden. Ich glaube als ich gerade die Liste durchgeschaut habe, was in dem Branch so enthalten ist, auch gleich mal einen Fehler entdeckt zu haben. Wird dann mal überprüft und gemeldet 😉

Update:Es sieht so aus, als ob der openSUSE Branch wieder deaktiviert wurde, da es Probleme verursachte. Ich weiß jetzt nicht, ob es bis zum final Release wieder aktiviert wird, fürchte aber nicht. Quelle

Mozilla gesteht Fehler ein

Mozilla hat wohl mittlerweile eingesehen, dass die Forderung der EULA in Ubuntu suboptimal verlaufen ist. Nun kein Wunder: liest man sich den Bugreport durch, sieht man, dass die meisten Kommentare entweder eine Umbenennung wie in Debian fordern und Firefox nach Multiverse oder Restricted verschoben werden soll oder man doch gleich auf Epiphany/WebKit in Ubuntu wechseln soll, schließlich ist in Kubuntu auch der KDE Browser der Default. Nur wenige Kommentierende schreiben, dass ihnen die EULA egal ist. Nicht überraschend. So ein Bugreport ist natürlich selektive Wahrnehmung: wen es nicht interessiert, der geht nicht drauf und trägt einen Kommentar ein. Dennoch ist die Anzahl der Kommentare mit mehr als 300 Kommentare für die kurze Zeit sehr beeindruckend.

Nun Mozilla hat dies natürlich auch bemerkt und nun Fehler eingestanden. Jedoch was mich überrascht, ist dass sie nicht die EULA an für sich als Fehler ansehen, sondern, dass es ein falscher Text wäre. Den neuen EULA-Text findet man hier.

Ich frage mich, ob es jetzt nicht schon zu spät ist. Selbst wenn Mozilla auf das Präsentieren der EULA verzichtet: der Schaden ist angerichtet. Für mich ist nach Debian/IceWeasel und nun der EULA jegliches Vertrauen in die Firma Mozilla verloren gegangen. Das hat nichts mit meinen Kritikpunkten an der Software Firefox zu tun. Für mich ist es schon fraglich, ob Mozilla eine Firma ist, die sich ihrer OpenSource Herkunft und Verpflichtung gegenüber der Community bewusst ist. Ich fürchte nein und das ist mehr als Schade. Die Frage ist ja wie sieht es in der Zukunft aus? Wird man wieder auf die Community zugehen oder sie auch in Zukunft verärgern? Ich meine, die Diskussion jetzt mit der EULA war ja vorherzusehen, wenn man die Community etwas kennt.

Außerdem frage ich mich: wie hoch ist noch die Bereitschaft der Community Mozilla zu unterstützen, wenn Aktionen wie IceWeasel und EULA der Dank an die Community sind? Werden die Leute, die nun verärgert sind weiterhin Bugreports erstellen, vllt. Patches erstellen? Wie werden sie auf andere Browser Projekte reagieren? Was ist wenn Chrome ein freies Community Projekt wird? Oder Arora schafft Aufmerksamkeit auf sich zu lenken? Werden die jetzt verärgerten dann bei Firefox bleiben oder das Lager wechseln?

Ich denke Mozilla hat sich ganz schön selbst gestraft. Es gibt so viel wofür es sich zu kämpfen lohnt und so gute proprietäre Gegner und sie verärgern einen der wichtigsten Verbündeten. Eigentlich ist das einfach nur Schade. Ich sehe leider keine gute Zukunft für Firefox voraus.

Hello to planet from wobblyland

Thanks to Jonathan Riddell my blog is added to planetkde as well. So I can help Lubos and Lucas to spread words about the development in wobblyland 😉

Currently my development effort is a little bit stuck. I have an oral exam end of next week and don’t find time to do any real development. So there are several unfinished tasks I’m working on. Cube & co. is basically finished. If there is anything you are missing in Cube please give me a note so that I can add it for 4.2. I still know the code and adding new features is most of the times quite easy. I don’t know how this will be in half a year 😉

So I started to work on the window switchers again. I’m working on a more Compiz like boxswitch effect with nice animations. And there are some ideas to improve CoverSwitch. Combining boxswitch with coverswitch and adding mouse interaction. Just the same here: tell me what you want and it can be implemented. I have not known that you can use mouse when use alt+tab. Never tried it, never thought about it. First noticed it when I tried to improve boxswitch.

So if you have ideas for cool effects or ideas to improve the effects: please tell us.

Back to learning 🙁

Rant zu Firefox und Intrepid

Wer mich kennt, weiß, dass ich ein ganz besonderes Verhältnis zu Mozilla und ihrem Firefox habe. Vor allem wegen der nicht existierenden Integration in den Desktop benutze ich einen anderen Browser. Aber auch die Iceweasel Geschichte, das SSL-broken-by-design in FF 3 und den Verfall der “Garantie”, wenn man about:config verwendet, haben mich sehr stark von Mozilla abrücken lassen.

Nun gibt es einen neuen Hammer. In Intrepid Ibex 8.10 wird man bei der ersten Firefox Nutzung einer EULA zustimmen müssen. Siehe: https://bugs.edge.launchpad.net/ubuntu/+source/firefox-3.0/+bug/269656

Sorry, aber geht’s noch? Dass ihr keine freie Software seit wissen wir ja schon lange. Ihr seit ja “organic”. Dass ihr euch für andere OpenSource Projekte nicht interessiert, sieht man ja auch am Umgang mit KDE. Aber das ist ja einfach nur der Hammer. Kein FF für mich in Intrepid. Ich stimme einer EULA bestimmt nicht zu. Ich hoffe doch sehr, dass Canonical sich nicht so unter Druck setzen lässt und die Pakete wie in Debian in Iceweasel umbenennt. Am Besten ziehen alle Distributoren nach. Vllt. kapiert Mozilla ja dann, dass sie nichts diktieren können und nicht mit anderen Regeln spielen.

Wenn ich so etwas lese, dann steigt bei mir doch wieder die Hoffnung, dass irgendwann ein anderer OpenSource Browser kommt, der FF von der Bildfläche verschwinden lässt. Da ist mir sogar Chrome lieber. Ein OpenSource Projekt, das mit jedem Release OpenSource neu definiert, brauchen wir wirklich nicht; nächster Schritt “Quellcode offenlegen ist Sicherheitsrisiko”. Willkommen in der Welt des FF von morgen: proprietär. Ich werde FF keine Träne nachweinen. Benutzt hab ich den Browser eh nur zu Zeiten von 0.x. Da war er auch noch einigermaßen in KDE integriert. Aber seit langen wird ja jede neue Version schlechter 🙁

Meine Hoffnung liegt ja in Arora. Ein schöner QtWebKit Browser. Ach ja und natürlich liegt meine Hoffnung auf WebKitKDE und eine Benutzbarkeit mit Qt 4.5 und vllt. schon KDE 4.2

Urlaub und Semesterbeginn

Letzte Woche hatte ich endlich – nach vier Jahren – mal wieder eine Woche Urlaub. Bin mit ein paar Freunden/Bekannten nach Paris gefahren. War sehr schön und sehr erholend. Leider war das Wetter nicht ganz so toll mit der Auswirkung, dass ich mir einen leichten Schnupfen eingefangen habe.

Einige Empfhelungen/Erfahrungen, die ich gemacht habe:

  • Auf den Eifelturm kurz vor der Dämmerung hochfahren. So sieht man die Stadt sowohl im Hellen als auch im Dunkeln und das ist einfach nur schön.
  • Wenn man bei den Tuilerien den Triumphbogen sieht und denkt, so weit ist das nicht, sollte man daran denken, dass der Bogen 50 m hoch ist und ja die Straße ist lang
  • Die Mona Lisa ist etwas enttäuschend. Man kommt nicht wirklich nah dran und im Panzerglas vor dem Bild spiegeln sich die Lampen. Abgesehen davon hat der Louvre ein schönes Café, in dem sich die nicht Kunstinteressierten verstecken können, bis der Zeitpunkt zum Treffen mit der Gruppe erreicht ist.
  • Louvre und auch Versaille erschienen mir vom Gebäude her kleiner als das Mannheimer Schloß (Architektonisch definitiv: das Mannheimer Schloß hat ein Fenster mehr als das Versailler). Zumindest von außen finde ich persönlich das Mannheimer Schloß auch schöner. Von innen kenne ich in Mannheim halt nur die Vorlesungssäale und die sind nicht mit Gold verzirt. Muss jetzt doch mal das Schloßmuseum besuchen.
  • Geht einer in das Restaurant und fragt nach Plätzen für sieben Personen und ruft den Rest danach mit “Allez les enfantes”, dann muss man sich nicht wundern, wenn der Tisch zu einem Kindertisch verwandelt wird.
  • Wenn am Bahnhof sich eine Person von der Gruppe entfernt und das Gepäck stehen lässt, während der Rest der Gruppe sich gemeinschaftlich zum Zug begibt, dann muss man sich nicht wundern, dass das nun herrenlose Gepäck von Soldaten umstellt wird (nein ich hatte nicht mein Gepäck stehen lassen).
  • Man kann mit Latein doch mehr Französich lesen als ich erwartet hatte.
  • Wenn Martin Hunger hat, sollte er essen. Warten führt zu dem unangenehmen Effekt, dass der Magen sich irgendwie weigert Essen aufzunehmen. Man hat dann gleichzeitig Hunger und Sättigungsgefühl beim Essen. Macht die ganze Sache dann nur noch schlimmer.
  • Ein Internettablet dabei zu haben ist ganz praktisch. Vor allem OpenStreet Map mit GPS macht sich gut 😉

Da der Urlaub nun vorbei ist, hat man wieder Zeit zum Studieren. Heute war Vorlesungsbeginn in Mannheim und wie es sich für gute Studenten gehört, hatte ich heute keine Vorlesungen. Ändert sich leider sobald in Heidelberg das Semester beginnt. Insgesamt ist mein Vorlesungsplan doch etwas voll geworden. Muss mich jeden Tag an die eine oder die ander Uni quälen. Neues Semester heißt auch, dass ich jetzt wieder mit Lernen beginnen muss, da ich Ende des Monats noch eine Prüfung zum letzten Semester habe.

Assembler

Ich denke darüber nach den Wasser Effekt für KWin zu implementieren. Da Compiz so einen Effekt hat, dachte ich mir: schau doch mal in denen ihren Code und schau dir an wie die das machen. Mir ist klar, dass ich einen Shader brauche und Compiz auch einen benutzen muss. Im besten Fall wäre es also möglich den Shader eins zu eins zu übernehmen und den Effekt recht schnell zu haben.

Also in das Quellcodeverzeichnis gegangen und nach einem Shader gesucht. Kann aber keine Shader Datei finden. Da sind überall nur c-Dateien. Schaut man halt in die c-Datei um den Pfad zum Shader zu finden – muss ja schließlich zur Laufzeit geladen werden. Und was stellt man fest? Der Shader ist in Assembler direkt im Quellcode geschrieben! Assembler! Kein Shader in der OpenGL Shading Language. Also keine Möglichkeit den Shader wiederzuverwenden, nein ich kann den Code nicht mal lesen. Wirklich Schade. Es gibt eine Hochsprache dafür und Compiz verwendet Assembler. Ich möchte hier jetzt Compiz nicht kritisieren. Es ist durchaus denkbar, dass zu dem Zeitpunkt als der Effekt geschrieben wurde, man Shader noch in Assembler schreiben musste.

Kugel mit Caps

Nachdem ich eine Woche nicht daran hab arbeiten können, da der Ati Chip in meinem Laptop keine Shader unterstützt, hab ich mich heute wieder an die Kugel gemacht und konnte die Caps fertigstellen. Wird auch langsam Zeit: übermorgen ist Code Freeze für die Abgabe bei Summer of Code. Das Ergebnis sieht nun so aus:

Die Kugel wurde etwas nach hinten vorschoben um vollständig auf den Monitor zu passen und die Spiegelung wurde deaktviert, da sie mit der unteren Cap überschneiden würde. Kugel und auch Zylinder können übrigens nicht verwendet werden um den Wechsel der Arbeitsfläche zu animieren. Dafür gibt es nur den Würfel. Alles andere würde das Bild bei einer Animation von ca. einer halben Sekunde zu stark stören.

Leider sind meine Versuche Zylinder und Kugel andere Tastenkürzel zu geben erst einmal gescheitert. Irgendwie scheint mir die Vererbung in C++ doch nicht so ausgereift zu sein wie in Java. Eigentlich ja nicht überraschend, da C++ ja auch gelinkt werden muss. Da die Tastenkürzel im Konstruktor festgelegt werden und der Konstruktor von Cube als Elternklasse zuerst ausgeführt wird, hat auch Zylinder und Kugel dessen Tastenkürzel reserviert. Daher bleibt es vorerst dabei, dass man Cube nicht starten kann, wenn Zylinder oder Kugel aktiviert ist. Die Einstellungen sollten sich jedoch noch ändern lassen. Werde ich mir morgen mal anschauen 😉