From 053b555de6d8de732e23220fa1f7ea2e86d52e73 Mon Sep 17 00:00:00 2001 From: crschnick Date: Mon, 18 Aug 2025 06:59:12 +0000 Subject: [PATCH] Various fixes --- app/build.gradle | 2 +- .../main/java/io/xpipe/app/core/AppLogs.java | 48 ++----------------- .../java/io/xpipe/app/core/AppProperties.java | 17 +++++++ .../app/terminal/TerminalLauncherManager.java | 6 ++- .../io/xpipe/app/util/DocumentationLink.java | 22 ++++----- .../{section-comp.css => options-comp.css} | 2 +- dist/build.gradle | 2 +- dist/changelog/18.0.md | 34 +++++++------ lang/strings/translations_da.properties | 4 ++ lang/strings/translations_de.properties | 4 ++ lang/strings/translations_en.properties | 3 ++ lang/strings/translations_es.properties | 12 +++-- lang/strings/translations_fr.properties | 8 +++- lang/strings/translations_id.properties | 8 +++- lang/strings/translations_it.properties | 12 +++-- lang/strings/translations_ja.properties | 4 ++ lang/strings/translations_ko.properties | 4 ++ lang/strings/translations_nl.properties | 4 ++ lang/strings/translations_pl.properties | 12 +++-- lang/strings/translations_pt.properties | 10 ++-- lang/strings/translations_ru.properties | 12 +++-- lang/strings/translations_sv.properties | 4 ++ lang/strings/translations_tr.properties | 4 ++ lang/strings/translations_vi.properties | 6 ++- lang/strings/translations_zh.properties | 4 ++ 25 files changed, 147 insertions(+), 101 deletions(-) rename app/src/main/resources/io/xpipe/app/resources/style/{section-comp.css => options-comp.css} (96%) diff --git a/app/build.gradle b/app/build.gradle index 6b2b242f5..1c6330904 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -62,7 +62,7 @@ dependencies { api "com.github.weisj:jsvg:1.7.1" api 'io.xpipe:vernacular:1.15' api 'org.bouncycastle:bcprov-jdk18on:1.81' - api 'info.picocli:picocli:4.7.6' + api 'info.picocli:picocli:4.7.7' api 'org.apache.commons:commons-lang3:3.18.0' api 'io.sentry:sentry:8.13.3' api 'commons-io:commons-io:2.20.0' diff --git a/app/src/main/java/io/xpipe/app/core/AppLogs.java b/app/src/main/java/io/xpipe/app/core/AppLogs.java index 162bad6b8..8d11f1e8b 100644 --- a/app/src/main/java/io/xpipe/app/core/AppLogs.java +++ b/app/src/main/java/io/xpipe/app/core/AppLogs.java @@ -31,11 +31,6 @@ import java.util.concurrent.ConcurrentHashMap; public class AppLogs { public static final List LOG_LEVELS = List.of("error", "warn", "info", "debug", "trace"); - private static final String WRITE_SYSOUT_PROP = AppNames.propertyName("writeSysOut"); - private static final String WRITE_LOGS_PROP = AppNames.propertyName("writeLogs"); - private static final String DEBUG_PLATFORM_PROP = AppNames.propertyName("debugPlatform"); - private static final String LOG_LEVEL_PROP = AppNames.propertyName("logLevel"); - private static final String DEFAULT_LOG_LEVEL = "info"; private static final DateTimeFormatter NAME_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd_HH-mm-ss").withZone(ZoneId.systemDefault()); @@ -79,22 +74,6 @@ public class AppLogs { hookUpSystemErr(); } - private static boolean shouldWriteLogs() { - if (System.getProperty(WRITE_LOGS_PROP) != null) { - return Boolean.parseBoolean(System.getProperty(WRITE_LOGS_PROP)); - } - - return true; - } - - private static boolean shouldWriteSysout() { - if (System.getProperty(WRITE_SYSOUT_PROP) != null) { - return Boolean.parseBoolean(System.getProperty(WRITE_SYSOUT_PROP)); - } - - return false; - } - public static void init() { if (INSTANCE != null) { return; @@ -134,7 +113,7 @@ public class AppLogs { } PrintStream outFileStream = null; - var shouldLogToFile = shouldWriteLogs(); + var shouldLogToFile = AppProperties.get().isLogToFile(); if (shouldLogToFile) { try { FileUtils.forceMkdir(usedLogsDir.toFile()); @@ -147,7 +126,7 @@ public class AppLogs { } } - var shouldLogToSysout = shouldWriteSysout(); + var shouldLogToSysout = AppProperties.get().isLogToSysOut(); if (shouldLogToFile && outFileStream == null) { TrackEvent.info("Log file initialization failed. Writing to standard out"); @@ -159,7 +138,7 @@ public class AppLogs { TrackEvent.info("Writing log output to " + usedLogsDir + " from now on"); } - var level = determineLogLevel(); + var level = AppProperties.get().getLogLevel(); INSTANCE = new AppLogs(usedLogsDir, shouldLogToSysout, shouldLogToFile, level, outFileStream); } @@ -176,15 +155,6 @@ public class AppLogs { return INSTANCE; } - private static String determineLogLevel() { - if (System.getProperty(LOG_LEVEL_PROP) != null) { - String p = System.getProperty(LOG_LEVEL_PROP); - return LOG_LEVELS.contains(p) ? p : "trace"; - } - - return DEFAULT_LOG_LEVEL; - } - public void flush() { if (outFileStream != null) { outFileStream.flush(); @@ -197,14 +167,6 @@ public class AppLogs { } } - private boolean shouldDebugPlatform() { - if (System.getProperty(DEBUG_PLATFORM_PROP) != null) { - return Boolean.parseBoolean(System.getProperty(DEBUG_PLATFORM_PROP)); - } - - return false; - } - private void hookUpSystemOut() { System.setOut(new PrintStream(new OutputStream() { private final ByteArrayOutputStream baos = new ByteArrayOutputStream(1000); @@ -257,7 +219,7 @@ public class AppLogs { } public synchronized void logEvent(TrackEvent event) { - var li = LOG_LEVELS.indexOf(determineLogLevel()); + var li = LOG_LEVELS.indexOf(AppProperties.get().getLogLevel()); int i = li == -1 ? 5 : li; int current = LOG_LEVELS.indexOf(event.getType()); if (current <= i) { @@ -290,7 +252,7 @@ public class AppLogs { private void setLogLevels() { // Debug output for platform - if (shouldDebugPlatform()) { + if (AppProperties.get().isLogPlatformDebug()) { System.setProperty("prism.verbose", "true"); System.setProperty("prism.debug", "true"); // System.setProperty("prism.trace", "true"); diff --git a/app/src/main/java/io/xpipe/app/core/AppProperties.java b/app/src/main/java/io/xpipe/app/core/AppProperties.java index 2cea3af06..d1bc6402b 100644 --- a/app/src/main/java/io/xpipe/app/core/AppProperties.java +++ b/app/src/main/java/io/xpipe/app/core/AppProperties.java @@ -16,6 +16,7 @@ import java.util.*; public class AppProperties { private static AppProperties INSTANCE; + boolean fullVersion; String version; String build; @@ -47,6 +48,10 @@ public class AppProperties { AppArguments arguments; XPipeDaemonMode explicitMode; String devLoginPassword; + boolean logToSysOut; + boolean logToFile; + boolean logPlatformDebug; + String logLevel; public AppProperties(String[] args) { var appDir = Path.of(System.getProperty("user.dir")).resolve("app"); @@ -134,6 +139,18 @@ public class AppProperties { persistData = Optional.ofNullable(System.getProperty(AppNames.propertyName("persistData"))) .map(Boolean::parseBoolean) .orElse(true); + logToSysOut = Optional.ofNullable(System.getProperty(AppNames.propertyName("writeSysOut"))) + .map(Boolean::parseBoolean) + .orElse(false); + logToFile = Optional.ofNullable(System.getProperty(AppNames.propertyName("writeLogs"))) + .map(Boolean::parseBoolean) + .orElse(true); + logPlatformDebug = Optional.ofNullable(System.getProperty(AppNames.propertyName("debugPlatform"))) + .map(Boolean::parseBoolean) + .orElse(false); + logLevel = Optional.ofNullable(System.getProperty(AppNames.propertyName("logLevel"))) + .filter(s -> AppLogs.LOG_LEVELS.contains(s)) + .orElse("info"); // We require the user dir from here AppUserDirectoryCheck.check(dataDir); diff --git a/app/src/main/java/io/xpipe/app/terminal/TerminalLauncherManager.java b/app/src/main/java/io/xpipe/app/terminal/TerminalLauncherManager.java index 7f33af22e..b1797e5ea 100644 --- a/app/src/main/java/io/xpipe/app/terminal/TerminalLauncherManager.java +++ b/app/src/main/java/io/xpipe/app/terminal/TerminalLauncherManager.java @@ -1,5 +1,6 @@ package io.xpipe.app.terminal; +import io.xpipe.app.core.AppNames; import io.xpipe.app.ext.ProcessControlProvider; import io.xpipe.app.ext.ShellStore; import io.xpipe.app.issue.TrackEvent; @@ -124,9 +125,10 @@ public class TerminalLauncherManager { .tag("request", request.toString()) .handle(); try (var sc = LocalShell.getShell().start()) { - var defaultShell = LocalShell.getDialect(); + var defaultShell = sc.getShellDialect(); var shellExec = defaultShell.getExecutableName(); - var script = ScriptHelper.createExecScript(sc, shellExec); + var script = ScriptHelper.createExecScript(sc, sc.getShellDialect().getEchoCommand( + "Unknown " + AppNames.ofCurrent().getName() + " launch request", false) + "\n" + shellExec); return Path.of(script.toString()); } catch (Exception ex) { throw new BeaconServerException(ex); diff --git a/app/src/main/java/io/xpipe/app/util/DocumentationLink.java b/app/src/main/java/io/xpipe/app/util/DocumentationLink.java index 6bfefa0cd..0ac9fabe6 100644 --- a/app/src/main/java/io/xpipe/app/util/DocumentationLink.java +++ b/app/src/main/java/io/xpipe/app/util/DocumentationLink.java @@ -5,7 +5,7 @@ import io.xpipe.app.core.AppProperties; public enum DocumentationLink { API("api"), TTY("troubleshoot/tty"), - WINDOWS_SSH("guide/ssh#windows-ssh-servers"), + SSH_BROKEN_PIPE("troubleshoot/ssh#client-loop-send-disconnect--connection-reset"), MACOS_SETUP("guide/installation#macos"), DOUBLE_PROMPT("troubleshoot/two-step-connections"), LICENSE_ACTIVATION("troubleshoot/license-activation"), @@ -40,13 +40,13 @@ public enum DocumentationLink { VNC("guide/vnc"), REAL_VNC("guide/vnc#realvnc-server"), SSH("guide/ssh"), - SSH_HOST_KEYS("guide/ssh#no-matching-host-key-type-found"), - SSH_KEX("guide/ssh#no-matching-key-exchange-method"), - SSH_PERMISSION_DENIED("guide/ssh#permission-denied"), - SSH_IPV6("guide/ssh#ipv6-issues"), - SSH_CONNECTION_CLOSED("guide/ssh#connection-closed-by-remote-host"), - SSH_KEY_PERMISSIONS("guide/ssh#key-permissions-too-open"), - SSH_NO_ROUTE("guide/ssh#no-route-to-host"), + SSH_HOST_KEYS("troubleshoot/ssh#no-matching-host-key-type-found"), + SSH_KEX("troubleshoot/ssh#no-matching-key-exchange-method"), + SSH_PERMISSION_DENIED("troubleshoot/ssh#permission-denied"), + SSH_IPV6("troubleshoot/ssh#ipv6-issues"), + SSH_CONNECTION_CLOSED("troubleshoot/ssh#connection-closed-by-remote-host"), + SSH_KEY_PERMISSIONS("troubleshoot/ssh#key-permissions-too-open"), + SSH_NO_ROUTE("troubleshoot/ssh#no-route-to-host"), SSH_CONFIG("guide/ssh-config"), SSH_KEYS("guide/ssh#key-based-authentication"), SSH_OPTIONS("guide/ssh-config#adding-ssh-options"), @@ -62,7 +62,7 @@ public enum DocumentationLink { TUNNELS_REMOTE("guide/ssh-tunnels#remote-tunnels"), TUNNELS_DYNAMIC("guide/ssh-tunnels#dynamic-tunnels"), HYPERV("guide/hyperv"), - SSH_MACS("guide/ssh#no-matching-mac-found"), + SSH_MACS("troubleshoot/ssh#no-matching-mac-found"), SSH_JUMP_SERVERS("guide/ssh#gateways-and-jump-servers"), SSH_CUSTOM("guide/ssh-config#custom-ssh-connections"), KEEPASSXC("guide/password-manager#keepassxc"), @@ -81,8 +81,8 @@ public enum DocumentationLink { TERMINAL_MULTIPLEXER("guide/terminals#multiplexers"), TERMINAL_PROMPT("guide/terminals#prompts"), TEAM_VAULTS("guide/sync#team-vaults"), - SSH_TROUBLESHOOT("guide/ssh#troubleshooting"), - NO_EXEC("troubleshooting/noexec"), + SSH_TROUBLESHOOT("troubleshoot/ssh"), + NO_EXEC("troubleshoot/noexec"), MCP("guide/mcp"); private final String page; diff --git a/app/src/main/resources/io/xpipe/app/resources/style/section-comp.css b/app/src/main/resources/io/xpipe/app/resources/style/options-comp.css similarity index 96% rename from app/src/main/resources/io/xpipe/app/resources/style/section-comp.css rename to app/src/main/resources/io/xpipe/app/resources/style/options-comp.css index fa1334fea..9a31b9771 100644 --- a/app/src/main/resources/io/xpipe/app/resources/style/section-comp.css +++ b/app/src/main/resources/io/xpipe/app/resources/style/options-comp.css @@ -13,7 +13,7 @@ } .options-comp .description { - -fx-opacity: 0.75; + -fx-opacity: 0.8; -fx-font-size: 0.95em; } diff --git a/dist/build.gradle b/dist/build.gradle index e1342000a..3fe7bb6a0 100644 --- a/dist/build.gradle +++ b/dist/build.gradle @@ -1,6 +1,6 @@ plugins { - id 'org.beryx.jlink' version '3.1.2' + id 'org.beryx.jlink' version '3.1.3' id("com.netflix.nebula.ospackage") version "12.1.0" id 'org.gradle.crypto.checksum' version '1.4.0' id 'signing' diff --git a/dist/changelog/18.0.md b/dist/changelog/18.0.md index bbefe5f42..20e6b1fbd 100644 --- a/dist/changelog/18.0.md +++ b/dist/changelog/18.0.md @@ -4,17 +4,19 @@ XPipe 18 ventures into many new areas. It comes with the first cloud provider in There is now an MCP server available for XPipe which allows you to perform many actions in an agentic workflow via your favourite MCP client, for example Cursor. The MCP server feature is disabled by default has to be enabled in the MCP settings menu. -Please share your feedback on your experience. - [Documentation page](https://docs.xpipe.io/guide/mcp) +Here is how it looks in Cursor: + ![MCP config](https://xpipe.io/assets/images/BlogPage/cursor-mcp.png) +Here is how a chat that uses the XPipe MCP server looks like: + ![MCP screenshot](https://xpipe.io/assets/images/BlogPage/cursor-chat.png) ## Hetzner cloud -This release introduces support for Hetzner cloud servers via the hcloud CLI tool. You can list all your service automatically and then access them normally as SSH connections. This is the first of hopefully many integrations for cloud providers and will serve as a good experiment. +This release introduces support for Hetzner cloud servers via the hcloud CLI tool. You can list all your service automatically and then access them normally as SSH connections. This is the first of hopefully many integrations for cloud providers and will serve as a good proof of concept. This integration is available in the Professional plan. ![hcloud](https://xpipe.io/assets/images/BlogPage/hcloud.png) @@ -36,37 +38,36 @@ You can now configure multiple addresses for a host. This allows you to quickly The fonts on macOS have been updated with the goal of better readability. If you don't like the new font style, you can still select the old one in the appearance settings menu. -## Build pipeline - -The build pipeline has been reworked. This might result in unexpected issues that were not caught yet. - ## SSH -- Add support to launch VsCode Insiders and Trae as well in the VsCode SSH launch menu -- Disable SSH host key checking for local network devices - Rework SSH timeout options to hopefully better handle unexpected connection disruptions - There is now a new option and improved handling of SSH MOTDs to control whether they should be shown or not - Fix SSH ProxyCommand not being executed for custom connections - Fix SSH agent public key setting not working on Linux and macOS due to permissions issue - Fix SSH gateways not working on systems where username contained a dot - Fix some terminal connections asking for passwords even if it was entered before if the connection was edited +- Disable SSH host key checking for local network devices +- Add support to launch VsCode Insiders and Trae as well in the VsCode SSH launch menu ## Other -- XPipe will now clean any temp files more often - Tailscale connections are now a top-level entry and can be synced via git -- Add more documentation links to the settings menu - Proxmox entries are now ordered by their vmid -- Kitty and WezTerm now also support the tabs or windows settings option for terminals -- Any small changes such as a change in color other connection are now synced instantly +- Add ability to specify gateways for direct RDP and VNC connections - Add two new connection colors with cyan and purple - Add new option to prefer available monochrome icons instead of colored variants - Add vietnamese translations -- Add ability to specify gateways for direct RDP and VNC connections +- Add more documentation links to the settings menu +- Kitty and WezTerm now also support the tabs or windows settings option for terminals +- Any small changes such as a change in color other connection are now synced instantly +- XPipe will now clean any temp files more often ## Fixes -- Fix bitwarden on Windows sometimes requiring the master password multiple times +- Fix automatic tunnel restart sometimes resulting in an invalid tunnel state +- Fix performance issue when opening connection chooser dropdown +- Fix small parts of the UI moving a bit on hover +- Fix Bitwarden integration sometimes requiring the master password everytime - Fix restart button not working on Linux - Fix file browser execute action on Windows not being limited to certain file types - Fix file browser refresh of single files failing on Windows systems @@ -74,7 +75,4 @@ The build pipeline has been reworked. This might result in unexpected issues tha - Fix file browser not supporting dollar signs in directory names - Fix file browser conflict dialog being cut off - Fix license check becoming invalid if xpipe was left running for more than a week -- Fix tunnel restart sometimes resulting in an invalid tunnel state -- Fix small parts of the UI moving a bit on hover -- Fix performance issue when opening connection chooser dropdown - Fix git vaultversion conflict not being solved automatically diff --git a/lang/strings/translations_da.properties b/lang/strings/translations_da.properties index 12bcee14d..0fcb8c5ea 100644 --- a/lang/strings/translations_da.properties +++ b/lang/strings/translations_da.properties @@ -1584,3 +1584,7 @@ preferMonochromeIcons=Foretrækker monokrome ikoner preferMonochromeIconsDescription=Når det er aktiveret, vælges monokrome ikonvariabler frem for de farvede standardversioner af et ikon, forudsat at der findes en separat ikonvariant i lys eller mørk tilstand for et ikon fra en kilde.\n\nKræver en opdatering af de ikoner, der skal anvendes. alwaysShowSshMotd=Vis altid MOTD alwaysShowSshMotdDescription=Om dagens besked, der er konfigureret på et fjernsystem, skal vises eller ej ved login i en ny terminalsession. Bemærk, at ændring af dette kan ændre SSH-forbindelsers initialiseringsadfærd. +manageSubscription=Administrer abonnement +noListeningSshServer=Ingen lyttende SSH-server +networkScanResults=Scanningsresultater +networkScanResultsDescription=Listen over fundne systemer i netværket diff --git a/lang/strings/translations_de.properties b/lang/strings/translations_de.properties index aba82ed08..7b3fd9499 100644 --- a/lang/strings/translations_de.properties +++ b/lang/strings/translations_de.properties @@ -1574,3 +1574,7 @@ preferMonochromeIcons=Bevorzuge monochrome Symbole preferMonochromeIconsDescription=Wenn diese Option aktiviert ist, werden einfarbige Icon-Variablen den standardmäßigen farbigen Versionen eines Icons vorgezogen, vorausgesetzt, dass für ein Icon aus einer Quelle eine separate Icon-Variante im hellen oder dunklen Modus verfügbar ist.\n\nErfordert eine Aktualisierung der Icons zur Anwendung. alwaysShowSshMotd=MOTD immer anzeigen alwaysShowSshMotdDescription=Ob die Nachricht des Tages, die auf einem entfernten System konfiguriert wurde, bei der Anmeldung in einer neuen Terminalsitzung angezeigt werden soll oder nicht. Beachte, dass eine Änderung dieser Einstellung das Initialisierungsverhalten von SSH-Verbindungen verändern kann. +manageSubscription=Abonnement verwalten +noListeningSshServer=Kein lauschender SSH-Server +networkScanResults=Scan-Ergebnisse +networkScanResultsDescription=Die Liste der gefundenen Systeme im Netzwerk diff --git a/lang/strings/translations_en.properties b/lang/strings/translations_en.properties index 5fa32f6f7..785dda3b3 100644 --- a/lang/strings/translations_en.properties +++ b/lang/strings/translations_en.properties @@ -1616,3 +1616,6 @@ preferMonochromeIconsDescription=When enabled, monochrome icon variables will be alwaysShowSshMotd=Always show MOTD alwaysShowSshMotdDescription=Whether or not to show the message of the day configured on a remote system upon login in a new terminal session. Note that changing this might alter the initialization behavior of SSH connections. manageSubscription=Manage subscription +noListeningSshServer=No listening SSH server +networkScanResults=Scan results +networkScanResultsDescription=The list of found systems in the network diff --git a/lang/strings/translations_es.properties b/lang/strings/translations_es.properties index ee7797b45..307659695 100644 --- a/lang/strings/translations_es.properties +++ b/lang/strings/translations_es.properties @@ -118,7 +118,7 @@ yes=Sí no=No errorOccured=Se ha producido un error terminalErrorOccured=Se ha producido un error de terminal -errorTypeOccured=Se ha lanzado una excepción de tipo $TYPE$ +errorTypeOccured=Se ha lanzado una excepción de tipo $TYPE$ permissionsAlertTitle=Permisos necesarios permissionsAlertHeader=Se necesitan permisos adicionales para realizar esta operación. permissionsAlertContent=Por favor, sigue la ventana emergente para dar a XPipe los permisos necesarios en el menú de configuración. @@ -995,7 +995,7 @@ administrator=Administrador wslHost=Anfitrión WSL timeout=Tiempo de espera installLocation=Ubicación de la instalación -installLocationDescription=La ubicación donde está instalado tu entorno $NAME$ +installLocationDescription=La ubicación donde está instalado tu entorno $NAME$ wsl.displayName=Subsistema Windows para Linux wsl.displayDescription=Conectarse a una instancia WSL que se ejecuta en Windows docker.displayName=Contenedor Docker @@ -1223,8 +1223,8 @@ free=Gratis upgradeInfo=A continuación encontrarás información sobre cómo obtener una licencia profesional. upgradeInfoPreview=A continuación puedes encontrar información sobre cómo pasar a una licencia profesional o probar la vista previa. enterLicenseKey=Introduce la clave de licencia para actualizar -isOnlySupported=sólo es compatible al menos con la licencia $TYPE$ -areOnlySupported=sólo se admiten con una licencia de al menos $TYPE$ +isOnlySupported=sólo es compatible al menos con la licencia $TYPE$ +areOnlySupported=sólo se admiten con una licencia de al menos $TYPE$ legacyLicense=Esta licencia sólo incluía las nuevas funciones Profesionales publicadas en el plazo de un año tras la compra. openApiDocs=Documentación API openApiDocsDescription=La documentación de la API HTTP está disponible en Internet, incluida una especificación OpenAPI .yaml. Puedes abrirla en tu navegador web o en tu cliente HTTP preferido. @@ -1540,3 +1540,7 @@ preferMonochromeIcons=Prefiero iconos monocromos preferMonochromeIconsDescription=Cuando está activada, las variables de icono monocromo se elegirán sobre las versiones coloreadas por defecto de un icono, suponiendo que exista una variante de icono en modo claro u oscuro para un icono de una fuente.\n\nRequiere una actualización de los iconos para aplicarse. alwaysShowSshMotd=Mostrar siempre MOTD alwaysShowSshMotdDescription=Si mostrar o no el mensaje del día configurado en un sistema remoto al iniciar una nueva sesión de terminal. Ten en cuenta que cambiar esto podría alterar el comportamiento de inicialización de las conexiones SSH. +manageSubscription=Gestionar suscripción +noListeningSshServer=Ningún servidor SSH a la escucha +networkScanResults=Resultados de la exploración +networkScanResultsDescription=La lista de sistemas encontrados en la red diff --git a/lang/strings/translations_fr.properties b/lang/strings/translations_fr.properties index 5897e2b72..6170260d5 100644 --- a/lang/strings/translations_fr.properties +++ b/lang/strings/translations_fr.properties @@ -1260,8 +1260,8 @@ free=Gratuit upgradeInfo=Tu trouveras ci-dessous des informations sur la mise à niveau vers une licence professionnelle. upgradeInfoPreview=Tu peux trouver des informations sur la mise à niveau vers une licence professionnelle ci-dessous ou essayer l'aperçu. enterLicenseKey=Saisis la clé de licence pour la mise à niveau -isOnlySupported=n'est pris en charge qu'avec au moins une licence $TYPE$ -areOnlySupported=ne sont pris en charge qu'avec au moins une licence $TYPE$ +isOnlySupported=n'est pris en charge qu'avec au moins une licence $TYPE$ +areOnlySupported=ne sont pris en charge qu'avec au moins une licence $TYPE$ legacyLicense=Cette licence n'inclut que les nouvelles fonctionnalités professionnelles publiées dans l'année qui suit l'achat. openApiDocs=Documentation de l'API openApiDocsDescription=La documentation de l'API HTTP est disponible en ligne, y compris une spécification OpenAPI .yaml. Tu peux l'ouvrir dans ton navigateur web ou dans ton client HTTP préféré. @@ -1583,3 +1583,7 @@ preferMonochromeIcons=Préfère les icônes monochromes preferMonochromeIconsDescription=Lorsque cette option est activée, les variables d'icônes monochromes seront choisies plutôt que les versions colorées par défaut d'une icône, en supposant qu'une variante d'icône distincte en mode clair ou foncé soit disponible pour une icône à partir d'une source.\n\nNécessite un rafraîchissement des icônes à appliquer. alwaysShowSshMotd=Toujours montrer MOTD alwaysShowSshMotdDescription=Affichage ou non du message du jour configuré sur un système distant lors de la connexion dans une nouvelle session de terminal. Note que la modification de ce paramètre peut altérer le comportement d'initialisation des connexions SSH. +manageSubscription=Gérer l'abonnement +noListeningSshServer=Pas de serveur SSH à l'écoute +networkScanResults=Résultats de l'analyse +networkScanResultsDescription=La liste des systèmes trouvés dans le réseau diff --git a/lang/strings/translations_id.properties b/lang/strings/translations_id.properties index 6e63c4dd7..39d218f24 100644 --- a/lang/strings/translations_id.properties +++ b/lang/strings/translations_id.properties @@ -1223,8 +1223,8 @@ free=Gratis upgradeInfo=Anda dapat menemukan informasi tentang meningkatkan ke lisensi profesional di bawah ini. upgradeInfoPreview=Anda dapat menemukan informasi tentang meningkatkan ke lisensi profesional di bawah ini atau mencoba pratinjau. enterLicenseKey=Masukkan kunci lisensi untuk meningkatkan -isOnlySupported=hanya didukung dengan setidaknya lisensi $TYPE$ -areOnlySupported=hanya didukung dengan setidaknya lisensi $TYPE$ +isOnlySupported=hanya didukung dengan setidaknya lisensi $TYPE$ +areOnlySupported=hanya didukung dengan setidaknya lisensi $TYPE$ legacyLicense=Lisensi ini hanya menyertakan fitur Profesional baru yang dirilis dalam waktu satu tahun setelah pembelian. openApiDocs=Dokumentasi API openApiDocsDescription=Dokumentasi API HTTP tersedia secara online, termasuk spesifikasi OpenAPI .yaml. Anda dapat membukanya di browser web atau klien HTTP pilihan Anda. @@ -1540,3 +1540,7 @@ preferMonochromeIcons=Lebih menyukai ikon monokrom preferMonochromeIconsDescription=Bila diaktifkan, variabel ikon monokrom akan dipilih daripada versi ikon berwarna default, dengan asumsi bahwa varian ikon mode terang atau gelap yang terpisah tersedia untuk ikon dari sumber.\n\nMemerlukan penyegaran ikon untuk menerapkannya. alwaysShowSshMotd=Selalu tampilkan MOTD alwaysShowSshMotdDescription=Apakah akan menampilkan pesan hari ini yang dikonfigurasi pada sistem jarak jauh atau tidak saat masuk dalam sesi terminal baru. Perhatikan bahwa mengubah hal ini dapat mengubah perilaku inisialisasi koneksi SSH. +manageSubscription=Mengelola langganan +noListeningSshServer=Tidak ada server SSH yang mendengarkan +networkScanResults=Hasil pemindaian +networkScanResultsDescription=Daftar sistem yang ditemukan dalam jaringan diff --git a/lang/strings/translations_it.properties b/lang/strings/translations_it.properties index c509c5c3c..3da509989 100644 --- a/lang/strings/translations_it.properties +++ b/lang/strings/translations_it.properties @@ -118,7 +118,7 @@ yes=Sì no=No errorOccured=Si è verificato un errore terminalErrorOccured=Si è verificato un errore del terminale -errorTypeOccured=È stata lanciata un'eccezione del tipo $TYPE$ +errorTypeOccured=È stata lanciata un'eccezione del tipo $TYPE$ permissionsAlertTitle=Permessi richiesti permissionsAlertHeader=Per eseguire questa operazione sono necessari ulteriori permessi. permissionsAlertContent=Segui il pop-up per dare a XPipe i permessi richiesti nel menu delle impostazioni. @@ -995,7 +995,7 @@ administrator=Amministratore wslHost=Host WSL timeout=Timeout installLocation=Posizione di installazione -installLocationDescription=La posizione in cui è installato l'ambiente $NAME$ +installLocationDescription=La posizione in cui è installato l'ambiente $NAME$ wsl.displayName=Sottosistema Windows per Linux wsl.displayDescription=Connettersi a un'istanza WSL in esecuzione su Windows docker.displayName=Contenitore Docker @@ -1223,8 +1223,8 @@ free=Gratuito upgradeInfo=Qui di seguito puoi trovare informazioni sull'aggiornamento a una licenza professionale. upgradeInfoPreview=Puoi trovare informazioni sull'aggiornamento a una licenza professionale qui sotto o provare l'anteprima. enterLicenseKey=Inserisci la chiave di licenza per l'aggiornamento -isOnlySupported=è supportato solo con almeno una licenza $TYPE$ -areOnlySupported=sono supportati solo con una licenza di almeno $TYPE$ +isOnlySupported=è supportato solo con almeno una licenza $TYPE$ +areOnlySupported=sono supportati solo con una licenza di almeno $TYPE$ legacyLicense=Questa licenza include solo le nuove funzionalità di Professional rilasciate entro un anno dall'acquisto. openApiDocs=Documentazione API openApiDocsDescription=La documentazione dell'API HTTP è disponibile online, compresa una specifica OpenAPI .yaml. Puoi aprirla nel tuo browser web o nel tuo client HTTP preferito. @@ -1540,3 +1540,7 @@ preferMonochromeIcons=Preferisci le icone monocromatiche preferMonochromeIconsDescription=Quando è abilitata, le variabili monocromatiche delle icone saranno scelte rispetto alle versioni colorate predefinite di un'icona, a condizione che sia disponibile una variante separata di icona in modalità chiara o scura per un'icona da una fonte.\n\nRichiede un aggiornamento delle icone da applicare. alwaysShowSshMotd=Mostra sempre MOTD alwaysShowSshMotdDescription=Se mostrare o meno il messaggio del giorno configurato su un sistema remoto al momento del login in una nuova sessione di terminale. Si noti che la modifica di questa opzione potrebbe alterare il comportamento di inizializzazione delle connessioni SSH. +manageSubscription=Gestire l'abbonamento +noListeningSshServer=Nessun server SSH in ascolto +networkScanResults=Risultati della scansione +networkScanResultsDescription=L'elenco dei sistemi trovati nella rete diff --git a/lang/strings/translations_ja.properties b/lang/strings/translations_ja.properties index 3b2c79522..856cb9f24 100644 --- a/lang/strings/translations_ja.properties +++ b/lang/strings/translations_ja.properties @@ -1540,3 +1540,7 @@ preferMonochromeIcons=モノクロのアイコンを好む preferMonochromeIconsDescription=有効にすると、アイコンのデフォルトのカラーバージョンよりも、モノクロのアイコンバリアントが選択される。\n\n適用するにはアイコンのリフレッシュが必要である。 alwaysShowSshMotd=常にMOTDを表示する alwaysShowSshMotdDescription=新しい端末セッションのログイン時に、リモートシステムで設定されている日替わりメッセージを表示するかどうか。これを変更すると、SSH 接続の初期化の動作が変わるかもしれないことに注意。 +manageSubscription=サブスクリプションを管理する +noListeningSshServer=SSHサーバーをリッスンしていない +networkScanResults=スキャン結果 +networkScanResultsDescription=ネットワークで見つかったシステムのリスト diff --git a/lang/strings/translations_ko.properties b/lang/strings/translations_ko.properties index 01196e80b..79446f405 100644 --- a/lang/strings/translations_ko.properties +++ b/lang/strings/translations_ko.properties @@ -1540,3 +1540,7 @@ preferMonochromeIcons=단색 아이콘 선호 preferMonochromeIconsDescription=활성화하면 소스의 아이콘에 대해 별도의 밝은 모드 또는 어두운 모드 아이콘 변형을 사용할 수 있다고 가정할 때 기본 컬러 버전의 아이콘 대신 흑백 아이콘 변수가 선택됩니다.\n\n적용하려면 아이콘을 새로 고쳐야 합니다. alwaysShowSshMotd=항상 MOTD 표시 alwaysShowSshMotdDescription=새 터미널 세션에 로그인할 때 원격 시스템에 구성된 오늘의 메시지를 표시할지 여부입니다. 이 값을 변경하면 SSH 연결의 초기화 동작이 변경될 수 있습니다. +manageSubscription=구독 관리 +noListeningSshServer=수신 중인 SSH 서버 없음 +networkScanResults=스캔 결과 +networkScanResultsDescription=네트워크에서 발견된 시스템 목록 diff --git a/lang/strings/translations_nl.properties b/lang/strings/translations_nl.properties index 7050afcf0..ba89010c7 100644 --- a/lang/strings/translations_nl.properties +++ b/lang/strings/translations_nl.properties @@ -1540,3 +1540,7 @@ preferMonochromeIcons=Voorkeur voor monochrome pictogrammen preferMonochromeIconsDescription=Als deze optie is ingeschakeld, worden monochrome pictogramvariabelen verkozen boven de standaard gekleurde versies van een pictogram, ervan uitgaande dat er een aparte lichte of donkere pictogramvariant beschikbaar is voor een pictogram van een bron.\n\nVereist een verversing van de pictogrammen om toe te passen. alwaysShowSshMotd=Toon altijd MOTD alwaysShowSshMotdDescription=Of het bericht van de dag dat is ingesteld op een systeem op afstand wel of niet moet worden weergegeven bij het aanmelden in een nieuwe terminalsessie. Merk op dat het veranderen hiervan het initialisatiegedrag van SSH verbindingen kan veranderen. +manageSubscription=Abonnement beheren +noListeningSshServer=Geen luisterende SSH-server +networkScanResults=Scanresultaten +networkScanResultsDescription=De lijst van gevonden systemen in het netwerk diff --git a/lang/strings/translations_pl.properties b/lang/strings/translations_pl.properties index f29ebffa6..a77dc8127 100644 --- a/lang/strings/translations_pl.properties +++ b/lang/strings/translations_pl.properties @@ -118,7 +118,7 @@ yes=Tak no=Nie errorOccured=Wystąpił błąd terminalErrorOccured=Wystąpił błąd terminala -errorTypeOccured=Zgłoszono wyjątek typu $TYPE$ +errorTypeOccured=Zgłoszono wyjątek typu $TYPE$ permissionsAlertTitle=Wymagane uprawnienia permissionsAlertHeader=Do wykonania tej operacji wymagane są dodatkowe uprawnienia. permissionsAlertContent=Postępuj zgodnie z wyskakującym okienkiem, aby nadać XPipe wymagane uprawnienia w menu ustawień. @@ -995,7 +995,7 @@ administrator=Administrator wslHost=Host WSL timeout=Limit czasu installLocation=Zainstaluj lokalizację -installLocationDescription=Lokalizacja, w której zainstalowane jest twoje środowisko $NAME$ +installLocationDescription=Lokalizacja, w której zainstalowane jest twoje środowisko $NAME$ wsl.displayName=Podsystem Windows dla systemu Linux wsl.displayDescription=Połącz się z instancją WSL działającą w systemie Windows docker.displayName=Kontener Docker @@ -1224,8 +1224,8 @@ free=Darmowy upgradeInfo=Poniżej znajdziesz informacje na temat uaktualnienia do licencji profesjonalnej. upgradeInfoPreview=Poniżej znajdziesz informacje na temat uaktualnienia do licencji profesjonalnej lub wypróbowania wersji zapoznawczej. enterLicenseKey=Wprowadź klucz licencyjny do aktualizacji -isOnlySupported=jest obsługiwany tylko z licencją $TYPE$ -areOnlySupported=są obsługiwane tylko z co najmniej licencją $TYPE$ +isOnlySupported=jest obsługiwany tylko z licencją $TYPE$ +areOnlySupported=są obsługiwane tylko z co najmniej licencją $TYPE$ legacyLicense=Ta licencja obejmuje tylko nowe funkcje Professional wydane w ciągu jednego roku od zakupu. openApiDocs=Dokumentacja API openApiDocsDescription=Dokumentacja API HTTP jest dostępna online, w tym specyfikacja OpenAPI .yaml. Możesz ją otworzyć w przeglądarce internetowej lub preferowanym kliencie HTTP. @@ -1541,3 +1541,7 @@ preferMonochromeIcons=Preferuj ikony monochromatyczne preferMonochromeIconsDescription=Po włączeniu, monochromatyczne zmienne ikony będą wybierane zamiast domyślnych kolorowych wersji ikony, zakładając, że dla ikony ze źródła dostępny jest oddzielny wariant ikony w trybie jasnym lub ciemnym.\n\nWymaga odświeżenia ikon do zastosowania. alwaysShowSshMotd=Zawsze pokazuj MOTD alwaysShowSshMotdDescription=Czy wyświetlać wiadomość dnia skonfigurowaną w zdalnym systemie po zalogowaniu w nowej sesji terminala. Zauważ, że zmiana tej opcji może zmienić zachowanie inicjalizacji połączeń SSH. +manageSubscription=Zarządzaj subskrypcją +noListeningSshServer=Brak nasłuchującego serwera SSH +networkScanResults=Wyniki skanowania +networkScanResultsDescription=Lista znalezionych systemów w sieci diff --git a/lang/strings/translations_pt.properties b/lang/strings/translations_pt.properties index c65e0f2ae..6836f933d 100644 --- a/lang/strings/translations_pt.properties +++ b/lang/strings/translations_pt.properties @@ -118,7 +118,7 @@ yes=Sim no=Não errorOccured=Ocorreu um erro terminalErrorOccured=Ocorreu um erro no terminal -errorTypeOccured=Foi lançada uma exceção do tipo $TYPE$ +errorTypeOccured=Foi lançada uma exceção do tipo $TYPE$ permissionsAlertTitle=Permissões necessárias permissionsAlertHeader=São necessárias permissões adicionais para efetuar esta operação. permissionsAlertContent=Segue a janela pop-up para dar ao XPipe as permissões necessárias no menu de definições. @@ -1223,8 +1223,8 @@ free=Gratuito upgradeInfo=Podes encontrar informações sobre a atualização para uma licença profissional abaixo. upgradeInfoPreview=Podes encontrar informações sobre a atualização para uma licença profissional abaixo ou experimentar a pré-visualização. enterLicenseKey=Introduzir a chave de licença para atualizar -isOnlySupported=só é suportado com, pelo menos, uma licença $TYPE$ -areOnlySupported=só são suportados com, pelo menos, uma licença $TYPE$ +isOnlySupported=só é suportado com, pelo menos, uma licença $TYPE$ +areOnlySupported=só são suportados com, pelo menos, uma licença $TYPE$ legacyLicense=Esta licença inclui apenas as novas funcionalidades Professional lançadas no prazo de um ano após a compra. openApiDocs=Documentação API openApiDocsDescription=A documentação da API HTTP está disponível online, incluindo uma especificação OpenAPI .yaml. Podes abri-la no teu browser da Web ou no teu cliente HTTP preferido. @@ -1540,3 +1540,7 @@ preferMonochromeIcons=Prefere ícones monocromáticos preferMonochromeIconsDescription=Quando ativado, as variáveis de ícone monocromáticas serão escolhidas em vez das versões coloridas predefinidas de um ícone, assumindo que uma variante de ícone de modo claro ou escuro separada está disponível para um ícone a partir de uma fonte.\n\nRequer uma atualização dos ícones a aplicar. alwaysShowSshMotd=Mostra sempre o MOTD alwaysShowSshMotdDescription=Mostra ou não a mensagem do dia configurada em um sistema remoto no login em uma nova sessão de terminal. Nota que alterar isto pode alterar o comportamento de inicialização das ligações SSH. +manageSubscription=Gerir subscrição +noListeningSshServer=Não escuta o servidor SSH +networkScanResults=Resultados da pesquisa +networkScanResultsDescription=A lista de sistemas encontrados na rede diff --git a/lang/strings/translations_ru.properties b/lang/strings/translations_ru.properties index 74554792a..3e444636a 100644 --- a/lang/strings/translations_ru.properties +++ b/lang/strings/translations_ru.properties @@ -123,7 +123,7 @@ yes=Да no=Нет errorOccured=Произошла ошибка terminalErrorOccured=Произошла ошибка терминала -errorTypeOccured=Было выброшено исключение типа $TYPE$ +errorTypeOccured=Было выброшено исключение типа $TYPE$ permissionsAlertTitle=Необходимые разрешения permissionsAlertHeader=Для выполнения этой операции требуются дополнительные разрешения. permissionsAlertContent=Проследи за всплывающим окном, чтобы дать XPipe необходимые разрешения в меню настроек. @@ -1087,7 +1087,7 @@ administrator=Администратор wslHost=WSL хост timeout=Таймаут installLocation=Место установки -installLocationDescription=Место, где установлена твоя среда $NAME$ +installLocationDescription=Место, где установлена твоя среда $NAME$ wsl.displayName=Подсистема Windows для Linux wsl.displayDescription=Подключитесь к экземпляру WSL, работающему под Windows docker.displayName=Докер-контейнер @@ -1325,8 +1325,8 @@ free=Бесплатно upgradeInfo=Информацию о переходе на профессиональную лицензию ты найдешь ниже. upgradeInfoPreview=Ниже ты можешь найти информацию о переходе на профессиональную лицензию или попробовать предварительный просмотр. enterLicenseKey=Введите лицензионный ключ для обновления -isOnlySupported=поддерживается только при наличии лицензии $TYPE$ -areOnlySupported=поддерживаются только при наличии лицензии $TYPE$ +isOnlySupported=поддерживается только при наличии лицензии $TYPE$ +areOnlySupported=поддерживаются только при наличии лицензии $TYPE$ legacyLicense=Эта лицензия включает только новые функции Professional, выпущенные в течение одного года после покупки. openApiDocs=Документация по API openApiDocsDescription=Документация по HTTP API доступна онлайн, включая спецификацию OpenAPI .yaml. Ты можешь открыть ее в своем браузере или в предпочитаемом HTTP-клиенте. @@ -1654,3 +1654,7 @@ preferMonochromeIcons=Предпочитай монохромные иконки preferMonochromeIconsDescription=Когда эта функция включена, монохромные варианты иконок будут выбираться вместо цветных версий иконок по умолчанию, при условии, что для иконки из источника доступен отдельный вариант светлого или темного режима.\n\nДля применения требуется обновить иконки. alwaysShowSshMotd=Всегда показывай MOTD alwaysShowSshMotdDescription=Показывать или нет сообщение дня, настроенное на удаленной системе, при входе в новую терминальную сессию. Учти, что изменение этого параметра может изменить поведение инициализации SSH-соединений. +manageSubscription=Управляй подпиской +noListeningSshServer=Не прослушивается SSH-сервер +networkScanResults=Результаты сканирования +networkScanResultsDescription=Список найденных систем в сети diff --git a/lang/strings/translations_sv.properties b/lang/strings/translations_sv.properties index 86e8fa510..80e39a5b3 100644 --- a/lang/strings/translations_sv.properties +++ b/lang/strings/translations_sv.properties @@ -1540,3 +1540,7 @@ preferMonochromeIcons=Föredrar monokroma ikoner preferMonochromeIconsDescription=När detta är aktiverat kommer monokroma ikonvariabler att väljas framför standardfärgade versioner av en ikon, förutsatt att en separat ikonvariant för ljust eller mörkt läge finns tillgänglig för en ikon från en källa.\n\nKräver en uppdatering av ikonerna för att tillämpas. alwaysShowSshMotd=Visa alltid MOTD alwaysShowSshMotdDescription=Huruvida dagens meddelande som konfigurerats på ett fjärrsystem ska visas vid inloggning i en ny terminalsession eller inte. Observera att om du ändrar detta kan initialiseringsbeteendet för SSH-anslutningar ändras. +manageSubscription=Hantera prenumeration +noListeningSshServer=Ingen lyssnande SSH-server +networkScanResults=Resultat av skanning +networkScanResultsDescription=Listan över hittade system i nätverket diff --git a/lang/strings/translations_tr.properties b/lang/strings/translations_tr.properties index 56acd08ec..46e556ab9 100644 --- a/lang/strings/translations_tr.properties +++ b/lang/strings/translations_tr.properties @@ -1540,3 +1540,7 @@ preferMonochromeIcons=Tek renkli simgeleri tercih edin preferMonochromeIconsDescription=Etkinleştirildiğinde, bir kaynaktan gelen bir simge için ayrı bir açık veya koyu mod simge değişkeninin mevcut olduğu varsayılarak, tek renkli simge değişkenleri bir simgenin varsayılan renkli sürümlerine tercih edilecektir.\n\nUygulanacak simgelerin yenilenmesini gerektirir. alwaysShowSshMotd=Her zaman MOTD'yi göster alwaysShowSshMotdDescription=Yeni bir terminal oturumunda oturum açıldığında uzak bir sistemde yapılandırılan günün mesajının gösterilip gösterilmeyeceği. Bunu değiştirmenin SSH bağlantılarının başlatma davranışını değiştirebileceğini unutmayın. +manageSubscription=Aboneliği yönet +noListeningSshServer=Dinleyen SSH sunucusu yok +networkScanResults=Tarama sonuçları +networkScanResultsDescription=Ağda bulunan sistemlerin listesi diff --git a/lang/strings/translations_vi.properties b/lang/strings/translations_vi.properties index 61aafdc9e..5afa1c605 100644 --- a/lang/strings/translations_vi.properties +++ b/lang/strings/translations_vi.properties @@ -1223,7 +1223,7 @@ free=Miễn phí upgradeInfo=Bạn có thể tìm thấy thông tin về việc nâng cấp lên giấy phép chuyên nghiệp bên dưới. upgradeInfoPreview=Bạn có thể tìm thông tin về việc nâng cấp lên giấy phép chuyên nghiệp bên dưới hoặc thử phiên bản demo. enterLicenseKey=Nhập khóa cấp phép để nâng cấp -isOnlySupported=chỉ được hỗ trợ với giấy phép $TYPE$ +isOnlySupported=chỉ được hỗ trợ với giấy phép $TYPE$ areOnlySupported=chỉ được hỗ trợ với giấy phép sử dụng phần mềm không thương mại ( $TYPE$ ) legacyLicense=Giấy phép này chỉ bao gồm các tính năng chuyên nghiệp mới được phát hành trong vòng một năm kể từ ngày mua. openApiDocs=Tài liệu API @@ -1540,3 +1540,7 @@ preferMonochromeIcons=Ưu tiên sử dụng biểu tượng đơn sắc preferMonochromeIconsDescription=Khi được bật, các biến biểu tượng đơn sắc sẽ được ưu tiên sử dụng thay vì các phiên bản màu mặc định của biểu tượng, giả sử rằng có sẵn một biến thể biểu tượng chế độ sáng hoặc tối riêng biệt cho biểu tượng từ nguồn.\n\nYêu cầu làm mới biểu tượng để áp dụng. alwaysShowSshMotd=Luôn hiển thị MOTD alwaysShowSshMotdDescription=Có hiển thị thông báo hàng ngày được cấu hình trên hệ thống từ xa khi đăng nhập vào phiên terminal mới hay không. Lưu ý rằng việc thay đổi này có thể ảnh hưởng đến hành vi khởi tạo của kết nối SSH. +manageSubscription=Quản lý đăng ký +noListeningSshServer=Máy chủ SSH không nghe +networkScanResults=Kết quả quét +networkScanResultsDescription=Danh sách các hệ thống được tìm thấy trong mạng diff --git a/lang/strings/translations_zh.properties b/lang/strings/translations_zh.properties index 41a16cc78..52f3efba2 100644 --- a/lang/strings/translations_zh.properties +++ b/lang/strings/translations_zh.properties @@ -1760,3 +1760,7 @@ preferMonochromeIcons=首选单色图标 preferMonochromeIconsDescription=启用后,单色图标变量将优先于默认的彩色图标版本,前提是来源图标有单独的浅色或深色模式图标变量。\n\n需要刷新图标才能应用。 alwaysShowSshMotd=始终显示 MOTD alwaysShowSshMotdDescription=是否在新终端会话登录时显示远程系统配置的每日信息。请注意,更改此项可能会改变 SSH 连接的初始化行为。 +manageSubscription=管理订阅 +noListeningSshServer=无监听 SSH 服务器 +networkScanResults=扫描结果 +networkScanResultsDescription=网络中找到的系统列表