In dem vollen Pfad zu dem Profil 'Roaming' durch 'Local' ersetzen.
Tut mir leid, da weiß ich leider nicht, was du meinst. Roaming kommt
~/Library/Thunderbird
nicht vor.
In dem vollen Pfad zu dem Profil 'Roaming' durch 'Local' ersetzen.
Tut mir leid, da weiß ich leider nicht, was du meinst. Roaming kommt
~/Library/Thunderbird
nicht vor.
So bin ich doch vorgegangen, siehe meine erste Nachricht.
Bis auf installs.ini. Welche Rolle spielt installs.ini? Bei mir steht z.B. von einem heute angelegten Profil dort gar kein Eintrag.
Nach meinen 4 Bearbeitungsschritten waren Ordnernamen mit Umlauten kaputt. Bei Erweiterungen fehlten die Icons in der Add-on-Verwaltung. Und vermutlich gab es noch viele weitere Defekte.
Daher suche ich nach einem erprobten, zuverlässigen Weg.
Idealerweise einen offiziellen von Mozilla dafür vorgesehenen.
in Local/Thunderbird/Profile
Hier weiß ich noch nicht was du meinst Günter.
Welchen Pfad genau meinst du bitte?
Moin.
Ich verwende seit Ewigkeiten folgenden "Workflow" für eine konkrete Situation:
Ich lese eine neue Mail und entscheide mich, darauf zu antworten, möchte das aber zu einem anderen Zeitpunkt erledigen. Vergessen möchte ich es nicht.
Meine 4 Schritte:
Für diese Einzelschritte funktioniert in tbkeys folgender Code:
Wie verkette man diese 4 Befehle zu einem einzigen?
Ein sog. "Eval-Befehl" funktioniert nicht:
"(function () { window.goDoCommand('cmd_reply'); window.goDoCommand('cmd_saveAsDraft'); window.goDoCommand('cmd_close'); window.goDoCommand('cmd_nextUnreadMsg'); })();"
Früher, als es noch die Erweiterung KeyConfig gab, hatte ich dafür einen Skriptschnipsel für Keyconfig, der es mir erlaubt hat das mit einem einzigen Kürzel, zum Beispiel (S) zu erledigen.
var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"]
.getService(Components.interfaces.nsIWindowMediator);
var Listener = {
onWindowTitleChange: function(){}, onCloseWindow: function(){},
onOpenWindow: function(aWindow){
wm.removeListener(this);
this.compose = aWindow.docShell
.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
.getInterface(Components.interfaces.nsIDOMWindow);
this.compose.addEventListener("compose-window-init", this, true);
},
handleEvent: function(event){
event.currentTarget.removeEventListener(event.type, this, true);
event.currentTarget.gMsgCompose.RegisterStateListener(Listener);
},
NotifyComposeFieldsReady: function() {},
NotifyComposeBodyReady: function() {
this.compose.gMsgCompose.UnregisterStateListener(this);
this.compose.window.setTimeout(function(){
this.goDoCommand("cmd_saveAsDraft");
this.goDoCommand("cmd_close");
goDoCommand("cmd_nextUnreadMsg");
},0);
}
}
wm.addListener(Listener);
goDoCommand("cmd_reply");
Alles anzeigen
Kennt jemand einen Weg, die Aufgabe zu realisieren?
Hintergrund:
Ich arbeite gerade an einem weiteren öffentlichen Thunderbird-Projekt, neben Easy-Peasy.
Die Zielgruppe sind normale Nutzer, die den Schwerpunkt auf eine geschmeidigen Bedienung per Tastatur und eine übersichtliche Oberfläche legen.
Danke.
Du missverstehst mich noch.
Das Umbenennen des Profils geht problemlos.
Ich spreche vom Umbenennen des Profilordners.
Den Kalender Tab öffnen und die Kalender löschen.
Ich sehe nur den Kalender "Privat" mit der Option zum "Aktivieren".
Löschen kann man den Kalender nicht.
Dann existiert also offenbar kein weiterer.
Unter Windows gibt es keine Standardapp für Kalender und Kontakte.
Das wußte ich nicht. Danke.
Was ich im Zusammenspiel von Thunderbird und maOS/iOS übrigens exzellent finde ist die Option des Synchronisierens von Kontakten zwischen Thunderbird und der Standard-Kontakte-App von macOS/iOS via CardDAV. Funktioniert super.
Ich kann also auf dem Smartphone eine Mailadresse in der Standard-Kontakte-App eintragen und sie steht in Echtzeit in TB zur Verfügung.
Moin.
In einem jungfräulichen Profil erhaltle ich beim Senden meiner ersten Nachricht ein Fenster mit:
"Sind sie sicher, dass sie bereit sind, diese Nachricht zu senden?"
Kommt das niemals wieder in keinem Konto, wenn man die Checkbox "Nicht mehr zeigen" wählt?
Oder gibt es dafür eine Prefs um das zu deaktivieren?
Ich habe nach in der "erweiterten Konfiguration" nach Wörtern wie "confirm" gesucht, hatte aber keinen Erfolg.
Danke.
Edit:
dharkness21 hat es gefunden: mail.warn_on_send_accel_key
Danke!
Das war mein erster Versuch. Am Ordnernamen ändert das nichts.
Bei dir steht ".Eclipse" im Ordnernamen. Bitte zeige doch, wie man das ändert.
Moin.
Ich möchte gerne die Funktionalität Kalender und Aufgabe deaktivieren. Geht das?
Falls nicht:
Wie deaktiviert man (versehentlich beim Einrichten) abonnierte Kalender zu den verschiedenen Mailkonten?
Danke.
Hintergrund:
Aus meiner Sicht passen solche Funktion viel besser in die jeweiligen Standard-Apps der verschiedenen Betriebssysteme, insbesondere, wenn man geräteübergreifend synchronisieren will.
Moin.
Der Profilmanager erlaubt erstaunlicherweise keine Umbenennung des Namens des Profilordners.
Ich habe folgenden Weg versucht:
Danach war an verschiedenen Stellen "was kaputt". Ich habe also alles rückgängig gemacht.
Gibt es einen funktionierenden Weg einen Profilordner umzubenennen?
Aus meiner Sicht ist das Fieseste zu den Namen von Standardordnern Entwürfe, Spam, Gelöscht bei IMAP, dass sich bei Mailprovidern nie etabliert hat, dass sie über einfach bedienbares GUI umbenannt werden können. Und die Mailclients müssten dieses Remapping dann natürlich automatisch übernehmen.
Da kann man lange Zeit mit Bosseln verbringen, bis man einheitliche Namen dieser Standardordner auf dem Webinterface des Mailproviders und bei seinen Mailclients der verschiedenen Geräte hinbekommt.
Es gibt einen Weg den Namen für den Standardordner für Spam/Junk über Code in der Datei userChrome.css umzubenennen.
Das wirkt sich (natürlich) ausschließlich in Thunderbird aus und nicht auf dem Server.
Warum Mozilla es bisher nicht anbietet, Standardordner umzubenennen, weiß ich nicht. Sowas ist ja z.B. für eine Vereinheitlichung von Namen über mehrere Konten hinweig wünschenswert.
Einige Mailprovider bieten auch eine Umbenennung von Standardordnern in ihrem Webinterface an. Das ist dann natürlich der bessere Weg, weil sich das auf alle abrufenden Clients auswirkt.
/* Ordner "Spamverdacht" umbenennen */
#folderTree [data-folder-type="junk"] .name::before {
content: "Spam" !important; /* Neuen Namen hier eintragen */
}
#folderTree [data-folder-type="junk"] .name,
#folderTree .selected.current[data-folder-type="junk"] .name,
#folderTree [data-folder-type="junk"] .container:hover .name {
color: transparent !important;
}
Daher habe ich erstmal als Workaround manuell eine Breite per CSS eingetragen.
Ich habe ein funktionierendes minimales Testcase entwickelt, wo man keine Breite eintragen muss.
Aber die direkte Anwendung für Thunderbird funktioniert noch nicht.
Falls jemand eine Idee, hat wie das doch gelingen könnte ...
/* Spalte "Status gelesen" Spaltenüberschrift: "Briefsymbol" umbenennen zu "Ungelesen" */
#threadTree #unreadButtonColHeader button img {
display: none !important;
}
#threadTree #unreadButtonColHeader button {
font-size: 0 !important;
overflow: hidden !important;
}
#threadTree #unreadButtonColHeader button::before {
content: "Ungelesen" !important;
font-size: initial !important;
}
#threadTree #unreadButtonColHeader {
width: 1% !important;
white-space: nowrap !important;
}
Alles anzeigen
Hier noch ein weiteres minimales Testcase für die generische Aufgabe "Tabellenspalte gerade so breit wie ihr Inhalt":
Das finde ich ziemlich praktisch und werde es künftig auf Webpages einsetzen.
Du hast mich nicht verstanden. In der Standardspalte 'Von' nur den Namen anzeigen lassen, in der Spalte des Add-ons nur die Mailadresse anzeigen lassen. Das gilt auch für An und Beteiligte.
Es sei:
"Einstellungen > Allgemein > Nachrichtenliste > [x] Nur Name anzeigen"
"ShowInOut: Gegenseite > (x) Nur Mailadresse"
In der Nachrichtenliste sind die Spalten "Beteiligte" und "Gegenseite" aktiv und stehen nebeneinander.
Wenn ich jetzt eine Nachricht von einem Absender erhalte, der keinen Namen angibt und der auch nicht mit Namen im Adressbuch steht, dann wird die oben genannte Einstellung nicht wörtlich genommen:
Es wird die Mailadresse angezeigt.
die Mailadresse stünde also doppelt in der Zeile.
Das verschwendet aber eine Menge Platz.
Leicht habe ich mir die Entscheidung nicht gemacht. Aber ich bin ziemlich sicher, dass Text als Überschrift viel besser verstanden wird als die Symbole "Büroklammer" (Anhang) und "Briefumschlag" (Status gelesen).
Natürlich kann ich das nicht beweisen. Auch bei diesen Punkt wäre es toll, ihn zu verifizieren/falsifizieren.
Da hilft dir das Add-on ShowInOut. Damit kannst du weitere Von/An Spalten einblenden.
Da gibt es noch ein Missverständnis, Günter.
Mit "Trennung von Name und Mailadresse in zwei Spalten" meinte ich:
Vorher:
Nachher:
Das ist nicht einfach. Nur das Ändern des Attributes data-resizable auf true und Eentfernen des disabled im eingebetteten Splitter reicht jedenfalls nicht.
Wenn euch noch was einfällt, lasst es mich bitte wissen.
Moin.
Ich habe heute erhebliche Änderungen für die Nachrichtenliste entwickelt.
Die Spalten "Anhang" und "Status gelesen" verwenden im Original ein Icon als Überschrift.
Ich habe die Spaltenüberschriften zu einem Text geändert.
Diese beiden Spalten sind in der grafischen Oberfläche nicht per Maus in der Breite veränderbar.
Das ist über Attribute im HTML festgelegt worden.
Daher habe ich erstmal als Workaround manuell eine Breite per CSS eingetragen.
Aber sowas ist mühsam zu warten und tendenziell instabil, weil es ja auch von der Schriftart abhängt.
Kennt ihr eine bessere Lösung?
Was noch?
Es gibt eine "simulierte" Spalte mit der Überschrift "Gesendet".
Die Spaltenüberschrift "Datum" heißt jetzt "Datum, Überschrift".
Kennt ihr eine bessere Lösung zum Simulieren der Spalte "Gesendet"?
Was fehlt?
1 Trennung von Name und Mailadresse in zwei Spalten. Das könnte vom Auge viel besser erfasst werden.
2 Trennung von Datum und Uhrzeit (dazu hatte ich euch ja mal in einem anderen Thread bereits befragt).
Der gesamte aktuelle Code für die Nachrichtenliste:
/* NACHRICHTENLISTE */
/* Normalisierung horizontaler Abstände in der gesamten Tabelle */
#threadTree th div,
#threadTree th button,
#threadTree td button,
#threadTree th,
#threadTree td {
padding-inline: 0 !important;
text-indent: 0 !important;
inset-inline: 0 !important;
margin-inline: 0 !important;
text-align: left !important;
}
#threadTree th div,
#threadTree td div{
position: inherit !important;
}
#threadTree th,
#threadTree td {
padding-inline: 0.5ch !important;
}
#threadTree table {
border-collapse: collapse !important;
}
/* Beim Überschweben (Hovern) einer Spaltenüberschrift wird ein Text zum Sortieren
angezeigt. Weil das Sortieren aber durch die Erweiterung
"No Message Pane Sort" deaktiviert wurde, blenden wir den Text aus */
#threadTree table thead th div {
pointer-events: none !important;
}
/* Spalte mit Auswahlbutton rechts ausblenden */
#threadTree th[is="tree-view-table-column-picker"] {
display: none !important;
}
/* Ungelesene Nachrichten nicht fett */
#threadTree [data-properties~="unread"] {
font-weight: normal !important;
}
/* Thead ohne Linien */
#threadTree thead::after,
#threadTree thead th hr[is="pane-splitter"] {
border-bottom: none !important;
}
/* Spaltenüberschriftzeile: Farbe */
#threadTree thead tr th {
background-color: rgb(228, 228, 228) !important;
}
/* Selektierte Zeilen: Farbe */
#threadTree tbody tr.selected {
background-color: rgb(65, 126, 189) !important;
color: white !important;
}
#threadTree tbody tr.selected img[data-l10n-id="tree-list-view-row-attach"] {
color: white !important;
}
#threadTree tbody tr.selected .correspondentcol-column {
stroke: white !important;
}
/* Gehoverte Zeilen: Farbe */
#threadTree tbody tr:hover,
#threadTree tbody tr:hover img[data-l10n-id="tree-list-view-row-attach"] {
background-color: rgb(206, 243, 255)!important;
color: black !important;
}
/* Zebra-Streifen - Gerade Zeilen (ungerade bleiben unverändert) */
#threadTree tr:nth-child(even) {
background-color: rgb(244, 244, 244) !important;
}
/* Spalte "Anhang" Spaltenüberschrift: "Büroklammersymbol" umbenennen zu "Anhang" */
#threadTree #attachmentCol button {
visibility: hidden !important;
}
#threadTree #attachmentCol button img {
display: none !important;
}
#threadTree #attachmentCol button::before {
visibility: visible !important;
content: "Anhang" !important;
}
#threadTree #attachmentCol { /* Weil sie nicht per Maus verbreiterbar ist */
width: 6ch !important;
}
/* Spalte "Anhang" Spalteninhalte: "Büroklammersymbol" ohne Opacity */
#threadTree .attachmentcol-column img {
opacity: unset !important;
}
/* Spalte "Status gelesen" Spaltenüberschrift: "Briefsymbol" umbenennen zu "Ungelesen" */
#threadTree #unreadButtonColHeader button img {
display: none !important;
}
#threadTree #unreadButtonColHeader button {
visibility: hidden !important;
}
#threadTree #unreadButtonColHeader button::before {
visibility: visible !important;
content: "Ungelesen" !important;
}
#threadTree #unreadButtonColHeader { /*Weil sie nicht per Maus verbreiterbar ist*/
width: 8ch !important;
}
/* Spalte "Status gelesen" Spalteninhalte: kein Symbol für gelesene Nachrichten */
#threadTree .tree-button-unread img {
display: none !important;
}
/* Spalte "Status gelesen" Spalteninhalte: Kreissymbol für ungelesene Nachrichten */
#threadTree [data-properties~="unread"] .tree-button-unread::before {
content: "⏺" !important;
}
/* Spalte "Beteiligte" Spaltenüberschrift: "Beteiligte" umbenennen zu "Gesendet Korrespondent"
Simulation von 2 Spalten */
#threadTree #correspondentColButton {
visibility: hidden !important;
}
#threadTree #correspondentColButton::before {
visibility: visible !important;
content: "Gesendet\00a0\00a0\00a0\00a0Korrespondent" !important;
}
/* Spalte "Beteiligte" Spalteninhalte: Pfeil schwarz */
#threadTree .correspondentcol-column {
stroke: black !important;
fill-opacity: unset !important;
}
/* Spalte "Gesendet Korrespondent" Spalteninhalt: so breit wie das Wort "Gesendet" */
#threadTree .correspondentcol-column {
text-indent: 8.8ch !important;
}
/* Spalte "Betreff" Spalteninhalte: Symbole für "Geantwortet" und "Weitergeleitet" links vom Betreff ausblenden */
#threadTree .subjectcol-column img {
display: none !important;
}
/* Spalte "Datum" Spaltenüberschrift: "Datum" umbenennen zu "Datum, Uhrzeit" */
#threadTree #dateCol button {
visibility: hidden !important;
}
#threadTree #dateCol button::before {
visibility: visible !important;
content: "Datum, Uhrzeit" !important;
}
Alles anzeigen