From 347b07d2e1d4829a75b7f56c149ad6679770cee0 Mon Sep 17 00:00:00 2001 From: PaulKoudelka Date: Tue, 21 Jul 2026 18:14:28 +0200 Subject: [PATCH] made search of multiple words possible --- .../Assistants/I18N/allTexts.lua | 6 +++ .../LogViewer/AssistantLogViewer.razor.cs | 8 +--- .../plugin.lua | 6 +++ .../plugin.lua | 6 +++ .../Tools/Services/RustService.FileSystem.cs | 44 ------------------- 5 files changed, 20 insertions(+), 50 deletions(-) diff --git a/app/MindWork AI Studio/Assistants/I18N/allTexts.lua b/app/MindWork AI Studio/Assistants/I18N/allTexts.lua index d0213f55..85599176 100644 --- a/app/MindWork AI Studio/Assistants/I18N/allTexts.lua +++ b/app/MindWork AI Studio/Assistants/I18N/allTexts.lua @@ -1660,6 +1660,9 @@ UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T292030470 -- Filter only UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T3152625639"] = "Filter only" +-- Copy visible lines +UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T3292961985"] = "Copy visible lines" + -- Loading log file... UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T333036481"] = "Loading log file..." @@ -1696,6 +1699,9 @@ UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T416289765 -- Show timestamps UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T469116133"] = "Show timestamps" +-- Invert filters +UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T721900298"] = "Invert filters" + -- Clear UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T77955010"] = "Clear" diff --git a/app/MindWork AI Studio/Assistants/LogViewer/AssistantLogViewer.razor.cs b/app/MindWork AI Studio/Assistants/LogViewer/AssistantLogViewer.razor.cs index 15bcd83f..dfccfcd7 100644 --- a/app/MindWork AI Studio/Assistants/LogViewer/AssistantLogViewer.razor.cs +++ b/app/MindWork AI Studio/Assistants/LogViewer/AssistantLogViewer.razor.cs @@ -14,7 +14,6 @@ namespace AIStudio.Assistants.LogViewer; public partial class AssistantLogViewer : MSGComponentBase { private static readonly TimeSpan AUTO_REFRESH_INTERVAL = TimeSpan.FromSeconds(5); - private static readonly char[] WORD_SPLIT_CHARS = [' ', '\t', '\r', '\n']; private static readonly Dictionary LOG_LEVEL_ORDER = new(StringComparer.OrdinalIgnoreCase) { ["ERROR"] = 0, @@ -745,10 +744,7 @@ public partial class AssistantLogViewer : MSGComponentBase if (string.IsNullOrWhiteSpace(text)) return []; - return text - .Split(WORD_SPLIT_CHARS, StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries) - .Distinct(StringComparer.OrdinalIgnoreCase) - .ToArray(); + return [text.Trim()]; } private static bool MatchesSearchTerms(string text, string[] terms) @@ -819,4 +815,4 @@ public partial class AssistantLogViewer : MSGComponentBase private readonly record struct LogSnapshot(List Lines, int TotalLineCount, int SkippedLineCount); private readonly record struct HighlightRange(int Start, int Length); -} \ No newline at end of file +} diff --git a/app/MindWork AI Studio/Plugins/languages/de-de-43065dbc-78d0-45b7-92be-f14c2926e2dc/plugin.lua b/app/MindWork AI Studio/Plugins/languages/de-de-43065dbc-78d0-45b7-92be-f14c2926e2dc/plugin.lua index 01d85b7a..4768f267 100644 --- a/app/MindWork AI Studio/Plugins/languages/de-de-43065dbc-78d0-45b7-92be-f14c2926e2dc/plugin.lua +++ b/app/MindWork AI Studio/Plugins/languages/de-de-43065dbc-78d0-45b7-92be-f14c2926e2dc/plugin.lua @@ -1662,6 +1662,9 @@ UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T292030470 -- Filter only UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T3152625639"] = "Nur filtern" +-- Copy visible lines +UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T3292961985"] = "Ansicht kopieren" + -- Loading log file... UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T333036481"] = "Lade Protokolldatei..." @@ -1698,6 +1701,9 @@ UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T416289765 -- Show timestamps UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T469116133"] = "Zeitstempel anzeigen" +-- Invert filters +UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T721900298"] = "Filter umkehren" + -- Clear UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T77955010"] = "Löschen" diff --git a/app/MindWork AI Studio/Plugins/languages/en-us-97dfb1ba-50c4-4440-8dfa-6575daf543c8/plugin.lua b/app/MindWork AI Studio/Plugins/languages/en-us-97dfb1ba-50c4-4440-8dfa-6575daf543c8/plugin.lua index bb5e3610..f7792d12 100644 --- a/app/MindWork AI Studio/Plugins/languages/en-us-97dfb1ba-50c4-4440-8dfa-6575daf543c8/plugin.lua +++ b/app/MindWork AI Studio/Plugins/languages/en-us-97dfb1ba-50c4-4440-8dfa-6575daf543c8/plugin.lua @@ -1662,6 +1662,9 @@ UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T292030470 -- Filter only UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T3152625639"] = "Filter only" +-- Copy visible lines +UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T3292961985"] = "Copy view" + -- Loading log file... UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T333036481"] = "Loading log file..." @@ -1698,6 +1701,9 @@ UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T416289765 -- Show timestamps UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T469116133"] = "Show timestamps" +-- Invert filters +UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T721900298"] = "Invert filters" + -- Clear UI_TEXT_CONTENT["AISTUDIO::ASSISTANTS::LOGVIEWER::ASSISTANTLOGVIEWER::T77955010"] = "Clear" diff --git a/app/MindWork AI Studio/Tools/Services/RustService.FileSystem.cs b/app/MindWork AI Studio/Tools/Services/RustService.FileSystem.cs index 4145aaf9..81a64e8c 100644 --- a/app/MindWork AI Studio/Tools/Services/RustService.FileSystem.cs +++ b/app/MindWork AI Studio/Tools/Services/RustService.FileSystem.cs @@ -168,48 +168,4 @@ public sealed partial class RustService result.Dispose(); } } - - public async Task TryOpenPathInRuntimeFileManager(string path) - { - HttpResponseMessage result; - try - { - result = await this.http.PostAsJsonAsync("/open/path", new OpenPathRequest(path), this.jsonRustSerializerOptions); - } - catch (HttpRequestException e) - { - this.logger!.LogWarning(e, "Failed to reach the Rust runtime file manager endpoint."); - return new OpenPathResponse(false, TB("The runtime file manager endpoint is not available.")); - } - catch (TaskCanceledException e) - { - this.logger!.LogWarning(e, "Timed out while reaching the Rust runtime file manager endpoint."); - return new OpenPathResponse(false, TB("The runtime file manager endpoint is not available.")); - } - - try - { - if (!result.IsSuccessStatusCode) - { - this.logger!.LogWarning("Failed to open a path in the file manager through the Rust runtime: '{StatusCode}'", result.StatusCode); - return new OpenPathResponse(false, string.Format(TB("The runtime file manager endpoint returned '{0}'."), result.StatusCode)); - } - - var response = await result.Content.ReadFromJsonAsync(this.jsonRustSerializerOptions); - var normalizedResponse = response.Success - ? response - : new OpenPathResponse(false, string.IsNullOrWhiteSpace(response.Issue) ? TB("The runtime file manager endpoint failed without details.") : response.Issue); - - return normalizedResponse; - } - catch (Exception e) - { - this.logger!.LogWarning(e, "Failed to process the Rust runtime file manager endpoint response."); - return new OpenPathResponse(false, TB("The runtime file manager endpoint failed without details.")); - } - finally - { - result.Dispose(); - } - } } \ No newline at end of file