Commit Graph
6497 Commits
Author SHA1 Message Date
David Sangrey beb68efae8 [2568] Fix Ships JSON Typo Release/6.0.1 2025-12-25 01:36:24 -05:00
David Sangrey e9877fa81a [RELEASE] 6.0.0 Release/6.0.0 2025-12-12 21:31:38 -05:00
David Sangrey e8d55a5835 [Minor] Improve Pre-Config Logger 2025-12-12 20:58:55 -05:00
David Sangrey 6efe2057ec Merge pull request #2556 from rinkulu/configfix
[Bugfix] Fix type mismatch when reading certain boolean config values
2025-12-12 20:37:27 -05:00
David Sangrey 4f895de427 Merge branch 'develop' into configfix 2025-12-12 20:35:00 -05:00
David Sangrey b8950880e4 [#2559] Treat Bool as Bool 2025-12-11 23:06:18 -05:00
David Sangrey e6143bc21b [#2558] Continue Using , not ; 2025-12-11 23:01:07 -05:00
David Sangrey 13b47c2174 Add Plugin Naming Warning 2025-12-09 21:39:14 -05:00
rinkulu 3693c08a0d [Bugfix] Fix type mismatch when reading certain boolean config values 2025-12-08 07:11:59 +03:00
David Sangrey c03e4b6f6f [Minor] Add Caspian Explorer 2025-12-07 17:49:56 -05:00
David Sangrey b89ca67dc7 [Minor] Fix Double File Extensions 2025-12-07 15:19:28 -05:00
David Sangrey 852b1deab7 [PRE-RELEASE] 6.0.0-rc2 Release/6.0.0-rc2 2025-12-07 15:01:43 -05:00
David Sangrey 6fdf290438 [Fix] Allow Legacy Loading Mechanisms 2025-12-07 15:01:03 -05:00
David Sangrey ab5c8ac6c6 [2440] Fix Updater Race Condition 2025-12-07 14:05:48 -05:00
David Sangrey da08d5adfb [Minor] Linters gonna Lint 2025-12-06 23:55:33 +00:00
David Sangrey f8d021e58c [PRE-RELEASE] 6.0.0-RC1 2025-12-06 23:50:44 +00:00
David Sangrey aad20960c1 Merge pull request #2552 from dwomble/main
Fleetcarrier CAPI trigger events update
2025-12-05 19:22:53 -05:00
David Sangrey 8bd423701e Merge branch 'develop' into main 2025-12-05 19:18:16 -05:00
dwomble a27054c1a7 Merge branch 'EDCD:main' into main 2025-12-05 15:14:41 -08:00
David Sangrey 051acf1722 stupid linter 2025-12-05 09:25:31 -05:00
David Sangrey cd3dbd2397 Update linux.py 2025-12-05 09:22:54 -05:00
David Sangrey beb716b8b5 Merge pull request #2533 from dvdmuckle/develop
Correctly decode lists in Linux .ini file, treat all config keys as lowercase
2025-12-05 09:19:17 -05:00
David Sangrey d762992609 Merge branch 'develop' into develop 2025-12-05 09:12:56 -05:00
Navl 12f0949f26 Adjusted carrier CAPI trigger events 2025-12-04 20:48:32 -08:00
David Sangrey 6d3430a0ae Merge pull request #2550 from inutt/fix/2532/physical-multicrew-detection
Add detection of physical multicrew
2025-12-04 22:54:29 -05:00
Inutt 523f890e7b Fix if->elif left over from reverts 2025-12-05 00:25:44 +00:00
Inutt 140f0fbc41 Revert "[#2532] Ignore Loadout If Embarked"
This reverts commit b85705c13a.
2025-12-05 00:23:15 +00:00
Inutt 26e3407f53 Revert "Add Multicrew Check Too"
This reverts commit a8e34f2a3b.
2025-12-05 00:20:14 +00:00
Inutt 733a518341 Set player's multicrew role to idle when physically boarding another player's ship 2025-12-04 23:56:07 +00:00
David Sangrey 0e28cd4962 [Minor] Remove Unneeded Keys Calls 2025-12-01 22:08:16 -05:00
David Sangrey 2041b3d3d3 [Minor] Update Type Hints and Alias Usages 2025-12-01 22:04:28 -05:00
David Sangrey b63b4b90ca [Minor] Move Linter Warning 2025-12-01 21:54:14 -05:00
David Sangrey a9693dca4c Merge pull request #2534 from inutt/fix/2345/relative-imports
Fix/2345/relative imports
2025-12-01 21:51:36 -05:00
David Sangrey 1beddea8e0 Merge pull request #2538 from inutt/fix/--/linting
Fix mypy linting issues
2025-12-01 21:51:20 -05:00
David Sangrey 88c21ec883 Merge branch 'develop' into fix/2345/relative-imports 2025-12-01 21:49:52 -05:00
David Sangrey 6d9b200ea8 [#2535] Redo CSV Exporter 2025-12-01 21:46:47 -05:00
David Sangrey 04bbedff29 Merge pull request #2548 from EDCD/dependabot/pip/develop/mypy-1.19.0
Bump mypy from 1.18.2 to 1.19.0
2025-12-01 20:57:27 -05:00
David Sangrey 92601d7b7f Merge pull request #2540 from inutt/enhancement/2404/localised-system-colonisation-ship-name
Add localisation of stations names
2025-12-01 20:46:02 -05:00
David Sangrey 98d37d7676 Merge pull request #2544 from EDCD/dependabot/github_actions/develop/actions/checkout-6
Bump actions/checkout from 5 to 6
2025-12-01 20:45:09 -05:00
David Sangrey fc139c0c5d Merge pull request #2546 from EDCD/dependabot/pip/develop/pytest-9.0.1
Bump pytest from 9.0.0 to 9.0.1
2025-12-01 20:33:38 -05:00
David Sangrey aa7beceef8 Merge pull request #2545 from EDCD/dependabot/pip/develop/pre-commit-4.5.0
Bump pre-commit from 4.4.0 to 4.5.0
2025-12-01 20:33:29 -05:00
David Sangrey 9d374ab612 Merge pull request #2547 from EDCD/dependabot/pip/develop/coverage-toml--7.12.0
Bump coverage[toml] from 7.11.2 to 7.12.0
2025-12-01 20:33:20 -05:00
dependabot[bot] 834158a3c7 Bump mypy from 1.18.2 to 1.19.0
Bumps [mypy](https://github.com/python/mypy) from 1.18.2 to 1.19.0.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.18.2...v1.19.0)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.19.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 19:12:41 +00:00
dependabot[bot] 252e16cade Bump coverage[toml] from 7.11.2 to 7.12.0
Bumps [coverage[toml]](https://github.com/coveragepy/coveragepy) from 7.11.2 to 7.12.0.
- [Release notes](https://github.com/coveragepy/coveragepy/releases)
- [Changelog](https://github.com/coveragepy/coveragepy/blob/main/CHANGES.rst)
- [Commits](https://github.com/coveragepy/coveragepy/compare/7.11.2...7.12.0)

---
updated-dependencies:
- dependency-name: coverage[toml]
  dependency-version: 7.12.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 19:12:36 +00:00
dependabot[bot] 77eee9e8be Bump pytest from 9.0.0 to 9.0.1
Bumps [pytest](https://github.com/pytest-dev/pytest) from 9.0.0 to 9.0.1.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/9.0.0...9.0.1)

---
updated-dependencies:
- dependency-name: pytest
  dependency-version: 9.0.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 19:12:30 +00:00
dependabot[bot] 98f1aed3f0 Bump pre-commit from 4.4.0 to 4.5.0
Bumps [pre-commit](https://github.com/pre-commit/pre-commit) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/pre-commit/pre-commit/releases)
- [Changelog](https://github.com/pre-commit/pre-commit/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pre-commit/pre-commit/compare/v4.4.0...v4.5.0)

---
updated-dependencies:
- dependency-name: pre-commit
  dependency-version: 4.5.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 19:12:23 +00:00
dependabot[bot] 4fc73c39cd Bump actions/checkout from 5 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 18:49:07 +00:00
David Sangrey 28cc39fd1d Merge pull request #2542 from inutt/fix/2541/preferences-path-display
Fix preference dialog not detecting tab change events
2025-11-30 21:10:33 -05:00
Inutt c5961cd91c Fix preference dialog not detecting tab change events 2025-11-29 03:26:21 +00:00
Inutt 9fd04e5c02 Add localisation of stations names
This currently only affects system colonisation ships, which have '$EXT_PANEL_ColonisationShip;' in their StationName
entries in the journal. Other strings may need to be added in future.

Fixes #2404
diff --git a/L10n/en.template b/L10n/en.template
index faac3259..f670e39c 100644
--- a/L10n/en.template
+++ b/L10n/en.template
@@ -839,3 +839,9 @@

 /* edastro_core.py: Settings>EDAstro - Label on checkbox for 'send data'; */
 "Send data to EDAstro" = "Send data to EDAstro";
+
+/* common_coreutils.py: Colonisation ship name, with title; In files: common_coreutils.py:81:81 */
+"System Colonisation Ship {NAME}" = "System Colonisation Ship {NAME}";
+
+/* common_coreutils.py: Unidentified colonisation ship; In files: common_coreutils.py:84:84 */
+"System Colonisation Ship" = "System Colonisation Ship";
diff --git a/plugins/common_coreutils.py b/plugins/common_coreutils.py
index 6b90d4dc..a488de46 100644
--- a/plugins/common_coreutils.py
+++ b/plugins/common_coreutils.py
@@ -29,6 +29,7 @@ import gzip
 import io
 import json
 import os
+import re
 import myNotebook as nb  # noqa: N813
 from EDMCLogging import get_main_logger
 from companion import CAPIData
@@ -47,6 +48,49 @@ SEPY = 10  # seperator line spacing
 STATION_UNDOCKED = '×'  # "Station" name to display when not docked = U+00D7

+# Known colonisation ship names match one of the following:
+#   "$EXT_PANEL_ColonisationShip;"
+#   "$EXT_PANEL_ColonisationShip; <ship name>" with "<ship name>" being eg; "Okawara Horizons"
+#   "$EXT_PANEL_ColonisationShip:#index=<number>;"
+#   "$EXT_PANEL_ColonisationShip:#index=<number>; <ship name>"
+_RE_COLONISATION_SHIP = re.compile(r'\$EXT_PANEL_ColonisationShip(?::#index=(\d+))?;(?: (.+))?')
+
+
+def localised_name(value: str | None) -> str | None:
+    """
+    Handle localisation of strings in places like station names.
+
+    This is currently an issue for system colonisation ships that have a station name along the
+    lines of "$EXT_PANEL_ColonisationShip; Okawara Horizons" when written to the journal, but would
+    be better displayed as "System Colonisation Ship Okawara Horizona" (or other appropriately
+    localised equivalent).
+
+    If no (known) localisable strings are present, the input will be returned unmodified.
+
+    :param value: The non-localised string.
+    :return: The localised string, or None if the input was None.
+    """
+    if value is None:
+        return None
+
+    colonisation_ship_match = _RE_COLONISATION_SHIP.match(value)
+    if colonisation_ship_match:
+        ship_index = colonisation_ship_match.group(1)
+        ship_name = colonisation_ship_match.group(2)
+        # Use the ship's index as its name if no name was provided.
+        ship_id = ship_name or ship_index
+
+        if ship_id:
+            # LANG: Colonisation ship name, with title
+            value = tr.tl("System Colonisation Ship {NAME}").format(NAME=ship_id)
+
+        else:
+            # LANG: Unidentified colonisation ship
+            value = tr.tl("System Colonisation Ship")
+
+    return value
+
+
 def plugin_start3(plugin_dir: str) -> str:
     """
     Start the plugin.
@@ -121,7 +165,7 @@ def station_link_common(data: CAPIData, this):
     :param this: The module global from the calling module.
     """
     if data['commander']['docked'] or this.on_foot and this.station_name:
-        this.station_link['text'] = this.station_name
+        this.station_link['text'] = localised_name(this.station_name)
     elif data['lastStarport']['name'] and data['lastStarport']['name'] != "":
         this.station_link['text'] = STATION_UNDOCKED
     else:
@@ -163,12 +207,14 @@ def station_name_setter_common(this):
     :param this: The module global from the calling module.
     """
     to_set: str = cast(str, this.station_name)
+
     if not to_set:
         if this.system_population is not None and this.system_population > 0:
             to_set = STATION_UNDOCKED
         else:
             to_set = ''

+    to_set = str(localised_name(to_set))
     this.station_link['text'] = to_set

diff --git a/plugins/edsm.py b/plugins/edsm.py
index e1e6b168..902e248b 100644
--- a/plugins/edsm.py
+++ b/plugins/edsm.py
@@ -43,7 +43,7 @@ from ttkHyperlinkLabel import HyperlinkLabel
 from l10n import translations as tr
 from plugins.common_coreutils import (api_keys_label_common, PADX, PADY, BUTTONX, SEPY, BOXY, STATION_UNDOCKED,
                                       show_pwd_var_common, station_link_common, this_format_common,
-                                      cmdr_data_initial_common)
+                                      cmdr_data_initial_common, localised_name)

 # TODO:
@@ -543,7 +543,7 @@ entry: {entry!r}'''
                 to_set = ''

         if this.station_link:
-            this.station_link['text'] = to_set
+            this.station_link['text'] = localised_name(to_set)
             this.station_link['url'] = station_url(str(this.system_name), str(this.station_name))
             this.station_link.update_idletasks()
2025-11-29 01:25:19 +00:00