Jak zmienić czas wyświetlania Thunderbirda na format 24h?

23

Obecnie Thunderbird wyświetla czas w trybie AM / PM.

Jak mogę zmienić tryb na 24h?

AKTUALIZACJA 1:

$ locale |grep LC_TIME
LC_TIME="en_US.UTF-8"
pl1nk
źródło
1
Myślę, że ma to związek z ustawieniami czasu twojego komputera, a nie z thunderbirdem.
Evandro Silva
Zgadzam się, myślę, że musisz ustawić swoje ustawienia regionalne na 24 godziny.
NorTicUs,
W swoim pytaniu dodałem ustawienia regionalne, jednak w ewolucji nie mam tego samego problemu. Ponadto w tym problemie powinno być ustawienie Theunderbird.
pl1nk
1
dla mnie dzieje się tak samo; ustawienia komputera to zegar 24-godzinny, ale Thunderbird nie.
Bob
1
To jest niedorzeczne. Pytanie zadawano wielokrotnie, przynajmniej od 2005 roku. Bez zmian, o ile udało się ustalić, że jest to tylko trafienie w chybił trafił.
Fsando,

Odpowiedzi:

16

Ok rozwiązałem to:

1) Upewnij się, że masz potrzebne ustawienia regionalne, nie możesz powiedzieć, które konkretnie potrzebujesz, ale kiedy wiesz, że tworzysz go w ten sposób (używając en_DK.utf8)

sudo locale-gen en_DK.utf8

2) Aby upewnić się, że ustawienia regionalne obowiązują dla Thunderbirda, dodaj go do skryptu, który uruchamia Thunderbirda, więc najpierw znajdź ten skrypt:

2a) znajdź odpowiedni skrypt

which thunderbird

W moim przypadku: / usr / bin / thunderbird

2b) dodaj ustawienia regionalne do skryptu (używam geany edytora):

gksudo geany /usr/bin/thunderbird

Dodaj to na początku skryptu (właśnie umieszczam na samym początku):

LC_ALL="en_DK.utf8"
export LC_ALL

Chcę tylko dodać to:

https://help.ubuntu.com/community/Locale

EDYCJA: jak wskazał pl1nk Lepszym rozwiązaniem byłoby NIE dotknięcie skryptu / usr / bin / thunderbird i utworzenie skryptu „/ usr / local / bin / thunderbird” z tą zawartością

#!/bin/sh
LC_ALL="en_DK.utf8"
export LC_ALL
/usr/bin/thunderbird $@

upewnij się, że jest wykonywalny

sudo chmod a+x /usr/local/bin/thunderbird

Następnie sprawdź, czy jest on używany do uruchomienia Thunderbirda:

which thunderbird

powinien odpowiedzieć na to:

/usr/local/bin/thunderbird

Teraz thunderbird można uruchomić jak poprzednio.

Fsando
źródło
Świetne rozwiązanie ... mała sprzeczka Nie jest dobrą praktyką używanie sudo do uruchamiania edytora, lepiej używać sudoedit do edycji plików posiadanych jako root.
Peter Jenkins,
Dlaczego to nie jest dobra praktyka? Nie wiedziałem o sudoedit przydatnym dla ssh. OTH: najwyraźniej po prostu uruchamia domyślny edytor nie-GUI, co jest w porządku, jeśli jest to nano, jak w moim przypadku, ale byłbym bardzo podekscytowany, gdy spotkałem się z vi, którego szczerze mówiąc nawet nie wiem, jak zamknąć.
Fsando,
W klasycznym edytorze vi możesz „uciec” do powłoki, naciskając „:! Bash”, wtedy będziesz miał dostęp do roota (jeśli uruchomisz sudo). Inne edytory mają podobne funkcje, ponieważ pomocne jest uruchamianie kompilatora i wyświetlanie danych wyjściowych bez opuszczania edytora (chociaż szczerze mówiąc w nowoczesnych menedżerach okien nie jest tak naprawdę używane).
Peter Jenkins,
1
@ pl1nk tak, zdałem sobie z tego sprawę. Po prostu nie miałem czasu na poprawienie mojej odpowiedzi. O wiele lepszym rozwiązaniem byłoby umieszczenie LC_ * w skrypcie „/ usr / local / bin / thunderbird”, który wywołuje globalny.
Fsando,
1
Mam złożony błąd za to.
nh2
11

Istnieje dodatek Thunderbird w formacie Super Data :

wprowadź opis zdjęcia tutaj

wprowadź opis zdjęcia tutaj

Cegła suszona na słońcu
źródło
To zdecydowanie lepsza odpowiedź niż jakakolwiek inna.
Russ Bateman,
@RussBateman, ale (zgodnie z linkiem) zmienia to tylko kolumnę Data / Otrzymanie, a nie takie rzeczy jak Błyskawica. Zmiana ustawień regionalnych jest bardziej niezawodna.
Sparhawk
2
Ta wtyczka nie jest już obsługiwana i jest kompatybilna tylko z wersją Thunderbird 21 :(
Jeff Puckett,
Istnieje proste rozwiązanie problemów z formatem godziny i daty - nowsza wtyczka działa dla Thunderbirda 60+, która umożliwia pełne dostosowanie formatów godziny i daty. Nazywa się „Enhanced Date Formatter” i znajduje się na liście rozszerzeń programu Thunderbird. Po prostu uruchom Thunderbirda i wyszukaj go, zainstaluj i dostosuj, jak chcesz.
Compatico
@Compatico - Dziękuję za podpowiedź, ale w „Enhanced Date Formatter” ( link ) nie ma opcji zmiany formatu czasu, tylko daty, więc nie wydaje się to rozwiązaniem na 24 godziny.
bitinerant
7

Thunderbird 60

Sposób formatowania dat i godzin w Thunderbirdu 60 zmienił się . Poniżej podano format daty / godziny, który będzie wyglądał następująco 2018-12-04 14:23:

  1. Utwórz ustawienia regionalne katalogu głównego

    sudo ln -s /usr/share/i18n/locales/en_DK /usr/share/i18n/locales/root
    sudo sh -c "echo 'root.UTF-8 UTF-8' > /var/lib/locales/supported.d/local"
    sudo locale-gen
    
  2. Skopiuj lokalnie program uruchamiający Thunderbird

    cp /usr/share/applications/thunderbird.desktop ~/.local/share/applications/
    
  3. Zmień ustawienia regionalne daty i godziny dla Thunderbirda

    sed -i.bak 's/^Exec=thunderbird %u/Exec=env LC_TIME=root.utf8 thunderbird %u/' ~/.local/share/applications/thunderbird.desktop
    

Thunderbird 59 i niższe

Odpowiedź Fsando działa, ale LC_ALL zmieni całe ustawienia regionalne (data, liczba, format waluty itp.) Używane przez Thunderbirda, a nie tylko format daty / godziny, o co pytamy w pytaniu. Nie tylko, ale nie lubię tworzyć dodatkowych skryptów, jeśli nie muszę. Oto co zrobiłem:

  1. Upewnij się, że ustawienia narodowe en_DK.utf8 są dostępne (powinno być już dostępne, jeśli językiem pulpitu jest angielski):

    locale -a | grep en_DK
    
  2. Jeśli nie, zainstaluj ustawienia regionalne w oficjalny sposób :

    sudo apt-get -y install language-pack-en
    

    Lub jeśli nie masz ochoty instalować dodatkowych pakietów:

    sudo locale-gen en_DK.utf8
    
  3. Skopiuj lokalnie program uruchamiający Thunderbird

    cp /usr/share/applications/thunderbird.desktop ~/.local/share/applications/
    
  4. Zmień tylko ustawienia daty i godziny dla Thunderbirda

    sed -i.bak 's/^Exec=thunderbird %u/Exec=env LC_TIME=en_DK.utf8 thunderbird %u/' ~/.local/share/applications/thunderbird.desktop
    
  5. Jeśli używasz Xfce, zmiana zostanie natychmiast zauważona, ale jeśli używasz Unity, być może będziesz musiał się wylogować / zalogować ponownie. Nie jestem pewien co do GNOME.

Następnym razem, gdy otworzysz Thunderbirda ze swojego programu uruchamiającego, powinien użyć nowego formatu daty / godziny.

Zalety:

  • Zastępuje tylko format daty / godziny
  • Nie są wymagane żadne dodatkowe skrypty
  • Wprowadza zmiany tylko dla użytkownika, a nie wszystkich użytkowników w systemie

Jako bonus, zmiana nie powinna zostać nadpisana, gdy pakiet Thunderbird zostanie zaktualizowany, ponieważ nie dotknie twojego lokalnego pliku uruchamiającego.

Źródło:
http://kb.mozillazine.org/Date_display_format

Uwaga: Jak wspomina Sparhawk , LC_TIME zmieni format daty, a także format godziny. Można jednak znaleźć ustawienia regionalne o tym samym formacie daty i innym formacie czasu, a tym samym zmienić tylko format godziny.

Na przykład en_US.utf8tak wygląda lokalizacja:

$ python3 -c "import locale, time; locale.setlocale(locale.LC_TIME, 'en_US.utf8'); print(time.strftime('%x %X'))"
12/05/2018 03:40:50 PM

Zmiana ustawień regionalnych na również en_DK.utf8spowoduje zmianę formatu daty:

$ python3 -c "import locale, time; locale.setlocale(locale.LC_TIME, 'en_DK.utf8'); print(time.strftime('%x %X'))"
2018-12-05 15:41:14
bmaupin
źródło
Czy to też nie zmieni formatu daty?
Sparhawk
Tylko jeśli wybierzesz lokalizację z innym formatem daty. Ale mimo to dobra uwaga. Zaktualizowałem swoją odpowiedź.
bmaupin
Nie próbowałem tego, ale myślę, że krótka randka różni się między en_US.UTF8i en_GB.UTF8. tzn. ten pierwszy to MM / DD / RR, a drugi to DD / MM / RR. To może coś zmienić w Thunderbird?
Sparhawk
6
LC_TIME=en_DK.utf8 thunderbird

Na wszelki wypadek uruchamiam też swój system jako en_US.UTF-8 ...

Kjeld Flarup
źródło
Jak omówiono w komentarzach pod innymi odpowiedziami, en_DKprzestał działać dla nowszych wersji Thunderbirda, ale env LC_TIME=sv_SE.UTF-8 thunderbirdbędzie działał OK (chyba że użyje formatu „długiej” daty).
Randall Whitman,
2

Właśnie dodałem LC_TIME=en_DK.UTF-8do /etc/default/locale. Działa dobrze na Linux Mint 17.3, powinien również działać w Ubuntu.

1) otwórz /etc/default/locale w swoim edytorze. Zawartość pliku powinna wyglądać mniej więcej tak:

LANG="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"

2) dodaj LC_TIME=en_DK.UTF-8 . Jeśli LC_TIME=już tam jest, zmień jego wartość na en_DK.UTF-8.

3) Zapisz i uruchom ponownie system operacyjny.

/etc/default/localenie jest specyficzny dla Thunderbirda. Jeśli zmienisz tam format, prawdopodobnie dotyczy to również innych aplikacji.

Rotareti
źródło
0

W Ubuntu 18.04 i nowszych (i prawdopodobnie w innych dystrybucjach opartych na Gnome) format daty jest kontrolowany przez Gnome dla każdego użytkownika. Otwórz Terminali wpisz:

gsettings set org.gnome.desktop.interface clock-format '24h'

Następnie uruchom ponownie Thunderbirda.

Kredyt: komentarz PRATAP na pokrewne pytanie Jak ustawić format daty od 12 do 24 godzin w wierszu poleceń

bitinerant
źródło
-1

Istnieje proste rozwiązanie problemów z formatem godziny i daty - nowsza wtyczka działa dla Thunderbirda 60+, która umożliwia pełne dostosowanie formatów godziny i daty. Nazywa się „Enhanced Date Formatter” i znajduje się na liście rozszerzeń programu Thunderbird. Po prostu uruchom Thunderbirda i wyszukaj go, zainstaluj i dostosuj, jak chcesz.

Compatico
źródło
Dzięki za podpowiedź, ale w „Enhanced Date Formatter” ( link ) nie ma opcji zmiany formatu godziny, a jedynie daty, więc nie wydaje się to rozwiązaniem na 24 godziny.
bitinerant