Files
dotfiles/.config/SubMiner/config.jsonc##os.Darwin
T
2026-05-27 11:40:11 -07:00

269 lines
7.8 KiB
Plaintext
Executable File

{
"keybindings": [],
"shortcuts": {
"copySubtitle": "CommandOrControl+C",
"copySubtitleMultiple": "CommandOrControl+Shift+C",
"updateLastCardFromClipboard": "CommandOrControl+V",
"triggerFieldGrouping": "CommandOrControl+G",
"mineSentence": "CommandOrControl+S",
"mineSentenceMultiple": "CommandOrControl+Shift+S",
"multiCopyTimeoutMs": 3000,
"toggleSecondarySub": "CommandOrControl+Shift+V",
"markAudioCard": "CommandOrControl+Shift+A",
"openRuntimeOptions": "CommandOrControl+Shift+O",
"toggleVisibleOverlayGlobal": "Alt+Shift+O",
"toggleInvisibleOverlayGlobal": "Alt+Shift+I",
},
"auto_start_overlay": true,
"texthooker": {
"openBrowser": false,
},
"websocket": {
"enabled": "auto",
"port": 6677,
},
"ankiConnect": {
"enabled": true,
"url": "http://127.0.0.1:8765",
"deck": "Minecraft",
"pollingRate": 500,
"fields": {
"audio": "ExpressionAudio",
"image": "Picture",
"sentence": "Sentence",
"miscInfo": "MiscInfo",
"translation": "SelectionText",
},
"media": {
"generateAudio": true,
"generateImage": true,
"imageType": "avif",
"imageFormat": "webp",
"animatedFps": 24,
"animatedMaxWidth": 640,
"animatedMaxHeight": null,
"animatedCrf": 35,
"audioPadding": 0.5,
"fallbackDuration": 3,
},
"behavior": {
"overwriteAudio": false,
"overwriteImage": true,
"mediaInsertMode": "append",
"highlightWord": true,
"notificationType": "system",
"showNotificationOnUpdate": true,
"autoUpdateNewCards": true,
},
"knownWords": {
"decks": {
"minecraft": ["expression", "reading"],
"kaishi 1.5k": ["word", "word reading"],
},
"highlightEnabled": true,
"refreshMinutes": 60,
"matchMode": "headword",
},
"nPlusOne": {
"minSentenceWords": "3",
"enabled": true,
},
"metadata": {
"pattern": "[SubMiner] %f (%t)",
},
"isLapis": {
"enabled": true,
"sentenceCardModel": "Lapis Morph",
},
"isKiku": {
"enabled": true,
"fieldGrouping": "manual",
"deleteDuplicateInAuto": true,
},
"tags": ["SubMiner"],
"proxy": {
"enabled": true,
"host": "127.0.0.1",
"port": 8766,
"upstreamUrl": "http://127.0.0.1:8765",
},
"ai": {
"enabled": true,
"systemPrompt": "You are a translation engine for translating Japanese into natural-sounding, context-aware English. Return only the translated text with no extra explanations or commentary. The translation must preserve the original tone and intent of the source. If the input is not in the target language, translate it to the target language. If the input is already in the target language, return it as is.",
"model": "google/gemini-2.5-flash-lite",
},
},
"ai": {
"enabled": true,
"alwaysUseAiTranslation": false,
"apiKeyCommand": "cat ~/.openrouterapikey",
"baseUrl": "https://openrouter.ai/api/v1",
"sourceLanguage": "Japanese",
},
"secondarySub": {
"autoLoadSecondarySub": true,
"secondarySubLanguages": ["en", "eng"],
},
"subsync": {
"defaultMode": "manual",
"alass_path": "alass-cli",
"ffsubsync_path": "ffsubsync",
"ffmpeg_path": "ffmpeg",
"replace": true,
},
"subtitleStyle": {
"preserveLineBreaks": false,
"hoverBackground": "rgba(54, 58, 79, 0.84)",
"autoPauseVideoOnHover": true,
"autoPauseVideoOnYomitanPopup": true,
"nameMatchEnabled": true,
"nameMatchColor": "#f5bde6",
"secondary": {
"css": {
"font-family": "Manrope, Inter",
"color": "#cad3f5",
"background-color": "transparent",
"font-size": "24px",
"font-weight": "600",
"text-shadow": "3px 0 0 #000, -3px 0 0 #000, 0 3px 0 #000, 0 -3px 0 #000, 2px 2px 0 #000, -2px -2px 0 #000, 2px -2px 0 #000, -2px 2px 0 #000",
"backdrop-filter": "blur(6px)",
},
},
"frequencyDictionary": {
"enabled": true,
"sourcePath": "",
"topX": 10000,
"mode": "banded",
"matchMode": "headword",
"singleColor": "#f5a97f",
"bandedColors": ["#ed8796", "#f5a97f", "#f9e2af", "#8bd5ca", "#8aadf4"],
},
"enableJlpt": true,
"jlptColors": {
"N1": "#ed8796",
"N2": "#f5a97f",
"N3": "#f9e2af",
"N4": "#a6e3a1",
"N5": "#8aadf4",
},
"nPlusOneColor": "#c6a0f6",
"knownWordColor": "#a6da95",
"css": {
"--subtitle-hover-token-background-color": "transparent",
"font-family": "Hiragino Sans, M PLUS 1, Noto Sans CJK JP Regular, Noto Sans CJK JP, Arial Unicode MS, Arial, sans-serif",
"color": "#cad3f5",
"background-color": "transparent",
"font-size": "35px",
"font-weight": "600",
"font-style": "normal",
"line-height": "1.35",
"letter-spacing": "-0.01em",
"word-spacing": "0",
"font-kerning": "normal",
"text-rendering": "geometricPrecision",
"text-shadow": "3px 0 0 #000, -3px 0 0 #000, 0 3px 0 #000, 0 -3px 0 #000, 2px 2px 0 #000, -2px -2px 0 #000, 2px -2px 0 #000, -2px 2px 0 #000",
"backdrop-filter": "blur(6px)",
},
},
"jimaku": {
"apiKeyCommand": "cat ~/.jimaku-api-key",
"apiBaseUrl": "https://jimaku.cc",
"languagePreference": "ja",
"maxEntryResults": 10,
},
"youtube": {
"primarySubLanguages": ["ja", "jpn"],
},
"anilist": {
"accessToken": "",
"enabled": true,
"characterDictionary": {
"enabled": true,
"maxLoaded": 3,
"profileScope": "all",
},
},
"immersionTracking": {
"enabled": true,
"dbPath": "",
},
"jellyfin": {
"enabled": true,
"serverUrl": "http://pve-main:8096",
"username": "sudacode",
"accessToken": "",
"userId": "",
"deviceId": "subminer",
"clientName": "SubMiner",
"clientVersion": "0.1.0",
"defaultLibraryId": "",
"directPlayPreferred": true,
"remoteControlEnabled": true,
"remoteControlAutoConnect": false,
"autoAnnounce": false,
"remoteControlDeviceName": "SubMiner",
"directPlayContainers": ["mkv", "mp4", "webm", "mov", "flac", "mp3", "aac"],
"transcodeVideoCodec": "h264",
"pullPictures": true,
"iconCacheDir": "/tmp/subminer-jellyfin-icons",
"recentServers": ["http://pve-main:8096"],
},
"logging": {
"level": "debug",
},
"discordPresence": {
"enabled": true,
"detailsTemplate": "Mining and crafting (Anki cards)",
"stateTemplate": "Idle",
"largeImageKey": "subminer-logo",
"largeImageText": "SubMiner",
"smallImageKey": "study",
"smallImageText": "Sentence Mining",
"buttonLabel": "",
"buttonUrl": "",
"updateIntervalMs": 15000,
"debounceMs": 750,
},
"startupWarmups": {
"lowPowerMode": false,
"mecab": true,
"yomitanExtension": true,
"subtitleDictionaries": true,
"jellyfinRemoteSession": true,
},
"stats": {
"toggleKey": "Backquote",
"serverPort": 6969,
"autoStartServer": true,
"autoOpenBrowser": false,
},
"subtitleSidebar": {
"enabled": true,
"layout": "embedded",
"toggleKey": "Backslash",
"pauseVideoOnHover": true,
"autoScroll": true,
"css": {
"font-family": "'M PLUS 1', 'Noto Sans CJK JP', 'sans-serif'",
"color": "#cad3f5",
"background-color": "rgba(73, 77, 100, 0.9)",
"font-size": "16px",
"opacity": "0.95",
"--subtitle-sidebar-max-width": "420px",
"--subtitle-sidebar-timestamp-color": "#a5adcb",
"--subtitle-sidebar-active-line-color": "#f5bde6",
"--subtitle-sidebar-active-background-color": "rgba(138, 173, 244, 0.22)",
"--subtitle-sidebar-hover-background-color": "rgba(54, 58, 79, 0.84)",
},
},
"mpv": {
"launchMode": "normal",
},
"updates": {
"enabled": true,
"checkIntervalHours": 24,
"notificationType": "system",
"channel": "prerelease",
},
}