{ "@@locale": "en", "appTitle": "Halkyon Train", "@appTitle": {"description": "The app's name: the window's title, and where halkyon_app's texts name the app."}, "launchProduct": "Train", "@launchProduct": {"description": "The app's word in its wordmark, under \"Halkyon\"."}, "instanceFirstStartSubtitle": "Choose the instance to keep your workouts on. Someone runs each one; you can add others later.", "homeEmptyTitle": "No workouts yet", "homeEmptyHint": "Workouts recorded on your phone show here.", "accountTitle": "Account", "accountDeleteMessage": "Your account is deleted on the server and on all your devices. This can't be undone.", "aboutTitle": "About", "homeRecordHint": "Record one with the button below.", "recordAction": "Record", "recordBack": "Back to the recording", "recordSheetTitle": "Record a workout", "activityRunning": "Running", "activityWalking": "Walking", "activityHiking": "Hiking", "activityCycling": "Cycling", "activityIndoorRowing": "Rowing indoors", "recordAutoPause": "Pause by itself", "@recordAutoPause": {"description": "The switch for auto-pause, as the recording starts."}, "recordAutoPauseHint": "When you stand still, and going on as you move again", "recordStart": "Start", "recordLocationRefused": "Train needs your location to record this. You can allow it in the system's settings.", "recordingWaitingForGps": "Waiting for GPS", "recordingWaitingForGpsAccuracy": "Waiting for GPS · ±{metres} m", "@recordingWaitingForGpsAccuracy": {"description": "Before a fix precise enough: how far off the last one may be.", "placeholders": {"metres": {"type": "int"}}}, "recordingGpsAccuracy": "GPS ±{metres} m", "@recordingGpsAccuracy": {"description": "How far off the last fix may be.", "placeholders": {"metres": {"type": "int"}}}, "recordingMovingTime": "moving time", "@recordingMovingTime": {"description": "Under the time, lower case: the time moved, pauses left out."}, "recordingDistance": "distance", "recordingPace": "pace", "recordingSpeed": "speed", "recordingDistanceValue": "{km} km", "@recordingDistanceValue": {"placeholders": {"km": {"type": "String", "example": "5.12"}}}, "recordingPaceValue": "{pace} /km", "@recordingPaceValue": {"description": "Minutes and seconds a kilometre takes.", "placeholders": {"pace": {"type": "String", "example": "6:18"}}}, "recordingSpeedValue": "{kmh} km/h", "@recordingSpeedValue": {"placeholders": {"kmh": {"type": "String", "example": "24.3"}}}, "recordingPausedAuto": "Paused: not moving", "@recordingPausedAuto": {"description": "Train paused the recording by itself (auto-pause)."}, "recordingPausedByHand": "Paused", "recordingPause": "Pause", "recordingResume": "Resume", "recordingStop": "Stop", "recordingHoldToStop": "Hold Stop to end the workout", "recordingStoppedTitle": "Save this workout?", "recordingSave": "Save", "recordingDiscard": "Discard", "recordingDiscardTitle": "Discard this workout?", "recordingDiscardMessage": "Its time and track are deleted from this device. This can't be undone.", "recordingSaveFailed": "It can't be saved on this device, which doesn't hold your account's keys. It stays here until it can be.", "recordingCutOffTitle": "A recording was cut off", "recordingCutOffMessage": "A recording from {start} was cut off. Save it up to {end}, or discard it?", "@recordingCutOffMessage": {"description": "A recording found unfinished as the app opened: when it started and its last sample.", "placeholders": {"start": {"type": "String", "example": "07:30"}, "end": {"type": "String", "example": "08:02"}}}, "recordingNotificationChannel": "Recording", "@recordingNotificationChannel": {"description": "The name of the recording's notification channel, in the system's settings."}, "recordingNotificationPaused": "{activity} · paused", "@recordingNotificationPaused": {"description": "The notification's title while paused.", "placeholders": {"activity": {"type": "String", "example": "Running"}}}, "workoutName": "{when, select, morning_running{Morning run} morning_walking{Morning walk} morning_hiking{Morning hike} morning_cycling{Morning ride} morning_indoorRowing{Morning row} afternoon_running{Afternoon run} afternoon_walking{Afternoon walk} afternoon_hiking{Afternoon hike} afternoon_cycling{Afternoon ride} afternoon_indoorRowing{Afternoon row} evening_running{Evening run} evening_walking{Evening walk} evening_hiking{Evening hike} evening_cycling{Evening ride} evening_indoorRowing{Evening row} night_running{Night run} night_walking{Night walk} night_hiking{Night hike} night_cycling{Night ride} night_indoorRowing{Night row} other{Workout}}", "@workoutName": {"description": "A workout's name where the person gave none: the time of day it started (morning 5–12, afternoon 12–17, evening 17–22, night) and its activity, as Strava names them.", "placeholders": {"when": {"type": "String"}}}, "workoutLocked": "Locked workout", "workoutLockedHint": "This device doesn't hold the key it's sealed with.", "@workoutLockedHint": {"description": "Under a workout this device can't open (its key is missing here)."}, "workoutEdit": "Edit", "workoutEditTitle": "Edit workout", "workoutNameLabel": "Name", "workoutNotesLabel": "Notes", "workoutSave": "Save", "workoutDelete": "Delete", "workoutDeleteTitle": "Delete this workout?", "workoutDeleteMessage": "It's deleted on all your devices.", "workoutDeleted": "Workout deleted", "workoutMovingTime": "moving time", "workoutTotalTime": "whole time", "@workoutTotalTime": {"description": "Lower case, under a figure: from start to end, pauses included."}, "workoutDistance": "distance", "workoutPace": "pace", "workoutSpeed": "speed", "workoutClimb": "climbed", "@workoutClimb": {"description": "Lower case, under a figure: the elevation gained."}, "workoutClimbValue": "{metres} m", "@workoutClimbValue": {"placeholders": {"metres": {"type": "int"}}}, "workoutSplits": "Splits", "workoutSplitKm": "km {number}", "@workoutSplitKm": {"description": "A kilometre's split, its number.", "placeholders": {"number": {"type": "int"}}}, "workoutSplitFiveKm": "{from}–{to} km", "@workoutSplitFiveKm": {"description": "A cycling split of 5 km: where it starts and ends.", "placeholders": {"from": {"type": "int"}, "to": {"type": "int"}}}, "workoutPaceChart": "Pace", "workoutSpeedChart": "Speed", "workoutElevationChart": "Elevation", "workoutMapSource": "Map by {name}: it sees your device's address and the area shown, not your track.", "@workoutMapSource": {"description": "Under a workout's map: what the map's source sees.", "placeholders": {"name": {"type": "String", "example": "OpenFreeMap"}}}, "workoutMapSourceAbout": "What {name} keeps", "@workoutMapSourceAbout": {"description": "A link to the map source's page about what it keeps.", "placeholders": {"name": {"type": "String", "example": "OpenFreeMap"}}}, "workoutMapUnavailable": "The map can't be loaded now.", "workoutNotFound": "This workout is gone.", "recordHeartRate": "Heart rate", "recordNoStrap": "No strap", "@recordNoStrap": {"description": "On the Record sheet, under Heart rate, where no strap is chosen."}, "strapSheetTitle": "Heart-rate strap", "strapSearching": "Looking for straps nearby…", "strapSearchingHint": "Put the strap on: most wake up only once they touch skin.", "strapNear": "close by", "@strapNear": {"description": "Under a strap found: its signal is strong."}, "strapFar": "further off", "@strapFar": {"description": "Under a strap found: its signal is weak."}, "strapUnnamed": "Unnamed strap", "@strapUnnamed": {"description": "A strap that sends no name."}, "strapForget": "Forget strap", "strapRefused": "Train needs nearby devices to find your strap. You can allow it in the system's settings.", "strapBluetoothOff": "Bluetooth is off. Turn it on to find your strap.", "recordingHeartRate": "heart rate", "@recordingHeartRate": {"description": "Under the heart rate, lower case."}, "recordingStrapLost": "Strap lost", "@recordingStrapLost": {"description": "While recording: the strap is out of reach or off; Train keeps asking for it."}, "workoutAverageHeartRate": "average heart rate", "@workoutAverageHeartRate": {"description": "Lower case, under a figure."}, "workoutMaxHeartRate": "highest heart rate", "@workoutMaxHeartRate": {"description": "Lower case, under a figure."}, "workoutBpmValue": "{bpm} bpm", "@workoutBpmValue": {"placeholders": {"bpm": {"type": "int"}}}, "workoutHeartRateChart": "Heart rate" }