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

Calendar Alarm Slider 1.1

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

Die entsprechenden Änderungen schlummern schon seit weit über zwei Jahren auf der Festplatte:
In verschiedenen Funktionen wird nun auf die Dienste von Services.jsm zurückgegriffen. Außerdem hatte ich schon vor langer Zeit neben vielen Whitespace-Korrekturen einige der Änderungen übernommen, die Bug 738568 und Bug 818017 an der Slider-Implementierung vorgenommen haben. Weitere Änderungen, die es dort danach noch gegeben hat, habe ich nicht mehr übernommen. Und da ich mich schließlich noch dazu durchgerungen habe, die Aufforderung zum Umstieg auf MutationObserver zu ignorieren, war das Paket nun endlich mal reif für ein Update.

Calendar Alarm Slider 1.1:

Vorläufig kompatibel mit:
Thunderbird 18 – 46
SeaMonkey 2.1 – 2.43
Sunbird 1.0b1pre – 1.0

Die Datei:
calalarmslider-1.1.xpi

Die .diff:
1.0_vs_1.1.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