diff --git a/FuelBoard/en.lproj/Localizable.strings b/FuelBoard/en.lproj/Localizable.strings index 4c27623..8812b12 100644 --- a/FuelBoard/en.lproj/Localizable.strings +++ b/FuelBoard/en.lproj/Localizable.strings @@ -31,8 +31,9 @@ /* Favourites tab */ "No favourites yet" = "No favourites yet"; -"Tap the star on any station in the Stations tab to pin it here, ranked by which is cheapest for that fuel." = "Tap the star on any station in the Stations tab to pin it here, ranked by which is cheapest for that fuel."; -"%@ favourites — cheapest first" = "%@ favourites — cheapest first"; +"Tap the star on any station in the Stations tab to pin it here. The first station in each list becomes the favourite used in single widgets — drag to put your pick first." = "Tap the star on any station in the Stations tab to pin it here. The first station in each list becomes the favourite used in single widgets — drag to put your pick first."; +"%@ favourites" = "%@ favourites"; +"The first station is the favourite used in single widgets. Tap Edit, then drag to reorder." = "The first station is the favourite used in single widgets. Tap Edit, then drag to reorder."; "%@ is your cheapest %@ favourite. Favourites are monitored automatically — switch to the Alerts tab and enable alerts to get pinged when you approach one that's the cheapest within the radius." = "%@ is your cheapest %@ favourite. Favourites are monitored automatically — switch to the Alerts tab and enable alerts to get pinged when you approach one that's the cheapest within the radius."; /* Alerts tab */ @@ -40,15 +41,12 @@ "Fuel" = "Fuel"; "Radius" = "Radius"; "%lld %@" = "%lld %@"; -"When you approach a station that is the cheapest within the radius, FuelBoard sends a notification — even with the app closed. Alerts watch for the cheapest %@ station within the radius." = "When you approach a station that is the cheapest within the radius, FuelBoard sends a notification — even with the app closed. Alerts watch for the cheapest %@ station within the radius."; -"Monitoring" = "Monitoring"; +"Follow search (%@)" = "Follow search (%@)"; +"When you approach a station that is the cheapest within the radius, FuelBoard sends a notification — even with the app closed. Nearby stations selling %@ are watched — favourites get priority — and each station alerts at most once per hour. Follow search mirrors the Stations-tab distance, capped at 8 miles for reliable geofencing." = "When you approach a station that is the cheapest within the radius, FuelBoard sends a notification — even with the app closed. Nearby stations selling %@ are watched — favourites get priority — and each station alerts at most once per hour. Follow search mirrors the Stations-tab distance, capped at 8 miles for reliable geofencing."; "No stations monitored yet — open the Stations tab to load prices first." = "No stations monitored yet — open the Stations tab to load prices first."; -"Geofenced stations" = "Geofenced stations"; -"Your favourites for %@ get priority, then the closest stations selling that fuel fill the rest (18 max, iOS region limit)." = "Your favourites for %@ get priority, then the closest stations selling that fuel fill the rest (18 max, iOS region limit)."; -"Alerts are checked against the cheapest station within the trigger radius for the fuel chosen above. Each station alerts at most once per hour." = "Alerts are checked against the cheapest station within the trigger radius for the fuel chosen above. Each station alerts at most once per hour."; "Last alert" = "Last alert"; "Live Activity" = "Live Activity"; -"Shows the cheapest station for the fuel and distance you pick here on the Lock Screen and Dynamic Island — independent of the Stations tab. Updates as you drive; tap to open directions. Live Activities can be disabled in System Settings → Live Activities." = "Shows the cheapest station for the fuel and distance you pick here on the Lock Screen and Dynamic Island — independent of the Stations tab. Updates as you drive; tap to open directions. Live Activities can be disabled in System Settings → Live Activities."; +"Shows the cheapest station for the fuel and distance you pick here on the Lock Screen and Dynamic Island — independent of the Stations tab (choose Follow search to mirror its distance instead). Updates as you drive; tap to open directions. Live Activities can be disabled in System Settings → Live Activities." = "Shows the cheapest station for the fuel and distance you pick here on the Lock Screen and Dynamic Island — independent of the Stations tab (choose Follow search to mirror its distance instead). Updates as you drive; tap to open directions. Live Activities can be disabled in System Settings → Live Activities."; /* Settings tab */ "Units" = "Units"; @@ -59,6 +57,15 @@ "Send plain test notification" = "Send plain test notification"; "Debug" = "Debug"; "The first button applies the real criteria — cheapest %@ station within %@ of you — and sends the actual station's name, price and coordinates. The second fires with no criteria at all (nearest seller), still carrying a real station, just to verify a notification appears and tapping it opens directions. Cheapest in range mirrors the app list (selected fuel + distance); the in-range count mirrors the alert radius." = "The first button applies the real criteria — cheapest %@ station within %@ of you — and sends the actual station's name, price and coordinates. The second fires with no criteria at all (nearest seller), still carrying a real station, just to verify a notification appears and tapping it opens directions. Cheapest in range mirrors the app list (selected fuel + distance); the in-range count mirrors the alert radius."; +"Widget Diagnostics" = "Widget Diagnostics"; +"Each beacon is written by the widget extension at the end of every timeline entry for that intent type (keychain, so it survives free-SideStore installs). A missing SMALL beacon after adding the small widget means its timeline never reaches the provider. Installed widgets come from WidgetCenter." = "Each beacon is written by the widget extension at the end of every timeline entry for that intent type (keychain, so it survives free-SideStore installs). A missing SMALL beacon after adding the small widget means its timeline never reaches the provider. Installed widgets come from WidgetCenter."; +"SMALL: %@" = "SMALL: %@"; +"SMALL: no beacon yet" = "SMALL: no beacon yet"; +"MEDIUM: %@" = "MEDIUM: %@"; +"MEDIUM: no beacon yet" = "MEDIUM: no beacon yet"; +"Geofence monitoring" = "Geofence monitoring"; +"Geofenced stations" = "Geofenced stations"; +"Favourites for %@ get priority, then the closest stations selling that fuel fill the rest (18 max, iOS region limit). Each station alerts at most once per hour." = "Favourites for %@ get priority, then the closest stations selling that fuel fill the rest (18 max, iOS region limit). Each station alerts at most once per hour."; "Leave a tip" = "Leave a tip"; "Support FuelBoard" = "Support FuelBoard"; "A small tip helps keep the data relay and app development going. Thank you!" = "A small tip helps keep the data relay and app development going. Thank you!"; @@ -86,6 +93,7 @@ "The purchase couldn't be verified. Please try again." = "The purchase couldn't be verified. Please try again."; "Your tip is pending approval. It'll finish automatically." = "Your tip is pending approval. It'll finish automatically."; "The tip couldn't be completed: %@" = "The tip couldn't be completed: %@"; +"—" = "—"; /* Onboarding */ "Welcome to FuelBoard" = "Welcome to FuelBoard";