From e7325cf89602f28f16a2fdda220bc620b981f69c Mon Sep 17 00:00:00 2001 From: Egor Malyshev Date: Wed, 1 Oct 2025 17:09:45 +0200 Subject: [PATCH] Use current base path for en-us and all other fallback content, step 1 (cherry picked from commit b872efa164618a45376871ea484ca150d49d0fdc) IJ-MR-176799 GitOrigin-RevId: 7ba79d3cb26b393fcc0b7d74431b28c8c6cdac6c --- .../builtInHelp/BuiltInHelpManager.kt | 22 +++++++++++-------- .../builtInHelp/HelpRequestHandlerBase.kt | 2 +- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/plugins/built-in-help/src/com/jetbrains/builtInHelp/BuiltInHelpManager.kt b/plugins/built-in-help/src/com/jetbrains/builtInHelp/BuiltInHelpManager.kt index 96ffb2b8744d..fa979456e1b4 100644 --- a/plugins/built-in-help/src/com/jetbrains/builtInHelp/BuiltInHelpManager.kt +++ b/plugins/built-in-help/src/com/jetbrains/builtInHelp/BuiltInHelpManager.kt @@ -18,7 +18,12 @@ import java.lang.String.valueOf import java.net.* import java.nio.charset.StandardCharsets -val LOG = Logger.getInstance(BuiltInHelpManager::class.java) +val LOG: Logger = Logger.getInstance(BuiltInHelpManager::class.java) + +//Later we'll add more languages here, for now it's Chinese only +val localesToUrls = mapOf( + "zh-cn" to "zh-cn", +) class BuiltInHelpManager : HelpManager() { @@ -70,15 +75,14 @@ class BuiltInHelpManager : HelpManager() { else "&keymap=${URLEncoder.encode(activeKeymap.presentableName, StandardCharsets.UTF_8)}" - //Later we'll add more languages here, for now it's either Chinese or English default - val langToUrl = mapOf( - "zh" to "zh-cn", - ) + //Determine if we need to try loading localized docs first + val selectedLocale = LocalizationStateService.getInstance()?.selectedLocale?.lowercase() + val langPart = if (localesToUrls.containsKey(selectedLocale)) { + "/" + localesToUrls[selectedLocale] + } + else "" - val selectedLocale = LocalizationStateService.getInstance()?.selectedLocale - - val langPart = langToUrl[selectedLocale] ?: "en-us" - "http://127.0.0.1:${BuiltInServerOptions.getInstance().effectiveBuiltInServerPort}/${langPart}/help/?${ + "http://127.0.0.1:${BuiltInServerOptions.getInstance().effectiveBuiltInServerPort}${langPart}/help/?${ helpIdToUse }$activeKeymapParam" } diff --git a/plugins/built-in-help/src/com/jetbrains/builtInHelp/HelpRequestHandlerBase.kt b/plugins/built-in-help/src/com/jetbrains/builtInHelp/HelpRequestHandlerBase.kt index dc39b9305abb..cb3ed09021e2 100644 --- a/plugins/built-in-help/src/com/jetbrains/builtInHelp/HelpRequestHandlerBase.kt +++ b/plugins/built-in-help/src/com/jetbrains/builtInHelp/HelpRequestHandlerBase.kt @@ -26,7 +26,7 @@ abstract class HelpRequestHandlerBase : HttpRequestHandler() { } fun getRequestLocalePath(request: HttpRequest): String { - val requestLocale = request.uri().substringBefore(prefix).substringBeforeLast("/") + val requestLocale = request.uri().substringBefore(prefix).substringAfter("/") return if (supportedLocales.contains(requestLocale)) requestLocale else "" }