- keyPath field no longer tells users to enter a server-side path - settings.highlight.builtin.* notes, timeout messages in four languages - prototype-safe dictionary lookup; language as a render-time dependency - Partial<AppSettings> saveSettings contract, update:stateGet channel
170 lines
10 KiB
TypeScript
170 lines
10 KiB
TypeScript
/** Namespace: settings (the settings dialog: font/cursor/render/highlight/theme/system/about). Owner: settings page. */
|
|
const settings: Record<string, string> = {
|
|
'settings.title': 'Settings',
|
|
'settings.tabs.font': 'Font',
|
|
'settings.tabs.cursor': 'Cursor & Scrollback',
|
|
'settings.tabs.render': 'Rendering & Behavior',
|
|
'settings.tabs.highlight': 'Highlighting',
|
|
'settings.tabs.theme': 'Themes',
|
|
'settings.tabs.system': 'System',
|
|
'settings.tabs.about': 'About',
|
|
'settings.resizeHandle': 'Drag to resize',
|
|
'settings.preview': 'Preview',
|
|
'settings.deleteConfirmDesc': 'This cannot be undone. Continue?',
|
|
'settings.color.foreground': 'Foreground',
|
|
'settings.color.background': 'Background',
|
|
'settings.color.cursor': 'Cursor',
|
|
'settings.color.selection': 'Selection',
|
|
'settings.font.label': 'Font',
|
|
'settings.font.desc': 'The built-in default or a system monospace font',
|
|
'settings.font.placeholder': 'Select a font',
|
|
'settings.font.default': 'Default',
|
|
'settings.font.size': 'Font size',
|
|
'settings.font.sizeDesc': 'Pixel size of the terminal text',
|
|
'settings.font.weight': 'Weight',
|
|
'settings.font.weightDesc': '400 is regular, 700 is bold',
|
|
'settings.font.boldWeight': 'Bold weight',
|
|
'settings.font.boldWeightDesc': 'Weight used for bold text',
|
|
'settings.font.letterSpacing': 'Letter spacing',
|
|
'settings.font.letterSpacingDesc': 'Horizontal distance between characters',
|
|
'settings.font.lineHeight': 'Line height',
|
|
'settings.font.lineHeightDesc': 'Vertical distance between adjacent lines',
|
|
'settings.cursor.blink': 'Blinking cursor',
|
|
'settings.cursor.blinkDesc': 'Whether the cursor blinks periodically',
|
|
'settings.cursor.style': 'Cursor style',
|
|
'settings.cursor.styleDesc': 'Shape used to draw the cursor',
|
|
'settings.cursor.inactiveStyle': 'Inactive cursor style',
|
|
'settings.cursor.inactiveStyleDesc': 'Cursor style while the window is unfocused',
|
|
'settings.cursor.scrollback': 'Scrollback buffer',
|
|
'settings.cursor.scrollbackDesc': 'How many lines you can scroll back',
|
|
'settings.cursorStyle.bar': 'Bar',
|
|
'settings.cursorStyle.block': 'Block',
|
|
'settings.cursorStyle.underline': 'Underline',
|
|
'settings.cursorStyle.outline': 'Outline',
|
|
'settings.cursorStyle.none': 'None',
|
|
'settings.rendererMode.auto': 'Automatic',
|
|
'settings.rendererMode.autoHint': 'Prefer WebGL acceleration, falling back to DOM rendering if it fails',
|
|
'settings.rendererMode.webgl': 'High-performance WebGL',
|
|
'settings.rendererMode.webglHint':
|
|
'Force GPU-accelerated rendering; best for high refresh rates and heavy scrolling',
|
|
'settings.rendererMode.dom': 'Compatible DOM',
|
|
'settings.rendererMode.domHint':
|
|
'Pure CPU rendering with the widest compatibility; best without a GPU or over remote desktop',
|
|
'settings.render.modeLabel': 'Renderer',
|
|
'settings.render.modeHint': 'How terminal cells are accelerated; applies to every terminal',
|
|
'settings.render.autoWrap': 'Auto wrap',
|
|
'settings.render.autoWrapDesc': 'Wrap lines that exceed the width',
|
|
'settings.render.copyOnSelect': 'Copy on select',
|
|
'settings.render.copyOnSelectDesc': 'Copy text automatically when you select it with the mouse',
|
|
'settings.render.pasteRiskConfirm': 'Confirm risky paste',
|
|
'settings.render.pasteRiskConfirmDesc':
|
|
'Ask before pasting multi-line text (or a very long single line); single lines paste directly',
|
|
'settings.render.suggest': 'Input suggestions',
|
|
'settings.render.suggestDesc':
|
|
'Show command suggestions while typing; Tab accepts, Enter always runs the command right away',
|
|
'settings.render.history': 'Record command history',
|
|
'settings.render.historyDesc': 'When off, new commands are no longer recorded; saved history is kept',
|
|
'settings.render.historyLimit': 'History limit',
|
|
'settings.render.historyLimitDesc': 'Most commands to keep; duplicates are stored only once',
|
|
'settings.render.recButton': 'Terminal toolbar · Record',
|
|
'settings.render.recButtonDesc': 'Show the "Record session log" button in the top-right corner',
|
|
'settings.render.openLogsButton': 'Terminal toolbar · Open log folder',
|
|
'settings.render.openLogsButtonDesc': 'Show the "Open log folder" button in the top-right corner',
|
|
'settings.render.openCwdButton': 'Terminal toolbar · Open workspace folder',
|
|
'settings.render.openCwdButtonDesc':
|
|
'Show the "Open current folder" button in the top-right corner (hidden in SSH sessions; the folder follows cd in real time and needs shell integration or the cd command)',
|
|
'settings.system.launchAtLogin': 'Launch at startup',
|
|
'settings.system.launchAtLoginDesc':
|
|
'Start OpenTerminal when the system boots (in development mode the dev build is registered)',
|
|
'settings.system.preventSleep': 'Prevent system sleep',
|
|
'settings.system.preventSleepDesc':
|
|
'While on, OpenTerminal keeps the system from sleeping automatically; when off, the system follows its own power settings',
|
|
'settings.system.restoreSession': 'Restore last session on startup',
|
|
'settings.system.restoreSessionDesc':
|
|
'Restore the split layout on the next launch and return each terminal to its last directory; when off, OpenTerminal always starts with a single terminal',
|
|
'settings.system.shellIntegration': 'Shell integration',
|
|
'settings.system.shellIntegrationDesc':
|
|
'Let the shell report its working directory (OSC 7) for more precise path tracking, including cd inside scripts; it wraps your prompt, so turn it off if the prompt theme looks wrong',
|
|
'settings.system.closeAction': 'Close button behavior',
|
|
'settings.system.closeActionDesc':
|
|
'What happens when you click the window close button; after minimizing to the tray you can quit from the tray icon context menu',
|
|
'settings.system.closeActionTray': 'Minimize to tray',
|
|
'settings.system.closeActionExit': 'Quit directly',
|
|
'settings.system.closeActionAsk': 'Ask every time',
|
|
'settings.system.globalShortcut': 'Global show/hide shortcut',
|
|
'settings.system.globalShortcutDesc':
|
|
'Click the field, then press the key combination; Esc cancels, Backspace clears and disables it',
|
|
'settings.system.globalShortcutHint':
|
|
'Together with the global key this shows or hides the window from anywhere; if registration fails (a conflict with another app) it simply has no effect and the app reports no error.',
|
|
'settings.system.shortcutRecording': 'Press the keys…',
|
|
'settings.system.shortcutPlaceholder': 'Click and press a shortcut, leave empty to disable',
|
|
'settings.system.shortcutConflict':
|
|
'This shortcut is already used by the app (Ctrl+= / Ctrl+- / Ctrl+0 / Ctrl+PgUp / Ctrl+PgDn). Please choose another.',
|
|
'settings.resetTerminal': 'Reset terminal settings',
|
|
'settings.resetTerminalTitle': 'Reset terminal settings?',
|
|
'settings.resetTerminalDesc': 'All terminal settings — font, cursor, rendering and theme — will be restored to defaults.',
|
|
'settings.highlight.alert':
|
|
'Custom highlighting improves readability at a small performance cost. Rules are applied in priority order. PS: colors are injected as text is written to the terminal, so existing scrollback is unaffected',
|
|
'settings.highlight.enabled': 'Enabled',
|
|
'settings.highlight.pattern': 'Pattern',
|
|
'settings.highlight.patternPlaceholder': 'e.g. \\b(ERROR|FAILED)\\b',
|
|
'settings.highlight.invalidRegex': 'Invalid regular expression',
|
|
'settings.highlight.priority': 'Priority',
|
|
'settings.highlight.priorityHint': 'Lower values apply first',
|
|
'settings.highlight.color': 'Color',
|
|
'settings.highlight.clearBg': 'Clear',
|
|
'settings.highlight.addBg': 'Add',
|
|
'settings.highlight.palette': 'Palette',
|
|
'settings.highlight.note': 'Note',
|
|
'settings.highlight.notePlaceholder': 'Rule description (optional)',
|
|
'settings.highlight.actions': 'Actions',
|
|
'settings.highlight.addRule': '+ Add rule',
|
|
'settings.highlight.empty': 'No highlight rules yet — click "+ Add rule" to create one',
|
|
'settings.highlight.deleteTitle': 'Delete highlight rule',
|
|
'settings.highlight.resetTitle': 'Restore default highlight rules',
|
|
'settings.highlight.resetDesc': 'Replaces every current rule with the built-in presets. This cannot be undone.',
|
|
'settings.highlight.resetOk': 'Restore',
|
|
'settings.highlight.createTitle': 'New highlight rule',
|
|
'settings.highlight.editTitle': 'Edit highlight rule',
|
|
'settings.highlight.builtin.perm': 'Linux permissions and user/group',
|
|
'settings.highlight.builtin.path': 'Linux file paths',
|
|
'settings.highlight.builtin.shellkw': 'Shell keywords and control flow',
|
|
'settings.highlight.builtin.okstate': 'Success states',
|
|
'settings.highlight.builtin.badstate': 'Error/warning states',
|
|
'settings.highlight.builtin.quoted': 'Strings and quotes',
|
|
'settings.highlight.builtin.envvar': 'Environment variables and arguments',
|
|
'settings.highlight.builtin.ipv4': 'Network and IP addresses',
|
|
'settings.highlight.builtin.datetime': 'Time and date',
|
|
'settings.highlight.builtin.numbers': 'Numbers and counts',
|
|
'settings.highlight.builtin.url': 'Web links',
|
|
'settings.theme.accent': 'Tab accent color',
|
|
'settings.theme.accentDesc': 'Accent color for the active tab border, the sidebar indicator, and SSH badges',
|
|
'settings.theme.customBadge': 'Custom',
|
|
'settings.theme.deleteTitle': 'Delete custom theme',
|
|
'settings.theme.create': 'New theme',
|
|
'settings.theme.editTitle': 'Edit theme',
|
|
'settings.themeEditor.name': 'Name',
|
|
'settings.themeEditor.namePlaceholder': 'Theme name',
|
|
'settings.themeEditor.copySuffix': ' (copy)',
|
|
'settings.about.currentVersion': 'Current version',
|
|
'settings.about.statusIdle': 'Click to check for updates',
|
|
'settings.about.statusChecking': 'Checking for updates…',
|
|
'settings.about.statusAvailable': 'A new version is available',
|
|
'settings.about.statusLatest': 'Already up to date',
|
|
'settings.about.statusDownloading': 'Downloading…',
|
|
'settings.about.statusDownloaded': 'Download complete — restart to install',
|
|
'settings.about.statusError': 'Check failed',
|
|
'settings.about.statusDev': 'Update checks are unavailable in development mode',
|
|
'settings.about.channelStable': 'Stable channel',
|
|
'settings.about.autoCheck': 'Check automatically at startup',
|
|
'settings.about.download': 'Download update',
|
|
'settings.about.downloadGithub': ' (GitHub source)',
|
|
'settings.about.install': 'Restart and install',
|
|
'settings.about.check': 'Check for updates',
|
|
'settings.about.checkingButton': 'Checking',
|
|
'settings.about.changelog': 'Changelog',
|
|
'settings.about.changelogEmpty': 'No changelog available'
|
|
}
|
|
|
|
export default settings
|