From a486f713f6ff154d447d98b732e0949d56eaec1e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Dec 2022 22:15:25 +0000 Subject: [PATCH 01/10] Bump SharpVectors from 1.7.6 to 1.8.1 Bumps [SharpVectors](https://github.com/ElinamLLC/SharpVectors) from 1.7.6 to 1.8.1. - [Release notes](https://github.com/ElinamLLC/SharpVectors/releases) - [Commits](https://github.com/ElinamLLC/SharpVectors/compare/v.1.7.6...v1.8.1) --- updated-dependencies: - dependency-name: SharpVectors dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- Flow.Launcher/Flow.Launcher.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Flow.Launcher/Flow.Launcher.csproj b/Flow.Launcher/Flow.Launcher.csproj index 931e97153..1f74ea8a5 100644 --- a/Flow.Launcher/Flow.Launcher.csproj +++ b/Flow.Launcher/Flow.Launcher.csproj @@ -97,7 +97,7 @@ runtime; build; native; contentfiles; analyzers; buildtransitive - + From 00c229d82c95bed164bc2fda73f281bb16d985e3 Mon Sep 17 00:00:00 2001 From: Jeremy Wu Date: Thu, 15 Dec 2022 22:03:54 +1100 Subject: [PATCH 02/10] add exception handling when Windows Search service not available --- Flow.Launcher.Test/Plugins/ExplorerTest.cs | 2 +- .../Search/WindowsIndex/QueryConstructor.cs | 23 +++-- .../Search/WindowsIndex/WindowsIndex.cs | 28 +----- .../WindowsIndex/WindowsIndexSearchManager.cs | 86 +++++++++++++++---- 4 files changed, 80 insertions(+), 59 deletions(-) diff --git a/Flow.Launcher.Test/Plugins/ExplorerTest.cs b/Flow.Launcher.Test/Plugins/ExplorerTest.cs index a5e3ec3df..e0cc9b4c2 100644 --- a/Flow.Launcher.Test/Plugins/ExplorerTest.cs +++ b/Flow.Launcher.Test/Plugins/ExplorerTest.cs @@ -116,7 +116,7 @@ namespace Flow.Launcher.Test.Plugins { // Given var queryConstructor = new QueryConstructor(new Settings()); - var baseQuery = queryConstructor.BaseQueryHelper; + var baseQuery = queryConstructor.CreateBaseQuery(); // system running this test could have different locale than the hard-coded 1033 LCID en-US. var queryKeywordLocale = baseQuery.QueryKeywordLocale; diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Search/WindowsIndex/QueryConstructor.cs b/Plugins/Flow.Launcher.Plugin.Explorer/Search/WindowsIndex/QueryConstructor.cs index 6501c1657..87eca91da 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Search/WindowsIndex/QueryConstructor.cs +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Search/WindowsIndex/QueryConstructor.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Buffers; using Microsoft.Search.Interop; @@ -6,25 +6,21 @@ namespace Flow.Launcher.Plugin.Explorer.Search.WindowsIndex { public class QueryConstructor { - private Settings Settings { get; } + private Settings settings { get; } private const string SystemIndex = "SystemIndex"; - public CSearchQueryHelper BaseQueryHelper { get; } - public QueryConstructor(Settings settings) { - Settings = settings; - BaseQueryHelper = CreateBaseQuery(); + this.settings = settings; } - - private CSearchQueryHelper CreateBaseQuery() + public CSearchQueryHelper CreateBaseQuery() { var baseQuery = CreateQueryHelper(); // Set the number of results we want. Don't set this property if all results are needed. - baseQuery.QueryMaxResults = Settings.MaxResult; + baseQuery.QueryMaxResults = settings.MaxResult; // Set list of columns we want to display, getting the path presently baseQuery.QuerySelectColumns = "System.FileName, System.ItemUrl, System.ItemType"; @@ -38,9 +34,10 @@ namespace Flow.Launcher.Plugin.Explorer.Search.WindowsIndex return baseQuery; } - internal static CSearchQueryHelper CreateQueryHelper() + internal CSearchQueryHelper CreateQueryHelper() { // This uses the Microsoft.Search.Interop assembly + // Throws COMException if Windows Search service is not running/disabled, this needs to be caught var manager = new CSearchManager(); // SystemIndex catalog is the default catalog in Windows @@ -67,7 +64,7 @@ namespace Flow.Launcher.Plugin.Explorer.Search.WindowsIndex ? RecursiveDirectoryConstraint(path) : TopLevelDirectoryConstraint(path); - var query = $"SELECT TOP {Settings.MaxResult} {BaseQueryHelper.QuerySelectColumns} FROM {SystemIndex} WHERE {scopeConstraint} {queryConstraint} ORDER BY {FileName}"; + var query = $"SELECT TOP {settings.MaxResult} {CreateBaseQuery().QuerySelectColumns} FROM {SystemIndex} WHERE {scopeConstraint} {queryConstraint} ORDER BY {FileName}"; return query; } @@ -81,7 +78,7 @@ namespace Flow.Launcher.Plugin.Explorer.Search.WindowsIndex userSearchString = "*"; // Generate SQL from constructed parameters, converting the userSearchString from AQS->WHERE clause - return $"{BaseQueryHelper.GenerateSQLFromUserQuery(userSearchString.ToString())} AND {RestrictionsForAllFilesAndFoldersSearch} ORDER BY {FileName}"; + return $"{CreateBaseQuery().GenerateSQLFromUserQuery(userSearchString.ToString())} AND {RestrictionsForAllFilesAndFoldersSearch} ORDER BY {FileName}"; } /// @@ -101,7 +98,7 @@ namespace Flow.Launcher.Plugin.Explorer.Search.WindowsIndex public string FileContent(ReadOnlySpan userSearchString) { string query = - $"SELECT TOP {Settings.MaxResult} {BaseQueryHelper.QuerySelectColumns} FROM {SystemIndex} WHERE {RestrictionsForFileContentSearch(userSearchString)} AND {RestrictionsForAllFilesAndFoldersSearch} ORDER BY {FileName}"; + $"SELECT TOP {settings.MaxResult} {CreateBaseQuery().QuerySelectColumns} FROM {SystemIndex} WHERE {RestrictionsForFileContentSearch(userSearchString)} AND {RestrictionsForAllFilesAndFoldersSearch} ORDER BY {FileName}"; return query; } diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Search/WindowsIndex/WindowsIndex.cs b/Plugins/Flow.Launcher.Plugin.Explorer/Search/WindowsIndex/WindowsIndex.cs index 4396951d6..2093508a0 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Search/WindowsIndex/WindowsIndex.cs +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Search/WindowsIndex/WindowsIndex.cs @@ -1,4 +1,4 @@ -using Flow.Launcher.Infrastructure.Logger; +using Flow.Launcher.Infrastructure.Logger; using Microsoft.Search.Interop; using System; using System.Collections.Generic; @@ -86,32 +86,6 @@ namespace Flow.Launcher.Plugin.Explorer.Search.WindowsIndex { throw new SearchException("Windows Index", e.Message, e); } - catch (COMException) - { - // Occurs because the Windows Indexing (WSearch) is turned off in services and unable to be used by Explorer plugin - - if (!SearchManager.Settings.WarnWindowsSearchServiceOff) - return AsyncEnumerable.Empty(); - - var api = SearchManager.Context.API; - - throw new EngineNotAvailableException( - "Windows Index", - api.GetTranslation("plugin_explorer_windowsSearchServiceFix"), - api.GetTranslation("plugin_explorer_windowsSearchServiceNotRunning"), - c => - { - SearchManager.Settings.WarnWindowsSearchServiceOff = false; - - // Clears the warning message so user is not mistaken that it has not worked - api.ChangeQuery(string.Empty); - - return ValueTask.FromResult(false); - }) - { - ErrorIcon = Constants.WindowsIndexErrorImagePath - }; - } } internal static bool PathIsIndexed(string path) diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Search/WindowsIndex/WindowsIndexSearchManager.cs b/Plugins/Flow.Launcher.Plugin.Explorer/Search/WindowsIndex/WindowsIndexSearchManager.cs index 91ba2a858..abb50849d 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Search/WindowsIndex/WindowsIndexSearchManager.cs +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Search/WindowsIndex/WindowsIndexSearchManager.cs @@ -1,24 +1,24 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Runtime.InteropServices; using System.Threading; using System.Threading.Tasks; +using Flow.Launcher.Plugin.Explorer.Exceptions; using Flow.Launcher.Plugin.Explorer.Search.IProvider; -using Microsoft.Search.Interop; namespace Flow.Launcher.Plugin.Explorer.Search.WindowsIndex { public class WindowsIndexSearchManager : IIndexProvider, IContentIndexProvider, IPathIndexProvider { private Settings Settings { get; } - private QueryConstructor QueryConstructor { get; } - private CSearchQueryHelper QueryHelper { get; } + private QueryConstructor QueryConstructor { get; } + public WindowsIndexSearchManager(Settings settings) { Settings = settings; QueryConstructor = new QueryConstructor(Settings); - QueryHelper = QueryConstructor.CreateQueryHelper(); } private IAsyncEnumerable WindowsIndexFileContentSearchAsync( @@ -28,20 +28,38 @@ namespace Flow.Launcher.Plugin.Explorer.Search.WindowsIndex if (querySearchString.IsEmpty) return AsyncEnumerable.Empty(); - return WindowsIndex.WindowsIndexSearchAsync( - QueryHelper.ConnectionString, - QueryConstructor.FileContent(querySearchString), - token); + try + { + return WindowsIndex.WindowsIndexSearchAsync( + QueryConstructor.CreateQueryHelper().ConnectionString, + QueryConstructor.FileContent(querySearchString), + token); + } + catch (COMException) + { + // Occurs when the Windows Indexing (WSearch) is turned off in services and unable to be used by Explorer plugin + // Thrown by QueryConstructor.CreateQueryHelper() + return HandledEngineNotAvailableExceptionAsync(); + } } private IAsyncEnumerable WindowsIndexFilesAndFoldersSearchAsync( ReadOnlySpan querySearchString, CancellationToken token = default) { - return WindowsIndex.WindowsIndexSearchAsync( - QueryHelper.ConnectionString, - QueryConstructor.FilesAndFolders(querySearchString), - token); + try + { + return WindowsIndex.WindowsIndexSearchAsync( + QueryConstructor.CreateQueryHelper().ConnectionString, + QueryConstructor.FilesAndFolders(querySearchString), + token); + } + catch (COMException) + { + // Occurs when the Windows Indexing (WSearch) is turned off in services and unable to be used by Explorer plugin + // Thrown by QueryConstructor.CreateQueryHelper() + return HandledEngineNotAvailableExceptionAsync(); + } } private IAsyncEnumerable WindowsIndexTopLevelFolderSearchAsync( @@ -50,12 +68,19 @@ namespace Flow.Launcher.Plugin.Explorer.Search.WindowsIndex bool recursive, CancellationToken token) { - var queryConstructor = new QueryConstructor(Settings); - - return WindowsIndex.WindowsIndexSearchAsync( - QueryConstructor.CreateQueryHelper().ConnectionString, - queryConstructor.Directory(path, search, recursive), - token); + try + { + return WindowsIndex.WindowsIndexSearchAsync( + QueryConstructor.CreateQueryHelper().ConnectionString, + QueryConstructor.Directory(path, search, recursive), + token); + } + catch (COMException) + { + // Occurs when the Windows Indexing (WSearch) is turned off in services and unable to be used by Explorer plugin + // Thrown by QueryConstructor.CreateQueryHelper() + return HandledEngineNotAvailableExceptionAsync(); + } } public IAsyncEnumerable SearchAsync(string search, CancellationToken token) { @@ -69,5 +94,30 @@ namespace Flow.Launcher.Plugin.Explorer.Search.WindowsIndex { return WindowsIndexTopLevelFolderSearchAsync(search, path, recursive, token); } + + private IAsyncEnumerable HandledEngineNotAvailableExceptionAsync() + { + if (!SearchManager.Settings.WarnWindowsSearchServiceOff) + return AsyncEnumerable.Empty(); + + var api = SearchManager.Context.API; + + throw new EngineNotAvailableException( + "Windows Index", + api.GetTranslation("plugin_explorer_windowsSearchServiceFix"), + api.GetTranslation("plugin_explorer_windowsSearchServiceNotRunning"), + c => + { + SearchManager.Settings.WarnWindowsSearchServiceOff = false; + + // Clears the warning message so user is not mistaken that it has not worked + api.ChangeQuery(string.Empty); + + return ValueTask.FromResult(false); + }) + { + ErrorIcon = Constants.WindowsIndexErrorImagePath + }; + } } } From a43c483ceed9c99d136b57380e3a0a8cc287ac22 Mon Sep 17 00:00:00 2001 From: DB p Date: Sat, 17 Dec 2022 09:01:22 +0900 Subject: [PATCH 03/10] Fix Blank Height with Preview --- Flow.Launcher/Themes/Base.xaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Flow.Launcher/Themes/Base.xaml b/Flow.Launcher/Themes/Base.xaml index 9f62b3e84..f5642314e 100644 --- a/Flow.Launcher/Themes/Base.xaml +++ b/Flow.Launcher/Themes/Base.xaml @@ -451,15 +451,16 @@ + + - From 2fda16cfd4d2c5f69681a5d028baf96c77981da8 Mon Sep 17 00:00:00 2001 From: DB p Date: Sat, 17 Dec 2022 14:11:01 +0900 Subject: [PATCH 04/10] Remove Progressbar / Add Progress Ring --- Flow.Launcher/MainWindow.xaml | 22 ++++++++++------------ Flow.Launcher/MainWindow.xaml.cs | 15 ++++++++------- Flow.Launcher/Themes/Base.xaml | 2 +- 3 files changed, 19 insertions(+), 20 deletions(-) diff --git a/Flow.Launcher/MainWindow.xaml b/Flow.Launcher/MainWindow.xaml index baf96e01c..29fe25670 100644 --- a/Flow.Launcher/MainWindow.xaml +++ b/Flow.Launcher/MainWindow.xaml @@ -261,6 +261,16 @@ + - diff --git a/Flow.Launcher/MainWindow.xaml.cs b/Flow.Launcher/MainWindow.xaml.cs index 1689fa59d..8f592a89a 100644 --- a/Flow.Launcher/MainWindow.xaml.cs +++ b/Flow.Launcher/MainWindow.xaml.cs @@ -361,13 +361,14 @@ namespace Flow.Launcher } private void InitProgressbarAnimation() { - var da = new DoubleAnimation(ProgressBar.X2, ActualWidth + 150, - new Duration(new TimeSpan(0, 0, 0, 0, 1600))); - var da1 = new DoubleAnimation(ProgressBar.X1, ActualWidth + 50, new Duration(new TimeSpan(0, 0, 0, 0, 1600))); - Storyboard.SetTargetProperty(da, new PropertyPath("(Line.X2)")); - Storyboard.SetTargetProperty(da1, new PropertyPath("(Line.X1)")); - _progressBarStoryboard.Children.Add(da); - _progressBarStoryboard.Children.Add(da1); + + //var da = new DoubleAnimation(ProgressBar.X2, ActualWidth + 150, + // new Duration(new TimeSpan(0, 0, 0, 0, 1600))); + //var da1 = new DoubleAnimation(ProgressBar.X1, ActualWidth + 50, new Duration(new TimeSpan(0, 0, 0, 0, 1600))); + //Storyboard.SetTargetProperty(da, new PropertyPath("(Line.X2)")); + //Storyboard.SetTargetProperty(da1, new PropertyPath("(Line.X1)")); + //_progressBarStoryboard.Children.Add(da); + //_progressBarStoryboard.Children.Add(da1); _progressBarStoryboard.RepeatBehavior = RepeatBehavior.Forever; _viewModel.ProgressBarVisibility = Visibility.Hidden; diff --git a/Flow.Launcher/Themes/Base.xaml b/Flow.Launcher/Themes/Base.xaml index f5642314e..0b4460d46 100644 --- a/Flow.Launcher/Themes/Base.xaml +++ b/Flow.Launcher/Themes/Base.xaml @@ -366,7 +366,7 @@ - + From a299f36a41982e09848863ccbec610b54cbba718 Mon Sep 17 00:00:00 2001 From: DB p Date: Sat, 17 Dec 2022 18:37:24 +0900 Subject: [PATCH 05/10] Adjust Progressbar --- Flow.Launcher/MainWindow.xaml | 25 +++++++++++++++---------- Flow.Launcher/MainWindow.xaml.cs | 15 +++++++-------- 2 files changed, 22 insertions(+), 18 deletions(-) diff --git a/Flow.Launcher/MainWindow.xaml b/Flow.Launcher/MainWindow.xaml index 29fe25670..9f8d523e0 100644 --- a/Flow.Launcher/MainWindow.xaml +++ b/Flow.Launcher/MainWindow.xaml @@ -261,16 +261,6 @@ - + @@ -320,6 +324,7 @@ HorizontalAlignment="Stretch" Style="{DynamicResource SeparatorStyle}" /> + diff --git a/Flow.Launcher/MainWindow.xaml.cs b/Flow.Launcher/MainWindow.xaml.cs index 8f592a89a..e816654f4 100644 --- a/Flow.Launcher/MainWindow.xaml.cs +++ b/Flow.Launcher/MainWindow.xaml.cs @@ -362,15 +362,14 @@ namespace Flow.Launcher private void InitProgressbarAnimation() { - //var da = new DoubleAnimation(ProgressBar.X2, ActualWidth + 150, - // new Duration(new TimeSpan(0, 0, 0, 0, 1600))); - //var da1 = new DoubleAnimation(ProgressBar.X1, ActualWidth + 50, new Duration(new TimeSpan(0, 0, 0, 0, 1600))); - //Storyboard.SetTargetProperty(da, new PropertyPath("(Line.X2)")); - //Storyboard.SetTargetProperty(da1, new PropertyPath("(Line.X1)")); - //_progressBarStoryboard.Children.Add(da); - //_progressBarStoryboard.Children.Add(da1); - _progressBarStoryboard.RepeatBehavior = RepeatBehavior.Forever; + var da = new DoubleAnimation(ProgressBar.X2, ActualWidth + 100, new Duration(new TimeSpan(0, 0, 0, 0, 1600))); + var da1 = new DoubleAnimation(ProgressBar.X1, ActualWidth + 0, new Duration(new TimeSpan(0, 0, 0, 0, 1600))); + Storyboard.SetTargetProperty(da, new PropertyPath("(Line.X2)")); + Storyboard.SetTargetProperty(da1, new PropertyPath("(Line.X1)")); + _progressBarStoryboard.Children.Add(da); + _progressBarStoryboard.Children.Add(da1); + _progressBarStoryboard.RepeatBehavior = RepeatBehavior.Forever; _viewModel.ProgressBarVisibility = Visibility.Hidden; isProgressBarStoryboardPaused = true; } From b55d430bf8a08836e6cf0f8ae154fa14c13ff866 Mon Sep 17 00:00:00 2001 From: DB p Date: Sat, 17 Dec 2022 20:13:18 +0900 Subject: [PATCH 06/10] Adjust Progress Line --- Flow.Launcher/MainWindow.xaml.cs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Flow.Launcher/MainWindow.xaml.cs b/Flow.Launcher/MainWindow.xaml.cs index e816654f4..76b541276 100644 --- a/Flow.Launcher/MainWindow.xaml.cs +++ b/Flow.Launcher/MainWindow.xaml.cs @@ -362,9 +362,8 @@ namespace Flow.Launcher private void InitProgressbarAnimation() { - var da = new DoubleAnimation(ProgressBar.X2, ActualWidth + 100, new Duration(new TimeSpan(0, 0, 0, 0, 1600))); - var da1 = new DoubleAnimation(ProgressBar.X1, ActualWidth + 0, new Duration(new TimeSpan(0, 0, 0, 0, 1600))); - + var da = new DoubleAnimation(ProgressBar.X2, ActualWidth + 100, new Duration(new TimeSpan(0, 0, 0, 0, 1200))); + var da1 = new DoubleAnimation(ProgressBar.X1, ActualWidth + 0, new Duration(new TimeSpan(0, 0, 0, 0, 1200))); Storyboard.SetTargetProperty(da, new PropertyPath("(Line.X2)")); Storyboard.SetTargetProperty(da1, new PropertyPath("(Line.X1)")); _progressBarStoryboard.Children.Add(da); From 1d6a0b402805c9444e72424bbd5e7fe45fbe837c Mon Sep 17 00:00:00 2001 From: DB p Date: Sat, 17 Dec 2022 20:16:29 +0900 Subject: [PATCH 07/10] formatting --- Flow.Launcher/MainWindow.xaml.cs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Flow.Launcher/MainWindow.xaml.cs b/Flow.Launcher/MainWindow.xaml.cs index 76b541276..56c45aeb0 100644 --- a/Flow.Launcher/MainWindow.xaml.cs +++ b/Flow.Launcher/MainWindow.xaml.cs @@ -361,9 +361,8 @@ namespace Flow.Launcher } private void InitProgressbarAnimation() { - - var da = new DoubleAnimation(ProgressBar.X2, ActualWidth + 100, new Duration(new TimeSpan(0, 0, 0, 0, 1200))); - var da1 = new DoubleAnimation(ProgressBar.X1, ActualWidth + 0, new Duration(new TimeSpan(0, 0, 0, 0, 1200))); + var da = new DoubleAnimation(ProgressBar.X2, ActualWidth + 100, new Duration(new TimeSpan(0, 0, 0, 0, 1600))); + var da1 = new DoubleAnimation(ProgressBar.X1, ActualWidth + 0, new Duration(new TimeSpan(0, 0, 0, 0, 1600))); Storyboard.SetTargetProperty(da, new PropertyPath("(Line.X2)")); Storyboard.SetTargetProperty(da1, new PropertyPath("(Line.X1)")); _progressBarStoryboard.Children.Add(da); From 9da322f840cd8288e6291ca5a341510a36768efa Mon Sep 17 00:00:00 2001 From: Hongtao Zhang Date: Sat, 17 Dec 2022 10:43:17 -0600 Subject: [PATCH 08/10] Handle Search Exception more carefully --- .../Search/SearchManager.cs | 90 +++++++++++-------- 1 file changed, 51 insertions(+), 39 deletions(-) diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Search/SearchManager.cs b/Plugins/Flow.Launcher.Plugin.Explorer/Search/SearchManager.cs index 99a1a7110..a6e5a78c5 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Search/SearchManager.cs +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Search/SearchManager.cs @@ -62,46 +62,57 @@ namespace Flow.Launcher.Plugin.Explorer.Search return new List(); } - IAsyncEnumerable searchResults = null; + IAsyncEnumerable searchResults; - bool isPathSearch = query.Search.IsLocationPathString(); + bool isPathSearch = query.Search.IsLocationPathString() || query.Search.StartsWith("%"); + + string EngineName; switch (isPathSearch) { case true when ActionKeywordMatch(query, Settings.ActionKeyword.PathSearchActionKeyword) - || ActionKeywordMatch(query, Settings.ActionKeyword.SearchActionKeyword): - + || ActionKeywordMatch(query, Settings.ActionKeyword.SearchActionKeyword): + results.UnionWith(await PathSearchAsync(query, token).ConfigureAwait(false)); - + return results.ToList(); - case false + case false when ActionKeywordMatch(query, Settings.ActionKeyword.FileContentSearchActionKeyword): - + // Intentionally require enabling of Everything's content search due to its slowness if (Settings.ContentIndexProvider is EverythingSearchManager && !Settings.EnableEverythingContentSearch) return EverythingContentSearchResult(query); - + searchResults = Settings.ContentIndexProvider.ContentSearchAsync("", query.Search, token); - + EngineName = Enum.GetName(Settings.ContentSearchEngine); break; - + case false when ActionKeywordMatch(query, Settings.ActionKeyword.IndexSearchActionKeyword) - || ActionKeywordMatch(query, Settings.ActionKeyword.SearchActionKeyword): - + || ActionKeywordMatch(query, Settings.ActionKeyword.SearchActionKeyword): + searchResults = Settings.IndexProvider.SearchAsync(query.Search, token); - + EngineName = Enum.GetName(Settings.IndexSearchEngine); break; + default: + return results.ToList(); } - if (searchResults == null) - return results.ToList(); - - await foreach (var search in searchResults.WithCancellation(token).ConfigureAwait(false)) - results.Add(ResultManager.CreateResult(query, search)); + try + { + await foreach (var search in searchResults.WithCancellation(token).ConfigureAwait(false)) + results.Add(ResultManager.CreateResult(query, search)); + } + catch (Exception e) + { + if (e is OperationCanceledException) + return results.ToList(); + throw new SearchException(EngineName, e.Message, e); + } + results.RemoveWhere(r => Settings.IndexSearchExcludedSubdirectoryPaths.Any( excludedPath => r.SubTitle.StartsWith(excludedPath.Path, StringComparison.OrdinalIgnoreCase))); @@ -175,46 +186,47 @@ namespace Flow.Launcher.Plugin.Explorer.Search var retrievedDirectoryPath = FilesFolders.ReturnPreviousDirectoryIfIncompleteString(locationPath); - results.Add(retrievedDirectoryPath.EndsWith(":\\") + results.Add(retrievedDirectoryPath.EndsWith(":\\") ? ResultManager.CreateDriveSpaceDisplayResult(retrievedDirectoryPath, query.ActionKeyword, useIndexSearch) : ResultManager.CreateOpenCurrentFolderResult(retrievedDirectoryPath, query.ActionKeyword, useIndexSearch)); if (token.IsCancellationRequested) return new List(); - IEnumerable directoryResult; + IAsyncEnumerable directoryResult; var recursiveIndicatorIndex = query.Search.IndexOf('>'); if (recursiveIndicatorIndex > 0 && Settings.PathEnumerationEngine != Settings.PathEnumerationEngineOption.DirectEnumeration) { directoryResult = - await Settings.PathEnumerator.EnumerateAsync( - query.Search[..recursiveIndicatorIndex], - query.Search[(recursiveIndicatorIndex + 1)..], - true, - token) - .ToListAsync(cancellationToken: token) - .ConfigureAwait(false); + Settings.PathEnumerator.EnumerateAsync( + query.Search[..recursiveIndicatorIndex], + query.Search[(recursiveIndicatorIndex + 1)..], + true, + token); } else { - try - { - directoryResult = DirectoryInfoSearch.TopLevelDirectorySearch(query, query.Search, token); - } - catch (Exception e) - { - throw new SearchException("DirectoryInfoSearch", e.Message, e); - } + directoryResult = DirectoryInfoSearch.TopLevelDirectorySearch(query, query.Search, token).ToAsyncEnumerable(); } + if (token.IsCancellationRequested) + return new List(); + try + { + await foreach (var directory in directoryResult.WithCancellation(token).ConfigureAwait(false)) + { + results.Add(ResultManager.CreateResult(query, directory)); + } + } + catch (Exception e) + { + throw new SearchException(Enum.GetName(Settings.PathEnumerationEngine), e.Message, e); + } - token.ThrowIfCancellationRequested(); - - results.UnionWith(directoryResult.Select(searchResult => ResultManager.CreateResult(query, searchResult))); return results.ToList(); } @@ -227,7 +239,7 @@ namespace Flow.Launcher.Plugin.Explorer.Search var pathToDirectory = FilesFolders.ReturnPreviousDirectoryIfIncompleteString(locationPath); return !Settings.IndexSearchExcludedSubdirectoryPaths.Any( - x => FilesFolders.ReturnPreviousDirectoryIfIncompleteString(pathToDirectory).StartsWith(x.Path, StringComparison.OrdinalIgnoreCase)) + x => FilesFolders.ReturnPreviousDirectoryIfIncompleteString(pathToDirectory).StartsWith(x.Path, StringComparison.OrdinalIgnoreCase)) && WindowsIndex.WindowsIndex.PathIsIndexed(pathToDirectory); } } From 42725f289c99c32f513790c2355c6a3148abc246 Mon Sep 17 00:00:00 2001 From: Hongtao Zhang Date: Sat, 17 Dec 2022 10:50:23 -0600 Subject: [PATCH 09/10] Make the behavior more like 1.9.5- --- .../Search/SearchManager.cs | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Search/SearchManager.cs b/Plugins/Flow.Launcher.Plugin.Explorer/Search/SearchManager.cs index a6e5a78c5..fc4186cb3 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Search/SearchManager.cs +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Search/SearchManager.cs @@ -64,9 +64,9 @@ namespace Flow.Launcher.Plugin.Explorer.Search IAsyncEnumerable searchResults; - bool isPathSearch = query.Search.IsLocationPathString() || query.Search.StartsWith("%"); + bool isPathSearch = query.Search.IsLocationPathString() || IsEnvironmentVariableSearch(query.Search); - string EngineName; + string engineName; switch (isPathSearch) { @@ -86,7 +86,7 @@ namespace Flow.Launcher.Plugin.Explorer.Search return EverythingContentSearchResult(query); searchResults = Settings.ContentIndexProvider.ContentSearchAsync("", query.Search, token); - EngineName = Enum.GetName(Settings.ContentSearchEngine); + engineName = Enum.GetName(Settings.ContentSearchEngine); break; case false @@ -94,7 +94,7 @@ namespace Flow.Launcher.Plugin.Explorer.Search || ActionKeywordMatch(query, Settings.ActionKeyword.SearchActionKeyword): searchResults = Settings.IndexProvider.SearchAsync(query.Search, token); - EngineName = Enum.GetName(Settings.IndexSearchEngine); + engineName = Enum.GetName(Settings.IndexSearchEngine); break; default: return results.ToList(); @@ -110,7 +110,7 @@ namespace Flow.Launcher.Plugin.Explorer.Search if (e is OperationCanceledException) return results.ToList(); - throw new SearchException(EngineName, e.Message, e); + throw new SearchException(engineName, e.Message, e); } results.RemoveWhere(r => Settings.IndexSearchExcludedSubdirectoryPaths.Any( @@ -242,5 +242,12 @@ namespace Flow.Launcher.Plugin.Explorer.Search x => FilesFolders.ReturnPreviousDirectoryIfIncompleteString(pathToDirectory).StartsWith(x.Path, StringComparison.OrdinalIgnoreCase)) && WindowsIndex.WindowsIndex.PathIsIndexed(pathToDirectory); } + + internal static bool IsEnvironmentVariableSearch(string search) + { + return search.StartsWith("%") + && search != "%%" + && !search.Contains('\\'); + } } } From 09e72e316eb0c37e51416c0734a266eb54e002ff Mon Sep 17 00:00:00 2001 From: Jeremy Wu Date: Sun, 18 Dec 2022 11:16:19 +1100 Subject: [PATCH 10/10] New Crowdin updates (#1627) --- Flow.Launcher/Converters/OrdinalConverter.cs | 2 +- Flow.Launcher/Languages/de.xaml | 20 ++++++------- Flow.Launcher/Languages/es.xaml | 4 +-- Flow.Launcher/Languages/pt-br.xaml | 8 +++--- .../Languages/da.xaml | 4 ++- .../Languages/de.xaml | 28 ++++++++++--------- .../Languages/es-419.xaml | 4 ++- .../Languages/es.xaml | 6 ++-- .../Languages/fr.xaml | 4 ++- .../Languages/it.xaml | 4 ++- .../Languages/ja.xaml | 4 ++- .../Languages/ko.xaml | 4 ++- .../Languages/nb.xaml | 4 ++- .../Languages/nl.xaml | 4 ++- .../Languages/pl.xaml | 4 ++- .../Languages/pt-br.xaml | 4 ++- .../Languages/pt-pt.xaml | 4 ++- .../Languages/ru.xaml | 4 ++- .../Languages/sk.xaml | 8 ++++-- .../Languages/sr.xaml | 4 ++- .../Languages/tr.xaml | 4 ++- .../Languages/uk-UA.xaml | 4 ++- .../Languages/zh-cn.xaml | 6 ++-- .../Languages/zh-tw.xaml | 4 ++- .../Languages/de.xaml | 4 +-- .../Languages/zh-cn.xaml | 6 ++-- .../Languages/de.xaml | 2 +- .../Languages/de.xaml | 2 +- .../Languages/zh-cn.xaml | 4 +-- .../Properties/Resources.de-DE.resx | 2 +- .../Properties/Resources.pt-BR.resx | 2 +- 31 files changed, 104 insertions(+), 64 deletions(-) diff --git a/Flow.Launcher/Converters/OrdinalConverter.cs b/Flow.Launcher/Converters/OrdinalConverter.cs index 0c716ac7e..02b9bdbde 100644 --- a/Flow.Launcher/Converters/OrdinalConverter.cs +++ b/Flow.Launcher/Converters/OrdinalConverter.cs @@ -1,4 +1,4 @@ -using System.Globalization; +using System.Globalization; using System.Windows.Controls; using System.Windows.Data; diff --git a/Flow.Launcher/Languages/de.xaml b/Flow.Launcher/Languages/de.xaml index ae128fc89..2073fd424 100644 --- a/Flow.Launcher/Languages/de.xaml +++ b/Flow.Launcher/Languages/de.xaml @@ -174,9 +174,9 @@ Press Key - HTTP Proxy + HTTP-Proxy Aktiviere HTTP Proxy - HTTP Server + HTTP-Server Port Benutzername Passwort @@ -191,9 +191,9 @@ Über - Website + Webseite Github - Docs + Dokumentation Version Icons Sie haben Flow Launcher {0} mal aktiviert @@ -218,24 +218,24 @@ Select File Manager Please specify the file location of the file manager you using and add arguments if necessary. The default arguments are "%d", and a path is entered at that location. For example, If a command is required such as "totalcmd.exe /A c:\windows", argument is /A "%d". "%f" is an argument that represent the file path. It is used to emphasize the file/folder name when opening a specific file location in 3rd party file manager. This argument is only available in the "Arg for File" item. If the file manager does not have that function, you can use "%d". - File Manager - Profile Name + Datei-Manager + Profilname File Manager Path Arg For Folder Arg For File - Default Web Browser + Standard-Webbrowser The default setting follows the OS default browser setting. If specified separately, flow uses that browser. Browser Browser-Name - Browser Path + Browserpfad New Window New Tab - Private Mode + Privater Modus - Change Priority + Priorität ändern Greater the number, the higher the result will be ranked. Try setting it as 5. If you want the results to be lower than any other plugin's, provide a negative number Please provide an valid integer for Priority! diff --git a/Flow.Launcher/Languages/es.xaml b/Flow.Launcher/Languages/es.xaml index a2b41234a..b3dbaf4ff 100644 --- a/Flow.Launcher/Languages/es.xaml +++ b/Flow.Launcher/Languages/es.xaml @@ -63,8 +63,8 @@ Cambia la puntuación mínima requerida para la coincidencia de los resultados. Buscar con Pinyin Permite utilizar Pinyin para la búsqueda. Pinyin es el sistema estándar de ortografía romanizado para traducir chino. - Always Preview - Always open preview panel when Flow starts. Press F1 to toggle preview. + Mostrar siempre vista previa + Muestra siempre el panel de vista previa al iniciar Flow. Pulse F1 para mostrar/ocultar la vista previa. El efecto de sombra no está permitido mientras el tema actual tenga el efecto de desenfoque activado diff --git a/Flow.Launcher/Languages/pt-br.xaml b/Flow.Launcher/Languages/pt-br.xaml index 61d98cf98..c308d3367 100644 --- a/Flow.Launcher/Languages/pt-br.xaml +++ b/Flow.Launcher/Languages/pt-br.xaml @@ -12,14 +12,14 @@ Configurações Sobre Sair - Close + Fechar Copy - Cut - Paste + Cortar + Colar File Folder Text - Game Mode + Modo Gamer Suspend the use of Hotkeys. Position Reset Reset search window position diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/da.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/da.xaml index 459469fb6..4431e811e 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/da.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/da.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Warning: Everything service is not running diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/de.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/de.xaml index e8e1dab13..8ed355b8c 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/de.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/de.xaml @@ -33,14 +33,14 @@ Verwenden Suchergebnis Standort als ausführbare Arbeitsverzeichnis Use Index Search For Path Search Indexing Options - Search: - Path Search: - File Content Search: - Index Search: - Quick Access: + Suche: + Pfad-Suche: + Suche nach Dateiinhalten: + Index-Suche: + Schnellzugriff: Current Action Keyword Fertig - Enabled + Aktiviert When disabled Flow will not execute this search option, and will additionally revert back to '*' to free up the action keyword Everything Windows Index @@ -60,17 +60,19 @@ Ctrl + Enter to open the containing folder - Copy path - Copy + Pfad kopieren + Kopieren Löschen - Path: - Delete the selected - Run as different user - Run the selected using a different user account + Pfad: + Ausgewählte löschen + Als anderer Benutzer ausführen + Ausgewählte mit einem anderen Benutzerkonto ausführen Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Everything Service läuft nicht diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/es-419.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/es-419.xaml index f68265f90..8b8d26f4c 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/es-419.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/es-419.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Advertencia: El servicio de Everything no se está ejecutando diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/es.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/es.xaml index 47acfa005..04647d44d 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/es.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/es.xaml @@ -49,7 +49,7 @@ Motor de búsqueda de contenido Motor de búsqueda recursiva de directorio Motor de búsqueda del Índice - Open Windows Index Option + Abrir opciones de indexación de Windows Explorador @@ -70,7 +70,9 @@ Abrir carpeta contenedora Abre la ubicación que contiene el archivo o carpeta Abrir con el editor: + No se pudo abrir el archivo en {0} con el editor {1} en {2} Abrir con Shell: + No se pudo abrir la carpeta {0} con Shell {1} en {2} Excluir la carpeta actual y sus subcarpetas del índice de búsqueda Excluido del índice de búsqueda Abrir opciones de indexación de Windows @@ -87,7 +89,7 @@ Eliminar del acceso rápido Elimina {0} actual del acceso rápido Mostrar menú contextual de Windows - + No se ha podido cargar Everything SDK Advertencia: El servicio de Everything no se está ejecutando diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/fr.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/fr.xaml index 94a035de3..dafe01173 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/fr.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/fr.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Warning: Everything service is not running diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/it.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/it.xaml index 750fa3c75..264fadc09 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/it.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/it.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Attenzione: Il servizio "Everything" non è in esecuzione diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/ja.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/ja.xaml index 889cf6145..478df4103 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/ja.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/ja.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Warning: Everything service is not running diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/ko.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/ko.xaml index 169112243..30cc5e1c7 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/ko.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/ko.xaml @@ -70,7 +70,9 @@ 포함된 폴더 열기 Opens the location that contains the file or folder 편집기에서 열기: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search 윈도우 인덱싱 옵션 열기 @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Warning: Everything service is not running diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/nb.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/nb.xaml index 79f0c799b..c8fd77ac2 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/nb.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/nb.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Warning: Everything service is not running diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/nl.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/nl.xaml index 2d16bfa6d..eeb64b0da 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/nl.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/nl.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Warning: Everything service is not running diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/pl.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/pl.xaml index b384e3cdb..55713796e 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/pl.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/pl.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Everything Service nie jest uruchomiony diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/pt-br.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/pt-br.xaml index 70cdd4b35..1beae76c3 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/pt-br.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/pt-br.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Warning: Everything service is not running diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/pt-pt.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/pt-pt.xaml index ec8b051ef..560078ab1 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/pt-pt.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/pt-pt.xaml @@ -70,7 +70,9 @@ Abrir pasta de destino Abre a localização que contém o ficheiro ou a pasta Abrir com o editor: + Erro ao abrir o ficheiro {0} com o editor {1} em {2} Abrir com a consola: + Erro ao abrir a pasta {0} com a consola {1} em {2} Excluir diretório atual do índice de pesquisas Excluído do índice de pesquisas Abrir opções de indexação do Windows @@ -87,7 +89,7 @@ Remover do acesso rápido Remover {0} do acesso rápido Mostrar menu de contexto do Windows - + Falha ao carregar SDK Everything Aviso: o serviço Everything não está em execução diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/ru.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/ru.xaml index 6f6594bc6..45f63fcba 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/ru.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/ru.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Warning: Everything service is not running diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/sk.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/sk.xaml index 098070a1e..aa51a07a2 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/sk.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/sk.xaml @@ -35,7 +35,7 @@ Možnosti indexovania Vyhľadávanie: Cesta vyhľadávania: - Vyhľadávanie v obsahu súborov: + Vyhľadávanie obsahu súborov: Vyhľadávanie v indexe: Rýchly prístup: Aktuálny aktivačný príkaz @@ -64,13 +64,15 @@ Kopírovať Odstrániť Cesta: - Odstrániť vybrané + Odstrániť vybraný Spustiť ako iný používateľ Spustí vybranú položku ako používateľ s iným kontom Otvoriť umiestnenie priečinka Otvorí umiestnenie, ktoré obsahuje súbor alebo priečinok Otvoriť v editore: + Nepodarilo sa otvoriť súbor {0} v editore {1} – {2} Otvori v príkazovom riadku: + Nepodarilo sa otvoriť priečinok {0} v prostredí {1} – {2} Vylúčiť položku a jej podpriečinky z indexu vyhľadávania Vylúčiť z indexu vyhľadávania Otvoriť možnosti vyhľadávania vo Windowse @@ -87,7 +89,7 @@ Odstráni z Rýchleho prístupu Odstráni {0} z Rýchleho prístupu Zobraziť kontextovú ponuku Windowsu - + Nepodarilo sa načítať Everything SDK Upozornenie: Služba Everything nie je spustená diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/sr.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/sr.xaml index c773f2e23..629dbd18c 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/sr.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/sr.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Warning: Everything service is not running diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/tr.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/tr.xaml index 11ed92018..28b7712fa 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/tr.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/tr.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Everything Servisi çalışmıyor diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/uk-UA.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/uk-UA.xaml index 1f6833877..11a778fab 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/uk-UA.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/uk-UA.xaml @@ -70,7 +70,9 @@ Open containing folder Opens the location that contains the file or folder Open With Editor: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Warning: Everything service is not running diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/zh-cn.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/zh-cn.xaml index c3adc24e3..63783d108 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/zh-cn.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/zh-cn.xaml @@ -49,7 +49,7 @@ 文件内容搜索引擎 目录递归搜索引擎 索引搜索引擎 - Open Windows Index Option + 打开 Windows 索引选项 文件管理器 @@ -70,7 +70,9 @@ 打开文件所在文件夹 打开文件或文件夹所在目录 使用编辑器打开: + 使用编辑器 {1} ({2}) 打开文件 {0} 时失败 使用 Shell 打开: + 使用 Shell {1} ({2}) 打开文件夹 {0} 时失败 从索引搜索中排除当前目录和子目录 从索引搜索中排除 打开Windows索引选项 @@ -87,7 +89,7 @@ 从快速访问中删除 从快速访问中删除 {0} 显示 Windows 上下文菜单 - + Everything SDK 加载失败 警告:Everything 服务未运行 diff --git a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/zh-tw.xaml b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/zh-tw.xaml index ff60d11aa..499f659f4 100644 --- a/Plugins/Flow.Launcher.Plugin.Explorer/Languages/zh-tw.xaml +++ b/Plugins/Flow.Launcher.Plugin.Explorer/Languages/zh-tw.xaml @@ -70,7 +70,9 @@ 開啟檔案位置 Opens the location that contains the file or folder 在編輯器中開啟: + Failed to open file at {0} with Editor {1} at {2} Open With Shell: + Failed to open folder {0} with Shell {1} at {2} Exclude current and sub-directories from Index Search Excluded from Index Search Open Windows Indexing Options @@ -87,7 +89,7 @@ Remove from Quick Access Remove the current {0} from Quick Access Show Windows Context Menu - + Everything SDK Loaded Fail Everything Service 尚未啟動 diff --git a/Plugins/Flow.Launcher.Plugin.Program/Languages/de.xaml b/Plugins/Flow.Launcher.Plugin.Program/Languages/de.xaml index 13f258a3d..ce60e6f33 100644 --- a/Plugins/Flow.Launcher.Plugin.Program/Languages/de.xaml +++ b/Plugins/Flow.Launcher.Plugin.Program/Languages/de.xaml @@ -8,10 +8,10 @@ Hinzufügen Name Aktivieren - Enabled + Aktiviert Disable Status - Enabled + Aktiviert Disabled Speicherort All Programs diff --git a/Plugins/Flow.Launcher.Plugin.Program/Languages/zh-cn.xaml b/Plugins/Flow.Launcher.Plugin.Program/Languages/zh-cn.xaml index db2b75e26..f3c69869f 100644 --- a/Plugins/Flow.Launcher.Plugin.Program/Languages/zh-cn.xaml +++ b/Plugins/Flow.Launcher.Plugin.Program/Languages/zh-cn.xaml @@ -10,9 +10,9 @@ 启用 启用 禁用 - Status + 状态 启用 - Disabled + 已禁用 位置 所有程序 文件类型 @@ -29,7 +29,7 @@ 隐藏应用路径 隐藏诸如UWP,lnk 等可执行文件的路径 启用程序描述 - Flow will search program's description + Flow 将搜索程序描述 后缀 最大深度 diff --git a/Plugins/Flow.Launcher.Plugin.Shell/Languages/de.xaml b/Plugins/Flow.Launcher.Plugin.Shell/Languages/de.xaml index d305a348c..5c3c1e92e 100644 --- a/Plugins/Flow.Launcher.Plugin.Shell/Languages/de.xaml +++ b/Plugins/Flow.Launcher.Plugin.Shell/Languages/de.xaml @@ -4,7 +4,7 @@ Ersetzt Win+R Schließe die Kommandozeilte nicht nachdem der Befehl ausgeführt wurde Always run as administrator - Run as different user + Als anderer Benutzer ausführen Kommandozeile Bereitstellung der Kommandozeile in Flow Launcher. Befehle müssem mit > starten Dieser Befehl wurde {0} mal ausgeführt diff --git a/Plugins/Flow.Launcher.Plugin.WebSearch/Languages/de.xaml b/Plugins/Flow.Launcher.Plugin.WebSearch/Languages/de.xaml index afc3c3d61..2e4a0c2a9 100644 --- a/Plugins/Flow.Launcher.Plugin.WebSearch/Languages/de.xaml +++ b/Plugins/Flow.Launcher.Plugin.WebSearch/Languages/de.xaml @@ -10,7 +10,7 @@ Löschen Bearbeiten Hinzufügen - Enabled + Aktiviert Disabled Confirm Aktionsschlüsselwort diff --git a/Plugins/Flow.Launcher.Plugin.WebSearch/Languages/zh-cn.xaml b/Plugins/Flow.Launcher.Plugin.WebSearch/Languages/zh-cn.xaml index 7dceeb646..e336e1ffe 100644 --- a/Plugins/Flow.Launcher.Plugin.WebSearch/Languages/zh-cn.xaml +++ b/Plugins/Flow.Launcher.Plugin.WebSearch/Languages/zh-cn.xaml @@ -11,7 +11,7 @@ 编辑 增加 启用 - Disabled + 已禁用 确认 触发关键字 打开链接 @@ -32,7 +32,7 @@ 标题 - Status + 状态 选择图标 图标 取消 diff --git a/Plugins/Flow.Launcher.Plugin.WindowsSettings/Properties/Resources.de-DE.resx b/Plugins/Flow.Launcher.Plugin.WindowsSettings/Properties/Resources.de-DE.resx index d1523c239..31443560c 100644 --- a/Plugins/Flow.Launcher.Plugin.WindowsSettings/Properties/Resources.de-DE.resx +++ b/Plugins/Flow.Launcher.Plugin.WindowsSettings/Properties/Resources.de-DE.resx @@ -701,7 +701,7 @@ Area Gaming - Game Mode + Spielmodus Area Gaming diff --git a/Plugins/Flow.Launcher.Plugin.WindowsSettings/Properties/Resources.pt-BR.resx b/Plugins/Flow.Launcher.Plugin.WindowsSettings/Properties/Resources.pt-BR.resx index b519399ca..e2998402d 100644 --- a/Plugins/Flow.Launcher.Plugin.WindowsSettings/Properties/Resources.pt-BR.resx +++ b/Plugins/Flow.Launcher.Plugin.WindowsSettings/Properties/Resources.pt-BR.resx @@ -701,7 +701,7 @@ Area Gaming - Game Mode + Modo Gamer Area Gaming