浏览代码

Update the text of the system tray menu. #586

oldj 3 年之前
父节点
当前提交
b5fa79ab56

+ 200 - 192
src/common/i18n/languages/de.ts

@@ -1,196 +1,204 @@
- /**
+/**
  * @author: bergo
  * @homepage: https://bergo.dev
  */
 
-  export default {
-    _app_name: 'SwitchHosts',
-    _key: 'de',
-    _name: 'Deutsch',
-    about: 'Über',
-    acknowledgement: 'Danksagung',
-    advanced: 'Erweitert',
-    all: 'Alle',
-    append: 'Anhängen',
-    auto_refresh: 'Automatisch aktualisieren',
-    btn_cancel: 'Abbrechen',
-    btn_ok: 'OK',
-    change: 'Ändern',
-    check_update: 'Aktualisierung prüfen',
-    choice_mode: 'Auswahlmodus',
-    choice_mode_default: 'Standard',
-    choice_mode_desc:
-      'Gilt nur für das oberste Element, jeder Ordner kann seinen eigenen Auswahlmodus festlegen.',
-    choice_mode_multiple: 'Mehrfach',
-    choice_mode_single: 'Einfach',
-    choices: 'Auswahlen',
-    chosen: 'Ausgewählt',
-    clear_history: 'Verlauf löschen',
-    click_to_open: 'Klicken zum Öffnen',
-    close: 'Schließen',
-    colon: ': ',
-    commands: 'Befehle',
-    commands_help:
-      'Die folgenden Systembefehle werden ausgeführt, wenn Hosts angewendet werden:',
-    commands_title: 'Befehl nach dem Anlegen eines Hosts',
-    comment_current_line: 'Aktuelle Zeile kommentieren',
-    content: 'Inhalt',
-    copy: 'Kopieren',
-    cut: 'Ausschneiden',
-    day: 'Tag',
-    days: 'Tage',
-    delete: 'Löschen',
-    download: 'Herunterladen',
-    edit: 'Bearbeiten',
-    export: 'Exportieren',
-    export_done: 'Der Export ist abgeschlossen.',
-    fail: 'Fehlgeschlagen!',
-    feedback: 'Rückmeldung',
-    file: 'Datei',
-    find: 'Suchen',
-    find_all: 'Alles suchen',
-    find_and_replace: 'Suchen und ersetzen',
-    find_history: 'Verlauf suchen',
-    folder: 'Ordner',
-    front: 'Vorderseite',
-    general: 'Allgemein',
-    group: 'Gruppe',
-    help: 'Hilfe',
-    hide: 'Ausblenden',
-    hide_at_launch: 'Beim Start ausblenden',
-    hide_dock_icon: 'Dock-Symbol ausblenden',
-    hide_history: 'Verlauf ausblenden',
-    hide_others: 'Andere ausblenden',
-    homepage: 'Startseite',
-    host: 'Gastgeber',
-    hosts_add: 'Neue Hosts hinzufügen',
-    hosts_delete: 'Diesen Host löschen',
-    hosts_delete_confirm: 'Sind Sie sicher, dass Sie die aktuellen Hosts löschen wollen?',
-    hosts_edit: 'Hosts bearbeiten',
-    hosts_title: 'Titel des Hosts',
-    hosts_type: 'Hosts Typ',
-    hosts_updated: 'Die Hosts-Datei wurde aktualisiert.',
-    hour: 'Stunde',
-    hours: 'Stunden',
-    http_api_on: 'HTTP-API eingeschaltet',
-    http_api_on_desc:
-      'Läuft auf Port {0}, kann von Software von Drittanbietern wie Alfred verwendet werden, um den Host zu wechseln.',
-    http_api_only_local: 'HTTP-API hört nur auf 127.0.0.1',
-    tray_mini_window: 'Taskleistensymbol-Verknüpfung',
-    multi_chose_folder_switch_all: 'Mehrfachauswahl-Ordnerschalter zur Steuerung von Unterelementen',
-    ignore_case: 'Groß- und Kleinschreibung ignorieren',
-    import: 'Importieren',
-    import_done: 'Der Import ist abgeschlossen.',
-    import_fail: 'Der Import ist fehlgeschlagen!',
-    import_from_url: 'Importieren von URL',
-    is_latest_version_inform: 'Super, Sie haben die neueste Version!',
-    item_found: '{0} Einträge gefunden.',
-    items: 'items',
-    items_found: '{0} Einträge gefunden.',
-    language: 'Sprache',
-    last_refresh: 'Letzte Aktualisierung: ',
-    latest_version_desc: 'Die neueste Version ist: {0}',
-    line: 'Zeile',
-    lines: 'Zeilen',
-    loading: 'Loading...',
-    local: 'Lokal',
-    match: 'Übereinstimmung',
-    migrate_confirm:
-      'SwitchHosts v4.0 verwendet ein neues Datenspeicherformat, möchten Sie alte Daten in das neue Format migrieren?',
-    migrate_data: 'Daten migrieren',
-    minimieren: 'Minimieren',
-    minute: 'Minute',
-    minutes: 'Minuten',
-    move_items_to_trashcan: 'Verschiebe {0} Objekte in den Mülleimer',
-    move_to_trashcan: 'In die Mülltonne verschieben',
-    need_to_relaunch: 'Muss neu gestartet werden',
-    need_to_relaunch_after_setting_changed:
-      'Die Einstellungen wurden geändert und werden erst nach einem Neustart der App wirksam.',
-    never: 'Niemals',
-    new: 'Neu',
-    new_version_found: 'Neue Version gefunden',
-    next: 'Nächste',
-    no_access_to_hosts: 'Keine Berechtigung zum Schreiben in die Hosts-Datei.',
-    no_record: 'Kein Datensatz',
-    overwrite: 'Überschreiben',
-    password: 'Passwort',
-    paste: 'Einfügen',
-    port: 'Anschluss',
-    preferences: 'Präferenzen',
-    previous: 'Vorhergehend',
-    protocol: 'Protokoll',
-    proxy: 'Proxy',
-    quit: 'Beenden',
-    read_only: 'Nur Lesen',
-    redo: 'Wiederherstellen',
-    refresh: 'Auffrischen',
-    regexp: 'Regulärer Ausdruck',
-    reload: 'Neu laden',
-    remote: 'Entfernt',
-    remove_duplicate_records: 'Doppelte Datensätze entfernen',
-    remove_duplicate_records_desc:
-      'Wenn eine Domain auf mehrere IPs verweist, wird nur die erste wirksam, die folgenden werden in Kommentare umgewandelt.',
-    replace: 'Ersetzen',
-    replace_all: 'Ersetze alle',
-    replace_history: 'Historie ersetzen',
-    reset: 'Zurücksetzen',
-    reset_data_dir_confirm:
-      'Sind Sie sicher, dass Sie den Datenordner an der Standardadresse ({0}) wiederherstellen wollen?',
-    reset_zoom: 'Zoom zurücksetzen',
-    search: 'Suchen',
-    select_all: 'Alles auswählen',
-    selected: 'Ausgewählt',
-    show_history: 'Historie anzeigen',
-    show_main_window: 'Hauptfenster anzeigen',
-    show_title_on_tray: 'Titel auf dem Tablett anzeigen',
-    source_code: 'Quellcode',
-    success: 'Erfolg!',
-    sudo_prompt_title: 'Geben Sie Ihr sudo-Passwort ein',
-    system_hosts: 'System-Hosts',
-    system_hosts_history: 'Historische Versionen der System-Hosts',
-    system_hosts_history_delete_confirm:
-      'Sind Sie sicher, dass Sie dieses Element löschen wollen?',
-    system_hosts_history_help:
-      'Wenn die Gesamtzahl der historischen Einträge diese Grenze überschreitet, wird der älteste Eintrag gelöscht.',
-    system_hosts_history_limit: 'Maximale Anzahl von Datensätzen: ',
-    test: 'Test',
-    theme: 'Thema',
-    theme_dark: 'Dunkel',
-    theme_light: 'Hell',
-    title: 'Titel',
-    to_show_source: 'Durch Doppelklick wird der Quellcode angezeigt.',
-    toggle_developer_tools: 'Entwicklerwerkzeuge einschalten',
-    toggle_dock_icon: 'Das Dock-Symbol einschalten',
-    toggle_full_screen: 'Vollbildmodus einschalten',
-    trashcan: 'Mülleimer',
-    trashcan_clear: 'Den Mülleimer leeren',
-    trashcan_clear_confirm: 'Sind Sie sicher, dass Sie den Mülleimer leeren wollen?',
-    trashcan_delete_confirm: 'Möchten Sie dieses Objekt vollständig löschen?',
-    trashcan_restore: 'Wiederherstellen',
-    undo: 'Rückgängig machen',
-    unhide: 'Einblenden',
-    untitled: 'Ohne Titel',
-    url_placeholder: 'http:// oder https:// oder file://',
-    usage_data_agree: 'Ja, übermitteln Sie anonymisierte Nutzungsdaten',
-    usage_data_help:
-      'Möchten Sie uns helfen, SwitchHosts zu verbessern, indem Sie regelmäßig anonyme Nutzungsdaten übermitteln?',
-    usage_data_title: 'Machen Sie SwitchHosts besser!',
-    use_proxy: 'Proxy verwenden',
-    use_system_window_frame: 'Verwenden Sie den Systemfensterrahmen, ein Neustart der Anwendung ist erforderlich',
-    view: 'Ansicht',
-    where_is_my_data: 'Wo sind meine Daten gespeichert?',
-    where_is_my_hosts: 'Wo ist meine Hosts-Datei?',
-    window: 'Fenster',
-    write_mode: 'Schreibmodus',
-    write_mode_append_help:
-      'Hängen Sie die neuen Datensätze an das Ende der Hosts-Datei des Systems an.',
-    write_mode_overwrite_help:
-      'Überschreibt die Systemhosts-Datei mit den neuen Datensätzen.',
-    write_mode_set: 'Schreibmodus einstellen',
-    your_data_is: 'Ihre Datendateien sind gespeichert in:',
-    your_hosts_file_is: 'Ihre Hosts-Datei befindet sich in:',
-    zoom: 'Vergrößern',
-    zoom_in: 'Vergrößern',
-    zoom_out: 'Herauszoomen',
-  }
-  
+import { LanguageDict } from '@root/common/types'
+
+const lang: LanguageDict = {
+  _app_name: 'SwitchHosts',
+  _key: 'de',
+  _name: 'Deutsch',
+  about: 'Über',
+  acknowledgement: 'Danksagung',
+  advanced: 'Erweitert',
+  all: 'Alle',
+  append: 'Anhängen',
+  auto_refresh: 'Automatisch aktualisieren',
+  btn_cancel: 'Abbrechen',
+  btn_ok: 'OK',
+  change: 'Ändern',
+  check_update: 'Aktualisierung prüfen',
+  choice_mode: 'Auswahlmodus',
+  choice_mode_default: 'Standard',
+  choice_mode_desc:
+    'Gilt nur für das oberste Element, jeder Ordner kann seinen eigenen Auswahlmodus festlegen.',
+  choice_mode_multiple: 'Mehrfach',
+  choice_mode_single: 'Einfach',
+  choices: 'Auswahlen',
+  chosen: 'Ausgewählt',
+  clear_history: 'Verlauf löschen',
+  click_to_open: 'Klicken zum Öffnen',
+  close: 'Schließen',
+  colon: ': ',
+  commands: 'Befehle',
+  commands_help:
+    'Die folgenden Systembefehle werden ausgeführt, wenn Hosts angewendet werden:',
+  commands_title: 'Befehl nach dem Anlegen eines Hosts',
+  comment_current_line: 'Aktuelle Zeile kommentieren',
+  content: 'Inhalt',
+  copy: 'Kopieren',
+  cut: 'Ausschneiden',
+  day: 'Tag',
+  days: 'Tage',
+  delete: 'Löschen',
+  download: 'Herunterladen',
+  edit: 'Bearbeiten',
+  export: 'Exportieren',
+  export_done: 'Der Export ist abgeschlossen.',
+  fail: 'Fehlgeschlagen!',
+  feedback: 'Rückmeldung',
+  file: 'Datei',
+  find: 'Suchen',
+  find_all: 'Alles suchen',
+  find_and_replace: 'Suchen und ersetzen',
+  find_history: 'Verlauf suchen',
+  folder: 'Ordner',
+  front: 'Vorderseite',
+  general: 'Allgemein',
+  group: 'Gruppe',
+  help: 'Hilfe',
+  hide: 'Ausblenden',
+  hide_at_launch: 'Beim Start ausblenden',
+  hide_dock_icon: 'Dock-Symbol ausblenden',
+  hide_history: 'Verlauf ausblenden',
+  hide_others: 'Andere ausblenden',
+  homepage: 'Startseite',
+  host: 'Gastgeber',
+  hosts_add: 'Neue Hosts hinzufügen',
+  hosts_delete: 'Diesen Host löschen',
+  hosts_delete_confirm:
+    'Sind Sie sicher, dass Sie die aktuellen Hosts löschen wollen?',
+  hosts_edit: 'Hosts bearbeiten',
+  hosts_title: 'Titel des Hosts',
+  hosts_type: 'Hosts Typ',
+  hosts_updated: 'Die Hosts-Datei wurde aktualisiert.',
+  hour: 'Stunde',
+  hours: 'Stunden',
+  http_api_on: 'HTTP-API eingeschaltet',
+  http_api_on_desc:
+    'Läuft auf Port {0}, kann von Software von Drittanbietern wie Alfred verwendet werden, um den Host zu wechseln.',
+  http_api_only_local: 'HTTP-API hört nur auf 127.0.0.1',
+  ignore_case: 'Groß- und Kleinschreibung ignorieren',
+  import: 'Importieren',
+  import_done: 'Der Import ist abgeschlossen.',
+  import_fail: 'Der Import ist fehlgeschlagen!',
+  import_from_url: 'Importieren von URL',
+  is_latest_version_inform: 'Super, Sie haben die neueste Version!',
+  item_found: '{0} Einträge gefunden.',
+  items: 'items',
+  items_found: '{0} Einträge gefunden.',
+  language: 'Sprache',
+  last_refresh: 'Letzte Aktualisierung: ',
+  latest_version_desc: 'Die neueste Version ist: {0}',
+  line: 'Zeile',
+  lines: 'Zeilen',
+  loading: 'Loading...',
+  local: 'Lokal',
+  match: 'Übereinstimmung',
+  migrate_confirm:
+    'SwitchHosts v4.0 verwendet ein neues Datenspeicherformat, möchten Sie alte Daten in das neue Format migrieren?',
+  migrate_data: 'Daten migrieren',
+  minimize: 'Minimieren',
+  minute: 'Minute',
+  minutes: 'Minuten',
+  move_items_to_trashcan: 'Verschiebe {0} Objekte in den Mülleimer',
+  move_to_trashcan: 'In die Mülltonne verschieben',
+  multi_chose_folder_switch_all:
+    'Mehrfachauswahl-Ordnerschalter zur Steuerung von Unterelementen',
+  need_to_relaunch: 'Muss neu gestartet werden',
+  need_to_relaunch_after_setting_changed:
+    'Die Einstellungen wurden geändert und werden erst nach einem Neustart der App wirksam.',
+  never: 'Niemals',
+  new: 'Neu',
+  new_version_found: 'Neue Version gefunden',
+  next: 'Nächste',
+  no_access_to_hosts: 'Keine Berechtigung zum Schreiben in die Hosts-Datei.',
+  no_record: 'Kein Datensatz',
+  overwrite: 'Überschreiben',
+  password: 'Passwort',
+  paste: 'Einfügen',
+  port: 'Anschluss',
+  preferences: 'Präferenzen',
+  previous: 'Vorhergehend',
+  protocol: 'Protokoll',
+  proxy: 'Proxy',
+  quit: 'Beenden',
+  read_only: 'Nur Lesen',
+  redo: 'Wiederherstellen',
+  refresh: 'Auffrischen',
+  regexp: 'Regulärer Ausdruck',
+  reload: 'Neu laden',
+  remote: 'Entfernt',
+  remove_duplicate_records: 'Doppelte Datensätze entfernen',
+  remove_duplicate_records_desc:
+    'Wenn eine Domain auf mehrere IPs verweist, wird nur die erste wirksam, die folgenden werden in Kommentare umgewandelt.',
+  replace: 'Ersetzen',
+  replace_all: 'Ersetze alle',
+  replace_history: 'Historie ersetzen',
+  reset: 'Zurücksetzen',
+  reset_data_dir_confirm:
+    'Sind Sie sicher, dass Sie den Datenordner an der Standardadresse ({0}) wiederherstellen wollen?',
+  reset_zoom: 'Zoom zurücksetzen',
+  search: 'Suchen',
+  select_all: 'Alles auswählen',
+  selected: 'Ausgewählt',
+  show_dock_icon: 'Dock-Symbol anzeigen',
+  show_history: 'Historie anzeigen',
+  show_main_window: 'Hauptfenster anzeigen',
+  show_title_on_tray: 'Titel auf dem Tablett anzeigen',
+  source_code: 'Quellcode',
+  success: 'Erfolg!',
+  sudo_prompt_title: 'Geben Sie Ihr sudo-Passwort ein',
+  system_hosts: 'System-Hosts',
+  system_hosts_history: 'Historische Versionen der System-Hosts',
+  system_hosts_history_delete_confirm:
+    'Sind Sie sicher, dass Sie dieses Element löschen wollen?',
+  system_hosts_history_help:
+    'Wenn die Gesamtzahl der historischen Einträge diese Grenze überschreitet, wird der älteste Eintrag gelöscht.',
+  system_hosts_history_limit: 'Maximale Anzahl von Datensätzen: ',
+  test: 'Test',
+  theme: 'Thema',
+  theme_dark: 'Dunkel',
+  theme_light: 'Hell',
+  title: 'Titel',
+  to_show_source: 'Durch Doppelklick wird der Quellcode angezeigt.',
+  toggle_developer_tools: 'Entwicklerwerkzeuge einschalten',
+  toggle_dock_icon: 'Das Dock-Symbol einschalten',
+  toggle_full_screen: 'Vollbildmodus einschalten',
+  trashcan: 'Mülleimer',
+  trashcan_clear: 'Den Mülleimer leeren',
+  trashcan_clear_confirm:
+    'Sind Sie sicher, dass Sie den Mülleimer leeren wollen?',
+  trashcan_delete_confirm: 'Möchten Sie dieses Objekt vollständig löschen?',
+  trashcan_restore: 'Wiederherstellen',
+  tray_mini_window: 'Taskleistensymbol-Verknüpfung',
+  undo: 'Rückgängig machen',
+  unhide: 'Einblenden',
+  untitled: 'Ohne Titel',
+  url_placeholder: 'http:// oder https:// oder file://',
+  usage_data_agree: 'Ja, übermitteln Sie anonymisierte Nutzungsdaten',
+  usage_data_help:
+    'Möchten Sie uns helfen, SwitchHosts zu verbessern, indem Sie regelmäßig anonyme Nutzungsdaten übermitteln?',
+  usage_data_title: 'Machen Sie SwitchHosts besser!',
+  use_proxy: 'Proxy verwenden',
+  use_system_window_frame:
+    'Verwenden Sie den Systemfensterrahmen, ein Neustart der Anwendung ist erforderlich',
+  view: 'Ansicht',
+  where_is_my_data: 'Wo sind meine Daten gespeichert?',
+  where_is_my_hosts: 'Wo ist meine Hosts-Datei?',
+  window: 'Fenster',
+  write_mode: 'Schreibmodus',
+  write_mode_append_help:
+    'Hängen Sie die neuen Datensätze an das Ende der Hosts-Datei des Systems an.',
+  write_mode_overwrite_help:
+    'Überschreibt die Systemhosts-Datei mit den neuen Datensätzen.',
+  write_mode_set: 'Schreibmodus einstellen',
+  your_data_is: 'Ihre Datendateien sind gespeichert in:',
+  your_hosts_file_is: 'Ihre Hosts-Datei befindet sich in:',
+  zoom: 'Vergrößern',
+  zoom_in: 'Vergrößern',
+  zoom_out: 'Herauszoomen',
+}
+
+export default lang

+ 7 - 4
src/common/i18n/languages/en.ts

@@ -58,7 +58,7 @@ export default {
   help: 'Help',
   hide: 'Hide',
   hide_at_launch: 'Hide at launch',
-  hide_dock_icon: 'Hide dock icon',
+  hide_dock_icon: 'Hide the dock icon',
   hide_history: 'Hide history',
   hide_others: 'Hide others',
   homepage: 'Homepage',
@@ -76,8 +76,6 @@ export default {
   http_api_on_desc:
     'Runs on port {0}, can be used by third-party software such as Alfred to switch hosts.',
   http_api_only_local: 'HTTP API only listen 127.0.0.1',
-  tray_mini_window: 'taskbar icon shortcut',
-  multi_chose_folder_switch_all: 'multi-select folder switch to control sub-items',
   ignore_case: 'Ignore case',
   import: 'Import',
   import_done: 'The import is complete.',
@@ -103,6 +101,8 @@ export default {
   minutes: 'minutes',
   move_items_to_trashcan: 'Move {0} items to trashcan',
   move_to_trashcan: 'Move to trashcan',
+  multi_chose_folder_switch_all:
+    'multi-select folder switch to control sub-items',
   need_to_relaunch: 'Need to relaunch',
   need_to_relaunch_after_setting_changed:
     'The setting has been changed and will take effect after the app is restarted.',
@@ -140,6 +140,7 @@ export default {
   search: 'Search',
   select_all: 'Select all',
   selected: 'Selected',
+  show_dock_icon: 'Show the dock icon',
   show_history: 'Show history',
   show_main_window: 'Show main window',
   show_title_on_tray: 'Show title on tray',
@@ -167,6 +168,7 @@ export default {
   trashcan_clear_confirm: 'Are you sure you want to empty the trashcan?',
   trashcan_delete_confirm: 'Do you want to delete this item completely?',
   trashcan_restore: 'Restore',
+  tray_mini_window: 'taskbar icon shortcut',
   undo: 'Undo',
   unhide: 'Unhide',
   untitled: 'Untitled',
@@ -176,7 +178,8 @@ export default {
     'Would you like to help us improve SwitchHosts by periodically submitting anonymous usage data?',
   usage_data_title: 'Make SwitchHosts better!',
   use_proxy: 'Use proxy',
-  use_system_window_frame: 'Use system window frame, application restart is required',
+  use_system_window_frame:
+    'Use system window frame, application restart is required',
   view: 'View',
   where_is_my_data: 'Where is my data stored?',
   where_is_my_hosts: 'Where is my hosts file?',

+ 13 - 6
src/common/i18n/languages/fr.ts

@@ -1,9 +1,11 @@
 /**
- * @author: oldj
- * @homepage: https://oldj.net
+ * @author: Aktilor
+ * @homepage: https://github.com/Aktilor
  */
 
-export default {
+import { LanguageDict } from '@root/common/types'
+
+const lang: LanguageDict = {
   _app_name: 'SwitchHosts',
   _key: 'fr',
   _name: 'Français',
@@ -76,8 +78,6 @@ export default {
   http_api_on_desc:
     "Actif sur le port {0}, peut être utilisé par un logiciel tier comme Alfred pour changer d'hosts",
   http_api_only_local: "L'API HTTP n'écoute que sur 127.0.0.1",
-  tray_mini_window: 'raccourci de l\'icône de la barre des tâches',
-  multi_chose_folder_switch_all: 'Commutateur de dossier à sélection multiple pour contrôler les sous-éléments',
   ignore_case: 'Ignorer la casse',
   import: 'Importer',
   import_done: "L'importation est terminée",
@@ -103,6 +103,8 @@ export default {
   minutes: 'minutes',
   move_items_to_trashcan: 'Déplacer {0} éléments dans la corbeille',
   move_to_trashcan: 'Déplacer dans la corbeille',
+  multi_chose_folder_switch_all:
+    'Commutateur de dossier à sélection multiple pour contrôler les sous-éléments',
   need_to_relaunch: 'Besoin de redémarrer',
   need_to_relaunch_after_setting_changed:
     "Le paramètre a été modifié et prendra effet après le redémarrage de l'application.",
@@ -140,6 +142,7 @@ export default {
   search: 'Rechercher',
   select_all: 'Tout sélectionner',
   selected: 'Sélectionné',
+  show_dock_icon: "Afficher l'icone dans le Dock",
   show_history: "Afficher l'historique",
   show_main_window: 'Afficher la fenêtre principale',
   show_title_on_tray: 'Afficher le titre dans la barre des menus',
@@ -167,6 +170,7 @@ export default {
   trashcan_clear_confirm: 'Êtes-vous sûr de vouloir vider la corbeille ?',
   trashcan_delete_confirm: 'Voulez-vous supprimer définitivement cet élément ?',
   trashcan_restore: 'Restaurer',
+  tray_mini_window: "raccourci de l'icône de la barre des tâches",
   undo: 'Annuler',
   unhide: 'Démasquer',
   untitled: 'Sans titre',
@@ -177,7 +181,8 @@ export default {
     "Voulez-vous nous aider à améliorer SwitchHosts en soumettant périodiquement vos données d'utilisation de manière anonyme ?",
   usage_data_title: 'Rendez SwitchHosts meilleur !',
   use_proxy: 'Utiliser un proxy',
-  use_system_window_frame: 'Utiliser le cadre de la fenêtre système, le redémarrage de l\'application est requis',
+  use_system_window_frame:
+    "Utiliser le cadre de la fenêtre système, le redémarrage de l'application est requis",
   view: 'Vue',
   where_is_my_data: 'Où sont stockées mes données ?',
   where_is_my_hosts: 'Où est mon fichier hosts ?',
@@ -194,3 +199,5 @@ export default {
   zoom_in: 'Zoommer',
   zoom_out: 'Dézoommer',
 }
+
+export default lang

+ 4 - 3
src/common/i18n/languages/zh.ts

@@ -58,7 +58,7 @@ const lang: LanguageDict = {
   help: 'Help',
   hide: '隐藏',
   hide_at_launch: '启动时隐藏',
-  hide_dock_icon: '隐藏任务栏(Dock)图标',
+  hide_dock_icon: '隐藏任务栏图标',
   hide_history: '隐藏历史记录',
   hide_others: '隐藏其他',
   homepage: '主页',
@@ -75,8 +75,6 @@ const lang: LanguageDict = {
   http_api_on: '开启 HTTP API',
   http_api_on_desc: '运行于 {0} 端口,可用于 Alfred 等第三方软件切换 hosts。',
   http_api_only_local: 'HTTP API 仅监听 127.0.0.1',
-  tray_mini_window: '任务栏快捷小窗',
-  multi_chose_folder_switch_all: '多选文件夹开关控制子项目',
   ignore_case: '忽略大小写',
   import: '导入',
   import_done: '导入已完成。',
@@ -102,6 +100,7 @@ const lang: LanguageDict = {
   minutes: '分钟',
   move_items_to_trashcan: '移动 {0} 项到回收站',
   move_to_trashcan: '移到回收站',
+  multi_chose_folder_switch_all: '多选文件夹开关控制子项目',
   need_to_relaunch: '需要重启',
   need_to_relaunch_after_setting_changed: '设置已更改,应用重启后生效。',
   never: '从不',
@@ -137,6 +136,7 @@ const lang: LanguageDict = {
   search: '搜索',
   select_all: '全选',
   selected: '已选',
+  show_dock_icon: '显示任务栏图标',
   show_history: '显示历史记录',
   show_main_window: '显示主窗口',
   show_title_on_tray: '在系统托盘显示标题',
@@ -163,6 +163,7 @@ const lang: LanguageDict = {
   trashcan_clear_confirm: '确实要清空回收站吗?',
   trashcan_delete_confirm: '要彻底删除本项吗?',
   trashcan_restore: '还原',
+  tray_mini_window: '任务栏快捷小窗',
   undo: '撤销',
   unhide: '取消隐藏',
   untitled: '未命名',

+ 11 - 6
src/main/ui/tray/index.ts

@@ -38,7 +38,7 @@ const makeTray = async () => {
 
   let locale = await configGet('locale')
   if (process.platform === 'linux') {
-    locale = global.system_locale  // configGet() always get undefined on Linux
+    locale = global.system_locale // configGet() always get undefined on Linux
   }
   const i18n = new I18N(locale)
   const { lang } = i18n
@@ -83,6 +83,8 @@ const makeTray = async () => {
   tray.on('double-click', () => broadcast(events.active_main_window))
 
   tray.on('right-click', async () => {
+    let hide_dock_icon = await configGet('hide_dock_icon')
+
     const menu = Menu.buildFromTemplate([
       {
         label: lang._app_name,
@@ -99,7 +101,7 @@ const makeTray = async () => {
         ? <MenuItemConstructorOptions[]>[
             { type: 'separator' },
             {
-              label: lang.toggle_dock_icon,
+              label: hide_dock_icon ? lang.show_dock_icon : lang.hide_dock_icon,
               async click() {
                 let hide_dock_icon = await configGet('hide_dock_icon')
                 hide_dock_icon = !hide_dock_icon
@@ -168,12 +170,14 @@ const getLinuxPosition = () => {
   let x: number
   let y: number
 
-  if (point.x - screen_bounds0.x > screen_bounds.width / 2) {  // display on the right of the active screen
+  if (point.x - screen_bounds0.x > screen_bounds.width / 2) {
+    // display on the right of the active screen
     x = screen_bounds0.x + screen_bounds0.width - window_bounds.width
   } else {
     x = 0
   }
-  if (point.y < screen_bounds.height / 2) {  // display on the top of the active screen
+  if (point.y < screen_bounds.height / 2) {
+    // display on the top of the active screen
     y = 0
   } else {
     y = screen_bounds.height - window_bounds.height
@@ -182,7 +186,7 @@ const getLinuxPosition = () => {
   x = Math.round(x)
   y = Math.round(y)
 
-  return {x, y}
+  return { x, y }
 }
 
 const window = () => {
@@ -204,7 +208,8 @@ const window = () => {
 }
 
 const show = () => {
-  let {x, y} = process.platform === 'linux' ? getLinuxPosition(): getPosition()
+  let { x, y } =
+    process.platform === 'linux' ? getLinuxPosition() : getPosition()
   win.setPosition(x, y, true)
   win.show()
   // win.focus()

+ 1 - 1
src/version.json

@@ -1 +1 @@
-[4, 1, 2, 6082]
+[4, 1, 2, 6083]