Gibt es eine Möglichkeit, das Google Mail-Datumsformat in ISO 8601 zu ändern (z. B. JJJJ-MM-TT)?
Anstatt :
Gibt es eine Möglichkeit, das Google Mail-Datumsformat in ISO 8601 zu ändern (z. B. JJJJ-MM-TT)?
Anstatt :
Antworten:
Ich sehe keine eingebaute Möglichkeit, zum ISO-Format zu wechseln, aber ich habe ein User-Skript dafür geschrieben. Getestet in Chrome mit Tampermonkey. Wenn Tampermonkey installiert ist, sollte das Klicken auf die Raw-Schaltfläche in Github zur Skriptinstallation auffordern.
Sie haben nicht darum gebeten, das Zeitformat zu ändern. Deshalb habe ich es für die heutigen E-Mails beibehalten:
Einschließlich Skript hier der Vollständigkeit halber. (Platzhalter zur URL hinzugefügt)
// ==UserScript==
// @name ISO date format in Gmail
// @namespace https://github.com/normalhuman/
// @version 16.2.1
// @description Change Gmail date format to ISO 8601, per http://webapps.stackexchange.com/q/89499
// @author Normal Human
// @match http*://mail.google.com/mail/u/0/*
// @grant none
// @run-at document-idle
// ==/UserScript==
/* jshint -W097 */
'use strict';
window.setInterval(toISO, 500);
function toISO() {
var rows = document.getElementsByTagName('tr');
for (var i = 0; i < rows.length; i++) {
var rowElements = rows[i].children;
if (rowElements.length == 8) {
var timestamp = rowElements[7].firstElementChild;
if (!/:/.test(timestamp.textContent)) {
var parts = timestamp.title.split(/, | | at /);
if (parts.length == 7) {
var month = 1 + ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'].indexOf(parts[1]);
timestamp.textContent = parts[3] + '-' + ('0' + month).slice(-2) + '-' + ('0' + parts[2]).slice(-2);
}
}
}
}
}
Dies wird ausschließlich über die Spracheinstellung gesteuert.
Wenn meine Sprache auf Englisch (USA) eingestellt ist, haben die Daten in der Konversationsliste die Form Mmm d , wobei die Daten für letztes Jahr und früher die Form mm / tt / jjjj haben .
Bei einer Änderung in Englisch (Vereinigtes Königreich) ändern sich die Formen in d Mmm und dd / mm / yyyy .
In Google Mail gibt es keine weiteren Optionen für Englisch. Wenn es auf Französisch geändert wird, folgt es im Grunde dem gleichen Stil wie britisches Englisch (aber offensichtlich auf Französisch, das ich weder spreche noch lese).
Es gibt keine andere Einstellung für die Lokalisierung in Google Mail und keine Möglichkeit, das Datumsformat unabhängig von der Sprache auszuwählen. Es scheint, dass Ihre einzige Wahl zu diesem Zeitpunkt darin besteht, so etwas wie das von denjenigen, die ihren Namen ständig ändern, vorgeschlagene Benutzer-Skript zu verwenden .
Original-Skript von: user79865
Arbeitsskript unten:
// ==UserScript==
// @name ISO date format in Gmail
// @namespace https://github.com/normalhuman/
// @version 16.2.2
// @description Change Gmail date format to ISO 8601, per /webapps//q/89499
// @author Normal Human
// @include http*://mail.google.com/mail/u/0/*
// @grant none
// @run-at document-idle
// ==/UserScript==
/* jshint -W097 */
'use strict';
window.setInterval(toISO, 1000);
function toISO() {
var rows = document.getElementsByTagName('tr');
for (var i = 0; i < rows.length; i++) {
var rowElements = rows[i].children;
if (rowElements.length == 8) {
var timestamp = rowElements[7].firstElementChild;
var parts = timestamp.title.split(/, | | at /);
if (parts.length == 7) {
if (/:/.test(timestamp.textContent)) {
var time = parts[5].split(':');
time[0] = parseInt(time[0],10);
if (/[Aa][Mm]/.test(parts[6])) {
if (time[0] == 12) {
time[0] = 0;
}
}
if (/[Pp][Mm]/.test(parts[6])) {
time[0] = time[0] + 12;
if (time[0] == 24) {
time[0] = 0;
}
}
timestamp.textContent = ('0' + time[0]).slice(-2) + ':' + time[1] + ' (' + parts[6] + ')';
} else {
var month = 1 + ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'].indexOf(parts[1]);
timestamp.textContent = parts[3] + '-' + ('0' + month).slice(-2) + '-' + ('0' + parts[2]).slice(-2);
}
}
}
}
}
Das obige Skript 2 hat bei mir nicht sofort funktioniert, daher habe ich es für meinen Fall umgeschrieben (Firefox v57 + Tempermonkey und Gmail-Gebietsschema en-UK
).
// ==UserScript==
// @name ISO Date for Gmail
// @namespace http://rabin.io/
// @version 0.1
// @description Change Gmail date format to ISO 8601, per /webapps//q/89499
// @author Rabin
// @match https://mail.google.com/mail/u/*
// @grant none
// @run-at document-idle
// ==/UserScript==
(function() {
'use strict';
window.setInterval(toISO, 1000);
function toISO() {
var rows = document.getElementsByClassName('xW');
for (var i = 0; i < rows.length; i++) {
var timestamp = rows[i].firstElementChild.title.split(/, | | at /);
if (timestamp.length == 5) {
var d = new Date(timestamp[1] + " " + timestamp[0] + " " + timestamp[2] + " " + timestamp[4]);
var x = rows[i].firstChild;
//x.textContent = d.toISOString();
x.textContent = d.getFullYear() + '-' + ('0' + (d.getMonth()+1)).slice(-2) + '-' + ('0' + d.getDate()).slice(-2);
}
}
}
})();
Probieren Sie kanadisches statt europäisches Französisch ...