Export Calendar Selection 0.6

Ich hatte es mir leichter vorgestellt, dabei aber leider übersehen, wie viel sich in Thunderbird und der Erweiterungs-Welt mittlerweile verändert hat… Aber gut, wieder was gelernt, die Erweiterung „Export Calendar Selection“ sollte in Version 0.6 wieder wie gewohnt mit Thunderbird 78 funktionieren.

Die Erweiterung ist nun eine MailExtension, die auf Experiments und hier konkret auf die WindowListener-API zurückgreift, die dankenswerterweise von anderen zur Verfügung gestellt worden ist. Andere meiner Versuche, funktionierende Menüeinträge zu Thunderbird hinzuzufügen, sind zuvor leider gescheitert.

Das Experiments-Werkzeug hat den Nebeneffekt, dass die Installation der Erweiterung abschreckende Begleitmusik erhält:

„Vollständiger Zugriff auf Thunderbird und Ihren Computer“ meint hier, dass die Erweiterung wegen ihrer Machart nicht in einem extra eingeschränkten Kontext läuft, sondern sich ‚voll‘ in Thunderbird einklinkt – so wie alle normalen Erweiterungen in früheren Jahren (also vor den technologischen Umstellungen durch Mozilla) auch. Wie oben erwähnt ist das v.a. notwendig, damit ich das Originalmenü des Thunderbird verändern und darüber die Exportfunktionen aufrufbar machen kann. Diesbezüglich biete ich an, mir zu vertrauen  🙂  , oder einfach selbst einen kontrollierenden Blick in den nicht allzu umfangreichen Quellcode der Erweiterung zu werfen. Die .xpi lässt sich z.B. mit 7-Zip direkt entpacken, man kann sie aber auch in .zip umbenennen (nichts anderes ist sie ja) und dann mit x-beliebigen Packprogrammen öffnen.

Getestet habe ich, mit automatischen Updates warte ich sicherheitshalber trotzdem noch etwas.

Export Calendar Selection 0.6:

Kompatibel mit:
Thunderbird 78

Die Datei:
ExportCalendarSelection-0.6-tb.xpi

Die .diff:
0.5.1_vs_0.6.diff

Export Calendar Selection 0.5.1

Ein kleines Bugfix-Release für die Erweiterung „Export Calendar Selection“: Udo L. hatte mich darauf aufmerksam gemacht, dass die Erweiterung die Zeilenabstände in Thunderbird verändert – überall 😮 . Das sollte hiermit behoben sein. Ansonsten wurde nichts verändert.

Export Calendar Selection 0.5.1:

Kompatibel mit:
Thunderbird 68 und höher (also auch aktuellen Betas)

Die Datei:
ExportCalendarSelection-0.5.1-tb.xpi

Die .diff:
0.5_vs_0.5.1.diff

Export Calendar Selection 0.5

Bald dürfte eine neue Thunderbird-Version (70? 68) veröffentlicht werden und passend dazu gibt es nun die Erweiterung „Export Calendar Selection“ in Version 0.5 – mit einer spürbaren Veränderung in der Nutzung:

  • Die Einträge in der Menüleiste befinden sich nun im Menü „Extras“, nicht mehr im Menü „Termine und Aufgaben“, wo sie eigentlich wie zuvor besser aufgehoben wären. Zum Hintergrund: Der Thunderbird-Code hat sich letztlich wegen Entscheidungen der Firefox-Entwickler massiv verändert, gerade auch mit Blick auf Beschaffenheit und Laden von klassischen Erweiterungen („Legacy-Add-ons“) sowie die Benutzeroberfläche (Overlays usw.). Nicht alles wirkt hier ausgereift, nicht alles funktionierte in den Betas zuverlässig. Das Lightning-Menü „Termine und Aufgaben“ wird schon per Overlay nachgeladen, und das dann nochmal per Erweiterungs-Overlay zu verändern, hat nicht stabil funktioniert (Race Condition).
    Daher, sorry: Die Menüeinträge mussten wandern!
  • In der Hoffnung, einer neuen Unübersichtlichkeit im „Extras“-Menü vorzubeugen (siehe vorheriger Punkt): Es gibt ein Icon. (Es lebe Paint.)
  • Außerdem habe ich etwas aufgeräumt: In früheren Versionen scheinen noch unvollendete Bastelreste enthalten gewesen zu sein. Ohne Funktion, aber eben Ballast. Der sollte nun verschwunden sein.

Eine Integration ins Hamburger-Menü habe ich noch nicht bewerkstelligt bekommen. In Testversionen taucht die Erweiterung dort zwar auf, aber das subView-Panel mit den eigentlichen Befehlen will einfach nicht erscheinen und spendiert mir leider keine informative Fehlermeldung. In den nächsten Ferien werde ich mich daran noch einmal versuchen.

Export Calendar Selection 0.5:

Kompatibel mit:
Thunderbird 68 und höher (also auch aktuellen Betas)

Die Datei:
ExportCalendarSelection-0.5-tb.xpi

Die .diff:
0.1.2_vs_0.5.diff

Export Calendar Selection 0.1.2

Die Erweiterung „Export Calendar Selection“ lässt sich nun auf Version 0.1.2 aktualisieren. Dies ist leider kein Funktionsupdate, sondern bereitet nur eine erste Umstellung mit Blick auf Thunderbird 68 vor: Wenn ich es richtig verstanden habe, wird meine bisherige update.rdf nicht mehr funktionieren, sondern ich brauche eine updates.json. Auf die habe ich die updateUrl nun umgestellt.

Export Calendar Selection 0.1.2:

Kompatibel mit:
Lightning 6 mit Thunderbird 60

Die Datei:
ExportCalendarSelection-0.1.2-sm+tb.xpi

Die .diff:
0.1.1_vs_0.1.2.diff

Calendar Alarm Slider 1.2

Für die Erweiterung „Calendar Alarm Slider“ gibt es ein Update auf Version 1.2.

Auch diese Erweiterung war nach Weiterentwicklungen an Lightning/Thunderbird 60 nicht mehr kompatibel: Versionsnummern werden vor der Installation mittlerweile wieder strikter abgefragt, und außerdem hat das Styling des Einstellungen-Dialogs der Erweiterung nicht mehr funktioniert.

Die Anpassungen, die nötig waren, um die Erweiterung wieder zum Laufen zu bekommen, hielten sich nun in erstaunlich engen Grenzen – meine Test allerdings auch.

Calendar Alarm Slider 1.2:

Kompatibel mit:
Thunderbird 60

Die Datei:
calalarmslider-1.2.xpi

Die .diff:
1.1_vs_1.2.diff

Export Calendar Selection 0.1.1

Die Erweiterung „Export Calendar Selection“ war nun schon einige Zeit lang inkompatibel mit aktuellen Thunderbird/Lightning-Versionen. Mir fehlt meist leider immer noch die Zeit, um mich einigermaßen aktuell um die Erweiterungen zu kümmern und vor allem auch auf dem Laufenden zu bleiben, was die mittlerweile recht umfangreichen Veränderungen am Lightning-Code betrifft.

Eben habe ich aber „Export Calendar Selection“ in Version 0.1.1 hochgeladen, die wieder funktionieren sollte (sofern noch gewünscht).

Export Calendar Selection 0.1.1:

Kompatibel mit:
Lightning 6 mit Thunderbird 60

Die Datei:
ExportCalendarSelection-0.1.1-sm+tb.xpi

Die .diff:
0.1_vs_0.1.1.diff

Custom Calendar Defaults 1.7

Eben habe ich die Erweiterung „Custom Calendar Defaults“ in Version 1.7 freigeschaltet.
Das letzte Update liegt sehr lange zurück, ich bin dementsprechend aus der Übung. In meinen Tests bin ich aber über keine nennenswerten Fehler gestolpert.
Neue Funktionen gibt es nicht. Ich wollte nur endlich einmal die diversen Veränderungen im Lightning-Code abbilden. Im Detail ließe sich das wie sonst auch in der unten verlinkten .diff nachvollziehen.

Custom Calendar Defaults 1.7:

Kompatibel mit:
Lightning 5.4 mit Thunderbird 52
Lightning 5.4 mit SeaMonkey 2.49

Die Datei:
CustomCalendarDefaults-1.7-sm+tb.xpi

Die .diff:
1.6_vs_1.7.diff

Custom Calendar Defaults 1.6

Vorhin habe ich die Erweiterung „Custom Calendar Defaults“ in Version 1.6 freigeschaltet.

Anlass dafür war, dass ich beim Erstellen der letzten Version offenbar einem Irrtum erlegen war. Zu Version 1.5 schrieb ich:

Insgesamt ist die Erweiterung etwas schlanker geworden, weil Lightning nun z.B. von Hause aus Standardeinstellungen für die Privatsphäre bei Terminen und Aufgaben zulässt.

Das war Quatsch, Lightning bietet solche Einstellungen standardmäßig noch nicht an. Zwar hatte ich auf einmal entsprechende Optionen im Einstellungen-Dialog, aber erst jetzt ist mir in anderem Zusammenhang zufällig klar geworden, dass diese Optionen auf die Erweiterung Inverse SOGo Connector zurückzuführen sind:

ccd.1.6.a

So, und daraus ergeben sich nun folgende Änderungen für Custom Calendar Defaults 1.6:

  • Ich habe die Möglichkeit, Standardwerte für die Privatsphäre-Einstellungen von Terminen und Aufgaben festzulegen, wieder eingebaut.
  • Eine Funktion prüft nun, ob auch der Inverse SOGo Connector installiert und aktiviert ist. Wenn das so ist, werden die Privatsphäre-Funktionen meiner Erweiterung deaktiviert und auch nicht angezeigt, damit es da nicht zu verwirrenden Konflikten kommen kann. Hierfür habe ich rund um AddonManager.jsm Neues kennengelernt (MDN: AddonManager, Addon).
  • Kleinere Änderungen an Lightning-Funktionen wurden nachgepflegt (Bug 1049591 und Bug 1140802).
  • Rest von „Zeit anzeigen als“ für Aufgaben aus Code entfernt.

Im Detail ließe sich das wie sonst auch in der unten verlinkten .diff nachvollziehen.

Custom Calendar Defaults 1.6:

Kompatibel mit:
Lightning 4.0 mit Thunderbird 38
Lightning 4.0 mit SeaMonkey 2.35

Die Datei:
CustomCalendarDefaults-1.6-sm+tb.xpi

Die .diff:
1.5_vs_1.6.diff

Erweiterung „Export Calendar Selection“

Im Thunderbird-Forum hat mich ein Post kürzlich daran erinnert, dass es doch mal möglich war, mit Lightning (oder war das noch Sunbird?) nicht nur ganze Kalender zu exportieren, sondern auch einzelne oder einige ausgewählte Termine.
Aktuell kann Lightning das nicht. Schade. Die Erweiterung fügt daher im Menü „Termine und Aufgaben“ ein kleines Menü hinzu, mit dem sich ausgewählte Termine oder Aufgaben exportieren lassen:

exportcalendarselection-de
exportcalendarselection-en

Termine müssen im Kalenderblatt ausgewählt werden. Bei einem einzelnen Termin reicht ein Klick darauf, mehrere Termine lassen sich auswählen, wenn man währenddessen die Strg-Taste gedrückt hält.

Aufgaben können in der kleinen Aufgabenliste des Tagesplans oder auch in der großen Liste des Aufgaben-Tabs ausgewählt werden. Auch hier lassen sich mehrere Einträge auswählen, indem man währenddessen die Strg-Taste gedrückt hält.

Beim Export eines einzelnen Eintrags wird als Dateiname dessen Titel vorgeschlagen. Bei mehreren Einträgen wird ein Standardname vorgeschlagen, der schon in Lightning einprogrammiert ist (wie übrigens auch die Funktion saveEventsToFile(), auf die die Erweiterung schlicht Zugriff verschafft).

 

Export Calendar Selection 0.1:

Kompatibel mit:
Lightning 4.0 mit Thunderbird 38
Lightning 4.0 mit SeaMonkey 2.35

Die Datei:
ExportCalendarSelection-0.1-sm+tb.xpi

Custom Calendar Defaults 1.5

Die Erweiterung „Custom Calendar Defaults“ hat ein Update auf Version 1.5 erhalten, um mit dem gerade veröffentlichten Lightning 4.0.0.1 Schritt halten (also funktionieren) zu können.
Wie üblich mussten einige Änderungen an Funktionen übernommen werden, die für meine Erweiterung relevant sind. Insgesamt ist die Erweiterung etwas schlanker geworden, weil Lightning nun z.B. von Hause aus Standardeinstellungen für die Privatsphäre bei Terminen und Aufgaben zulässt.

Bei den zuletzt formulierten „Aufgaben für die Zukunft“ hat sich ansonsten fast nichts getan. Immerhin scheint zu klappen, dass nicht mehr benötigte Prefs entfernt werden.
Ich hatte außerdem ausprobiert, inwiefern sich der Einstellungen-Dialog meiner Erweiterung in den ganz normalen Thunderbird-Einstellungen-Dialog integrieren lässt, als Tab, separat oder als Unter-Tab von „Kalender“. Das ist zwar tatsächlich recht einfach möglich, hat aber einen Schönheitsfehler: Wenn man dann im Add-ons-Dialog auf den Schalter „Einstellungen“ von Custom Calendar Defaults klickt, bekommt man den zuletzt sichtbaren Einstellungen-Tab gezeigt – die Einstellungen speziell für die Erweiterung lassen sich bei diesem Aufruf offenbar nicht ansteuern. Das ist unpraktisch, daher habe ich die Idee wieder verworfen.

Fehlermeldungen und Verbesserungsvorschläge sind wie immer willkommen, auch wenn sie eventuell etwas liegen bleiben. 🙂

Custom Calendar Defaults 1.5:

Kompatibel mit:
Lightning 4.0 mit Thunderbird 38
Lightning 4.0 mit SeaMonkey 2.35

Die Datei:
CustomCalendarDefaults-1.5-sm+tb.xpi

Die .diff:
1.4_vs_1.5.diff