{ "manifest": { "app": { "name": "SpineViewer" } }, "viewer": { "title": "Spine Preview", "skin": "Skin", "play": "▶ Play", "pause": "⏸ Pause", "static": "▮ Still", "staticLabel": "Still", "playPauseTitle": "Play / pause (Space)", "loop": "Loop", "speed": "Speed", "pma": "Premultiplied", "pmaTitle": "For textures exported with Premultiplied Alpha (PMA)", "background": "Background", "backgroundTitle": "50×50 checkerboard that pans and zooms with the canvas and participates in blend modes", "thumbnail": "Set current item thumbnail", "thumbnailTitle": "Set the current frame as this item's 400×400 custom thumbnail", "animatedThumbnailTitle": "Generate animated thumbnail", "animatedThumbnailAttention": "Warning:", "animatedThumbnailNote": "The generated thumbnail replaces the existing thumbnail. This cannot be undone and ", "animatedThumbnailDanger": "the original thumbnail cannot be restored", "animatedThumbnailSizeNote": ". To prevent animated thumbnail data from becoming too large, the file will be reduced below the configured size.", "animatedFormat": "Output format", "animatedRange": "Animation range", "animatedStart": "Start", "animatedEnd": "End", "framesUnit": "frames", "animatedQuality": "Thumbnail quality", "animatedMaxSize": "Thumbnail size", "animatedInvalidSize": "Enter a whole number between 10 and 1024 KB", "animatedCompressing": "Compressing animated thumbnail {current}/{total}…", "animatedWebpUnavailable": "This environment cannot encode WebP. Choose APNG instead.", "animatedCannotFit": "The animation cannot be reduced to {target} KB (minimum about {actual} KB). Increase the limit or shorten the frame range.", "qualityLow": "Low", "qualityMedium": "Medium", "qualityHigh": "High", "animatedConfirm": "Generate and replace", "animatedInvalidRange": "Enter a valid whole-frame range between 0 and {duration}", "animatedGenerating": "Generating animated thumbnail {current}/{total}…", "animatedTooLarge": "The animated thumbnail exceeds 50 MB. Shorten the range or select a lower quality.", "animatedThumbUpdated": "Animated thumbnail updated · {frames} frames · {size} KB", "groupThumbnail": "Generate thumbnails for related assets", "groupThumbnailTitle": "Review related Spine assets, then generate thumbnails in a batch", "groupDialogTitle": "Generate thumbnails for related assets", "groupDialogSummary": "Generate {generate} item(s) and skip {skip} item(s).", "groupDialogNote": "Only checked related assets will receive thumbnails. Images and assets with custom thumbnails are unchecked by default. Selecting the latter replaces the existing thumbnail, which the plugin cannot automatically restore.", "cancel": "Cancel", "groupConfirm": "Generate", "groupWillGenerate": "Will generate", "groupWillReplaceCustom": "Will replace existing custom thumbnail", "groupCustomNotSelected": "Custom thumbnail exists (not selected)", "groupNotSelected": "Not selected", "groupSkipCustom": "Skipped: custom thumbnail exists", "groupUnavailable": "Skipped: could not verify", "groupNoTargets": "There are no eligible thumbnails in the current asset group.", "groupGenerating": "Generating asset-group thumbnails {current}/{total}…", "groupApplyNotConfirmed": "Eagle did not confirm that the thumbnail was applied", "groupComplete": "Asset-group thumbnails complete: {success} succeeded, {skip} skipped, {failed} failed.", "versionTitle": "Spine version", "reloadTitle": "Reload folder", "animationList": "Animation list", "animations": "Animations", "setupPose": "Setup Pose", "errorTitle": "Cannot preview", "durationPlaceholder": "Duration --", "keyframesLegend": "Blue ticks: keyframes", "keyframesLegendTitle": "A blue tick marks a time where at least one bone, slot or constraint property has a keyframe", "keyframesHint": "Blue ticks mark animation keyframes; hover a tick to see its time and frame", "timePlaceholder": "0.00 / 0.00 s · 0 / 0 frames", "staticPoseTitle": "Still pose · frame 1", "keyframeTitle": "Keyframe · {time} · frame {frame}", "timelineStatic": "Still · 1 frame", "timelineDuration": "Duration {time} · {frames} frames", "readoutStatic": "Still · 1 / 1 frames", "readout": "{time} / {total} · {frame} / {totalFrames} frames", "rulerStatic": "0 s (still)", "seconds": "{value} s", "imagePreview": "Image preview (no matching Spine assets found)", "generating": "Generating and updating the Eagle thumbnail…", "thumbUpdated": "Eagle thumbnail updated · {format} {size}KB", "thumbWrittenNoRefresh": "Thumbnail written, but auto-refresh failed: {error}", "recentered": "Canvas re-centered", "pmaOn": "Premultiplied alpha on", "pmaOff": "Premultiplied alpha off", "pmaRemembered": "{state} · saved for this asset", "pmaSaveFailed": "Toggled, but saving the setting failed: {error}", "badgeFailed": "Failed to load the Spine badge", "runtimeFailed": "Cannot load the Spine runtime: {file}", "compoundName": "Eagle has not synced the compound extension yet; please reopen the library", "txtRegistered": "This item is still registered as TXT. Regenerate the thumbnail in Eagle and reopen the library", "apiHttp": "Eagle API returned HTTP {status}", "noSkeletonForThumb": "No skeleton loaded; cannot generate a thumbnail", "noItemId": "Cannot determine the Eagle item ID from the asset path", "itemMismatch": "The preview file does not match the Eagle item; the thumbnail update was cancelled", "replaceCustomThumbnailConfirm": "This item already has a custom thumbnail. Continuing will replace it, and the plugin cannot automatically restore the previous image. Continue?", "thumbnailFailed": "Failed to generate the thumbnail: {error}", "imageLoadFailed": "Failed to load the image", "settingsNotReady": "Asset settings are not ready", "noSkeletonFile": "Skeleton file not found", "noSkeletonFileMsg": "Could not locate the Spine skeleton file (.skel / .skel.bytes / .json) that matches the selected file.\n\nPlease import the whole Spine export into Eagle.", "noAtlas": "Atlas not found", "noAtlasMsg": "Could not locate the matching .atlas / .atlas.txt file.", "unsupportedVersion": "Unsupported version", "unsupportedVersionMsg": "Unrecognized Spine version: {version}\nSupported versions: {list}", "unknownVersion": "unknown", "runtimeLoadFailed": "Failed to load the runtime", "atlasLoadFailed": "Failed to load the atlas", "emptySkeleton": "Empty skeleton data", "emptySkeletonMsg": "No valid skeleton data could be read.", "missingFile": "Missing file", "missingFileMsg": "No file path parameter was provided.", "fileNotExist": "File not found", "loadFailed": "Failed to load", "notSpineText": "This file is not a .atlas.txt or .skel.bytes Spine asset.", "truncated256": "\n\n(only the first 256 KB is shown)", "suffix": "Suffix", "suffixTitle": "Filename suffixes are ignored when matching, so hero-mesh.skel pairs with hero.atlas", "suffixManage": "Manage suffixes…", "suffixAdd": "+ Add suffix…", "suffixDefaults": "Built-in suffixes", "suffixCustom": "Custom suffixes (select to remove)", "suffixAddTitle": "Add a suffix", "suffixAddNote": "Suffixes are ignored when matching filenames: after adding hover, hero-hover.skel pairs with hero.atlas. Letters, digits, - and _ only, up to 50 characters.", "suffixPlaceholder": "e.g. hover", "suffixInvalid": "Use letters, digits, - and _ only, and start with a letter or digit", "suffixDuplicate": "That suffix already exists", "suffixConfirm": "Add", "suffixRemoveTitle": "Remove a suffix", "suffixRemoveNote": "After removing “{name}”, files carrying that suffix will no longer be paired automatically.", "suffixRemove": "Remove", "suffixSaveFailed": "Saving the suffix list failed: {error}", "truncated1m": "\n\n(large file, only the first 1 MB is shown)" } }