mirror of
https://github.com/Flow-Launcher/Flow.Launcher.git
synced 2026-03-11 08:54:32 +00:00
Merge branch 'dev' into url_open_enhancement
This commit is contained in:
commit
d7d88a9ebb
156 changed files with 2095 additions and 1599 deletions
|
|
@ -73,6 +73,17 @@ namespace Flow.Launcher.Core.ExternalPlugins
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
catch (OperationCanceledException) when (token.IsCancellationRequested)
|
||||||
|
{
|
||||||
|
API.LogDebug(ClassName, $"Fetching from {ManifestFileUrl} was cancelled by caller.");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
catch (TaskCanceledException)
|
||||||
|
{
|
||||||
|
// Likely an HttpClient timeout or external cancellation not requested by our token
|
||||||
|
API.LogWarn(ClassName, $"Fetching from {ManifestFileUrl} timed out.");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
if (e is HttpRequestException or WebException or SocketException || e.InnerException is TimeoutException)
|
if (e is HttpRequestException or WebException or SocketException || e.InnerException is TimeoutException)
|
||||||
|
|
|
||||||
|
|
@ -55,8 +55,8 @@
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Droplex" Version="1.7.0" />
|
<PackageReference Include="Droplex" Version="1.7.0" />
|
||||||
<PackageReference Include="FSharp.Core" Version="9.0.300" />
|
<PackageReference Include="FSharp.Core" Version="9.0.303" />
|
||||||
<PackageReference Include="Meziantou.Framework.Win32.Jobs" Version="3.4.3" />
|
<PackageReference Include="Meziantou.Framework.Win32.Jobs" Version="3.4.4" />
|
||||||
<PackageReference Include="Microsoft.IO.RecyclableMemoryStream" Version="3.0.1" />
|
<PackageReference Include="Microsoft.IO.RecyclableMemoryStream" Version="3.0.1" />
|
||||||
<PackageReference Include="SemanticVersioning" Version="3.0.0" />
|
<PackageReference Include="SemanticVersioning" Version="3.0.0" />
|
||||||
<PackageReference Include="squirrel.windows" Version="1.5.2" NoWarn="NU1701" />
|
<PackageReference Include="squirrel.windows" Version="1.5.2" NoWarn="NU1701" />
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@ namespace Flow.Launcher.Core.Plugin
|
||||||
|
|
||||||
private JsonStorage<ConcurrentDictionary<string, object?>> _storage = null!;
|
private JsonStorage<ConcurrentDictionary<string, object?>> _storage = null!;
|
||||||
|
|
||||||
|
private static readonly double MainGridColumn0MaxWidthRatio = 0.6;
|
||||||
private static readonly Thickness SettingPanelMargin = (Thickness)Application.Current.FindResource("SettingPanelMargin");
|
private static readonly Thickness SettingPanelMargin = (Thickness)Application.Current.FindResource("SettingPanelMargin");
|
||||||
private static readonly Thickness SettingPanelItemLeftMargin = (Thickness)Application.Current.FindResource("SettingPanelItemLeftMargin");
|
private static readonly Thickness SettingPanelItemLeftMargin = (Thickness)Application.Current.FindResource("SettingPanelItemLeftMargin");
|
||||||
private static readonly Thickness SettingPanelItemTopBottomMargin = (Thickness)Application.Current.FindResource("SettingPanelItemTopBottomMargin");
|
private static readonly Thickness SettingPanelItemTopBottomMargin = (Thickness)Application.Current.FindResource("SettingPanelItemTopBottomMargin");
|
||||||
|
|
@ -156,7 +157,7 @@ namespace Flow.Launcher.Core.Plugin
|
||||||
{
|
{
|
||||||
if (!NeedCreateSettingPanel()) return null!;
|
if (!NeedCreateSettingPanel()) return null!;
|
||||||
|
|
||||||
// Create main grid with two columns (Column 1: Auto, Column 2: *)
|
// Create main grid with two columns (Column 0: Auto, Column 1: *)
|
||||||
var mainPanel = new Grid { Margin = SettingPanelMargin, VerticalAlignment = VerticalAlignment.Center };
|
var mainPanel = new Grid { Margin = SettingPanelMargin, VerticalAlignment = VerticalAlignment.Center };
|
||||||
mainPanel.ColumnDefinitions.Add(new ColumnDefinition()
|
mainPanel.ColumnDefinitions.Add(new ColumnDefinition()
|
||||||
{
|
{
|
||||||
|
|
@ -200,7 +201,7 @@ namespace Flow.Launcher.Core.Plugin
|
||||||
{
|
{
|
||||||
Text = attributes.Label,
|
Text = attributes.Label,
|
||||||
VerticalAlignment = VerticalAlignment.Center,
|
VerticalAlignment = VerticalAlignment.Center,
|
||||||
TextWrapping = TextWrapping.WrapWithOverflow
|
TextWrapping = TextWrapping.Wrap
|
||||||
};
|
};
|
||||||
|
|
||||||
// Create a text block for description
|
// Create a text block for description
|
||||||
|
|
@ -211,7 +212,7 @@ namespace Flow.Launcher.Core.Plugin
|
||||||
{
|
{
|
||||||
Text = attributes.Description,
|
Text = attributes.Description,
|
||||||
VerticalAlignment = VerticalAlignment.Center,
|
VerticalAlignment = VerticalAlignment.Center,
|
||||||
TextWrapping = TextWrapping.WrapWithOverflow
|
TextWrapping = TextWrapping.Wrap
|
||||||
};
|
};
|
||||||
|
|
||||||
desc.SetResourceReference(TextBlock.StyleProperty, "SettingPanelTextBlockDescriptionStyle"); // for theme change
|
desc.SetResourceReference(TextBlock.StyleProperty, "SettingPanelTextBlockDescriptionStyle"); // for theme change
|
||||||
|
|
@ -247,7 +248,8 @@ namespace Flow.Launcher.Core.Plugin
|
||||||
VerticalAlignment = VerticalAlignment.Center,
|
VerticalAlignment = VerticalAlignment.Center,
|
||||||
Margin = SettingPanelItemLeftTopBottomMargin,
|
Margin = SettingPanelItemLeftTopBottomMargin,
|
||||||
Text = Settings[attributes.Name] as string ?? string.Empty,
|
Text = Settings[attributes.Name] as string ?? string.Empty,
|
||||||
ToolTip = attributes.Description
|
ToolTip = attributes.Description,
|
||||||
|
TextWrapping = TextWrapping.Wrap
|
||||||
};
|
};
|
||||||
|
|
||||||
textBox.TextChanged += (_, _) =>
|
textBox.TextChanged += (_, _) =>
|
||||||
|
|
@ -269,7 +271,8 @@ namespace Flow.Launcher.Core.Plugin
|
||||||
VerticalAlignment = VerticalAlignment.Center,
|
VerticalAlignment = VerticalAlignment.Center,
|
||||||
Margin = SettingPanelItemLeftMargin,
|
Margin = SettingPanelItemLeftMargin,
|
||||||
Text = Settings[attributes.Name] as string ?? string.Empty,
|
Text = Settings[attributes.Name] as string ?? string.Empty,
|
||||||
ToolTip = attributes.Description
|
ToolTip = attributes.Description,
|
||||||
|
TextWrapping = TextWrapping.Wrap
|
||||||
};
|
};
|
||||||
|
|
||||||
textBox.TextChanged += (_, _) =>
|
textBox.TextChanged += (_, _) =>
|
||||||
|
|
@ -333,7 +336,7 @@ namespace Flow.Launcher.Core.Plugin
|
||||||
HorizontalAlignment = HorizontalAlignment.Stretch,
|
HorizontalAlignment = HorizontalAlignment.Stretch,
|
||||||
VerticalAlignment = VerticalAlignment.Center,
|
VerticalAlignment = VerticalAlignment.Center,
|
||||||
Margin = SettingPanelItemLeftTopBottomMargin,
|
Margin = SettingPanelItemLeftTopBottomMargin,
|
||||||
TextWrapping = TextWrapping.WrapWithOverflow,
|
TextWrapping = TextWrapping.Wrap,
|
||||||
AcceptsReturn = true,
|
AcceptsReturn = true,
|
||||||
Text = Settings[attributes.Name] as string ?? string.Empty,
|
Text = Settings[attributes.Name] as string ?? string.Empty,
|
||||||
ToolTip = attributes.Description
|
ToolTip = attributes.Description
|
||||||
|
|
@ -488,6 +491,8 @@ namespace Flow.Launcher.Core.Plugin
|
||||||
rowCount++;
|
rowCount++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mainPanel.SizeChanged += MainPanel_SizeChanged;
|
||||||
|
|
||||||
// Wrap the main grid in a user control
|
// Wrap the main grid in a user control
|
||||||
return new UserControl()
|
return new UserControl()
|
||||||
{
|
{
|
||||||
|
|
@ -495,6 +500,28 @@ namespace Flow.Launcher.Core.Plugin
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void MainPanel_SizeChanged(object sender, SizeChangedEventArgs e)
|
||||||
|
{
|
||||||
|
if (sender is not Grid grid) return;
|
||||||
|
|
||||||
|
var workingWidth = grid.ActualWidth;
|
||||||
|
|
||||||
|
if (workingWidth <= 0) return;
|
||||||
|
|
||||||
|
var constrainedWidth = MainGridColumn0MaxWidthRatio * workingWidth;
|
||||||
|
|
||||||
|
// Set MaxWidth of column 0 and its children
|
||||||
|
// We must set MaxWidth of its children to make text wrapping work correctly
|
||||||
|
grid.ColumnDefinitions[0].MaxWidth = constrainedWidth;
|
||||||
|
foreach (var child in grid.Children)
|
||||||
|
{
|
||||||
|
if (child is FrameworkElement element && Grid.GetColumn(element) == 0 && Grid.GetColumnSpan(element) == 1)
|
||||||
|
{
|
||||||
|
element.MaxWidth = constrainedWidth;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private static bool NeedSaveInSettings(string type)
|
private static bool NeedSaveInSettings(string type)
|
||||||
{
|
{
|
||||||
return type != "textBlock" && type != "separator" && type != "hyperlink";
|
return type != "textBlock" && type != "separator" && type != "hyperlink";
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
|
@ -14,7 +14,7 @@ using Flow.Launcher.Plugin;
|
||||||
|
|
||||||
namespace Flow.Launcher.Core.Resource
|
namespace Flow.Launcher.Core.Resource
|
||||||
{
|
{
|
||||||
public class Internationalization
|
public class Internationalization : IDisposable
|
||||||
{
|
{
|
||||||
private static readonly string ClassName = nameof(Internationalization);
|
private static readonly string ClassName = nameof(Internationalization);
|
||||||
|
|
||||||
|
|
@ -30,6 +30,7 @@ namespace Flow.Launcher.Core.Resource
|
||||||
private readonly List<string> _languageDirectories = [];
|
private readonly List<string> _languageDirectories = [];
|
||||||
private readonly List<ResourceDictionary> _oldResources = [];
|
private readonly List<ResourceDictionary> _oldResources = [];
|
||||||
private static string SystemLanguageCode;
|
private static string SystemLanguageCode;
|
||||||
|
private readonly SemaphoreSlim _langChangeLock = new(1, 1);
|
||||||
|
|
||||||
public Internationalization(Settings settings)
|
public Internationalization(Settings settings)
|
||||||
{
|
{
|
||||||
|
|
@ -185,20 +186,33 @@ namespace Flow.Launcher.Core.Resource
|
||||||
|
|
||||||
private async Task ChangeLanguageAsync(Language language, bool updateMetadata = true)
|
private async Task ChangeLanguageAsync(Language language, bool updateMetadata = true)
|
||||||
{
|
{
|
||||||
// Remove old language files and load language
|
await _langChangeLock.WaitAsync();
|
||||||
RemoveOldLanguageFiles();
|
|
||||||
if (language != AvailableLanguages.English)
|
try
|
||||||
{
|
{
|
||||||
LoadLanguage(language);
|
// Remove old language files and load language
|
||||||
|
RemoveOldLanguageFiles();
|
||||||
|
if (language != AvailableLanguages.English)
|
||||||
|
{
|
||||||
|
LoadLanguage(language);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Change culture info
|
||||||
|
ChangeCultureInfo(language.LanguageCode);
|
||||||
|
|
||||||
|
if (updateMetadata)
|
||||||
|
{
|
||||||
|
// Raise event for plugins after culture is set
|
||||||
|
await Task.Run(UpdatePluginMetadataTranslations);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
catch (Exception e)
|
||||||
// Change culture info
|
|
||||||
ChangeCultureInfo(language.LanguageCode);
|
|
||||||
|
|
||||||
if (updateMetadata)
|
|
||||||
{
|
{
|
||||||
// Raise event for plugins after culture is set
|
API.LogException(ClassName, $"Failed to change language to <{language.LanguageCode}>", e);
|
||||||
await Task.Run(UpdatePluginMetadataTranslations);
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
_langChangeLock.Release();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -257,6 +271,7 @@ namespace Flow.Launcher.Core.Resource
|
||||||
{
|
{
|
||||||
dicts.Remove(r);
|
dicts.Remove(r);
|
||||||
}
|
}
|
||||||
|
_oldResources.Clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void LoadLanguage(Language language)
|
private void LoadLanguage(Language language)
|
||||||
|
|
@ -368,5 +383,15 @@ namespace Flow.Launcher.Core.Resource
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
#region IDisposable
|
||||||
|
|
||||||
|
public void Dispose()
|
||||||
|
{
|
||||||
|
RemoveOldLanguageFiles();
|
||||||
|
_langChangeLock.Dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -13,15 +13,15 @@
|
||||||
},
|
},
|
||||||
"FSharp.Core": {
|
"FSharp.Core": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[9.0.300, )",
|
"requested": "[9.0.303, )",
|
||||||
"resolved": "9.0.300",
|
"resolved": "9.0.303",
|
||||||
"contentHash": "TVt2J7RCE1KCS2IaONF+p8/KIZ1eHNbW+7qmKF6hGoD4tXl+o07ja1mPtFjMqRa5uHMFaTrGTPn/m945WnDLiQ=="
|
"contentHash": "6JlV8aD8qQvcmfoe/PMOxCHXc0uX4lR23u0fAyQtnVQxYULLoTZgwgZHSnRcuUHOvS3wULFWcwdnP1iwslH60g=="
|
||||||
},
|
},
|
||||||
"Meziantou.Framework.Win32.Jobs": {
|
"Meziantou.Framework.Win32.Jobs": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[3.4.3, )",
|
"requested": "[3.4.4, )",
|
||||||
"resolved": "3.4.3",
|
"resolved": "3.4.4",
|
||||||
"contentHash": "REjInKnQ0OrhjjtSMPQtLtdURctCroB4L8Sd2gjTOYDysklvsdnrStx1tHS7uLv+fSyFF3aazZmo5Ka0v1oz/w=="
|
"contentHash": "AivBzH5wM1NHBLehclim+o37SmireP7JxCRUoTilsc/h7LH9+YCPjb6Ig6y0khnQhFcO1P8RHYw4oiR15TGHUg=="
|
||||||
},
|
},
|
||||||
"Microsoft.IO.RecyclableMemoryStream": {
|
"Microsoft.IO.RecyclableMemoryStream": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
|
|
@ -90,8 +90,8 @@
|
||||||
},
|
},
|
||||||
"JetBrains.Annotations": {
|
"JetBrains.Annotations": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "2024.3.0",
|
"resolved": "2025.2.2",
|
||||||
"contentHash": "ox5pkeLQXjvJdyAB4b2sBYAlqZGLh3PjSnP1bQNVx72ONuTJ9+34/+Rq91Fc0dG29XG9RgZur9+NcP4riihTug=="
|
"contentHash": "0X56ZRizuHdrnPpgXjWV7f2tQO1FlQg5O1967OGKnI/4ZRNOK642J8L7brM1nYvrxTTU5TP1yRyXLRLaXLPQ8A=="
|
||||||
},
|
},
|
||||||
"MemoryPack": {
|
"MemoryPack": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
|
|
@ -199,21 +199,21 @@
|
||||||
},
|
},
|
||||||
"NLog": {
|
"NLog": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "6.0.1",
|
"resolved": "6.0.4",
|
||||||
"contentHash": "qDWiqy8/xdpZKtHna/645KbalwP86N2NFJEzfqhcv+Si4V2iNaEfR/dCneuF/4+Dcwl3f7jHMXj3ndWYftV3Ug=="
|
"contentHash": "Xr+lIk1ZlTTFXEqnxQVLxrDqZlt2tm5X+/AhJbaY2emb/dVtGDiU5QuEtj3gHtwV/SWlP/rJ922I/BPuOJXlRw=="
|
||||||
},
|
},
|
||||||
"NLog.OutputDebugString": {
|
"NLog.OutputDebugString": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "6.0.1",
|
"resolved": "6.0.4",
|
||||||
"contentHash": "wwJCQLaHVzuRf8TsXB+EEdrzVvE3dnzCSMQMDgwkw3AXp8VSp3JSVF/Q/H0oEqggKgKhPs13hh3a7svyQr4s3A==",
|
"contentHash": "TOP2Ap9BbE98B/l/TglnguowOD0rXo8B/20xAgvj9shO/kf6IJ5M4QMhVxq72mrneJ/ANhHY7Jcd+xJbzuI5PA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"NLog": "6.0.1"
|
"NLog": "6.0.4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"SharpVectors.Wpf": {
|
"SharpVectors.Wpf": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "1.8.4.2",
|
"resolved": "1.8.5",
|
||||||
"contentHash": "PNxLkMBJnV8A+6yH9OqOlhLJegvWP/dvh0rAJp2l0kcrR+rB4R2tQ9vhUqka+UilH4atN8T6zvjDOizVyfz2Ng=="
|
"contentHash": "WURdBDq5AE8RjKV9pFS7lNkJe81gxja9SaMGE4URq9GJUZ6M+5DGUL0Lm3B0iYW2/Meyowaz4ffGsyW+RBSTtg=="
|
||||||
},
|
},
|
||||||
"Splat": {
|
"Splat": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
|
|
@ -254,14 +254,14 @@
|
||||||
"Ben.Demystifier": "[0.4.1, )",
|
"Ben.Demystifier": "[0.4.1, )",
|
||||||
"BitFaster.Caching": "[2.5.4, )",
|
"BitFaster.Caching": "[2.5.4, )",
|
||||||
"CommunityToolkit.Mvvm": "[8.4.0, )",
|
"CommunityToolkit.Mvvm": "[8.4.0, )",
|
||||||
"Flow.Launcher.Plugin": "[4.7.0, )",
|
"Flow.Launcher.Plugin": "[5.0.0, )",
|
||||||
"InputSimulator": "[1.0.4, )",
|
"InputSimulator": "[1.0.4, )",
|
||||||
"MemoryPack": "[1.21.4, )",
|
"MemoryPack": "[1.21.4, )",
|
||||||
"Microsoft.VisualStudio.Threading": "[17.14.15, )",
|
"Microsoft.VisualStudio.Threading": "[17.14.15, )",
|
||||||
"NHotkey.Wpf": "[3.0.0, )",
|
"NHotkey.Wpf": "[3.0.0, )",
|
||||||
"NLog": "[6.0.1, )",
|
"NLog": "[6.0.4, )",
|
||||||
"NLog.OutputDebugString": "[6.0.1, )",
|
"NLog.OutputDebugString": "[6.0.4, )",
|
||||||
"SharpVectors.Wpf": "[1.8.4.2, )",
|
"SharpVectors.Wpf": "[1.8.5, )",
|
||||||
"System.Drawing.Common": "[7.0.0, )",
|
"System.Drawing.Common": "[7.0.0, )",
|
||||||
"ToolGood.Words.Pinyin": "[3.1.0.3, )"
|
"ToolGood.Words.Pinyin": "[3.1.0.3, )"
|
||||||
}
|
}
|
||||||
|
|
@ -269,7 +269,7 @@
|
||||||
"flow.launcher.plugin": {
|
"flow.launcher.plugin": {
|
||||||
"type": "Project",
|
"type": "Project",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"JetBrains.Annotations": "[2024.3.0, )"
|
"JetBrains.Annotations": "[2025.2.2, )"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,4 @@
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.IO;
|
|
||||||
using System.Linq;
|
|
||||||
using Windows.Win32;
|
|
||||||
|
|
||||||
namespace Flow.Launcher.Infrastructure
|
namespace Flow.Launcher.Infrastructure
|
||||||
{
|
{
|
||||||
|
|
@ -13,9 +9,10 @@ namespace Flow.Launcher.Infrastructure
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static string GetActiveExplorerPath()
|
public static string GetActiveExplorerPath()
|
||||||
{
|
{
|
||||||
var explorerWindow = GetActiveExplorer();
|
var explorerPath = DialogJump.DialogJump.GetActiveExplorerPath();
|
||||||
string locationUrl = explorerWindow?.LocationURL;
|
return !string.IsNullOrEmpty(explorerPath) ?
|
||||||
return !string.IsNullOrEmpty(locationUrl) ? GetDirectoryPath(new Uri(locationUrl).LocalPath) : null;
|
GetDirectoryPath(new Uri(explorerPath).LocalPath) :
|
||||||
|
null;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -23,74 +20,12 @@ namespace Flow.Launcher.Infrastructure
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private static string GetDirectoryPath(string path)
|
private static string GetDirectoryPath(string path)
|
||||||
{
|
{
|
||||||
if (!path.EndsWith("\\"))
|
if (!path.EndsWith('\\'))
|
||||||
{
|
{
|
||||||
return path + "\\";
|
return path + "\\";
|
||||||
}
|
}
|
||||||
|
|
||||||
return path;
|
return path;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets the file explorer that is currently in the foreground
|
|
||||||
/// </summary>
|
|
||||||
private static dynamic GetActiveExplorer()
|
|
||||||
{
|
|
||||||
Type type = Type.GetTypeFromProgID("Shell.Application");
|
|
||||||
if (type == null) return null;
|
|
||||||
dynamic shell = Activator.CreateInstance(type);
|
|
||||||
if (shell == null)
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
var explorerWindows = new List<dynamic>();
|
|
||||||
var openWindows = shell.Windows();
|
|
||||||
for (int i = 0; i < openWindows.Count; i++)
|
|
||||||
{
|
|
||||||
var window = openWindows.Item(i);
|
|
||||||
if (window == null) continue;
|
|
||||||
|
|
||||||
// find the desired window and make sure that it is indeed a file explorer
|
|
||||||
// we don't want the Internet Explorer or the classic control panel
|
|
||||||
// ToLower() is needed, because Windows can report the path as "C:\\Windows\\Explorer.EXE"
|
|
||||||
if (Path.GetFileName((string)window.FullName)?.ToLower() == "explorer.exe")
|
|
||||||
{
|
|
||||||
explorerWindows.Add(window);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (explorerWindows.Count == 0) return null;
|
|
||||||
|
|
||||||
var zOrders = GetZOrder(explorerWindows);
|
|
||||||
|
|
||||||
return explorerWindows.Zip(zOrders).MinBy(x => x.Second).First;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets the z-order for one or more windows atomically with respect to each other. In Windows, smaller z-order is higher. If the window is not top level, the z order is returned as -1.
|
|
||||||
/// </summary>
|
|
||||||
private static IEnumerable<int> GetZOrder(List<dynamic> hWnds)
|
|
||||||
{
|
|
||||||
var z = new int[hWnds.Count];
|
|
||||||
for (var i = 0; i < hWnds.Count; i++) z[i] = -1;
|
|
||||||
|
|
||||||
var index = 0;
|
|
||||||
var numRemaining = hWnds.Count;
|
|
||||||
PInvoke.EnumWindows((wnd, _) =>
|
|
||||||
{
|
|
||||||
var searchIndex = hWnds.FindIndex(x => new IntPtr(x.HWND) == wnd);
|
|
||||||
if (searchIndex != -1)
|
|
||||||
{
|
|
||||||
z[searchIndex] = index;
|
|
||||||
numRemaining--;
|
|
||||||
if (numRemaining == 0) return false;
|
|
||||||
}
|
|
||||||
index++;
|
|
||||||
return true;
|
|
||||||
}, IntPtr.Zero);
|
|
||||||
|
|
||||||
return z;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -56,24 +56,24 @@
|
||||||
<PackageReference Include="Ben.Demystifier" Version="0.4.1" />
|
<PackageReference Include="Ben.Demystifier" Version="0.4.1" />
|
||||||
<PackageReference Include="BitFaster.Caching" Version="2.5.4" />
|
<PackageReference Include="BitFaster.Caching" Version="2.5.4" />
|
||||||
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0" />
|
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0" />
|
||||||
<PackageReference Include="Fody" Version="6.9.2">
|
<PackageReference Include="Fody" Version="6.9.3">
|
||||||
<PrivateAssets>all</PrivateAssets>
|
<PrivateAssets>all</PrivateAssets>
|
||||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="InputSimulator" Version="1.0.4" />
|
<PackageReference Include="InputSimulator" Version="1.0.4" />
|
||||||
<PackageReference Include="MemoryPack" Version="1.21.4" />
|
<PackageReference Include="MemoryPack" Version="1.21.4" />
|
||||||
<PackageReference Include="Microsoft.VisualStudio.Threading" Version="17.14.15" />
|
<PackageReference Include="Microsoft.VisualStudio.Threading" Version="17.14.15" />
|
||||||
<PackageReference Include="Microsoft.Windows.CsWin32" Version="0.3.183">
|
<PackageReference Include="Microsoft.Windows.CsWin32" Version="0.3.205">
|
||||||
<PrivateAssets>all</PrivateAssets>
|
<PrivateAssets>all</PrivateAssets>
|
||||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="NHotkey.Wpf" Version="3.0.0" />
|
<PackageReference Include="NHotkey.Wpf" Version="3.0.0" />
|
||||||
<PackageReference Include="NLog" Version="6.0.1" />
|
<PackageReference Include="NLog" Version="6.0.4" />
|
||||||
<PackageReference Include="NLog.OutputDebugString" Version="6.0.1" />
|
<PackageReference Include="NLog.OutputDebugString" Version="6.0.4" />
|
||||||
<PackageReference Include="PropertyChanged.Fody" Version="4.1.0">
|
<PackageReference Include="PropertyChanged.Fody" Version="4.1.0">
|
||||||
<PrivateAssets>all</PrivateAssets>
|
<PrivateAssets>all</PrivateAssets>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="SharpVectors.Wpf" Version="1.8.4.2" />
|
<PackageReference Include="SharpVectors.Wpf" Version="1.8.5" />
|
||||||
<!-- Do not upgrade this to higher version since it can cause this issue on WinForm platform: -->
|
<!-- Do not upgrade this to higher version since it can cause this issue on WinForm platform: -->
|
||||||
<!-- PlatformNotSupportedException: SystemEvents is not supported on this platform. -->
|
<!-- PlatformNotSupportedException: SystemEvents is not supported on this platform. -->
|
||||||
<PackageReference Include="System.Drawing.Common" Version="7.0.0" />
|
<PackageReference Include="System.Drawing.Common" Version="7.0.0" />
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ namespace Flow.Launcher.Infrastructure.Image
|
||||||
private static Lock storageLock { get; } = new();
|
private static Lock storageLock { get; } = new();
|
||||||
private static BinaryStorage<List<(string, bool)>> _storage;
|
private static BinaryStorage<List<(string, bool)>> _storage;
|
||||||
private static readonly ConcurrentDictionary<string, string> GuidToKey = new();
|
private static readonly ConcurrentDictionary<string, string> GuidToKey = new();
|
||||||
private static IImageHashGenerator _hashGenerator;
|
private static ImageHashGenerator _hashGenerator;
|
||||||
private static readonly bool EnableImageHash = true;
|
private static readonly bool EnableImageHash = true;
|
||||||
public static ImageSource Image => ImageCache[Constant.ImageIcon, false];
|
public static ImageSource Image => ImageCache[Constant.ImageIcon, false];
|
||||||
public static ImageSource MissingImage => ImageCache[Constant.MissingImgIcon, false];
|
public static ImageSource MissingImage => ImageCache[Constant.MissingImgIcon, false];
|
||||||
|
|
@ -31,7 +31,7 @@ namespace Flow.Launcher.Infrastructure.Image
|
||||||
public const int FullIconSize = 256;
|
public const int FullIconSize = 256;
|
||||||
public const int FullImageSize = 320;
|
public const int FullImageSize = 320;
|
||||||
|
|
||||||
private static readonly string[] ImageExtensions = { ".png", ".jpg", ".jpeg", ".gif", ".bmp", ".tiff", ".ico" };
|
private static readonly string[] ImageExtensions = [".png", ".jpg", ".jpeg", ".gif", ".bmp", ".tiff", ".ico"];
|
||||||
private static readonly string SvgExtension = ".svg";
|
private static readonly string SvgExtension = ".svg";
|
||||||
|
|
||||||
public static async Task InitializeAsync()
|
public static async Task InitializeAsync()
|
||||||
|
|
@ -327,7 +327,7 @@ namespace Flow.Launcher.Infrastructure.Image
|
||||||
return img;
|
return img;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static ImageSource LoadFullImage(string path)
|
private static BitmapImage LoadFullImage(string path)
|
||||||
{
|
{
|
||||||
BitmapImage image = new BitmapImage();
|
BitmapImage image = new BitmapImage();
|
||||||
image.BeginInit();
|
image.BeginInit();
|
||||||
|
|
@ -364,7 +364,7 @@ namespace Flow.Launcher.Infrastructure.Image
|
||||||
return image;
|
return image;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static ImageSource LoadSvgImage(string path, bool loadFullImage = false)
|
private static RenderTargetBitmap LoadSvgImage(string path, bool loadFullImage = false)
|
||||||
{
|
{
|
||||||
// Set up drawing settings
|
// Set up drawing settings
|
||||||
var desiredHeight = loadFullImage ? FullImageSize : SmallIconSize;
|
var desiredHeight = loadFullImage ? FullImageSize : SmallIconSize;
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,7 @@ namespace Flow.Launcher.Infrastructure.Logger
|
||||||
|
|
||||||
var fileTarget = new FileTarget
|
var fileTarget = new FileTarget
|
||||||
{
|
{
|
||||||
FileName = CurrentLogDirectory.Replace(@"\", "/") + "/${shortdate}.txt",
|
FileName = CurrentLogDirectory.Replace(@"\", "/") + "/Flow.Launcher.${date:format=yyyy-MM-dd}.log",
|
||||||
Layout = layout
|
Layout = layout
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -65,26 +65,22 @@ namespace Flow.Launcher.Infrastructure.Logger
|
||||||
|
|
||||||
public static void SetLogLevel(LOGLEVEL level)
|
public static void SetLogLevel(LOGLEVEL level)
|
||||||
{
|
{
|
||||||
switch (level)
|
var rule = LogManager.Configuration.FindRuleByName("file");
|
||||||
|
|
||||||
|
var nlogLevel = level switch
|
||||||
{
|
{
|
||||||
case LOGLEVEL.DEBUG:
|
LOGLEVEL.NONE => LogLevel.Off,
|
||||||
UseDebugLogLevel();
|
LOGLEVEL.ERROR => LogLevel.Error,
|
||||||
break;
|
LOGLEVEL.DEBUG => LogLevel.Debug,
|
||||||
default:
|
_ => LogLevel.Info
|
||||||
UseInfoLogLevel();
|
};
|
||||||
break;
|
|
||||||
}
|
|
||||||
Info(nameof(Logger), $"Using log level: {level}.");
|
|
||||||
}
|
|
||||||
|
|
||||||
private static void UseDebugLogLevel()
|
rule.SetLoggingLevels(nlogLevel, LogLevel.Fatal);
|
||||||
{
|
|
||||||
LogManager.Configuration.FindRuleByName("file").SetLoggingLevels(LogLevel.Debug, LogLevel.Fatal);
|
|
||||||
}
|
|
||||||
|
|
||||||
private static void UseInfoLogLevel()
|
LogManager.ReconfigExistingLoggers();
|
||||||
{
|
|
||||||
LogManager.Configuration.FindRuleByName("file").SetLoggingLevels(LogLevel.Info, LogLevel.Fatal);
|
// We can't log Info when level is set to Error or None, so we use Debug
|
||||||
|
Debug(nameof(Logger), $"Using log level: {level}.");
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void LogFaultyFormat(string message)
|
private static void LogFaultyFormat(string message)
|
||||||
|
|
@ -169,7 +165,9 @@ namespace Flow.Launcher.Infrastructure.Logger
|
||||||
|
|
||||||
public enum LOGLEVEL
|
public enum LOGLEVEL
|
||||||
{
|
{
|
||||||
DEBUG,
|
NONE,
|
||||||
INFO
|
ERROR,
|
||||||
|
INFO,
|
||||||
|
DEBUG
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,18 @@
|
||||||
|
using System.Text.Json.Serialization;
|
||||||
|
using CommunityToolkit.Mvvm.DependencyInjection;
|
||||||
using Flow.Launcher.Plugin;
|
using Flow.Launcher.Plugin;
|
||||||
using System.Text.Json.Serialization;
|
|
||||||
|
|
||||||
namespace Flow.Launcher.Infrastructure.UserSettings
|
namespace Flow.Launcher.Infrastructure.UserSettings
|
||||||
{
|
{
|
||||||
public class CustomBrowserViewModel : BaseModel
|
public class CustomBrowserViewModel : BaseModel
|
||||||
{
|
{
|
||||||
|
// We should not initialize API in static constructor because it will create another API instance
|
||||||
|
private static IPublicAPI api = null;
|
||||||
|
private static IPublicAPI API => api ??= Ioc.Default.GetRequiredService<IPublicAPI>();
|
||||||
|
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
|
[JsonIgnore]
|
||||||
|
public string DisplayName => Name == "Default" ? API.GetTranslation("defaultBrowser_default") : Name;
|
||||||
public string Path { get; set; }
|
public string Path { get; set; }
|
||||||
public string PrivateArg { get; set; }
|
public string PrivateArg { get; set; }
|
||||||
public bool EnablePrivate { get; set; }
|
public bool EnablePrivate { get; set; }
|
||||||
|
|
@ -26,8 +33,10 @@ namespace Flow.Launcher.Infrastructure.UserSettings
|
||||||
Editable = Editable
|
Editable = Editable
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void OnDisplayNameChanged()
|
||||||
|
{
|
||||||
|
OnPropertyChanged(nameof(DisplayName));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,18 @@
|
||||||
using Flow.Launcher.Plugin;
|
using System.Text.Json.Serialization;
|
||||||
|
using CommunityToolkit.Mvvm.DependencyInjection;
|
||||||
|
using Flow.Launcher.Plugin;
|
||||||
|
|
||||||
namespace Flow.Launcher.ViewModel
|
namespace Flow.Launcher.Infrastructure.UserSettings
|
||||||
{
|
{
|
||||||
public class CustomExplorerViewModel : BaseModel
|
public class CustomExplorerViewModel : BaseModel
|
||||||
{
|
{
|
||||||
|
// We should not initialize API in static constructor because it will create another API instance
|
||||||
|
private static IPublicAPI api = null;
|
||||||
|
private static IPublicAPI API => api ??= Ioc.Default.GetRequiredService<IPublicAPI>();
|
||||||
|
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
|
[JsonIgnore]
|
||||||
|
public string DisplayName => Name == "Explorer" ? API.GetTranslation("fileManagerExplorer") : Name;
|
||||||
public string Path { get; set; }
|
public string Path { get; set; }
|
||||||
public string FileArgument { get; set; } = "\"%d\"";
|
public string FileArgument { get; set; } = "\"%d\"";
|
||||||
public string DirectoryArgument { get; set; } = "\"%d\"";
|
public string DirectoryArgument { get; set; } = "\"%d\"";
|
||||||
|
|
@ -21,5 +29,10 @@ namespace Flow.Launcher.ViewModel
|
||||||
Editable = Editable
|
Editable = Editable
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void OnDisplayNameChanged()
|
||||||
|
{
|
||||||
|
OnPropertyChanged(nameof(DisplayName));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,8 +7,8 @@ namespace Flow.Launcher.Infrastructure.UserSettings
|
||||||
{
|
{
|
||||||
public const string PortableFolderName = "UserData";
|
public const string PortableFolderName = "UserData";
|
||||||
public const string DeletionIndicatorFile = ".dead";
|
public const string DeletionIndicatorFile = ".dead";
|
||||||
public static string PortableDataPath = Path.Combine(Constant.ProgramDirectory, PortableFolderName);
|
public static readonly string PortableDataPath = Path.Combine(Constant.ProgramDirectory, PortableFolderName);
|
||||||
public static string RoamingDataPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "FlowLauncher");
|
public static readonly string RoamingDataPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "FlowLauncher");
|
||||||
public static string DataDirectory()
|
public static string DataDirectory()
|
||||||
{
|
{
|
||||||
if (PortableDataLocationInUse())
|
if (PortableDataLocationInUse())
|
||||||
|
|
@ -19,7 +19,8 @@ namespace Flow.Launcher.Infrastructure.UserSettings
|
||||||
|
|
||||||
public static bool PortableDataLocationInUse()
|
public static bool PortableDataLocationInUse()
|
||||||
{
|
{
|
||||||
if (Directory.Exists(PortableDataPath) && !File.Exists(DeletionIndicatorFile))
|
if (Directory.Exists(PortableDataPath) &&
|
||||||
|
!File.Exists(Path.Combine(PortableDataPath, DeletionIndicatorFile)))
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
using System.Text.Json.Serialization;
|
using System.Text.Json.Serialization;
|
||||||
using System.Windows;
|
using System.Windows;
|
||||||
|
|
@ -9,7 +9,6 @@ using Flow.Launcher.Infrastructure.Logger;
|
||||||
using Flow.Launcher.Infrastructure.Storage;
|
using Flow.Launcher.Infrastructure.Storage;
|
||||||
using Flow.Launcher.Plugin;
|
using Flow.Launcher.Plugin;
|
||||||
using Flow.Launcher.Plugin.SharedModels;
|
using Flow.Launcher.Plugin.SharedModels;
|
||||||
using Flow.Launcher.ViewModel;
|
|
||||||
|
|
||||||
namespace Flow.Launcher.Infrastructure.UserSettings
|
namespace Flow.Launcher.Infrastructure.UserSettings
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.ComponentModel;
|
using System.ComponentModel;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
|
|
@ -904,5 +904,19 @@ namespace Flow.Launcher.Infrastructure
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
#region File / Folder Dialog
|
||||||
|
|
||||||
|
public static string SelectFile()
|
||||||
|
{
|
||||||
|
var dlg = new OpenFileDialog();
|
||||||
|
var result = dlg.ShowDialog();
|
||||||
|
if (result == true)
|
||||||
|
return dlg.FileName;
|
||||||
|
|
||||||
|
return string.Empty;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -25,9 +25,9 @@
|
||||||
},
|
},
|
||||||
"Fody": {
|
"Fody": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[6.9.2, )",
|
"requested": "[6.9.3, )",
|
||||||
"resolved": "6.9.2",
|
"resolved": "6.9.3",
|
||||||
"contentHash": "YBHobPGogb0vYhGYIxn/ndWqTjNWZveDi5jdjrcshL2vjwU3gQGyDeI7vGgye+2rAM5fGRvlLgNWLW3DpviS/w=="
|
"contentHash": "1CUGgFdyECDKgi5HaUBhdv6k+VG9Iy4OCforGfHyar3xQXAJypZkzymgKtWj/4SPd6nSG0Qi7NH71qHrDSZLaA=="
|
||||||
},
|
},
|
||||||
"InputSimulator": {
|
"InputSimulator": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
|
|
@ -58,9 +58,9 @@
|
||||||
},
|
},
|
||||||
"Microsoft.Windows.CsWin32": {
|
"Microsoft.Windows.CsWin32": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[0.3.183, )",
|
"requested": "[0.3.205, )",
|
||||||
"resolved": "0.3.183",
|
"resolved": "0.3.205",
|
||||||
"contentHash": "Ze3aE2y7xgzKxEWtNb4SH0CExXpCHr3sbmwnvMiWMzJhWDX/G4Rs5wgg2UNs3VN+qVHh/DkDWLCPaVQv/b//Nw==",
|
"contentHash": "U5wGAnyKd7/I2YMd43nogm81VMtjiKzZ9dsLMVI4eAB7jtv5IEj0gprj0q/F3iRmAIaGv5omOf8iSYx2+nE6BQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Windows.SDK.Win32Docs": "0.1.42-alpha",
|
"Microsoft.Windows.SDK.Win32Docs": "0.1.42-alpha",
|
||||||
"Microsoft.Windows.SDK.Win32Metadata": "61.0.15-preview",
|
"Microsoft.Windows.SDK.Win32Metadata": "61.0.15-preview",
|
||||||
|
|
@ -78,17 +78,17 @@
|
||||||
},
|
},
|
||||||
"NLog": {
|
"NLog": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[6.0.1, )",
|
"requested": "[6.0.4, )",
|
||||||
"resolved": "6.0.1",
|
"resolved": "6.0.4",
|
||||||
"contentHash": "qDWiqy8/xdpZKtHna/645KbalwP86N2NFJEzfqhcv+Si4V2iNaEfR/dCneuF/4+Dcwl3f7jHMXj3ndWYftV3Ug=="
|
"contentHash": "Xr+lIk1ZlTTFXEqnxQVLxrDqZlt2tm5X+/AhJbaY2emb/dVtGDiU5QuEtj3gHtwV/SWlP/rJ922I/BPuOJXlRw=="
|
||||||
},
|
},
|
||||||
"NLog.OutputDebugString": {
|
"NLog.OutputDebugString": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[6.0.1, )",
|
"requested": "[6.0.4, )",
|
||||||
"resolved": "6.0.1",
|
"resolved": "6.0.4",
|
||||||
"contentHash": "wwJCQLaHVzuRf8TsXB+EEdrzVvE3dnzCSMQMDgwkw3AXp8VSp3JSVF/Q/H0oEqggKgKhPs13hh3a7svyQr4s3A==",
|
"contentHash": "TOP2Ap9BbE98B/l/TglnguowOD0rXo8B/20xAgvj9shO/kf6IJ5M4QMhVxq72mrneJ/ANhHY7Jcd+xJbzuI5PA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"NLog": "6.0.1"
|
"NLog": "6.0.4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"PropertyChanged.Fody": {
|
"PropertyChanged.Fody": {
|
||||||
|
|
@ -102,9 +102,9 @@
|
||||||
},
|
},
|
||||||
"SharpVectors.Wpf": {
|
"SharpVectors.Wpf": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[1.8.4.2, )",
|
"requested": "[1.8.5, )",
|
||||||
"resolved": "1.8.4.2",
|
"resolved": "1.8.5",
|
||||||
"contentHash": "PNxLkMBJnV8A+6yH9OqOlhLJegvWP/dvh0rAJp2l0kcrR+rB4R2tQ9vhUqka+UilH4atN8T6zvjDOizVyfz2Ng=="
|
"contentHash": "WURdBDq5AE8RjKV9pFS7lNkJe81gxja9SaMGE4URq9GJUZ6M+5DGUL0Lm3B0iYW2/Meyowaz4ffGsyW+RBSTtg=="
|
||||||
},
|
},
|
||||||
"System.Drawing.Common": {
|
"System.Drawing.Common": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
|
|
@ -123,8 +123,8 @@
|
||||||
},
|
},
|
||||||
"JetBrains.Annotations": {
|
"JetBrains.Annotations": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "2024.3.0",
|
"resolved": "2025.2.2",
|
||||||
"contentHash": "ox5pkeLQXjvJdyAB4b2sBYAlqZGLh3PjSnP1bQNVx72ONuTJ9+34/+Rq91Fc0dG29XG9RgZur9+NcP4riihTug=="
|
"contentHash": "0X56ZRizuHdrnPpgXjWV7f2tQO1FlQg5O1967OGKnI/4ZRNOK642J8L7brM1nYvrxTTU5TP1yRyXLRLaXLPQ8A=="
|
||||||
},
|
},
|
||||||
"MemoryPack.Core": {
|
"MemoryPack.Core": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
|
|
@ -190,7 +190,7 @@
|
||||||
"flow.launcher.plugin": {
|
"flow.launcher.plugin": {
|
||||||
"type": "Project",
|
"type": "Project",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"JetBrains.Annotations": "[2024.3.0, )"
|
"JetBrains.Annotations": "[2025.2.2, )"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net9.0-windows</TargetFramework>
|
<TargetFramework>net9.0-windows</TargetFramework>
|
||||||
|
|
@ -68,13 +68,13 @@
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Fody" Version="6.9.2">
|
<PackageReference Include="Fody" Version="6.9.3">
|
||||||
<PrivateAssets>all</PrivateAssets>
|
<PrivateAssets>all</PrivateAssets>
|
||||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="8.0.0" PrivateAssets="All" />
|
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="8.0.0" PrivateAssets="All" />
|
||||||
<PackageReference Include="JetBrains.Annotations" Version="2024.3.0" />
|
<PackageReference Include="JetBrains.Annotations" Version="2025.2.2" />
|
||||||
<PackageReference Include="Microsoft.Windows.CsWin32" Version="0.3.183">
|
<PackageReference Include="Microsoft.Windows.CsWin32" Version="0.3.205">
|
||||||
<PrivateAssets>all</PrivateAssets>
|
<PrivateAssets>all</PrivateAssets>
|
||||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
|
|
|
||||||
|
|
@ -4,15 +4,15 @@
|
||||||
"net9.0-windows7.0": {
|
"net9.0-windows7.0": {
|
||||||
"Fody": {
|
"Fody": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[6.9.2, )",
|
"requested": "[6.9.3, )",
|
||||||
"resolved": "6.9.2",
|
"resolved": "6.9.3",
|
||||||
"contentHash": "YBHobPGogb0vYhGYIxn/ndWqTjNWZveDi5jdjrcshL2vjwU3gQGyDeI7vGgye+2rAM5fGRvlLgNWLW3DpviS/w=="
|
"contentHash": "1CUGgFdyECDKgi5HaUBhdv6k+VG9Iy4OCforGfHyar3xQXAJypZkzymgKtWj/4SPd6nSG0Qi7NH71qHrDSZLaA=="
|
||||||
},
|
},
|
||||||
"JetBrains.Annotations": {
|
"JetBrains.Annotations": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[2024.3.0, )",
|
"requested": "[2025.2.2, )",
|
||||||
"resolved": "2024.3.0",
|
"resolved": "2025.2.2",
|
||||||
"contentHash": "ox5pkeLQXjvJdyAB4b2sBYAlqZGLh3PjSnP1bQNVx72ONuTJ9+34/+Rq91Fc0dG29XG9RgZur9+NcP4riihTug=="
|
"contentHash": "0X56ZRizuHdrnPpgXjWV7f2tQO1FlQg5O1967OGKnI/4ZRNOK642J8L7brM1nYvrxTTU5TP1yRyXLRLaXLPQ8A=="
|
||||||
},
|
},
|
||||||
"Microsoft.SourceLink.GitHub": {
|
"Microsoft.SourceLink.GitHub": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
|
|
@ -26,9 +26,9 @@
|
||||||
},
|
},
|
||||||
"Microsoft.Windows.CsWin32": {
|
"Microsoft.Windows.CsWin32": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[0.3.183, )",
|
"requested": "[0.3.205, )",
|
||||||
"resolved": "0.3.183",
|
"resolved": "0.3.205",
|
||||||
"contentHash": "Ze3aE2y7xgzKxEWtNb4SH0CExXpCHr3sbmwnvMiWMzJhWDX/G4Rs5wgg2UNs3VN+qVHh/DkDWLCPaVQv/b//Nw==",
|
"contentHash": "U5wGAnyKd7/I2YMd43nogm81VMtjiKzZ9dsLMVI4eAB7jtv5IEj0gprj0q/F3iRmAIaGv5omOf8iSYx2+nE6BQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Windows.SDK.Win32Docs": "0.1.42-alpha",
|
"Microsoft.Windows.SDK.Win32Docs": "0.1.42-alpha",
|
||||||
"Microsoft.Windows.SDK.Win32Metadata": "61.0.15-preview",
|
"Microsoft.Windows.SDK.Win32Metadata": "61.0.15-preview",
|
||||||
|
|
|
||||||
|
|
@ -39,6 +39,7 @@
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\Plugins\Flow.Launcher.Plugin.Calculator\Flow.Launcher.Plugin.Calculator.csproj" />
|
||||||
<ProjectReference Include="..\Plugins\Flow.Launcher.Plugin.Explorer\Flow.Launcher.Plugin.Explorer.csproj" />
|
<ProjectReference Include="..\Plugins\Flow.Launcher.Plugin.Explorer\Flow.Launcher.Plugin.Explorer.csproj" />
|
||||||
<ProjectReference Include="..\Plugins\Flow.Launcher.Plugin.Program\Flow.Launcher.Plugin.Program.csproj" />
|
<ProjectReference Include="..\Plugins\Flow.Launcher.Plugin.Program\Flow.Launcher.Plugin.Program.csproj" />
|
||||||
<ProjectReference Include="..\Plugins\Flow.Launcher.Plugin.Url\Flow.Launcher.Plugin.Url.csproj" />
|
<ProjectReference Include="..\Plugins\Flow.Launcher.Plugin.Url\Flow.Launcher.Plugin.Url.csproj" />
|
||||||
|
|
@ -49,8 +50,8 @@
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Moq" Version="4.20.72" />
|
<PackageReference Include="Moq" Version="4.20.72" />
|
||||||
<PackageReference Include="nunit" Version="4.3.2" />
|
<PackageReference Include="nunit" Version="4.4.0" />
|
||||||
<PackageReference Include="NUnit3TestAdapter" Version="5.0.0">
|
<PackageReference Include="NUnit3TestAdapter" Version="5.1.0">
|
||||||
<PrivateAssets>all</PrivateAssets>
|
<PrivateAssets>all</PrivateAssets>
|
||||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
|
|
|
||||||
92
Flow.Launcher.Test/Plugins/CalculatorTest.cs
Normal file
92
Flow.Launcher.Test/Plugins/CalculatorTest.cs
Normal file
|
|
@ -0,0 +1,92 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Reflection;
|
||||||
|
using Flow.Launcher.Plugin.Calculator;
|
||||||
|
using Mages.Core;
|
||||||
|
using NUnit.Framework;
|
||||||
|
using NUnit.Framework.Legacy;
|
||||||
|
|
||||||
|
namespace Flow.Launcher.Test.Plugins
|
||||||
|
{
|
||||||
|
[TestFixture]
|
||||||
|
public class CalculatorPluginTest
|
||||||
|
{
|
||||||
|
private readonly Main _plugin;
|
||||||
|
private readonly Settings _settings = new()
|
||||||
|
{
|
||||||
|
DecimalSeparator = DecimalSeparator.UseSystemLocale,
|
||||||
|
MaxDecimalPlaces = 10,
|
||||||
|
ShowErrorMessage = false // Make sure we return the empty results when error occurs
|
||||||
|
};
|
||||||
|
private readonly Engine _engine = new(new Configuration
|
||||||
|
{
|
||||||
|
Scope = new Dictionary<string, object>
|
||||||
|
{
|
||||||
|
{ "e", Math.E }, // e is not contained in the default mages engine
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
public CalculatorPluginTest()
|
||||||
|
{
|
||||||
|
_plugin = new Main();
|
||||||
|
|
||||||
|
var settingField = typeof(Main).GetField("_settings", BindingFlags.NonPublic | BindingFlags.Instance);
|
||||||
|
if (settingField == null)
|
||||||
|
Assert.Fail("Could not find field '_settings' on Flow.Launcher.Plugin.Calculator.Main");
|
||||||
|
settingField.SetValue(_plugin, _settings);
|
||||||
|
|
||||||
|
var engineField = typeof(Main).GetField("MagesEngine", BindingFlags.NonPublic | BindingFlags.Static);
|
||||||
|
if (engineField == null)
|
||||||
|
Assert.Fail("Could not find static field 'MagesEngine' on Flow.Launcher.Plugin.Calculator.Main");
|
||||||
|
engineField.SetValue(null, _engine);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Basic operations
|
||||||
|
[TestCase(@"1+1", "2")]
|
||||||
|
[TestCase(@"2-1", "1")]
|
||||||
|
[TestCase(@"2*2", "4")]
|
||||||
|
[TestCase(@"4/2", "2")]
|
||||||
|
[TestCase(@"2^3", "8")]
|
||||||
|
// Decimal places
|
||||||
|
[TestCase(@"10/3", "3.3333333333")]
|
||||||
|
// Parentheses
|
||||||
|
[TestCase(@"(1+2)*3", "9")]
|
||||||
|
[TestCase(@"2^(1+2)", "8")]
|
||||||
|
// Functions
|
||||||
|
[TestCase(@"pow(2,3)", "8")]
|
||||||
|
[TestCase(@"min(1,-1,-2)", "-2")]
|
||||||
|
[TestCase(@"max(1,-1,-2)", "1")]
|
||||||
|
[TestCase(@"sqrt(16)", "4")]
|
||||||
|
[TestCase(@"sin(pi)", "0.0000000000")]
|
||||||
|
[TestCase(@"cos(0)", "1")]
|
||||||
|
[TestCase(@"tan(0)", "0")]
|
||||||
|
[TestCase(@"log10(100)", "2")]
|
||||||
|
[TestCase(@"log(100)", "2")]
|
||||||
|
[TestCase(@"log2(8)", "3")]
|
||||||
|
[TestCase(@"ln(e)", "1")]
|
||||||
|
[TestCase(@"abs(-5)", "5")]
|
||||||
|
// Constants
|
||||||
|
[TestCase(@"pi", "3.1415926536")]
|
||||||
|
// Complex expressions
|
||||||
|
[TestCase(@"(2+3)*sqrt(16)-log(100)/ln(e)", "18")]
|
||||||
|
[TestCase(@"sin(pi/2)+cos(0)+tan(0)", "2")]
|
||||||
|
// Error handling (should return empty result)
|
||||||
|
[TestCase(@"10/0", "")]
|
||||||
|
[TestCase(@"sqrt(-1)", "")]
|
||||||
|
[TestCase(@"log(0)", "")]
|
||||||
|
[TestCase(@"invalid_expression", "")]
|
||||||
|
public void CalculatorTest(string expression, string result)
|
||||||
|
{
|
||||||
|
ClassicAssert.AreEqual(GetCalculationResult(expression), result);
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetCalculationResult(string expression)
|
||||||
|
{
|
||||||
|
var results = _plugin.Query(new Plugin.Query()
|
||||||
|
{
|
||||||
|
Search = expression
|
||||||
|
});
|
||||||
|
return results.Count > 0 ? results[0].Title : string.Empty;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -45,6 +45,7 @@ namespace Flow.Launcher
|
||||||
private static Settings _settings;
|
private static Settings _settings;
|
||||||
private static MainWindow _mainWindow;
|
private static MainWindow _mainWindow;
|
||||||
private readonly MainViewModel _mainVM;
|
private readonly MainViewModel _mainVM;
|
||||||
|
private readonly Internationalization _internationalization;
|
||||||
|
|
||||||
// To prevent two disposals running at the same time.
|
// To prevent two disposals running at the same time.
|
||||||
private static readonly object _disposingLock = new();
|
private static readonly object _disposingLock = new();
|
||||||
|
|
@ -107,6 +108,7 @@ namespace Flow.Launcher
|
||||||
API = Ioc.Default.GetRequiredService<IPublicAPI>();
|
API = Ioc.Default.GetRequiredService<IPublicAPI>();
|
||||||
_settings.Initialize();
|
_settings.Initialize();
|
||||||
_mainVM = Ioc.Default.GetRequiredService<MainViewModel>();
|
_mainVM = Ioc.Default.GetRequiredService<MainViewModel>();
|
||||||
|
_internationalization = Ioc.Default.GetRequiredService<Internationalization>();
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
|
@ -193,7 +195,7 @@ namespace Flow.Launcher
|
||||||
Win32Helper.EnableWin32DarkMode(_settings.ColorScheme);
|
Win32Helper.EnableWin32DarkMode(_settings.ColorScheme);
|
||||||
|
|
||||||
// Initialize language before portable clean up since it needs translations
|
// Initialize language before portable clean up since it needs translations
|
||||||
await Ioc.Default.GetRequiredService<Internationalization>().InitializeLanguageAsync();
|
await _internationalization.InitializeLanguageAsync();
|
||||||
|
|
||||||
Ioc.Default.GetRequiredService<Portable>().PreStartCleanUpAfterPortabilityUpdate();
|
Ioc.Default.GetRequiredService<Portable>().PreStartCleanUpAfterPortabilityUpdate();
|
||||||
|
|
||||||
|
|
@ -421,6 +423,7 @@ namespace Flow.Launcher
|
||||||
_mainWindow?.Dispatcher.Invoke(_mainWindow.Dispose);
|
_mainWindow?.Dispatcher.Invoke(_mainWindow.Dispose);
|
||||||
_mainVM?.Dispose();
|
_mainVM?.Dispose();
|
||||||
DialogJump.Dispose();
|
DialogJump.Dispose();
|
||||||
|
_internationalization.Dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
API.LogInfo(ClassName, "End Flow Launcher dispose ----------------------------------------------------");
|
API.LogInfo(ClassName, "End Flow Launcher dispose ----------------------------------------------------");
|
||||||
|
|
|
||||||
|
|
@ -40,49 +40,11 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<Target Name="RemoveUnnecessaryRuntimesAfterBuild" AfterTargets="Build">
|
<Target Name="RemoveUnnecessaryRuntimesAfterBuild" AfterTargets="Build">
|
||||||
<RemoveDir Directories="$(OutputPath)runtimes\browser-wasm;
|
<RemoveDir Directories="$(OutputPath)runtimes\browser-wasm;
 $(OutputPath)runtimes\linux-arm;
 $(OutputPath)runtimes\linux-arm64;
 $(OutputPath)runtimes\linux-armel;
 $(OutputPath)runtimes\linux-mips64;
 $(OutputPath)runtimes\linux-musl-arm;
 $(OutputPath)runtimes\linux-musl-arm64;
 $(OutputPath)runtimes\linux-musl-x64;
 $(OutputPath)runtimes\linux-musl-s390x;
 $(OutputPath)runtimes\linux-ppc64le;
 $(OutputPath)runtimes\linux-s390x;
 $(OutputPath)runtimes\linux-x64;
 $(OutputPath)runtimes\linux-x86;
 $(OutputPath)runtimes\maccatalyst-arm64;
 $(OutputPath)runtimes\maccatalyst-x64;
 $(OutputPath)runtimes\osx;
 $(OutputPath)runtimes\osx-arm64;
 $(OutputPath)runtimes\osx-x64;
 $(OutputPath)runtimes\win-arm;
 $(OutputPath)runtimes\win-arm64;" />
|
||||||
$(OutputPath)runtimes\linux-arm;
|
|
||||||
$(OutputPath)runtimes\linux-arm64;
|
|
||||||
$(OutputPath)runtimes\linux-armel;
|
|
||||||
$(OutputPath)runtimes\linux-mips64;
|
|
||||||
$(OutputPath)runtimes\linux-musl-arm;
|
|
||||||
$(OutputPath)runtimes\linux-musl-arm64;
|
|
||||||
$(OutputPath)runtimes\linux-musl-x64;
|
|
||||||
$(OutputPath)runtimes\linux-musl-s390x;
|
|
||||||
$(OutputPath)runtimes\linux-ppc64le;
|
|
||||||
$(OutputPath)runtimes\linux-s390x;
|
|
||||||
$(OutputPath)runtimes\linux-x64;
|
|
||||||
$(OutputPath)runtimes\linux-x86;
|
|
||||||
$(OutputPath)runtimes\maccatalyst-arm64;
|
|
||||||
$(OutputPath)runtimes\maccatalyst-x64;
|
|
||||||
$(OutputPath)runtimes\osx;
|
|
||||||
$(OutputPath)runtimes\osx-arm64;
|
|
||||||
$(OutputPath)runtimes\osx-x64;
|
|
||||||
$(OutputPath)runtimes\win-arm;
|
|
||||||
$(OutputPath)runtimes\win-arm64;"/>
|
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="RemoveUnnecessaryRuntimesAfterPublish" AfterTargets="Publish">
|
<Target Name="RemoveUnnecessaryRuntimesAfterPublish" AfterTargets="Publish">
|
||||||
<RemoveDir Directories="$(PublishDir)runtimes\browser-wasm;
|
<RemoveDir Directories="$(PublishDir)runtimes\browser-wasm;
 $(PublishDir)runtimes\linux-arm;
 $(PublishDir)runtimes\linux-arm64;
 $(PublishDir)runtimes\linux-armel;
 $(PublishDir)runtimes\linux-mips64;
 $(PublishDir)runtimes\linux-musl-arm;
 $(PublishDir)runtimes\linux-musl-arm64;
 $(PublishDir)runtimes\linux-musl-x64;
 $(PublishDir)runtimes\linux-musl-s390x;
 $(PublishDir)runtimes\linux-ppc64le;
 $(PublishDir)runtimes\linux-s390x;
 $(PublishDir)runtimes\linux-x64;
 $(PublishDir)runtimes\linux-x86;
 $(PublishDir)runtimes\maccatalyst-arm64;
 $(PublishDir)runtimes\maccatalyst-x64;
 $(PublishDir)runtimes\osx;
 $(PublishDir)runtimes\osx-arm64;
 $(PublishDir)runtimes\osx-x64;
 $(PublishDir)runtimes\win-arm;
 $(PublishDir)runtimes\win-arm64;" />
|
||||||
$(PublishDir)runtimes\linux-arm;
|
|
||||||
$(PublishDir)runtimes\linux-arm64;
|
|
||||||
$(PublishDir)runtimes\linux-armel;
|
|
||||||
$(PublishDir)runtimes\linux-mips64;
|
|
||||||
$(PublishDir)runtimes\linux-musl-arm;
|
|
||||||
$(PublishDir)runtimes\linux-musl-arm64;
|
|
||||||
$(PublishDir)runtimes\linux-musl-x64;
|
|
||||||
$(PublishDir)runtimes\linux-musl-s390x;
|
|
||||||
$(PublishDir)runtimes\linux-ppc64le;
|
|
||||||
$(PublishDir)runtimes\linux-s390x;
|
|
||||||
$(PublishDir)runtimes\linux-x64;
|
|
||||||
$(PublishDir)runtimes\linux-x86;
|
|
||||||
$(PublishDir)runtimes\maccatalyst-arm64;
|
|
||||||
$(PublishDir)runtimes\maccatalyst-x64;
|
|
||||||
$(PublishDir)runtimes\osx;
|
|
||||||
$(PublishDir)runtimes\osx-arm64;
|
|
||||||
$(PublishDir)runtimes\osx-x64;
|
|
||||||
$(PublishDir)runtimes\win-arm;
|
|
||||||
$(PublishDir)runtimes\win-arm64;"/>
|
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
@ -132,7 +94,7 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="ChefKeys" Version="0.1.2" />
|
<PackageReference Include="ChefKeys" Version="0.1.2" />
|
||||||
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0" />
|
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0" />
|
||||||
<PackageReference Include="Fody" Version="6.9.2">
|
<PackageReference Include="Fody" Version="6.9.3">
|
||||||
<PrivateAssets>all</PrivateAssets>
|
<PrivateAssets>all</PrivateAssets>
|
||||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
|
|
@ -141,8 +103,8 @@
|
||||||
<PackageReference Include="MdXaml.Html" Version="1.27.0" />
|
<PackageReference Include="MdXaml.Html" Version="1.27.0" />
|
||||||
<PackageReference Include="MdXaml.Plugins" Version="1.27.0" />
|
<PackageReference Include="MdXaml.Plugins" Version="1.27.0" />
|
||||||
<PackageReference Include="MdXaml.Svg" Version="1.27.0" />
|
<PackageReference Include="MdXaml.Svg" Version="1.27.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.7" />
|
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.9" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Hosting" Version="9.0.7" />
|
<PackageReference Include="Microsoft.Extensions.Hosting" Version="9.0.9" />
|
||||||
<PackageReference Include="Microsoft.Toolkit.Uwp.Notifications" Version="7.1.3" />
|
<PackageReference Include="Microsoft.Toolkit.Uwp.Notifications" Version="7.1.3" />
|
||||||
<!-- ModernWpfUI v0.9.5 introduced WinRT changes that causes Notification platform unavailable error on some machines -->
|
<!-- ModernWpfUI v0.9.5 introduced WinRT changes that causes Notification platform unavailable error on some machines -->
|
||||||
<!-- https://github.com/Flow-Launcher/Flow.Launcher/issues/1772#issuecomment-1502440801 -->
|
<!-- https://github.com/Flow-Launcher/Flow.Launcher/issues/1772#issuecomment-1502440801 -->
|
||||||
|
|
@ -152,7 +114,7 @@
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="SemanticVersioning" Version="3.0.0" />
|
<PackageReference Include="SemanticVersioning" Version="3.0.0" />
|
||||||
<PackageReference Include="TaskScheduler" Version="2.12.2" />
|
<PackageReference Include="TaskScheduler" Version="2.12.2" />
|
||||||
<PackageReference Include="VirtualizingWrapPanel" Version="2.3.0" />
|
<PackageReference Include="VirtualizingWrapPanel" Version="2.3.1" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using System.Threading;
|
||||||
using System.Windows;
|
using System.Windows;
|
||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using System.Windows.Media.Imaging;
|
using System.Windows.Media.Imaging;
|
||||||
|
|
@ -16,7 +17,7 @@ public static class WallpaperPathRetrieval
|
||||||
|
|
||||||
private const int MaxCacheSize = 3;
|
private const int MaxCacheSize = 3;
|
||||||
private static readonly Dictionary<(string, DateTime), ImageBrush> WallpaperCache = new();
|
private static readonly Dictionary<(string, DateTime), ImageBrush> WallpaperCache = new();
|
||||||
private static readonly object CacheLock = new();
|
private static readonly Lock CacheLock = new();
|
||||||
|
|
||||||
public static Brush GetWallpaperBrush()
|
public static Brush GetWallpaperBrush()
|
||||||
{
|
{
|
||||||
|
|
@ -31,7 +32,7 @@ public static class WallpaperPathRetrieval
|
||||||
var wallpaperPath = Win32Helper.GetWallpaperPath();
|
var wallpaperPath = Win32Helper.GetWallpaperPath();
|
||||||
if (string.IsNullOrEmpty(wallpaperPath) || !File.Exists(wallpaperPath))
|
if (string.IsNullOrEmpty(wallpaperPath) || !File.Exists(wallpaperPath))
|
||||||
{
|
{
|
||||||
App.API.LogInfo(ClassName, $"Wallpaper path is invalid: {wallpaperPath}");
|
App.API.LogError(ClassName, $"Wallpaper path is invalid: {wallpaperPath}");
|
||||||
var wallpaperColor = GetWallpaperColor();
|
var wallpaperColor = GetWallpaperColor();
|
||||||
return new SolidColorBrush(wallpaperColor);
|
return new SolidColorBrush(wallpaperColor);
|
||||||
}
|
}
|
||||||
|
|
@ -47,17 +48,22 @@ public static class WallpaperPathRetrieval
|
||||||
return cachedWallpaper;
|
return cachedWallpaper;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
using var fileStream = File.OpenRead(wallpaperPath);
|
int originalWidth, originalHeight;
|
||||||
var decoder = BitmapDecoder.Create(fileStream, BitmapCreateOptions.DelayCreation, BitmapCacheOption.None);
|
// Use `using ()` instead of `using var` sentence here to ensure the wallpaper file is not locked
|
||||||
var frame = decoder.Frames[0];
|
using (var fileStream = File.OpenRead(wallpaperPath))
|
||||||
var originalWidth = frame.PixelWidth;
|
{
|
||||||
var originalHeight = frame.PixelHeight;
|
var decoder = BitmapDecoder.Create(fileStream, BitmapCreateOptions.DelayCreation, BitmapCacheOption.None);
|
||||||
|
var frame = decoder.Frames[0];
|
||||||
|
originalWidth = frame.PixelWidth;
|
||||||
|
originalHeight = frame.PixelHeight;
|
||||||
|
}
|
||||||
|
|
||||||
if (originalWidth == 0 || originalHeight == 0)
|
if (originalWidth == 0 || originalHeight == 0)
|
||||||
{
|
{
|
||||||
App.API.LogInfo(ClassName, $"Failed to load bitmap: Width={originalWidth}, Height={originalHeight}");
|
App.API.LogError(ClassName, $"Failed to load bitmap: Width={originalWidth}, Height={originalHeight}");
|
||||||
return new SolidColorBrush(Colors.Transparent);
|
var wallpaperColor = GetWallpaperColor();
|
||||||
|
return new SolidColorBrush(wallpaperColor);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Calculate the scaling factor to fit the image within 800x600 while preserving aspect ratio
|
// Calculate the scaling factor to fit the image within 800x600 while preserving aspect ratio
|
||||||
|
|
@ -70,7 +76,9 @@ public static class WallpaperPathRetrieval
|
||||||
// Set DecodePixelWidth and DecodePixelHeight to resize the image while preserving aspect ratio
|
// Set DecodePixelWidth and DecodePixelHeight to resize the image while preserving aspect ratio
|
||||||
var bitmap = new BitmapImage();
|
var bitmap = new BitmapImage();
|
||||||
bitmap.BeginInit();
|
bitmap.BeginInit();
|
||||||
|
bitmap.CacheOption = BitmapCacheOption.OnLoad; // Use OnLoad to ensure the wallpaper file is not locked
|
||||||
bitmap.UriSource = new Uri(wallpaperPath);
|
bitmap.UriSource = new Uri(wallpaperPath);
|
||||||
|
bitmap.CreateOptions = BitmapCreateOptions.IgnoreColorProfile;
|
||||||
bitmap.DecodePixelWidth = decodedPixelWidth;
|
bitmap.DecodePixelWidth = decodedPixelWidth;
|
||||||
bitmap.DecodePixelHeight = decodedPixelHeight;
|
bitmap.DecodePixelHeight = decodedPixelHeight;
|
||||||
bitmap.EndInit();
|
bitmap.EndInit();
|
||||||
|
|
@ -104,13 +112,13 @@ public static class WallpaperPathRetrieval
|
||||||
|
|
||||||
private static Color GetWallpaperColor()
|
private static Color GetWallpaperColor()
|
||||||
{
|
{
|
||||||
RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Control Panel\Colors", false);
|
using var key = Registry.CurrentUser.OpenSubKey(@"Control Panel\Colors", false);
|
||||||
var result = key?.GetValue("Background", null);
|
var result = key?.GetValue("Background", null);
|
||||||
if (result is string strResult)
|
if (result is string strResult)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var parts = strResult.Trim().Split(new[] { ' ' }, 3).Select(byte.Parse).ToList();
|
var parts = strResult.Trim().Split([' '], 3).Select(byte.Parse).ToList();
|
||||||
return Color.FromRgb(parts[0], parts[1], parts[2]);
|
return Color.FromRgb(parts[0], parts[1], parts[2]);
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">متجر الإضافات</system:String>
|
<system:String x:Key="pluginStore">متجر الإضافات</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">فتح المجلد</system:String>
|
<system:String x:Key="userdatapathButton">فتح المجلد</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">خطأ</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">حجة للملف</system:String>
|
<system:String x:Key="fileManager_file_arg">حجة للملف</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">متصفح الويب الافتراضي</system:String>
|
<system:String x:Key="defaultBrowserTitle">متصفح الويب الافتراضي</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">نافذة جديدة</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">نافذة جديدة</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">تبويب جديد</system:String>
|
<system:String x:Key="defaultBrowser_newTab">تبويب جديد</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">الوضع الخاص</system:String>
|
<system:String x:Key="defaultBrowser_parameter">الوضع الخاص</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">تغيير الأولوية</system:String>
|
<system:String x:Key="changePriorityWindow">تغيير الأولوية</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Obchod s pluginy</system:String>
|
<system:String x:Key="pluginStore">Obchod s pluginy</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Chyba</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Argumenty pro Soubor</system:String>
|
<system:String x:Key="fileManager_file_arg">Argumenty pro Soubor</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Výchozí prohlížeč</system:String>
|
<system:String x:Key="defaultBrowserTitle">Výchozí prohlížeč</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Nové okno</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Nové okno</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Nová karta</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Nová karta</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Soukromý režim</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Soukromý režim</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Změnit prioritu</system:String>
|
<system:String x:Key="changePriorityWindow">Změnit prioritu</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Plugin-butik</system:String>
|
<system:String x:Key="pluginStore">Plugin-butik</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Error</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Arg for fil</system:String>
|
<system:String x:Key="fileManager_file_arg">Arg for fil</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Default Web Browser</system:String>
|
<system:String x:Key="defaultBrowserTitle">Default Web Browser</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">New Window</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">New Window</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">New Tab</system:String>
|
<system:String x:Key="defaultBrowser_newTab">New Tab</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Privattilstand</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Privattilstand</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Skift prioritet</system:String>
|
<system:String x:Key="changePriorityWindow">Skift prioritet</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Plug-in-Store</system:String>
|
<system:String x:Key="pluginStore">Plug-in-Store</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Ordner öffnen</system:String>
|
<system:String x:Key="userdatapathButton">Ordner öffnen</system:String>
|
||||||
<system:String x:Key="advanced">Erweitert</system:String>
|
<system:String x:Key="advanced">Erweitert</system:String>
|
||||||
<system:String x:Key="logLevel">Log-Ebene</system:String>
|
<system:String x:Key="logLevel">Log-Ebene</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Fehler</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Einstellung der Fensterschriftart</system:String>
|
<system:String x:Key="settingWindowFontTitle">Einstellung der Fensterschriftart</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Arg For File</system:String>
|
<system:String x:Key="fileManager_file_arg">Arg For File</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">Der Dateimanager '{0}' konnte nicht unter '{1}' gefunden werden. Möchten Sie fortfahren?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">Der Dateimanager '{0}' konnte nicht unter '{1}' gefunden werden. Möchten Sie fortfahren?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">Pfadfehler bei Dateimanager</system:String>
|
<system:String x:Key="fileManagerPathError">Pfadfehler bei Dateimanager</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Webbrowser per Default</system:String>
|
<system:String x:Key="defaultBrowserTitle">Webbrowser per Default</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Neues Fenster</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Neues Fenster</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Neuer Tab</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Neuer Tab</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Privater Modus</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Privater Modus</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Priorität ändern</system:String>
|
<system:String x:Key="changePriorityWindow">Priorität ändern</system:String>
|
||||||
|
|
|
||||||
|
|
@ -219,6 +219,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Plugin Store</system:String>
|
<system:String x:Key="pluginStore">Plugin Store</system:String>
|
||||||
|
|
@ -462,8 +463,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Error</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -485,6 +488,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Arg For File</system:String>
|
<system:String x:Key="fileManager_file_arg">Arg For File</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Default Web Browser</system:String>
|
<system:String x:Key="defaultBrowserTitle">Default Web Browser</system:String>
|
||||||
|
|
@ -495,6 +499,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">New Window</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">New Window</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">New Tab</system:String>
|
<system:String x:Key="defaultBrowser_newTab">New Tab</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Private Mode</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Private Mode</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Change Priority</system:String>
|
<system:String x:Key="changePriorityWindow">Change Priority</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Tienda de Plugins</system:String>
|
<system:String x:Key="pluginStore">Tienda de Plugins</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Error</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Arg para Archivo</system:String>
|
<system:String x:Key="fileManager_file_arg">Arg para Archivo</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Navegador Web Predeterminado</system:String>
|
<system:String x:Key="defaultBrowserTitle">Navegador Web Predeterminado</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Nueva Ventana</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Nueva Ventana</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Nueva Pestaña</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Nueva Pestaña</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Modo Privado</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Modo Privado</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Cambiar Prioridad</system:String>
|
<system:String x:Key="changePriorityWindow">Cambiar Prioridad</system:String>
|
||||||
|
|
|
||||||
|
|
@ -24,8 +24,8 @@
|
||||||
<system:String x:Key="userDataDuplicated">Flow Launcher ha detectado que los datos de usario existen tanto en {0} como en {1}. {2}{2}Por favor, elimine {1} para continuar. No se han producido cambios.</system:String>
|
<system:String x:Key="userDataDuplicated">Flow Launcher ha detectado que los datos de usario existen tanto en {0} como en {1}. {2}{2}Por favor, elimine {1} para continuar. No se han producido cambios.</system:String>
|
||||||
|
|
||||||
<!-- Plugin Loader -->
|
<!-- Plugin Loader -->
|
||||||
<system:String x:Key="pluginHasErrored">El siguiente complemento ha sufrido un error y no puede cargarse:</system:String>
|
<system:String x:Key="pluginHasErrored">El siguiente complemento ha sufrido un fallo y no se puede cargar:</system:String>
|
||||||
<system:String x:Key="pluginsHaveErrored">Los siguientes complementos han sufrido un error y no pueden cargarse:</system:String>
|
<system:String x:Key="pluginsHaveErrored">Los siguientes complementos han sufrido un fallo y no se pueden cargar:</system:String>
|
||||||
<system:String x:Key="referToLogs">Por favor, consulte los registros para más información</system:String>
|
<system:String x:Key="referToLogs">Por favor, consulte los registros para más información</system:String>
|
||||||
|
|
||||||
<!-- Http -->
|
<!-- Http -->
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fallo al desinstalar {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fallo al desinstalar {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">No se puede encontrar plugin.json en el archivo zip extraído, o esta ruta {0} no existe</system:String>
|
<system:String x:Key="fileNotFoundMessage">No se puede encontrar plugin.json en el archivo zip extraído, o esta ruta {0} no existe</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">Ya existe un complemento con el mismo ID y versión, o la versión es superior a la de este complemento descargado</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">Ya existe un complemento con el mismo ID y versión, o la versión es superior a la de este complemento descargado</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Tienda complementos</system:String>
|
<system:String x:Key="pluginStore">Tienda complementos</system:String>
|
||||||
|
|
@ -332,7 +333,7 @@
|
||||||
<system:String x:Key="PlaceholderTextTip">Cambia el texto del marcador de posición. La entrada vacía utilizará: {0}</system:String>
|
<system:String x:Key="PlaceholderTextTip">Cambia el texto del marcador de posición. La entrada vacía utilizará: {0}</system:String>
|
||||||
<system:String x:Key="KeepMaxResults">Tamaño fijo de la ventana</system:String>
|
<system:String x:Key="KeepMaxResults">Tamaño fijo de la ventana</system:String>
|
||||||
<system:String x:Key="KeepMaxResultsToolTip">El tamaño de la ventana no se puede ajustar mediante arrastre.</system:String>
|
<system:String x:Key="KeepMaxResultsToolTip">El tamaño de la ventana no se puede ajustar mediante arrastre.</system:String>
|
||||||
<system:String x:Key="MaxShowResultsCannotWorkWithAlwaysPreview">Since Always Preview is on, maximum results shown may not take effect because preview panel requires a certain minimum height</system:String>
|
<system:String x:Key="MaxShowResultsCannotWorkWithAlwaysPreview">Dado que la vista previa está siempre activada, es posible que no se muestren los resultados máximos, ya que el panel de vista previa requiere una altura mínima determinada</system:String>
|
||||||
|
|
||||||
<!-- Setting Hotkey -->
|
<!-- Setting Hotkey -->
|
||||||
<system:String x:Key="hotkey">Atajo de teclado</system:String>
|
<system:String x:Key="hotkey">Atajo de teclado</system:String>
|
||||||
|
|
@ -395,7 +396,7 @@
|
||||||
<system:String x:Key="showBadges">Mostrar distintivos en resultados</system:String>
|
<system:String x:Key="showBadges">Mostrar distintivos en resultados</system:String>
|
||||||
<system:String x:Key="showBadgesToolTip">Para los complementos compatibles, se muestran distintivos que ayudan a distinguirlos más fácilmente.</system:String>
|
<system:String x:Key="showBadgesToolTip">Para los complementos compatibles, se muestran distintivos que ayudan a distinguirlos más fácilmente.</system:String>
|
||||||
<system:String x:Key="showBadgesGlobalOnly">Mostrar distintivos en resultados solo para consulta global</system:String>
|
<system:String x:Key="showBadgesGlobalOnly">Mostrar distintivos en resultados solo para consulta global</system:String>
|
||||||
<system:String x:Key="showBadgesGlobalOnlyToolTip">Mostrar distintivos solo para los resultados de consultas globales</system:String>
|
<system:String x:Key="showBadgesGlobalOnlyToolTip">Muestra distintivos solo para los resultados de consultas globales</system:String>
|
||||||
<system:String x:Key="dialogJumpHotkey">Salto de diálogo</system:String>
|
<system:String x:Key="dialogJumpHotkey">Salto de diálogo</system:String>
|
||||||
<system:String x:Key="dialogJumpHotkeyToolTip">Introducir atajo de teclado para acceder rápidamente a la ventana de diálogo Abrir/Guardar como en la ruta del administrador de archivos actual.</system:String>
|
<system:String x:Key="dialogJumpHotkeyToolTip">Introducir atajo de teclado para acceder rápidamente a la ventana de diálogo Abrir/Guardar como en la ruta del administrador de archivos actual.</system:String>
|
||||||
<system:String x:Key="dialogJump">Salto de diálogo</system:String>
|
<system:String x:Key="dialogJump">Salto de diálogo</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Abrir carpeta</system:String>
|
<system:String x:Key="userdatapathButton">Abrir carpeta</system:String>
|
||||||
<system:String x:Key="advanced">Avanzado</system:String>
|
<system:String x:Key="advanced">Avanzado</system:String>
|
||||||
<system:String x:Key="logLevel">Nivel de registro</system:String>
|
<system:String x:Key="logLevel">Nivel de registro</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Depuración</system:String>
|
<system:String x:Key="LogLevelNONE">Silencioso</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Error</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Información</system:String>
|
<system:String x:Key="LogLevelINFO">Información</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Depuración</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Configuración de fuente de la ventana</system:String>
|
<system:String x:Key="settingWindowFontTitle">Configuración de fuente de la ventana</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Argumentos del archivo</system:String>
|
<system:String x:Key="fileManager_file_arg">Argumentos del archivo</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">El administrador de archivos '{0}' no pudo ser localizado en '{1}'. ¿Desea continuar?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">El administrador de archivos '{0}' no pudo ser localizado en '{1}'. ¿Desea continuar?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">Error de ruta del administrador de archivos</system:String>
|
<system:String x:Key="fileManagerPathError">Error de ruta del administrador de archivos</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Navegador web predeterminado</system:String>
|
<system:String x:Key="defaultBrowserTitle">Navegador web predeterminado</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Nueva ventana</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Nueva ventana</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Nueva pestaña</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Nueva pestaña</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Modo privado</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Modo privado</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Cambiar la prioridad</system:String>
|
<system:String x:Key="changePriorityWindow">Cambiar la prioridad</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Échec de la désinstallation de {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Échec de la désinstallation de {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Impossible de trouver le fichier plugin.json dans le fichier zip extrait, ou ce chemin {0} n'existe pas</system:String>
|
<system:String x:Key="fileNotFoundMessage">Impossible de trouver le fichier plugin.json dans le fichier zip extrait, ou ce chemin {0} n'existe pas</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">Un plugin avec le même ID et la même version existe déjà, ou la version est supérieure à ce plugin téléchargé</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">Un plugin avec le même ID et la même version existe déjà, ou la version est supérieure à ce plugin téléchargé</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Erreur lors de la création du panneau de configuration pour le plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Magasin des Plugins</system:String>
|
<system:String x:Key="pluginStore">Magasin des Plugins</system:String>
|
||||||
|
|
@ -466,8 +467,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Ouvrir le dossier</system:String>
|
<system:String x:Key="userdatapathButton">Ouvrir le dossier</system:String>
|
||||||
<system:String x:Key="advanced">Avancé</system:String>
|
<system:String x:Key="advanced">Avancé</system:String>
|
||||||
<system:String x:Key="logLevel">Niveau de journalisation</system:String>
|
<system:String x:Key="logLevel">Niveau de journalisation</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Débogage</system:String>
|
<system:String x:Key="LogLevelNONE">Silencieux</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Erreur</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Débogage</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Réglage de la police de la fenêtre</system:String>
|
<system:String x:Key="settingWindowFontTitle">Réglage de la police de la fenêtre</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -489,6 +492,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Arguments pour le fichier</system:String>
|
<system:String x:Key="fileManager_file_arg">Arguments pour le fichier</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">Le gestionnaire de fichiers '{0}' n'a pas pu être situé à '{1}'. Souhaitez-vous continuer ?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">Le gestionnaire de fichiers '{0}' n'a pas pu être situé à '{1}'. Souhaitez-vous continuer ?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">Erreur de chemin du gestionnaire de fichiers</system:String>
|
<system:String x:Key="fileManagerPathError">Erreur de chemin du gestionnaire de fichiers</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">Explorateur de fichiers</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Navigateur web par défaut</system:String>
|
<system:String x:Key="defaultBrowserTitle">Navigateur web par défaut</system:String>
|
||||||
|
|
@ -499,6 +503,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Nouvelle fenêtre</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Nouvelle fenêtre</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Nouvel onglet</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Nouvel onglet</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Mode privé</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Mode privé</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Par défaut</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">Nouveau profil</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Changer la priorité</system:String>
|
<system:String x:Key="changePriorityWindow">Changer la priorité</system:String>
|
||||||
|
|
|
||||||
|
|
@ -223,6 +223,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">חנות תוספים</system:String>
|
<system:String x:Key="pluginStore">חנות תוספים</system:String>
|
||||||
|
|
@ -466,8 +467,10 @@
|
||||||
<system:String x:Key="userdatapathButton">פתח תיקיה</system:String>
|
<system:String x:Key="userdatapathButton">פתח תיקיה</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">רמת יומן</system:String>
|
<system:String x:Key="logLevel">רמת יומן</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">ניפוי שגיאות</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">שגיאה</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">מידע</system:String>
|
<system:String x:Key="LogLevelINFO">מידע</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">ניפוי שגיאות</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -489,6 +492,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">ארגומנט לקובץ</system:String>
|
<system:String x:Key="fileManager_file_arg">ארגומנט לקובץ</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">לא ניתן היה לאתר את מנהל הקבצים '{0}' ב-'{1}'. האם ברצונך להמשיך?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">לא ניתן היה לאתר את מנהל הקבצים '{0}' ב-'{1}'. האם ברצונך להמשיך?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">שגיאת נתיב למנהל הקבצים</system:String>
|
<system:String x:Key="fileManagerPathError">שגיאת נתיב למנהל הקבצים</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">דפדפן ברירת מחדל</system:String>
|
<system:String x:Key="defaultBrowserTitle">דפדפן ברירת מחדל</system:String>
|
||||||
|
|
@ -499,6 +503,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">חלון חדש</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">חלון חדש</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">כרטיסייה חדשה</system:String>
|
<system:String x:Key="defaultBrowser_newTab">כרטיסייה חדשה</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">מצב פרטיות</system:String>
|
<system:String x:Key="defaultBrowser_parameter">מצב פרטיות</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">שנה עדיפות</system:String>
|
<system:String x:Key="changePriorityWindow">שנה עדיפות</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Negozio dei Plugin</system:String>
|
<system:String x:Key="pluginStore">Negozio dei Plugin</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Apri Cartella</system:String>
|
<system:String x:Key="userdatapathButton">Apri Cartella</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Error</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Arg Per Cartella</system:String>
|
<system:String x:Key="fileManager_file_arg">Arg Per Cartella</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Browser predefinito</system:String>
|
<system:String x:Key="defaultBrowserTitle">Browser predefinito</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Nuova Finestra</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Nuova Finestra</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Nuova Scheda</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Nuova Scheda</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Modalità Privata</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Modalità Privata</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Cambia Priorità</system:String>
|
<system:String x:Key="changePriorityWindow">Cambia Priorità</system:String>
|
||||||
|
|
|
||||||
|
|
@ -2,43 +2,43 @@
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
<!-- Startup -->
|
<!-- Startup -->
|
||||||
<system:String x:Key="runtimePluginInstalledChooseRuntimePrompt">
|
<system:String x:Key="runtimePluginInstalledChooseRuntimePrompt">
|
||||||
Flow detected you have installed {0} plugins, which will require {1} to run. Would you like to download {1}?
|
Flow はあなたが {0} プラグインをインストールしており、実行するために {1} が必要であることを検知しました。{1} をインストールしますか?
|
||||||
{2}{2}
|
{2}{2}
|
||||||
Click no if it's already installed, and you will be prompted to select the folder that contains the {1} executable
|
{1}がすでにインストールされている場合は「いいえ」をクリックし、それが入っているフォルダーを選択してください
|
||||||
</system:String>
|
</system:String>
|
||||||
<system:String x:Key="runtimePluginChooseRuntimeExecutable">Please select the {0} executable</system:String>
|
<system:String x:Key="runtimePluginChooseRuntimeExecutable">{0} の実行ファイルを選択してください</system:String>
|
||||||
<system:String x:Key="runtimeExecutableInvalidChooseDownload">
|
<system:String x:Key="runtimeExecutableInvalidChooseDownload">
|
||||||
Your selected {0} executable is invalid.
|
あなたが選択した {0} の実行ファイルが不正です。
|
||||||
{2}{2}
|
{2}{2}
|
||||||
Click yes if you would like select the {0} executable again. Click no if you would like to download {1}
|
{0} の実行ファイルをもう一度選択する場合は「はい」を、{1} をダウンロードする場合は「いいえ」を選択してください
|
||||||
</system:String>
|
</system:String>
|
||||||
<system:String x:Key="runtimePluginUnableToSetExecutablePath">Unable to set {0} executable path, please try from Flow's settings (scroll down to the bottom).</system:String>
|
<system:String x:Key="runtimePluginUnableToSetExecutablePath">{0} の実行可能ファイルのパスを設定できません。Flow の設定から試してください(下までスクロールしてください)。</system:String>
|
||||||
<system:String x:Key="failedToInitializePluginsTitle">Fail to Init Plugins</system:String>
|
<system:String x:Key="failedToInitializePluginsTitle">プラグインの起動失敗</system:String>
|
||||||
<system:String x:Key="failedToInitializePluginsMessage">Plugins: {0} - fail to load and would be disabled, please contact plugin creator for help</system:String>
|
<system:String x:Key="failedToInitializePluginsMessage">プラグイン: {0} の読み込みに失敗したため、無効になりました。プラグインの作成者にお問い合わせください</system:String>
|
||||||
|
|
||||||
<!-- Portable -->
|
<!-- Portable -->
|
||||||
<system:String x:Key="restartToDisablePortableMode">Flow Launcherはポータブルモードの無効化のために再起動する必要があります。再起動の後、ポータブルな形式の設定項目は削除され、あなたのパソコンのフォルダに保存されます</system:String>
|
<system:String x:Key="restartToDisablePortableMode">Flow Launcherはポータブルモードの無効化のために再起動する必要があります。再起動の後、ポータブルな形式の設定項目は削除され、あなたのパソコンのフォルダに保存されます</system:String>
|
||||||
<system:String x:Key="restartToEnablePortableMode">Flow Launcherはポータブルモードの有効化のために再起動する必要があります。再起動の後、パソコンに保存された設定項目は削除され、ポータブルな形式で保存されます</system:String>
|
<system:String x:Key="restartToEnablePortableMode">Flow Launcherはポータブルモードの有効化のために再起動する必要があります。再起動の後、パソコンに保存された設定項目は削除され、ポータブルな形式で保存されます</system:String>
|
||||||
<system:String x:Key="moveToDifferentLocation">Flow Launcherはポータブルモードの有効化を検知しました。Flow Launcherを別の場所に移動しますか?</system:String>
|
<system:String x:Key="moveToDifferentLocation">Flow Launcherはポータブルモードの有効化を検知しました。Flow Launcherを別の場所に移動しますか?</system:String>
|
||||||
<system:String x:Key="shortcutsUninstallerCreated">Flow Launcherはポータブルモードの無効化を検知しました。関連するショートカットやアンインストーラーが配置されます</system:String>
|
<system:String x:Key="shortcutsUninstallerCreated">Flow Launcherはポータブルモードの無効化を検知しました。関連するショートカットやアンインストーラーが配置されます</system:String>
|
||||||
<system:String x:Key="userDataDuplicated">Flow Launcher detected your user data exists both in {0} and {1}. {2}{2}Please delete {1} in order to proceed. No changes have occurred.</system:String>
|
<system:String x:Key="userDataDuplicated">Flow Launcherはあなたのユーザーデータが{0} と {1} の両方に存在することを検知しました。{2}{2}続行するには、{1}を削除してください。処理は中断されました。</system:String>
|
||||||
|
|
||||||
<!-- Plugin Loader -->
|
<!-- Plugin Loader -->
|
||||||
<system:String x:Key="pluginHasErrored">The following plugin has errored and cannot be loaded:</system:String>
|
<system:String x:Key="pluginHasErrored">以下のプラグインにエラーがあるためロードできません:</system:String>
|
||||||
<system:String x:Key="pluginsHaveErrored">The following plugins have errored and cannot be loaded:</system:String>
|
<system:String x:Key="pluginsHaveErrored">以下のプラグインにエラーがあるためロードできません:</system:String>
|
||||||
<system:String x:Key="referToLogs">Please refer to the logs for more information</system:String>
|
<system:String x:Key="referToLogs">詳細はログを参照してください</system:String>
|
||||||
|
|
||||||
<!-- Http -->
|
<!-- Http -->
|
||||||
<system:String x:Key="pleaseTryAgain">Please try again</system:String>
|
<system:String x:Key="pleaseTryAgain">もう一度お試しください</system:String>
|
||||||
<system:String x:Key="parseProxyFailed">Unable to parse Http Proxy</system:String>
|
<system:String x:Key="parseProxyFailed">Http プロキシをパースできません</system:String>
|
||||||
|
|
||||||
<!-- AbstractPluginEnvironment -->
|
<!-- AbstractPluginEnvironment -->
|
||||||
<system:String x:Key="failToInstallTypeScriptEnv">Failed to install TypeScript environment. Please try again later</system:String>
|
<system:String x:Key="failToInstallTypeScriptEnv">TypeScript環境のインストールに失敗しました。後でもう一度お試しください</system:String>
|
||||||
<system:String x:Key="failToInstallPythonEnv">Failed to install Python environment. Please try again later.</system:String>
|
<system:String x:Key="failToInstallPythonEnv">Python 環境のインストールに失敗しました。後でもう一度お試しください。</system:String>
|
||||||
|
|
||||||
<!-- MainWindow -->
|
<!-- MainWindow -->
|
||||||
<system:String x:Key="registerHotkeyFailed">ホットキー "{0}" の登録に失敗しました。このホットキーは別のプログラムで使用されている可能性があります。別のホットキーに変更するか、このホットキーを使用しているプログラムを終了してください。</system:String>
|
<system:String x:Key="registerHotkeyFailed">ホットキー "{0}" の登録に失敗しました。このホットキーは別のプログラムで使用されている可能性があります。別のホットキーに変更するか、このホットキーを使用しているプログラムを終了してください。</system:String>
|
||||||
<system:String x:Key="unregisterHotkeyFailed">Failed to unregister hotkey "{0}". Please try again or see log for details</system:String>
|
<system:String x:Key="unregisterHotkeyFailed">ホットキー「{0}」の登録解除に失敗しました。もう一度試すか、ログを参照して詳細を確認してください</system:String>
|
||||||
<system:String x:Key="MessageBoxTitle">Flow Launcher</system:String>
|
<system:String x:Key="MessageBoxTitle">Flow Launcher</system:String>
|
||||||
<system:String x:Key="couldnotStartCmd">{0}の起動に失敗しました</system:String>
|
<system:String x:Key="couldnotStartCmd">{0}の起動に失敗しました</system:String>
|
||||||
<system:String x:Key="invalidFlowLauncherPluginFileFormat">Flow Launcherプラグインの形式が正しくありません</system:String>
|
<system:String x:Key="invalidFlowLauncherPluginFileFormat">Flow Launcherプラグインの形式が正しくありません</system:String>
|
||||||
|
|
@ -58,7 +58,7 @@
|
||||||
<system:String x:Key="selectAll">全て選択</system:String>
|
<system:String x:Key="selectAll">全て選択</system:String>
|
||||||
<system:String x:Key="fileTitle">ファイル</system:String>
|
<system:String x:Key="fileTitle">ファイル</system:String>
|
||||||
<system:String x:Key="folderTitle">フォルダー</system:String>
|
<system:String x:Key="folderTitle">フォルダー</system:String>
|
||||||
<system:String x:Key="textTitle">Text</system:String>
|
<system:String x:Key="textTitle">テキスト</system:String>
|
||||||
<system:String x:Key="GameMode">ゲームモード</system:String>
|
<system:String x:Key="GameMode">ゲームモード</system:String>
|
||||||
<system:String x:Key="GameModeToolTip">ホットキーの使用を一時停止します。</system:String>
|
<system:String x:Key="GameModeToolTip">ホットキーの使用を一時停止します。</system:String>
|
||||||
<system:String x:Key="PositionReset">位置のリセット</system:String>
|
<system:String x:Key="PositionReset">位置のリセット</system:String>
|
||||||
|
|
@ -73,7 +73,7 @@
|
||||||
<system:String x:Key="startFlowLauncherOnSystemStartup">スタートアップ時にFlow Launcherを起動する</system:String>
|
<system:String x:Key="startFlowLauncherOnSystemStartup">スタートアップ時にFlow Launcherを起動する</system:String>
|
||||||
<system:String x:Key="useLogonTaskForStartup">起動の高速化のためにスタートアップではなくログオンタスクを使用</system:String>
|
<system:String x:Key="useLogonTaskForStartup">起動の高速化のためにスタートアップではなくログオンタスクを使用</system:String>
|
||||||
<system:String x:Key="useLogonTaskForStartupTooltip">アンインストール後は、「タスク スケジューラ」からこのタスク(Flow.Launcher Startup)を手動で削除する必要があります。</system:String>
|
<system:String x:Key="useLogonTaskForStartupTooltip">アンインストール後は、「タスク スケジューラ」からこのタスク(Flow.Launcher Startup)を手動で削除する必要があります。</system:String>
|
||||||
<system:String x:Key="setAutoStartFailed">Error setting launch on startup</system:String>
|
<system:String x:Key="setAutoStartFailed">スタートアップ時に起動の設定失敗</system:String>
|
||||||
<system:String x:Key="hideFlowLauncherWhenLoseFocus">フォーカスを失った時にFlow Launcherを隠す</system:String>
|
<system:String x:Key="hideFlowLauncherWhenLoseFocus">フォーカスを失った時にFlow Launcherを隠す</system:String>
|
||||||
<system:String x:Key="dontPromptUpdateMsg">最新版が入手可能であっても、アップグレードメッセージを表示しない</system:String>
|
<system:String x:Key="dontPromptUpdateMsg">最新版が入手可能であっても、アップグレードメッセージを表示しない</system:String>
|
||||||
<system:String x:Key="SearchWindowPosition">検索ウィンドウの位置</system:String>
|
<system:String x:Key="SearchWindowPosition">検索ウィンドウの位置</system:String>
|
||||||
|
|
@ -111,7 +111,7 @@
|
||||||
<system:String x:Key="typingStartEn">常に英語モードで入力を開始する</system:String>
|
<system:String x:Key="typingStartEn">常に英語モードで入力を開始する</system:String>
|
||||||
<system:String x:Key="typingStartEnTooltip">Flowを起動したとき、一時的に入力方法を英語モードに変更します。</system:String>
|
<system:String x:Key="typingStartEnTooltip">Flowを起動したとき、一時的に入力方法を英語モードに変更します。</system:String>
|
||||||
<system:String x:Key="autoUpdates">自動更新</system:String>
|
<system:String x:Key="autoUpdates">自動更新</system:String>
|
||||||
<system:String x:Key="autoUpdatesTooltip">Automatically check and update the app when available</system:String>
|
<system:String x:Key="autoUpdatesTooltip">利用可能な場合、Flow Launcherを自動的に確認して更新します</system:String>
|
||||||
<system:String x:Key="select">選択</system:String>
|
<system:String x:Key="select">選択</system:String>
|
||||||
<system:String x:Key="hideOnStartup">起動時にFlow Launcherを隠す</system:String>
|
<system:String x:Key="hideOnStartup">起動時にFlow Launcherを隠す</system:String>
|
||||||
<system:String x:Key="hideOnStartupToolTip">起動後、Flow Launcher の検索ウィンドウは非表示になり、トレイに格納されます。</system:String>
|
<system:String x:Key="hideOnStartupToolTip">起動後、Flow Launcher の検索ウィンドウは非表示になり、トレイに格納されます。</system:String>
|
||||||
|
|
@ -123,10 +123,10 @@
|
||||||
<system:String x:Key="SearchPrecisionLow">低</system:String>
|
<system:String x:Key="SearchPrecisionLow">低</system:String>
|
||||||
<system:String x:Key="SearchPrecisionRegular">標準</system:String>
|
<system:String x:Key="SearchPrecisionRegular">標準</system:String>
|
||||||
<system:String x:Key="ShouldUsePinyin">ピンインによる検索</system:String>
|
<system:String x:Key="ShouldUsePinyin">ピンインによる検索</system:String>
|
||||||
<system:String x:Key="ShouldUsePinyinToolTip">Pinyin is the standard system of romanized spelling for translating Chinese. Please note, enabling this can significantly increase memory usage during search.</system:String>
|
<system:String x:Key="ShouldUsePinyinToolTip">Pinyinは中国語を翻訳するためのローマ字入力の標準的な方法です。有効にすると、検索時のメモリ使用量が大幅に増加する可能性があります。</system:String>
|
||||||
<system:String x:Key="ShouldUseDoublePinyin">Use Double Pinyin</system:String>
|
<system:String x:Key="ShouldUseDoublePinyin">双拼入力を使用</system:String>
|
||||||
<system:String x:Key="ShouldUseDoublePinyinToolTip">Use Double Pinyin instead of Full Pinyin to search.</system:String>
|
<system:String x:Key="ShouldUseDoublePinyinToolTip">検索するときに全拼の代わりに双拼を使用する。</system:String>
|
||||||
<system:String x:Key="DoublePinyinSchema">Double Pinyin Schema</system:String>
|
<system:String x:Key="DoublePinyinSchema">双拼の入力方式</system:String>
|
||||||
<system:String x:Key="DoublePinyinSchemasXiaoHe">Xiao He</system:String>
|
<system:String x:Key="DoublePinyinSchemasXiaoHe">Xiao He</system:String>
|
||||||
<system:String x:Key="DoublePinyinSchemasZiRanMa">Zi Ran Ma</system:String>
|
<system:String x:Key="DoublePinyinSchemasZiRanMa">Zi Ran Ma</system:String>
|
||||||
<system:String x:Key="DoublePinyinSchemasWeiRuan">Wei Ruan</system:String>
|
<system:String x:Key="DoublePinyinSchemasWeiRuan">Wei Ruan</system:String>
|
||||||
|
|
@ -142,10 +142,10 @@
|
||||||
<system:String x:Key="shadowEffectNotAllowed">現在のテーマでぼかしの効果が有効になっている場合、影の効果を有効にすることはできません</system:String>
|
<system:String x:Key="shadowEffectNotAllowed">現在のテーマでぼかしの効果が有効になっている場合、影の効果を有効にすることはできません</system:String>
|
||||||
<system:String x:Key="searchDelay">検索遅延</system:String>
|
<system:String x:Key="searchDelay">検索遅延</system:String>
|
||||||
<system:String x:Key="searchDelayToolTip">入力中に短い遅延を追加することで、UIのちらつきや結果の読み込みを軽減します。平均的なタイピング速度のユーザーにおすすめです。</system:String>
|
<system:String x:Key="searchDelayToolTip">入力中に短い遅延を追加することで、UIのちらつきや結果の読み込みを軽減します。平均的なタイピング速度のユーザーにおすすめです。</system:String>
|
||||||
<system:String x:Key="searchDelayNumberBoxToolTip">Enter the wait time (in ms) until input is considered complete. This can only be edited if Search Delay is enabled.</system:String>
|
<system:String x:Key="searchDelayNumberBoxToolTip">入力中の結果表示までの待ち時間をミリ秒単位で入力します。これは、検索遅延が有効な場合にのみ編集できます。</system:String>
|
||||||
<system:String x:Key="searchDelayTime">デフォルトの検索遅延時間</system:String>
|
<system:String x:Key="searchDelayTime">デフォルトの検索遅延時間</system:String>
|
||||||
<system:String x:Key="searchDelayTimeToolTip">入力が停止した後に結果が表示されるまでの待ち時間。値が大きいほど長く待機します。(単位 ms)</system:String>
|
<system:String x:Key="searchDelayTimeToolTip">入力が停止した後に結果が表示されるまでの待ち時間。値が大きいほど長く待機します。(単位 ms)</system:String>
|
||||||
<system:String x:Key="KoreanImeTitle">Information for Korean IME user</system:String>
|
<system:String x:Key="KoreanImeTitle">韓国語IMEユーザーへの情報</system:String>
|
||||||
<system:String x:Key="KoreanImeGuide">
|
<system:String x:Key="KoreanImeGuide">
|
||||||
The Korean input method used in Windows 11 may cause some issues in Flow Launcher.
|
The Korean input method used in Windows 11 may cause some issues in Flow Launcher.
|
||||||
|
|
||||||
|
|
@ -160,29 +160,29 @@
|
||||||
|
|
||||||
|
|
||||||
</system:String>
|
</system:String>
|
||||||
<system:String x:Key="KoreanImeOpenLink">Open Language and Region System Settings</system:String>
|
<system:String x:Key="KoreanImeOpenLink">システムの言語と地域設定を開く</system:String>
|
||||||
<system:String x:Key="KoreanImeOpenLinkToolTip">Opens the Korean IME setting location. Go to Korean > Language Options > Keyboard - Microsoft IME > Compatibility</system:String>
|
<system:String x:Key="KoreanImeOpenLinkToolTip">Opens the Korean IME setting location. Go to Korean > Language Options > Keyboard - Microsoft IME > Compatibility</system:String>
|
||||||
<system:String x:Key="KoreanImeOpenLinkButton">開く</system:String>
|
<system:String x:Key="KoreanImeOpenLinkButton">開く</system:String>
|
||||||
<system:String x:Key="KoreanImeRegistry">Use Previous Korean IME</system:String>
|
<system:String x:Key="KoreanImeRegistry">前の韓国語IMEを使用</system:String>
|
||||||
<system:String x:Key="KoreanImeRegistryTooltip">You can change the Previous Korean IME settings directly from here</system:String>
|
<system:String x:Key="KoreanImeRegistryTooltip">You can change the Previous Korean IME settings directly from here</system:String>
|
||||||
<system:String x:Key="KoreanImeSettingChangeFailTitle">Failed to change Korean IME setting</system:String>
|
<system:String x:Key="KoreanImeSettingChangeFailTitle">Failed to change Korean IME setting</system:String>
|
||||||
<system:String x:Key="KoreanImeSettingChangeFailSubTitle">Please check your system registry access or contact support.</system:String>
|
<system:String x:Key="KoreanImeSettingChangeFailSubTitle">システムのレジストリへのアクセスが可能か確認するか、サポートにお問い合わせください。</system:String>
|
||||||
<system:String x:Key="homePage">ホームページ</system:String>
|
<system:String x:Key="homePage">ホームページ</system:String>
|
||||||
<system:String x:Key="homePageToolTip">検索文字列が空の場合、ホームページの結果を表示します。</system:String>
|
<system:String x:Key="homePageToolTip">検索文字列が空の場合、ホームページの結果を表示します。</system:String>
|
||||||
<system:String x:Key="historyResultsForHomePage">クエリの履歴をホームページに表示</system:String>
|
<system:String x:Key="historyResultsForHomePage">クエリの履歴をホームページに表示</system:String>
|
||||||
<system:String x:Key="historyResultsCountForHomePage">ホームページに表示される最大の履歴の数</system:String>
|
<system:String x:Key="historyResultsCountForHomePage">ホームページに表示される最大の履歴の数</system:String>
|
||||||
<system:String x:Key="homeToggleBoxToolTip">This can only be edited if plugin supports Home feature and Home Page is enabled.</system:String>
|
<system:String x:Key="homeToggleBoxToolTip">これは、プラグインがホーム機能をサポートし、ホームページが有効な場合にのみ編集することができます。</system:String>
|
||||||
<system:String x:Key="showAtTopmost">Show Search Window at Foremost</system:String>
|
<system:String x:Key="showAtTopmost">検索ウィンドウを最前面に表示</system:String>
|
||||||
<system:String x:Key="showAtTopmostToolTip">他のプログラムの 'Always on Top' (最前面に表示)設定を上書きし、常に最前面のウィンドウで Flow を表示します。</system:String>
|
<system:String x:Key="showAtTopmostToolTip">他のプログラムの 'Always on Top' (最前面に表示)設定を上書きし、常に最前面のウィンドウで Flow を表示します。</system:String>
|
||||||
<system:String x:Key="autoRestartAfterChanging">プラグインストアでプラグインを変更した後に再起動します</system:String>
|
<system:String x:Key="autoRestartAfterChanging">プラグインストアでプラグインを変更した後に再起動</system:String>
|
||||||
<system:String x:Key="autoRestartAfterChangingToolTip">プラグインストア経由でプラグインをインストール、アンインストール、または更新した後、Flow Lancherを自動的に再起動します</system:String>
|
<system:String x:Key="autoRestartAfterChangingToolTip">プラグインストア経由でプラグインをインストール、アンインストール、または更新した後、Flow Lancherを自動的に再起動します</system:String>
|
||||||
<system:String x:Key="showUnknownSourceWarning">不明なソースの警告を表示</system:String>
|
<system:String x:Key="showUnknownSourceWarning">不明なソースの警告を表示</system:String>
|
||||||
<system:String x:Key="showUnknownSourceWarningToolTip">不明なソースからプラグインをインストールするときに警告を表示する</system:String>
|
<system:String x:Key="showUnknownSourceWarningToolTip">不明なソースからプラグインをインストールするときに警告を表示する</system:String>
|
||||||
<system:String x:Key="autoUpdatePlugins">Auto update plugins</system:String>
|
<system:String x:Key="autoUpdatePlugins">プラグインの自動アップデート</system:String>
|
||||||
<system:String x:Key="autoUpdatePluginsToolTip">Automatically check plugin updates and notify if there are any updates available</system:String>
|
<system:String x:Key="autoUpdatePluginsToolTip">プラグインの更新を自動的にチェックし、利用可能な更新がある場合に通知します</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin -->
|
<!-- Setting Plugin -->
|
||||||
<system:String x:Key="searchplugin">Search Plugin</system:String>
|
<system:String x:Key="searchplugin">プラグインの検索</system:String>
|
||||||
<system:String x:Key="searchpluginToolTip">Ctrl+F でプラグインを検索します</system:String>
|
<system:String x:Key="searchpluginToolTip">Ctrl+F でプラグインを検索します</system:String>
|
||||||
<system:String x:Key="searchplugin_Noresult_Title">検索結果が見つかりませんでした</system:String>
|
<system:String x:Key="searchplugin_Noresult_Title">検索結果が見つかりませんでした</system:String>
|
||||||
<system:String x:Key="searchplugin_Noresult_Subtitle">別の検索を試してみてください。</system:String>
|
<system:String x:Key="searchplugin_Noresult_Subtitle">別の検索を試してみてください。</system:String>
|
||||||
|
|
@ -191,20 +191,20 @@
|
||||||
<system:String x:Key="browserMorePlugins">プラグインを探す</system:String>
|
<system:String x:Key="browserMorePlugins">プラグインを探す</system:String>
|
||||||
<system:String x:Key="enable">有効</system:String>
|
<system:String x:Key="enable">有効</system:String>
|
||||||
<system:String x:Key="disable">無効</system:String>
|
<system:String x:Key="disable">無効</system:String>
|
||||||
<system:String x:Key="actionKeywordsTitle">Action keyword Setting</system:String>
|
<system:String x:Key="actionKeywordsTitle">アクションキーワードの設定</system:String>
|
||||||
<system:String x:Key="actionKeywords">キーワード</system:String>
|
<system:String x:Key="actionKeywords">キーワード</system:String>
|
||||||
<system:String x:Key="currentActionKeywords">Current action keyword</system:String>
|
<system:String x:Key="currentActionKeywords">現在のアクションキーワード</system:String>
|
||||||
<system:String x:Key="newActionKeyword">New action keyword</system:String>
|
<system:String x:Key="newActionKeyword">新しいアクションキーワード</system:String>
|
||||||
<system:String x:Key="actionKeywordsTooltip">Change Action Keywords</system:String>
|
<system:String x:Key="actionKeywordsTooltip">アクションキーワードの変更</system:String>
|
||||||
<system:String x:Key="pluginSearchDelayTime">Plugin search delay time</system:String>
|
<system:String x:Key="pluginSearchDelayTime">プラグインの検索遅延時間</system:String>
|
||||||
<system:String x:Key="pluginSearchDelayTimeTooltip">Change Plugin Search Delay Time</system:String>
|
<system:String x:Key="pluginSearchDelayTimeTooltip">プラグインの検索遅延時間を変更</system:String>
|
||||||
<system:String x:Key="FilterComboboxLabel">詳細設定:</system:String>
|
<system:String x:Key="FilterComboboxLabel">詳細設定:</system:String>
|
||||||
<system:String x:Key="DisplayModeOnOff">有効</system:String>
|
<system:String x:Key="DisplayModeOnOff">有効</system:String>
|
||||||
<system:String x:Key="DisplayModePriority">重要度</system:String>
|
<system:String x:Key="DisplayModePriority">重要度</system:String>
|
||||||
<system:String x:Key="DisplayModeSearchDelay">検索遅延</system:String>
|
<system:String x:Key="DisplayModeSearchDelay">検索遅延</system:String>
|
||||||
<system:String x:Key="DisplayModeHomeOnOff">ホームページ</system:String>
|
<system:String x:Key="DisplayModeHomeOnOff">ホームページ</system:String>
|
||||||
<system:String x:Key="currentPriority">Current Priority</system:String>
|
<system:String x:Key="currentPriority">現在の優先度</system:String>
|
||||||
<system:String x:Key="newPriority">New Priority</system:String>
|
<system:String x:Key="newPriority">新しい優先度</system:String>
|
||||||
<system:String x:Key="priority">重要度</system:String>
|
<system:String x:Key="priority">重要度</system:String>
|
||||||
<system:String x:Key="priorityToolTip">プラグインの結果の優先度を変更します。</system:String>
|
<system:String x:Key="priorityToolTip">プラグインの結果の優先度を変更します。</system:String>
|
||||||
<system:String x:Key="pluginDirectory">プラグイン・ディレクトリ</system:String>
|
<system:String x:Key="pluginDirectory">プラグイン・ディレクトリ</system:String>
|
||||||
|
|
@ -214,59 +214,60 @@
|
||||||
<system:String x:Key="plugin_query_version">バージョン</system:String>
|
<system:String x:Key="plugin_query_version">バージョン</system:String>
|
||||||
<system:String x:Key="plugin_query_web">ウェブサイト</system:String>
|
<system:String x:Key="plugin_query_web">ウェブサイト</system:String>
|
||||||
<system:String x:Key="plugin_uninstall">アンインストール</system:String>
|
<system:String x:Key="plugin_uninstall">アンインストール</system:String>
|
||||||
<system:String x:Key="failedToRemovePluginSettingsTitle">Fail to remove plugin settings</system:String>
|
<system:String x:Key="failedToRemovePluginSettingsTitle">プラグイン設定の削除に失敗</system:String>
|
||||||
<system:String x:Key="failedToRemovePluginSettingsMessage">Plugins: {0} - Fail to remove plugin settings files, please remove them manually</system:String>
|
<system:String x:Key="failedToRemovePluginSettingsMessage">プラグイン: {0} - プラグイン設定ファイルの削除に失敗しました。手動で削除してください</system:String>
|
||||||
<system:String x:Key="failedToRemovePluginCacheTitle">Fail to remove plugin cache</system:String>
|
<system:String x:Key="failedToRemovePluginCacheTitle">プラグインキャッシュの削除に失敗</system:String>
|
||||||
<system:String x:Key="failedToRemovePluginCacheMessage">Plugins: {0} - Fail to remove plugin cache files, please remove them manually</system:String>
|
<system:String x:Key="failedToRemovePluginCacheMessage">プラグイン: {0} - プラグインキャッシュファイルの削除に失敗しました。手動で削除してください</system:String>
|
||||||
<system:String x:Key="pluginModifiedAlreadyTitle">{0} modified already</system:String>
|
<system:String x:Key="pluginModifiedAlreadyTitle">{0} は既に変更されています</system:String>
|
||||||
<system:String x:Key="pluginModifiedAlreadyMessage">Please restart Flow before making any further changes</system:String>
|
<system:String x:Key="pluginModifiedAlreadyMessage">これ以上変更を加える前に Flow Launcher を再起動してください</system:String>
|
||||||
<system:String x:Key="failedToInstallPluginTitle">Fail to install {0}</system:String>
|
<system:String x:Key="failedToInstallPluginTitle">{0} のインストールに失敗</system:String>
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">{0} のアンインストールに失敗</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">展開されたzipファイルからplugin.jsonが見つからないか、このパス {0} が存在しません</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">同じIDとバージョンのプラグインがすでに存在するか、またはこのダウンロードしたプラグインよりもバージョンが大きいです</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">プラグインストア</system:String>
|
<system:String x:Key="pluginStore">プラグインストア</system:String>
|
||||||
<system:String x:Key="pluginStore_NewRelease">新規リリース</system:String>
|
<system:String x:Key="pluginStore_NewRelease">新規リリース</system:String>
|
||||||
<system:String x:Key="pluginStore_RecentlyUpdated">最近の更新</system:String>
|
<system:String x:Key="pluginStore_RecentlyUpdated">最近の更新</system:String>
|
||||||
<system:String x:Key="pluginStore_None">プラグイン</system:String>
|
<system:String x:Key="pluginStore_None">プラグイン</system:String>
|
||||||
<system:String x:Key="pluginStore_Installed">Installed</system:String>
|
<system:String x:Key="pluginStore_Installed">インストール済み</system:String>
|
||||||
<system:String x:Key="refresh">更新</system:String>
|
<system:String x:Key="refresh">更新</system:String>
|
||||||
<system:String x:Key="installbtn">インストール</system:String>
|
<system:String x:Key="installbtn">インストール</system:String>
|
||||||
<system:String x:Key="uninstallbtn">アンインストール</system:String>
|
<system:String x:Key="uninstallbtn">アンインストール</system:String>
|
||||||
<system:String x:Key="updatebtn">更新</system:String>
|
<system:String x:Key="updatebtn">更新</system:String>
|
||||||
<system:String x:Key="LabelInstalledToolTip">Plugin already installed</system:String>
|
<system:String x:Key="LabelInstalledToolTip">プラグインは既にインストールされています</system:String>
|
||||||
<system:String x:Key="LabelNew">New Version</system:String>
|
<system:String x:Key="LabelNew">新しいバージョン</system:String>
|
||||||
<system:String x:Key="LabelNewToolTip">This plugin has been updated within the last 7 days</system:String>
|
<system:String x:Key="LabelNewToolTip">このプラグインは過去1週間以内に更新されました</system:String>
|
||||||
<system:String x:Key="LabelUpdateToolTip">新しいアップデートが利用可能です</system:String>
|
<system:String x:Key="LabelUpdateToolTip">新しいアップデートが利用可能です</system:String>
|
||||||
<system:String x:Key="ErrorInstallingPlugin">プラグインのインストール失敗</system:String>
|
<system:String x:Key="ErrorInstallingPlugin">プラグインのインストール失敗</system:String>
|
||||||
<system:String x:Key="ErrorUninstallingPlugin">プラグインのアンインストール失敗</system:String>
|
<system:String x:Key="ErrorUninstallingPlugin">プラグインのアンインストール失敗</system:String>
|
||||||
<system:String x:Key="ErrorUpdatingPlugin">Error updating plugin</system:String>
|
<system:String x:Key="ErrorUpdatingPlugin">プラグインの更新に失敗</system:String>
|
||||||
<system:String x:Key="KeepPluginSettingsTitle">プラグインの設定を維持</system:String>
|
<system:String x:Key="KeepPluginSettingsTitle">プラグインの設定を維持</system:String>
|
||||||
<system:String x:Key="KeepPluginSettingsSubtitle">再びインストールして使用するときのためにプラグインの設定を維持しますか?</system:String>
|
<system:String x:Key="KeepPluginSettingsSubtitle">再びインストールして使用するときのためにプラグインの設定を維持しますか?</system:String>
|
||||||
<system:String x:Key="InstallSuccessNoRestart">Plugin {0} successfully installed. Please restart Flow.</system:String>
|
<system:String x:Key="InstallSuccessNoRestart">プラグイン {0} のインストールに成功しました。Flow を再起動してください。</system:String>
|
||||||
<system:String x:Key="UninstallSuccessNoRestart">Plugin {0} successfully uninstalled. Please restart Flow.</system:String>
|
<system:String x:Key="UninstallSuccessNoRestart">プラグイン {0} のアンインストールに成功しました。Flow を再起動してください。</system:String>
|
||||||
<system:String x:Key="UpdateSuccessNoRestart">Plugin {0} successfully updated. Please restart Flow.</system:String>
|
<system:String x:Key="UpdateSuccessNoRestart">プラグイン {0} が正常に更新されました。Flow を再起動してください。</system:String>
|
||||||
<system:String x:Key="InstallPromptTitle">プラグインのインストール</system:String>
|
<system:String x:Key="InstallPromptTitle">プラグインのインストール</system:String>
|
||||||
<system:String x:Key="InstallPromptSubtitle">{0} by {1} {2}{2}このプラグインをインストールしますか?</system:String>
|
<system:String x:Key="InstallPromptSubtitle">{0} by {1} {2}{2}このプラグインをインストールしますか?</system:String>
|
||||||
<system:String x:Key="UninstallPromptTitle">プラグインのアンインストール</system:String>
|
<system:String x:Key="UninstallPromptTitle">プラグインのアンインストール</system:String>
|
||||||
<system:String x:Key="UninstallPromptSubtitle">{0} by {1} {2}{2}このプラグインをアンインストールしますか?</system:String>
|
<system:String x:Key="UninstallPromptSubtitle">{0} by {1} {2}{2}このプラグインをアンインストールしますか?</system:String>
|
||||||
<system:String x:Key="UpdatePromptTitle">Plugin update</system:String>
|
<system:String x:Key="UpdatePromptTitle">プラグインの更新</system:String>
|
||||||
<system:String x:Key="UpdatePromptSubtitle">{0} by {1} {2}{2}Would you like to update this plugin?</system:String>
|
<system:String x:Key="UpdatePromptSubtitle">{0} by {1} {2}{2}このプラグインを更新しますか?</system:String>
|
||||||
<system:String x:Key="DownloadingPlugin">Downloading plugin</system:String>
|
<system:String x:Key="DownloadingPlugin">プラグインをダウンロード中</system:String>
|
||||||
<system:String x:Key="AutoRestartAfterChange">Automatically restart after installing/uninstalling/updating plugins in plugin store</system:String>
|
<system:String x:Key="AutoRestartAfterChange">プラグインストア経由でのプラグインのインストール 、アンインストール、または更新後に自動的に再起動します</system:String>
|
||||||
<system:String x:Key="ZipFileNotHavePluginJson">Zip file does not have a valid plugin.json configuration</system:String>
|
<system:String x:Key="ZipFileNotHavePluginJson">Zipファイルに有効なplugin.jsonファイルがありません</system:String>
|
||||||
<system:String x:Key="InstallFromUnknownSourceTitle">不明なソースからのインストール</system:String>
|
<system:String x:Key="InstallFromUnknownSourceTitle">不明なソースからのインストール</system:String>
|
||||||
<system:String x:Key="InstallFromUnknownSourceSubtitle">このプラグインは不明なソースから提供されており、潜在的なリスクを含んでいる可能性があります!{0}{0}このプラグインの開発元をよく調べ、安全であることをご自身で確かめてください。{0}{0}それでもあなたはこのプラグインをインストールしますか?{0}{0}(この警告は設定の「一般」セクションで無効にすることができます)</system:String>
|
<system:String x:Key="InstallFromUnknownSourceSubtitle">このプラグインは不明なソースから提供されており、潜在的なリスクを含んでいる可能性があります!{0}{0}このプラグインの開発元をよく調べ、安全であることをご自身で確かめてください。{0}{0}それでもあなたはこのプラグインをインストールしますか?{0}{0}(この警告は設定の「一般」セクションで無効にすることができます)</system:String>
|
||||||
<system:String x:Key="ZipFiles">Zip files</system:String>
|
<system:String x:Key="ZipFiles">Zip ファイル</system:String>
|
||||||
<system:String x:Key="SelectZipFile">Please select zip file</system:String>
|
<system:String x:Key="SelectZipFile">zipファイルを選択してください</system:String>
|
||||||
<system:String x:Key="installLocalPluginTooltip">ローカルパスからプラグインをインストール</system:String>
|
<system:String x:Key="installLocalPluginTooltip">ローカルパスからプラグインをインストール</system:String>
|
||||||
<system:String x:Key="updateNoResultTitle">No update available</system:String>
|
<system:String x:Key="updateNoResultTitle">利用可能な更新はありません</system:String>
|
||||||
<system:String x:Key="updateNoResultSubtitle">All plugins are up to date</system:String>
|
<system:String x:Key="updateNoResultSubtitle">すべてのプラグインが最新です</system:String>
|
||||||
<system:String x:Key="updateAllPluginsTitle">Plugin updates available</system:String>
|
<system:String x:Key="updateAllPluginsTitle">プラグインの更新が利用可能</system:String>
|
||||||
<system:String x:Key="updateAllPluginsButtonContent">Update plugins</system:String>
|
<system:String x:Key="updateAllPluginsButtonContent">プラグインを更新</system:String>
|
||||||
<system:String x:Key="checkPluginUpdatesTooltip">Check plugin updates</system:String>
|
<system:String x:Key="checkPluginUpdatesTooltip">プラグインの更新を確認</system:String>
|
||||||
<system:String x:Key="PluginsUpdateSuccessNoRestart">Plugins are successfully updated. Please restart Flow.</system:String>
|
<system:String x:Key="PluginsUpdateSuccessNoRestart">プラグインが正常に更新されました。Flow を再起動してください。</system:String>
|
||||||
|
|
||||||
<!-- Setting Theme -->
|
<!-- Setting Theme -->
|
||||||
<system:String x:Key="theme">テーマ</system:String>
|
<system:String x:Key="theme">テーマ</system:String>
|
||||||
|
|
@ -285,13 +286,13 @@
|
||||||
<system:String x:Key="SearchBarHeight">検索バーの高さ</system:String>
|
<system:String x:Key="SearchBarHeight">検索バーの高さ</system:String>
|
||||||
<system:String x:Key="ItemHeight">アイテムの高さ</system:String>
|
<system:String x:Key="ItemHeight">アイテムの高さ</system:String>
|
||||||
<system:String x:Key="queryBoxFont">検索ボックスのフォント</system:String>
|
<system:String x:Key="queryBoxFont">検索ボックスのフォント</system:String>
|
||||||
<system:String x:Key="resultItemFont">Result Title Font</system:String>
|
<system:String x:Key="resultItemFont">結果のタイトルのフォント</system:String>
|
||||||
<system:String x:Key="resultSubItemFont">Result Subtitle Font</system:String>
|
<system:String x:Key="resultSubItemFont">結果のサブタイトルのフォント</system:String>
|
||||||
<system:String x:Key="resetCustomize">リセット</system:String>
|
<system:String x:Key="resetCustomize">リセット</system:String>
|
||||||
<system:String x:Key="resetCustomizeToolTip">Reset to the recommended font and size settings.</system:String>
|
<system:String x:Key="resetCustomizeToolTip">推奨されるフォントとサイズの設定にリセットします。</system:String>
|
||||||
<system:String x:Key="ImportThemeSize">Import Theme Size</system:String>
|
<system:String x:Key="ImportThemeSize">テーマ中のサイズをインポート</system:String>
|
||||||
<system:String x:Key="ImportThemeSizeToolTip">If a size value intended by the theme designer is available, it will be retrieved and applied.</system:String>
|
<system:String x:Key="ImportThemeSizeToolTip">テーマのデザイナーによって意図されたサイズ値が利用可能なとき、それを取得して適用します。</system:String>
|
||||||
<system:String x:Key="CustomizeToolTip">Customize</system:String>
|
<system:String x:Key="CustomizeToolTip">カスタマイズ</system:String>
|
||||||
<system:String x:Key="windowMode">ウィンドウモード</system:String>
|
<system:String x:Key="windowMode">ウィンドウモード</system:String>
|
||||||
<system:String x:Key="opacity">透過度</system:String>
|
<system:String x:Key="opacity">透過度</system:String>
|
||||||
<system:String x:Key="theme_load_failure_path_not_exists">テーマ {0} が存在しません、デフォルトのテーマに戻します。</system:String>
|
<system:String x:Key="theme_load_failure_path_not_exists">テーマ {0} が存在しません、デフォルトのテーマに戻します。</system:String>
|
||||||
|
|
@ -306,7 +307,7 @@
|
||||||
<system:String x:Key="SoundEffectTip">検索ウィンドウが開いたとき、小さな音を鳴らします</system:String>
|
<system:String x:Key="SoundEffectTip">検索ウィンドウが開いたとき、小さな音を鳴らします</system:String>
|
||||||
<system:String x:Key="SoundEffectVolume">効果音の音量</system:String>
|
<system:String x:Key="SoundEffectVolume">効果音の音量</system:String>
|
||||||
<system:String x:Key="SoundEffectVolumeTip">効果音の音量を調整します</system:String>
|
<system:String x:Key="SoundEffectVolumeTip">効果音の音量を調整します</system:String>
|
||||||
<system:String x:Key="SoundEffectWarning">Windows Media Player is unavailable and is required for Flow's volume adjustment. Please check your installation if you need to adjust volume.</system:String>
|
<system:String x:Key="SoundEffectWarning">Windows Media Player は Flow を使った音量調整に必要です。ボリュームを調整する必要がある場合は、Windows Media Player がインストールされているかどうか確認してください。</system:String>
|
||||||
<system:String x:Key="Animation">アニメーション</system:String>
|
<system:String x:Key="Animation">アニメーション</system:String>
|
||||||
<system:String x:Key="AnimationTip">UIでアニメーションを使用します</system:String>
|
<system:String x:Key="AnimationTip">UIでアニメーションを使用します</system:String>
|
||||||
<system:String x:Key="AnimationSpeed">アニメーション速度</system:String>
|
<system:String x:Key="AnimationSpeed">アニメーション速度</system:String>
|
||||||
|
|
@ -324,15 +325,15 @@
|
||||||
<system:String x:Key="BackdropTypesAcrylic">アクリル</system:String>
|
<system:String x:Key="BackdropTypesAcrylic">アクリル</system:String>
|
||||||
<system:String x:Key="BackdropTypesMica">マイカ</system:String>
|
<system:String x:Key="BackdropTypesMica">マイカ</system:String>
|
||||||
<system:String x:Key="BackdropTypesMicaAlt">マイカ(代替)</system:String>
|
<system:String x:Key="BackdropTypesMicaAlt">マイカ(代替)</system:String>
|
||||||
<system:String x:Key="TypeIsDarkToolTip">This theme supports two (light/dark) modes.</system:String>
|
<system:String x:Key="TypeIsDarkToolTip">このテーマはライト/ダークの2モードに対応しています。</system:String>
|
||||||
<system:String x:Key="TypeHasBlurToolTip">This theme supports Blur Transparent Background.</system:String>
|
<system:String x:Key="TypeHasBlurToolTip">このテーマは背景をぼかした透明効果をサポートしています。</system:String>
|
||||||
<system:String x:Key="ShowPlaceholder">プレースホルダーを表示</system:String>
|
<system:String x:Key="ShowPlaceholder">プレースホルダーを表示</system:String>
|
||||||
<system:String x:Key="ShowPlaceholderTip">クエリが空の場合にプレースホルダを表示します</system:String>
|
<system:String x:Key="ShowPlaceholderTip">クエリが空の場合にプレースホルダを表示します</system:String>
|
||||||
<system:String x:Key="PlaceholderText">検索欄の案内文</system:String>
|
<system:String x:Key="PlaceholderText">検索欄の案内文</system:String>
|
||||||
<system:String x:Key="PlaceholderTextTip">Change placeholder text. Input empty will use: {0}</system:String>
|
<system:String x:Key="PlaceholderTextTip">プレースホルダのテキストを変更します。空にすると、 {0} が使用されます</system:String>
|
||||||
<system:String x:Key="KeepMaxResults">ウィンドウサイズの固定</system:String>
|
<system:String x:Key="KeepMaxResults">ウィンドウサイズの固定</system:String>
|
||||||
<system:String x:Key="KeepMaxResultsToolTip">ウィンドウのサイズを固定し、ドラッグでの変更を無効にします。</system:String>
|
<system:String x:Key="KeepMaxResultsToolTip">ウィンドウのサイズを固定し、ドラッグでの変更を無効にします。</system:String>
|
||||||
<system:String x:Key="MaxShowResultsCannotWorkWithAlwaysPreview">Since Always Preview is on, maximum results shown may not take effect because preview panel requires a certain minimum height</system:String>
|
<system:String x:Key="MaxShowResultsCannotWorkWithAlwaysPreview">「常にプレビューする」が有効になっているため、プレビューパネルの高さの確保のために「結果の最大表示件数」設定は無視される可能性があります</system:String>
|
||||||
|
|
||||||
<!-- Setting Hotkey -->
|
<!-- Setting Hotkey -->
|
||||||
<system:String x:Key="hotkey">ホットキー</system:String>
|
<system:String x:Key="hotkey">ホットキー</system:String>
|
||||||
|
|
@ -372,51 +373,51 @@
|
||||||
<system:String x:Key="customQueryHotkey">カスタムクエリ ホットキー</system:String>
|
<system:String x:Key="customQueryHotkey">カスタムクエリ ホットキー</system:String>
|
||||||
<system:String x:Key="customQueryShortcut">Custom Query Shortcut</system:String>
|
<system:String x:Key="customQueryShortcut">Custom Query Shortcut</system:String>
|
||||||
<system:String x:Key="builtinShortcuts">組み込みショートカット</system:String>
|
<system:String x:Key="builtinShortcuts">組み込みショートカット</system:String>
|
||||||
<system:String x:Key="customQuery">Query</system:String>
|
<system:String x:Key="customQuery">クエリー</system:String>
|
||||||
<system:String x:Key="customShortcut">ショートカット</system:String>
|
<system:String x:Key="customShortcut">ショートカット</system:String>
|
||||||
<system:String x:Key="customShortcutExpansion">展開</system:String>
|
<system:String x:Key="customShortcutExpansion">展開</system:String>
|
||||||
<system:String x:Key="builtinShortcutDescription">説明</system:String>
|
<system:String x:Key="builtinShortcutDescription">説明</system:String>
|
||||||
<system:String x:Key="delete">削除</system:String>
|
<system:String x:Key="delete">削除</system:String>
|
||||||
<system:String x:Key="edit">編集</system:String>
|
<system:String x:Key="edit">編集</system:String>
|
||||||
<system:String x:Key="add">追加</system:String>
|
<system:String x:Key="add">追加</system:String>
|
||||||
<system:String x:Key="none">None</system:String>
|
<system:String x:Key="none">なし</system:String>
|
||||||
<system:String x:Key="pleaseSelectAnItem">項目を選択してください</system:String>
|
<system:String x:Key="pleaseSelectAnItem">項目を選択してください</system:String>
|
||||||
<system:String x:Key="deleteCustomHotkeyWarning">{0} プラグインのホットキーを本当に削除しますか?</system:String>
|
<system:String x:Key="deleteCustomHotkeyWarning">{0} プラグインのホットキーを本当に削除しますか?</system:String>
|
||||||
<system:String x:Key="deleteCustomShortcutWarning">本当にこのショートカットを削除しますか?: {0} を {1} に展開</system:String>
|
<system:String x:Key="deleteCustomShortcutWarning">本当にこのショートカットを削除しますか?: {0} を {1} に展開</system:String>
|
||||||
<system:String x:Key="shortcut_clipboard_description">Get text from clipboard.</system:String>
|
<system:String x:Key="shortcut_clipboard_description">クリップボードからテキストを取得します。</system:String>
|
||||||
<system:String x:Key="shortcut_active_explorer_path">アクティブなエクスプローラーからパスを取得します。</system:String>
|
<system:String x:Key="shortcut_active_explorer_path">アクティブなエクスプローラーからパスを取得します。</system:String>
|
||||||
<system:String x:Key="queryWindowShadowEffect">検索ウィンドウの落陰効果</system:String>
|
<system:String x:Key="queryWindowShadowEffect">検索ウィンドウの落陰効果</system:String>
|
||||||
<system:String x:Key="shadowEffectCPUUsage">Shadow effect has a substantial usage of GPU. Not recommended if your computer performance is limited.</system:String>
|
<system:String x:Key="shadowEffectCPUUsage">影の効果は GPU に大きな負荷をかけます。お使いのコンピューターの性能が限定的な場合、無効にすることをおすすめします。</system:String>
|
||||||
<system:String x:Key="windowWidthSize">Window Width Size</system:String>
|
<system:String x:Key="windowWidthSize">ウィンドウ幅のサイズ</system:String>
|
||||||
<system:String x:Key="windowWidthSizeToolTip">You can also quickly adjust this by using Ctrl+[ and Ctrl+].</system:String>
|
<system:String x:Key="windowWidthSizeToolTip">Ctrl+Plus と Ctrl+Minus を使用すれば、簡単に調整することもできます。</system:String>
|
||||||
<system:String x:Key="useGlyphUI">Segoe Fluent アイコンを使用する</system:String>
|
<system:String x:Key="useGlyphUI">Segoe Fluent アイコンを使用する</system:String>
|
||||||
<system:String x:Key="useGlyphUIEffect">サポートされているクエリ結果にSegoe Fluentアイコンを使用する</system:String>
|
<system:String x:Key="useGlyphUIEffect">サポートされているクエリ結果にSegoe Fluentアイコンを使用する</system:String>
|
||||||
<system:String x:Key="flowlauncherPressHotkey">Press Key</system:String>
|
<system:String x:Key="flowlauncherPressHotkey">キーを入力</system:String>
|
||||||
<system:String x:Key="showBadges">Show Result Badges</system:String>
|
<system:String x:Key="showBadges">結果のバッジを表示</system:String>
|
||||||
<system:String x:Key="showBadgesToolTip">サポートされているプラグインでは、バッジが表示され、より簡単に区別できます。</system:String>
|
<system:String x:Key="showBadgesToolTip">サポートされているプラグインでは、バッジが表示され、より簡単に区別できます。</system:String>
|
||||||
<system:String x:Key="showBadgesGlobalOnly">Show Result Badges for Global Query Only</system:String>
|
<system:String x:Key="showBadgesGlobalOnly">グローバルクエリのみ、結果のバッジを表示</system:String>
|
||||||
<system:String x:Key="showBadgesGlobalOnlyToolTip">Show badges for global query results only</system:String>
|
<system:String x:Key="showBadgesGlobalOnlyToolTip">グローバルクエリの結果にのみバッジを表示する</system:String>
|
||||||
<system:String x:Key="dialogJumpHotkey">Dialog Jump</system:String>
|
<system:String x:Key="dialogJumpHotkey">ダイアログジャンプ</system:String>
|
||||||
<system:String x:Key="dialogJumpHotkeyToolTip">Enter shortcut to quickly navigate the Open/Save As dialog window to the path of the current file manager.</system:String>
|
<system:String x:Key="dialogJumpHotkeyToolTip">ショートカットを入力して、「名前を付けて開く/保存」ダイアログ・ウィンドウを現在のファイルマネージャのパスにすばやくナビゲートします。</system:String>
|
||||||
<system:String x:Key="dialogJump">Dialog Jump</system:String>
|
<system:String x:Key="dialogJump">ダイアログジャンプ</system:String>
|
||||||
<system:String x:Key="dialogJumpToolTip">When Open/Save As dialog window opens, quickly navigate to the current path of the file manager.</system:String>
|
<system:String x:Key="dialogJumpToolTip">「名前を付けて開く/保存」ダイアログウィンドウが開いたら、すぐにファイルマネージャの現在のパスに移動します。</system:String>
|
||||||
<system:String x:Key="autoDialogJump">Dialog Jump Automatically</system:String>
|
<system:String x:Key="autoDialogJump">自動ダイアログジャンプ</system:String>
|
||||||
<system:String x:Key="autoDialogJumpToolTip">When Open/Save As dialog window is displayed, automatically navigate to the path of the current file manager. (Experimental)</system:String>
|
<system:String x:Key="autoDialogJumpToolTip">開く/名前を付けて保存ダイアログが表示されると、自動的に現在のファイルマネージャのパスに移動させます。 (実験的)</system:String>
|
||||||
<system:String x:Key="showDialogJumpWindow">Show Dialog Jump Window</system:String>
|
<system:String x:Key="showDialogJumpWindow">ダイアログジャンプウィンドウを表示</system:String>
|
||||||
<system:String x:Key="showDialogJumpWindowToolTip">Display Dialog Jump search window when the open/save dialog window is shown to quickly navigate to file/folder locations.</system:String>
|
<system:String x:Key="showDialogJumpWindowToolTip">「名前をつけて保存/開く」ダイアログウィンドウが表示されたときにダイアログジャンプのウィンドウを開いて、ファイルやフォルダーを素早く開く。</system:String>
|
||||||
<system:String x:Key="dialogJumpWindowPosition">Dialog Jump Window Position</system:String>
|
<system:String x:Key="dialogJumpWindowPosition">ダイアログジャンプのウィンドウの位置</system:String>
|
||||||
<system:String x:Key="dialogJumpWindowPositionToolTip">Select position for the Dialog Jump search window</system:String>
|
<system:String x:Key="dialogJumpWindowPositionToolTip">ダイアログジャンプ検索ウィンドウの位置を選択します</system:String>
|
||||||
<system:String x:Key="DialogJumpWindowPositionUnderDialog">Fixed under the Open/Save As dialog window. Displayed on open and stays until the window is closed</system:String>
|
<system:String x:Key="DialogJumpWindowPositionUnderDialog">「名前を付けて開く/保存」ダイアログウィンドウの下に固定。ウィンドウが閉じるまで開いたまま表示されます</system:String>
|
||||||
<system:String x:Key="DialogJumpWindowPositionFollowDefault">Default search window position. Displayed when triggered by search window hotkey</system:String>
|
<system:String x:Key="DialogJumpWindowPositionFollowDefault">デフォルトの検索ウィンドウの位置。検索ウィンドウのホットキーによってトリガーされたときに表示されます</system:String>
|
||||||
<system:String x:Key="dialogJumpResultBehaviour">Dialog Jump Result Navigation Behaviour</system:String>
|
<system:String x:Key="dialogJumpResultBehaviour">ダイアログジャンプの検索結果の開き方</system:String>
|
||||||
<system:String x:Key="dialogJumpResultBehaviourToolTip">Behaviour to navigate Open/Save As dialog window to the selected result path</system:String>
|
<system:String x:Key="dialogJumpResultBehaviourToolTip">「開く/名前を付けて保存」ダイアログウィンドウの選択した結果パスに移動する動作</system:String>
|
||||||
<system:String x:Key="DialogJumpResultBehaviourLeftClick">Left click or Enter key</system:String>
|
<system:String x:Key="DialogJumpResultBehaviourLeftClick">左クリックまたはEnter キー</system:String>
|
||||||
<system:String x:Key="DialogJumpResultBehaviourRightClick">Right click</system:String>
|
<system:String x:Key="DialogJumpResultBehaviourRightClick">右クリック</system:String>
|
||||||
<system:String x:Key="dialogJumpFileResultBehaviour">Dialog Jump File Navigation Behaviour</system:String>
|
<system:String x:Key="dialogJumpFileResultBehaviour">ダイアログジャンプのファイルに対する動作</system:String>
|
||||||
<system:String x:Key="dialogJumpFileResultBehaviourToolTip">Behaviour to navigate Open/Save As dialog window when the result is a file path</system:String>
|
<system:String x:Key="dialogJumpFileResultBehaviourToolTip">結果がファイルパスの場合の、「開く/名前を付けて保存」ダイアログウィンドウに対する動作</system:String>
|
||||||
<system:String x:Key="DialogJumpFileResultBehaviourFullPath">Fill full path in file name box</system:String>
|
<system:String x:Key="DialogJumpFileResultBehaviourFullPath">フルパスをファイル名ボックスに入力</system:String>
|
||||||
<system:String x:Key="DialogJumpFileResultBehaviourFullPathOpen">Fill full path in file name box and open</system:String>
|
<system:String x:Key="DialogJumpFileResultBehaviourFullPathOpen">フルパスをファイル名ボックスに入力して開く</system:String>
|
||||||
<system:String x:Key="DialogJumpFileResultBehaviourDirectory">Fill directory in path box</system:String>
|
<system:String x:Key="DialogJumpFileResultBehaviourDirectory">パスボックスに含まれるフォルダを入力</system:String>
|
||||||
|
|
||||||
<!-- Setting Proxy -->
|
<!-- Setting Proxy -->
|
||||||
<system:String x:Key="proxy">HTTP プロキシ</system:String>
|
<system:String x:Key="proxy">HTTP プロキシ</system:String>
|
||||||
|
|
@ -467,44 +468,49 @@
|
||||||
<system:String x:Key="userdatapathButton">フォルダーを開く</system:String>
|
<system:String x:Key="userdatapathButton">フォルダーを開く</system:String>
|
||||||
<system:String x:Key="advanced">上級者向け機能</system:String>
|
<system:String x:Key="advanced">上級者向け機能</system:String>
|
||||||
<system:String x:Key="logLevel">ログレベル</system:String>
|
<system:String x:Key="logLevel">ログレベル</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">デバッグ</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">エラー</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">情報</system:String>
|
<system:String x:Key="LogLevelINFO">情報</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">デバッグ</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">設定ウィンドウで使用するフォント</system:String>
|
<system:String x:Key="settingWindowFontTitle">設定ウィンドウで使用するフォント</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
<system:String x:Key="seeMoreReleaseNotes">See more release notes on GitHub</system:String>
|
<system:String x:Key="seeMoreReleaseNotes">GitHub で詳細なリリース ノートを見る</system:String>
|
||||||
<system:String x:Key="checkNetworkConnectionTitle">Failed to fetch release notes</system:String>
|
<system:String x:Key="checkNetworkConnectionTitle">リリースノートの取得に失敗</system:String>
|
||||||
<system:String x:Key="checkNetworkConnectionSubTitle">Please check your network connection or ensure GitHub is accessible</system:String>
|
<system:String x:Key="checkNetworkConnectionSubTitle">ネットワーク接続を確認するか、GitHubにアクセスできることを確認してください</system:String>
|
||||||
<system:String x:Key="appUpdateTitle">Flow Launcher has been updated to {0}</system:String>
|
<system:String x:Key="appUpdateTitle">Flow Launcher が {0}に更新されました</system:String>
|
||||||
<system:String x:Key="appUpdateButtonContent">Click here to view the release notes</system:String>
|
<system:String x:Key="appUpdateButtonContent">ここをクリックしてリリースノートを表示</system:String>
|
||||||
|
|
||||||
<!-- FileManager Setting Dialog -->
|
<!-- FileManager Setting Dialog -->
|
||||||
<system:String x:Key="fileManagerWindow">デフォルトのファイルマネージャー</system:String>
|
<system:String x:Key="fileManagerWindow">デフォルトのファイルマネージャー</system:String>
|
||||||
<system:String x:Key="fileManager_learnMore">Learn more</system:String>
|
<system:String x:Key="fileManager_learnMore">詳細を見る</system:String>
|
||||||
<system:String x:Key="fileManager_tips">Please specify the file location of the file manager you using and add arguments as required. The "%d" represents the directory path to open for, used by the Arg for Folder field and for commands opening specific directories. The "%f" represents the file path to open for, used by the Arg for File field and for commands opening specific files.</system:String>
|
<system:String x:Key="fileManager_tips">使用したいファイルマネージャーのファイルの位置を指定し、コマンドライン引数を入力してください。"%d" は開こうとしているフォルダーのパスを表し、「フォルダー用の引数」の欄で特定のフォルダーを開くために使用されます。"%f" は開こうとしているファイルのパスを表し、「ファイル用の引数」の欄で特定のファイルを開くために使用されます。</system:String>
|
||||||
<system:String x:Key="fileManager_tips2">For example, if the file manager uses a command such as "totalcmd.exe /A c:\windows" to open the c:\windows directory, the File Manager Path will be totalcmd.exe, and the Arg For Folder will be /A "%d". Certain file managers like QTTabBar may just require a path to be supplied, in this instance use "%d" as the File Manager Path and leave the rest of the fields blank.</system:String>
|
<system:String x:Key="fileManager_tips2">例として、ファイルマネージャーが "totalcmd.exe /A c:\windows" というコマンドを c:\windows というフォルダを開くために使用する場合を考えます。この場合、ファイルマネージャーのパスは totalcmd.exe で、フォルダー用の引数は /A "%d" になります。QTTabBarのように、パスのみを要求するファイルマネージャーの場合、”%d” をファイルマネージャーのパスの欄に指定し、残りを空欄にしてください。</system:String>
|
||||||
<system:String x:Key="fileManager_name">File Manager</system:String>
|
<system:String x:Key="fileManager_name">ファイル マネージャー</system:String>
|
||||||
<system:String x:Key="fileManager_profile_name">Profile Name</system:String>
|
<system:String x:Key="fileManager_profile_name">プロファイル名</system:String>
|
||||||
<system:String x:Key="fileManager_path">File Manager Path</system:String>
|
<system:String x:Key="fileManager_path">ファイルマネージャーのパス</system:String>
|
||||||
<system:String x:Key="fileManager_directory_arg">Arg For Folder</system:String>
|
<system:String x:Key="fileManager_directory_arg">フォルダー用の引数</system:String>
|
||||||
<system:String x:Key="fileManager_file_arg">Arg For File</system:String>
|
<system:String x:Key="fileManager_file_arg">ファイル用の引数</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">ファイルマネージャー '{0}' は、'{1}' に見つかりませんでした。続行しますか?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">ファイルマネージャのパスエラー</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">デフォルトのウェブブラウザー</system:String>
|
<system:String x:Key="defaultBrowserTitle">デフォルトのウェブブラウザー</system:String>
|
||||||
<system:String x:Key="defaultBrowser_tips">The default setting follows the OS default browser setting. If specified separately, flow uses that browser.</system:String>
|
<system:String x:Key="defaultBrowser_tips">デフォルトの設定は、OS のデフォルトのブラウザ設定に従います。別々に指定すると、Flow はそのブラウザを使用します。</system:String>
|
||||||
<system:String x:Key="defaultBrowser_name">Browser</system:String>
|
<system:String x:Key="defaultBrowser_name">ブラウザー</system:String>
|
||||||
<system:String x:Key="defaultBrowser_profile_name">Browser Name</system:String>
|
<system:String x:Key="defaultBrowser_profile_name">ブラウザー名</system:String>
|
||||||
<system:String x:Key="defaultBrowser_path">Browser Path</system:String>
|
<system:String x:Key="defaultBrowser_path">ブラウザーのパス</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newWindow">New Window</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">新しいウィンドウ</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">New Tab</system:String>
|
<system:String x:Key="defaultBrowser_newTab">新しいタブ</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Private Mode</system:String>
|
<system:String x:Key="defaultBrowser_parameter">プライベートモード</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Change Priority</system:String>
|
<system:String x:Key="changePriorityWindow">優先度の変更</system:String>
|
||||||
<system:String x:Key="priority_tips">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</system:String>
|
<system:String x:Key="priority_tips">数値が大きいほど、結果の上の方に表示されます。試しに5として設定してみてください。 結果を他のプラグインよりも低くしたい場合は、負の数字を入力してください</system:String>
|
||||||
<system:String x:Key="invalidPriority">Please provide an valid integer for Priority!</system:String>
|
<system:String x:Key="invalidPriority">優先度には有効な整数を入力してください!</system:String>
|
||||||
|
|
||||||
<!-- Action Keyword Setting Dialog -->
|
<!-- Action Keyword Setting Dialog -->
|
||||||
<system:String x:Key="oldActionKeywords">古いアクションキーワード</system:String>
|
<system:String x:Key="oldActionKeywords">古いアクションキーワード</system:String>
|
||||||
|
|
@ -514,33 +520,33 @@
|
||||||
<system:String x:Key="cannotFindSpecifiedPlugin">指定されたプラグインが見つかりません</system:String>
|
<system:String x:Key="cannotFindSpecifiedPlugin">指定されたプラグインが見つかりません</system:String>
|
||||||
<system:String x:Key="newActionKeywordsCannotBeEmpty">新しいアクションキーワードを空にすることはできません</system:String>
|
<system:String x:Key="newActionKeywordsCannotBeEmpty">新しいアクションキーワードを空にすることはできません</system:String>
|
||||||
<system:String x:Key="newActionKeywordsHasBeenAssigned">新しいアクションキーワードは他のプラグインに割り当てられています。他のアクションキーワードを入力してください</system:String>
|
<system:String x:Key="newActionKeywordsHasBeenAssigned">新しいアクションキーワードは他のプラグインに割り当てられています。他のアクションキーワードを入力してください</system:String>
|
||||||
<system:String x:Key="newActionKeywordsSameAsOld">This new Action Keyword is the same as old, please choose a different one</system:String>
|
<system:String x:Key="newActionKeywordsSameAsOld">そのアクションキーワードは以前のものと同じです。他のアクションキーワードを入力してください</system:String>
|
||||||
<system:String x:Key="success">成功しました</system:String>
|
<system:String x:Key="success">成功しました</system:String>
|
||||||
<system:String x:Key="completedSuccessfully">Completed successfully</system:String>
|
<system:String x:Key="completedSuccessfully">正常に完了しました</system:String>
|
||||||
<system:String x:Key="failedToCopy">Failed to copy</system:String>
|
<system:String x:Key="failedToCopy">コピーに失敗</system:String>
|
||||||
<system:String x:Key="actionkeyword_tips">Enter the action keywords you like to use to start the plugin and use whitespace to divide them. Use * if you don't want to specify any, and the plugin will be triggered without any action keywords.</system:String>
|
<system:String x:Key="actionkeyword_tips">プラグインを起動するためのアクションキーワードを、空白区切りで入力してください。特定のキーワードを使用せずにプラグインを使用したい場合、* を入力してください。</system:String>
|
||||||
|
|
||||||
<!-- Search Delay Settings Dialog -->
|
<!-- Search Delay Settings Dialog -->
|
||||||
<system:String x:Key="searchDelayTimeTitle">Search Delay Time Setting</system:String>
|
<system:String x:Key="searchDelayTimeTitle">検索の遅延時間の設定</system:String>
|
||||||
<system:String x:Key="searchDelayTimeTips">Input the search delay time in ms you like to use for the plugin. Input empty if you don't want to specify any, and the plugin will use default search delay time.</system:String>
|
<system:String x:Key="searchDelayTimeTips">プラグインに使用したい検索の遅延時間をミリ秒で入力します。 何も指定したくない場合は空にしておくと、プラグインはデフォルトの検索の遅延時間を使用します。</system:String>
|
||||||
|
|
||||||
<!-- Search Delay Settings Dialog -->
|
<!-- Search Delay Settings Dialog -->
|
||||||
<system:String x:Key="homeTitle">ホームページ</system:String>
|
<system:String x:Key="homeTitle">ホームページ</system:String>
|
||||||
<system:String x:Key="homeTips">Enable the plugin home page state if you like to show the plugin results when query is empty.</system:String>
|
<system:String x:Key="homeTips">クエリが空のときにプラグインの結果を表示したい場合は、プラグインのホームページの設定を有効にします。</system:String>
|
||||||
|
|
||||||
<!-- Custom Query Hotkey Dialog -->
|
<!-- Custom Query Hotkey Dialog -->
|
||||||
<system:String x:Key="customeQueryHotkeyTitle">カスタムクエリのホットキー</system:String>
|
<system:String x:Key="customeQueryHotkeyTitle">カスタムクエリのホットキー</system:String>
|
||||||
<system:String x:Key="customeQueryHotkeyTips">Press a custom hotkey to open Flow Launcher and input the specified query automatically.</system:String>
|
<system:String x:Key="customeQueryHotkeyTips">カスタムホットキーを押して Flow Launcher を開き、指定したクエリを自動的に入力します。</system:String>
|
||||||
<system:String x:Key="preview">プレビュー</system:String>
|
<system:String x:Key="preview">プレビュー</system:String>
|
||||||
<system:String x:Key="hotkeyIsNotUnavailable">ホットキーは使用できません。新しいホットキーを選択してください</system:String>
|
<system:String x:Key="hotkeyIsNotUnavailable">ホットキーは使用できません。新しいホットキーを選択してください</system:String>
|
||||||
<system:String x:Key="invalidPluginHotkey">Hotkey is invalid</system:String>
|
<system:String x:Key="invalidPluginHotkey">そのホットキーは無効です</system:String>
|
||||||
<system:String x:Key="update">更新</system:String>
|
<system:String x:Key="update">更新</system:String>
|
||||||
<system:String x:Key="hotkeyRegTitle">Binding Hotkey</system:String>
|
<system:String x:Key="hotkeyRegTitle">ホットキーの設定</system:String>
|
||||||
<system:String x:Key="hotkeyUnavailable">Current hotkey is unavailable.</system:String>
|
<system:String x:Key="hotkeyUnavailable">現在のホットキーは使用できません。</system:String>
|
||||||
<system:String x:Key="hotkeyUnavailableUneditable">This hotkey is reserved for "{0}" and can't be used. Please choose another hotkey.</system:String>
|
<system:String x:Key="hotkeyUnavailableUneditable">このホットキーは "{0}" で予約されており、使用できません。別のホットキーを選択してください。</system:String>
|
||||||
<system:String x:Key="hotkeyUnavailableEditable">This hotkey is already in use by "{0}". If you press "Overwrite", it will be removed from "{0}".</system:String>
|
<system:String x:Key="hotkeyUnavailableEditable">このホットキーは "{0}" によってすでに使用されています。「上書き」を押すと、"{0}"から削除されます。</system:String>
|
||||||
<system:String x:Key="hotkeyRegGuide">Press the keys you want to use for this function.</system:String>
|
<system:String x:Key="hotkeyRegGuide">この機能に使用するキーを押してください。</system:String>
|
||||||
<system:String x:Key="emptyPluginHotkey">Hotkey and action keyword are empty</system:String>
|
<system:String x:Key="emptyPluginHotkey">ホットキーとアクションキーワードが空です</system:String>
|
||||||
|
|
||||||
<!-- Custom Query Shortcut Dialog -->
|
<!-- Custom Query Shortcut Dialog -->
|
||||||
<system:String x:Key="customeQueryShortcutTitle">カスタムクエリのショートカット</system:String>
|
<system:String x:Key="customeQueryShortcutTitle">カスタムクエリのショートカット</system:String>
|
||||||
|
|
@ -551,11 +557,11 @@
|
||||||
</system:String>
|
</system:String>
|
||||||
<system:String x:Key="duplicateShortcut">そのショートカットは既に存在します。新しいショートカットを入力するか、既存のショートカットを編集してください。</system:String>
|
<system:String x:Key="duplicateShortcut">そのショートカットは既に存在します。新しいショートカットを入力するか、既存のショートカットを編集してください。</system:String>
|
||||||
<system:String x:Key="emptyShortcut">ショートカット、展開の少なくとも一方が空です。</system:String>
|
<system:String x:Key="emptyShortcut">ショートカット、展開の少なくとも一方が空です。</system:String>
|
||||||
<system:String x:Key="invalidShortcut">Shortcut is invalid</system:String>
|
<system:String x:Key="invalidShortcut">ショートカットが無効です</system:String>
|
||||||
|
|
||||||
<!-- Common Action -->
|
<!-- Common Action -->
|
||||||
<system:String x:Key="commonSave">保存</system:String>
|
<system:String x:Key="commonSave">保存</system:String>
|
||||||
<system:String x:Key="commonOverwrite">Overwrite</system:String>
|
<system:String x:Key="commonOverwrite">上書き</system:String>
|
||||||
<system:String x:Key="commonCancel">キャンセル</system:String>
|
<system:String x:Key="commonCancel">キャンセル</system:String>
|
||||||
<system:String x:Key="commonReset">リセット</system:String>
|
<system:String x:Key="commonReset">リセット</system:String>
|
||||||
<system:String x:Key="commonDelete">削除</system:String>
|
<system:String x:Key="commonDelete">削除</system:String>
|
||||||
|
|
@ -580,46 +586,46 @@
|
||||||
<system:String x:Key="reportWindow_report_failed">クラッシュレポートの送信に失敗しました</system:String>
|
<system:String x:Key="reportWindow_report_failed">クラッシュレポートの送信に失敗しました</system:String>
|
||||||
<system:String x:Key="reportWindow_flowlauncher_got_an_error">Flow Launcherにエラーが発生しました</system:String>
|
<system:String x:Key="reportWindow_flowlauncher_got_an_error">Flow Launcherにエラーが発生しました</system:String>
|
||||||
<system:String x:Key="reportWindow_please_open_issue">Please open new issue in</system:String>
|
<system:String x:Key="reportWindow_please_open_issue">Please open new issue in</system:String>
|
||||||
<system:String x:Key="reportWindow_upload_log">1. Upload log file: {0}</system:String>
|
<system:String x:Key="reportWindow_upload_log">1. ログファイルをアップロード: {0}</system:String>
|
||||||
<system:String x:Key="reportWindow_copy_below">2. Copy below exception message</system:String>
|
<system:String x:Key="reportWindow_copy_below">2. 例外メッセージ以下をコピー</system:String>
|
||||||
|
|
||||||
<!-- File Open Error -->
|
<!-- File Open Error -->
|
||||||
<system:String x:Key="fileManagerNotFoundTitle">File Manager Error</system:String>
|
<system:String x:Key="fileManagerNotFoundTitle">ファイルマネージャのエラー</system:String>
|
||||||
<system:String x:Key="fileManagerNotFound">
|
<system:String x:Key="fileManagerNotFound">
|
||||||
The specified file manager could not be found. Please check the Custom File Manager setting under Settings > General.
|
指定されたファイルマネージャーが見つかりませんでした。設定 > 一般でカスタムファイルマネージャの設定を確認してください。
|
||||||
</system:String>
|
</system:String>
|
||||||
<system:String x:Key="errorTitle">Error</system:String>
|
<system:String x:Key="errorTitle">エラー</system:String>
|
||||||
<system:String x:Key="folderOpenError">An error occurred while opening the folder. {0}</system:String>
|
<system:String x:Key="folderOpenError">フォルダを開く際にエラーが発生しました。 {0}</system:String>
|
||||||
<system:String x:Key="browserOpenError">An error occurred while opening the URL in the browser. Please check your Default Web Browser configuration in the General section of the settings window</system:String>
|
<system:String x:Key="browserOpenError">ブラウザでURLを開く際にエラーが発生しました。設定ウィンドウの一般セクションでデフォルトのウェブブラウザ設定を確認してください</system:String>
|
||||||
|
|
||||||
<!-- General Notice -->
|
<!-- General Notice -->
|
||||||
<system:String x:Key="pleaseWait">Please wait...</system:String>
|
<system:String x:Key="pleaseWait">しばらくお待ちください…</system:String>
|
||||||
|
|
||||||
<!-- Update -->
|
<!-- Update -->
|
||||||
<system:String x:Key="update_flowlauncher_update_check">Checking for new update</system:String>
|
<system:String x:Key="update_flowlauncher_update_check">新しい更新を確認中</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_already_on_latest">Flow Launcherは既に最新です</system:String>
|
<system:String x:Key="update_flowlauncher_already_on_latest">Flow Launcherは既に最新です</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_update_found">Update found</system:String>
|
<system:String x:Key="update_flowlauncher_update_found">更新が見つかりました</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_updating">Updating...</system:String>
|
<system:String x:Key="update_flowlauncher_updating">更新中…</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_fail_moving_portable_user_profile_data">
|
<system:String x:Key="update_flowlauncher_fail_moving_portable_user_profile_data">
|
||||||
Flow Launcher was not able to move your user profile data to the new update version.
|
Flow Launcherはユーザープロファイルデータを新しいバージョンに移動できませんでした。
|
||||||
Please manually move your profile data folder from {0} to {1}
|
手動で {0} から {1}にプロフィールデータフォルダを移動してください
|
||||||
</system:String>
|
</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_new_update">New Update</system:String>
|
<system:String x:Key="update_flowlauncher_new_update">新しい更新</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_update_new_version_available">Flow Launcher の最新バージョン V{0} が入手可能です</system:String>
|
<system:String x:Key="update_flowlauncher_update_new_version_available">Flow Launcher の最新バージョン V{0} が入手可能です</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_update_error">Flow Launcherのアップデート中にエラーが発生しました</system:String>
|
<system:String x:Key="update_flowlauncher_update_error">Flow Launcherのアップデート中にエラーが発生しました</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_update">更新</system:String>
|
<system:String x:Key="update_flowlauncher_update">更新</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_update_cancel">キャンセル</system:String>
|
<system:String x:Key="update_flowlauncher_update_cancel">キャンセル</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_fail">Update Failed</system:String>
|
<system:String x:Key="update_flowlauncher_fail">アップデート失敗</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_check_connection">Check your connection and try updating proxy settings to github-cloud.s3.amazonaws.com.</system:String>
|
<system:String x:Key="update_flowlauncher_check_connection">接続を確認し、その後プロキシ設定を github-cloud.s3.amazonaws.com に更新してみてください。</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_update_restart_flowlauncher_tip">このアップデートでは、Flow Launcherの再起動が必要です</system:String>
|
<system:String x:Key="update_flowlauncher_update_restart_flowlauncher_tip">このアップデートでは、Flow Launcherの再起動が必要です</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_update_update_files">次のファイルがアップデートされます</system:String>
|
<system:String x:Key="update_flowlauncher_update_update_files">次のファイルがアップデートされます</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_update_files">更新ファイル一覧</system:String>
|
<system:String x:Key="update_flowlauncher_update_files">更新ファイル一覧</system:String>
|
||||||
<system:String x:Key="update_flowlauncher_update_update_description">アップデートの詳細</system:String>
|
<system:String x:Key="update_flowlauncher_update_update_description">アップデートの詳細</system:String>
|
||||||
|
|
||||||
<!-- Plugin Update Window -->
|
<!-- Plugin Update Window -->
|
||||||
<system:String x:Key="restartAfterUpdating">Restart Flow Launcher after updating plugins</system:String>
|
<system:String x:Key="restartAfterUpdating">プラグインを更新した後、Flow Launcher を再起動する</system:String>
|
||||||
<system:String x:Key="updatePluginCheckboxContent">{0}: Update from v{1} to v{2}</system:String>
|
<system:String x:Key="updatePluginCheckboxContent">{0}: v{1} から v{2} へ更新</system:String>
|
||||||
<system:String x:Key="updatePluginNoSelected">No plugin selected</system:String>
|
<system:String x:Key="updatePluginNoSelected">プラグインが選択されていません</system:String>
|
||||||
|
|
||||||
<!-- Welcome Window -->
|
<!-- Welcome Window -->
|
||||||
<system:String x:Key="Skip">スキップ</system:String>
|
<system:String x:Key="Skip">スキップ</system:String>
|
||||||
|
|
@ -642,18 +648,18 @@
|
||||||
<system:String x:Key="HotkeyShiftEnterDesc">コンテキストメニューを開く</system:String>
|
<system:String x:Key="HotkeyShiftEnterDesc">コンテキストメニューを開く</system:String>
|
||||||
<system:String x:Key="HotkeyCtrlEnterDesc">ファイルのあるフォルダを開く</system:String>
|
<system:String x:Key="HotkeyCtrlEnterDesc">ファイルのあるフォルダを開く</system:String>
|
||||||
<system:String x:Key="HotkeyCtrlShiftEnterDesc">管理者として実行、または、 デフォルトのファイルマネージャでフォルダを開く</system:String>
|
<system:String x:Key="HotkeyCtrlShiftEnterDesc">管理者として実行、または、 デフォルトのファイルマネージャでフォルダを開く</system:String>
|
||||||
<system:String x:Key="HotkeyCtrlHDesc">Query History</system:String>
|
<system:String x:Key="HotkeyCtrlHDesc">クエリの履歴</system:String>
|
||||||
<system:String x:Key="HotkeyESCDesc">コンテキストメニューから検索結果に戻る</system:String>
|
<system:String x:Key="HotkeyESCDesc">コンテキストメニューから検索結果に戻る</system:String>
|
||||||
<system:String x:Key="HotkeyTabDesc">Autocomplete</system:String>
|
<system:String x:Key="HotkeyTabDesc">自動補完</system:String>
|
||||||
<system:String x:Key="HotkeyRunDesc">選択したアイテムを開く、または、実行する</system:String>
|
<system:String x:Key="HotkeyRunDesc">選択したアイテムを開く、または、実行する</system:String>
|
||||||
<system:String x:Key="HotkeyCtrlIDesc">Flow Launcherの設定ウインドウを開く</system:String>
|
<system:String x:Key="HotkeyCtrlIDesc">Flow Launcherの設定ウインドウを開く</system:String>
|
||||||
<system:String x:Key="HotkeyF5Desc">プラグインデータのリロード</system:String>
|
<system:String x:Key="HotkeyF5Desc">プラグインデータのリロード</system:String>
|
||||||
|
|
||||||
<system:String x:Key="HotkeySelectFirstResult">Select first result</system:String>
|
<system:String x:Key="HotkeySelectFirstResult">最初の結果を選択</system:String>
|
||||||
<system:String x:Key="HotkeySelectLastResult">Select last result</system:String>
|
<system:String x:Key="HotkeySelectLastResult">最後の結果を選択</system:String>
|
||||||
<system:String x:Key="HotkeyRequery">Run current query again</system:String>
|
<system:String x:Key="HotkeyRequery">現在のクエリをもう一度実行</system:String>
|
||||||
<system:String x:Key="HotkeyOpenResult">結果を開く</system:String>
|
<system:String x:Key="HotkeyOpenResult">結果を開く</system:String>
|
||||||
<system:String x:Key="HotkeyOpenResultN">Open result #{0}</system:String>
|
<system:String x:Key="HotkeyOpenResultN">#{0} を開く</system:String>
|
||||||
|
|
||||||
<system:String x:Key="RecommendWeather">天気</system:String>
|
<system:String x:Key="RecommendWeather">天気</system:String>
|
||||||
<system:String x:Key="RecommendWeatherDesc">天気についてのGoogle検索</system:String>
|
<system:String x:Key="RecommendWeatherDesc">天気についてのGoogle検索</system:String>
|
||||||
|
|
|
||||||
|
|
@ -215,6 +215,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">플러그인 스토어</system:String>
|
<system:String x:Key="pluginStore">플러그인 스토어</system:String>
|
||||||
|
|
@ -458,8 +459,10 @@
|
||||||
<system:String x:Key="userdatapathButton">폴더 열기</system:String>
|
<system:String x:Key="userdatapathButton">폴더 열기</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">로그 레벨</system:String>
|
<system:String x:Key="logLevel">로그 레벨</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Error</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">설정창 글꼴</system:String>
|
<system:String x:Key="settingWindowFontTitle">설정창 글꼴</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -481,6 +484,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">파일경로 인수</system:String>
|
<system:String x:Key="fileManager_file_arg">파일경로 인수</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">기본 웹 브라우저</system:String>
|
<system:String x:Key="defaultBrowserTitle">기본 웹 브라우저</system:String>
|
||||||
|
|
@ -491,6 +495,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">새 창</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">새 창</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">새 탭</system:String>
|
<system:String x:Key="defaultBrowser_newTab">새 탭</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">사생활 보호 모드</system:String>
|
<system:String x:Key="defaultBrowser_parameter">사생활 보호 모드</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">중요도 변경</system:String>
|
<system:String x:Key="changePriorityWindow">중요도 변경</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Programtillegg butikk</system:String>
|
<system:String x:Key="pluginStore">Programtillegg butikk</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Åpne mappe</system:String>
|
<system:String x:Key="userdatapathButton">Åpne mappe</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Feil</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Arg for fil</system:String>
|
<system:String x:Key="fileManager_file_arg">Arg for fil</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Standard nettleser</system:String>
|
<system:String x:Key="defaultBrowserTitle">Standard nettleser</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Nytt vindu</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Nytt vindu</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Ny fane</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Ny fane</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Privat modus</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Privat modus</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Endre prioritet</system:String>
|
<system:String x:Key="changePriorityWindow">Endre prioritet</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Plugin Winkel</system:String>
|
<system:String x:Key="pluginStore">Plugin Winkel</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Map openen</system:String>
|
<system:String x:Key="userdatapathButton">Map openen</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Error</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Arg voor bestand</system:String>
|
<system:String x:Key="fileManager_file_arg">Arg voor bestand</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Standaard webbrowser</system:String>
|
<system:String x:Key="defaultBrowserTitle">Standaard webbrowser</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Nieuw Venster</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Nieuw Venster</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Nieuw tabblad</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Nieuw tabblad</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Privé modus</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Privé modus</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Prioriteit wijzigen</system:String>
|
<system:String x:Key="changePriorityWindow">Prioriteit wijzigen</system:String>
|
||||||
|
|
|
||||||
|
|
@ -223,6 +223,7 @@ Kliknij "nie", jeśli jest już zainstalowany. Zostaniesz wtedy popros
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Sklep z wtyczkami</system:String>
|
<system:String x:Key="pluginStore">Sklep z wtyczkami</system:String>
|
||||||
|
|
@ -466,8 +467,10 @@ Kliknij "nie", jeśli jest już zainstalowany. Zostaniesz wtedy popros
|
||||||
<system:String x:Key="userdatapathButton">Otwórz folder</system:String>
|
<system:String x:Key="userdatapathButton">Otwórz folder</system:String>
|
||||||
<system:String x:Key="advanced">Zaawansowane</system:String>
|
<system:String x:Key="advanced">Zaawansowane</system:String>
|
||||||
<system:String x:Key="logLevel">Poziom logowania</system:String>
|
<system:String x:Key="logLevel">Poziom logowania</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Błąd</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Ustawienia czcionki okna</system:String>
|
<system:String x:Key="settingWindowFontTitle">Ustawienia czcionki okna</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -489,6 +492,7 @@ Kliknij "nie", jeśli jest już zainstalowany. Zostaniesz wtedy popros
|
||||||
<system:String x:Key="fileManager_file_arg">Arg dla pliku</system:String>
|
<system:String x:Key="fileManager_file_arg">Arg dla pliku</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">Menedżer plików „{0}” nie został znaleziony w lokalizacji „{1}”. Czy chcesz kontynuować?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">Menedżer plików „{0}” nie został znaleziony w lokalizacji „{1}”. Czy chcesz kontynuować?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">Błąd ścieżki do menedżera plików</system:String>
|
<system:String x:Key="fileManagerPathError">Błąd ścieżki do menedżera plików</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Domyślna przeglądarka</system:String>
|
<system:String x:Key="defaultBrowserTitle">Domyślna przeglądarka</system:String>
|
||||||
|
|
@ -499,6 +503,8 @@ Kliknij "nie", jeśli jest już zainstalowany. Zostaniesz wtedy popros
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Nowe okno</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Nowe okno</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Nowa zakładka</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Nowa zakładka</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Tryb prywatny</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Tryb prywatny</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Zmień priorytet</system:String>
|
<system:String x:Key="changePriorityWindow">Zmień priorytet</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Loja de Plugins</system:String>
|
<system:String x:Key="pluginStore">Loja de Plugins</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Error</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Arg para Arquivo</system:String>
|
<system:String x:Key="fileManager_file_arg">Arg para Arquivo</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Navegador da Web Padrão</system:String>
|
<system:String x:Key="defaultBrowserTitle">Navegador da Web Padrão</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Nova Janela</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Nova Janela</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Nova Aba</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Nova Aba</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Modo Privado</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Modo Privado</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Alterar Prioridade</system:String>
|
<system:String x:Key="changePriorityWindow">Alterar Prioridade</system:String>
|
||||||
|
|
|
||||||
|
|
@ -223,6 +223,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Falha ao desinstalar {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Falha ao desinstalar {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Não foi possível encontrar plugin.json no ficheiro zip ou, então, o caminho {0} não existe.</system:String>
|
<system:String x:Key="fileNotFoundMessage">Não foi possível encontrar plugin.json no ficheiro zip ou, então, o caminho {0} não existe.</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">Já existe um plugin com a mesma ID e versão ou, então, a versão instalada é superior à do plugin descarregado.</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">Já existe um plugin com a mesma ID e versão ou, então, a versão instalada é superior à do plugin descarregado.</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Erro ao criar o painel de definição para o plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Loja de plugins</system:String>
|
<system:String x:Key="pluginStore">Loja de plugins</system:String>
|
||||||
|
|
@ -331,7 +332,7 @@
|
||||||
<system:String x:Key="PlaceholderTextTip">O texto do marcador de posição. Se vazio, será utilizado: {0}</system:String>
|
<system:String x:Key="PlaceholderTextTip">O texto do marcador de posição. Se vazio, será utilizado: {0}</system:String>
|
||||||
<system:String x:Key="KeepMaxResults">Janela com tamanho fixo</system:String>
|
<system:String x:Key="KeepMaxResults">Janela com tamanho fixo</system:String>
|
||||||
<system:String x:Key="KeepMaxResultsToolTip">Não pode ajustar o tamanho da janela por arrasto.</system:String>
|
<system:String x:Key="KeepMaxResultsToolTip">Não pode ajustar o tamanho da janela por arrasto.</system:String>
|
||||||
<system:String x:Key="MaxShowResultsCannotWorkWithAlwaysPreview">Since Always Preview is on, maximum results shown may not take effect because preview panel requires a certain minimum height</system:String>
|
<system:String x:Key="MaxShowResultsCannotWorkWithAlwaysPreview">Como a opção "Pré-visualizar sempre" está ativa, os resultados máximos mostrados podem não ter efeito porque o painel de visualização requer uma altura mínima</system:String>
|
||||||
|
|
||||||
<!-- Setting Hotkey -->
|
<!-- Setting Hotkey -->
|
||||||
<system:String x:Key="hotkey">Tecla de atalho</system:String>
|
<system:String x:Key="hotkey">Tecla de atalho</system:String>
|
||||||
|
|
@ -465,8 +466,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Abrir pasta</system:String>
|
<system:String x:Key="userdatapathButton">Abrir pasta</system:String>
|
||||||
<system:String x:Key="advanced">Avançado</system:String>
|
<system:String x:Key="advanced">Avançado</system:String>
|
||||||
<system:String x:Key="logLevel">Nível de registo</system:String>
|
<system:String x:Key="logLevel">Nível de registo</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Depuração</system:String>
|
<system:String x:Key="LogLevelNONE">Silencioso</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Erro</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Informação</system:String>
|
<system:String x:Key="LogLevelINFO">Informação</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Depuração</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Tipo de letra da aplicação</system:String>
|
<system:String x:Key="settingWindowFontTitle">Tipo de letra da aplicação</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -488,6 +491,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Argumento para ficheiro</system:String>
|
<system:String x:Key="fileManager_file_arg">Argumento para ficheiro</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">Não foi possível encontrar o gestor de ficheiros '{0}' em '{1}'. Deseja continuar?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">Não foi possível encontrar o gestor de ficheiros '{0}' em '{1}'. Deseja continuar?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">Erro no caminho do gestor de ficheiros</system:String>
|
<system:String x:Key="fileManagerPathError">Erro no caminho do gestor de ficheiros</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">Gestor de ficheiros</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Navegador web padrão</system:String>
|
<system:String x:Key="defaultBrowserTitle">Navegador web padrão</system:String>
|
||||||
|
|
@ -498,6 +502,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Nova janela</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Nova janela</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Novo separador</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Novo separador</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Modo privado</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Modo privado</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Padrão</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">Novo perfil</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Alterar prioridade</system:String>
|
<system:String x:Key="changePriorityWindow">Alterar prioridade</system:String>
|
||||||
|
|
|
||||||
|
|
@ -167,7 +167,7 @@
|
||||||
<system:String x:Key="KoreanImeRegistryTooltip">You can change the Previous Korean IME settings directly from here</system:String>
|
<system:String x:Key="KoreanImeRegistryTooltip">You can change the Previous Korean IME settings directly from here</system:String>
|
||||||
<system:String x:Key="KoreanImeSettingChangeFailTitle">Failed to change Korean IME setting</system:String>
|
<system:String x:Key="KoreanImeSettingChangeFailTitle">Failed to change Korean IME setting</system:String>
|
||||||
<system:String x:Key="KoreanImeSettingChangeFailSubTitle">Please check your system registry access or contact support.</system:String>
|
<system:String x:Key="KoreanImeSettingChangeFailSubTitle">Please check your system registry access or contact support.</system:String>
|
||||||
<system:String x:Key="homePage">Home Page</system:String>
|
<system:String x:Key="homePage">Главная страница</system:String>
|
||||||
<system:String x:Key="homePageToolTip">Show home page results when query text is empty.</system:String>
|
<system:String x:Key="homePageToolTip">Show home page results when query text is empty.</system:String>
|
||||||
<system:String x:Key="historyResultsForHomePage">Show History Results in Home Page</system:String>
|
<system:String x:Key="historyResultsForHomePage">Show History Results in Home Page</system:String>
|
||||||
<system:String x:Key="historyResultsCountForHomePage">Maximum History Results Shown in Home Page</system:String>
|
<system:String x:Key="historyResultsCountForHomePage">Maximum History Results Shown in Home Page</system:String>
|
||||||
|
|
@ -199,10 +199,10 @@
|
||||||
<system:String x:Key="pluginSearchDelayTime">Plugin search delay time</system:String>
|
<system:String x:Key="pluginSearchDelayTime">Plugin search delay time</system:String>
|
||||||
<system:String x:Key="pluginSearchDelayTimeTooltip">Change Plugin Search Delay Time</system:String>
|
<system:String x:Key="pluginSearchDelayTimeTooltip">Change Plugin Search Delay Time</system:String>
|
||||||
<system:String x:Key="FilterComboboxLabel">Advanced Settings:</system:String>
|
<system:String x:Key="FilterComboboxLabel">Advanced Settings:</system:String>
|
||||||
<system:String x:Key="DisplayModeOnOff">Enabled</system:String>
|
<system:String x:Key="DisplayModeOnOff">Включено</system:String>
|
||||||
<system:String x:Key="DisplayModePriority">Приоритет</system:String>
|
<system:String x:Key="DisplayModePriority">Приоритет</system:String>
|
||||||
<system:String x:Key="DisplayModeSearchDelay">Search Delay</system:String>
|
<system:String x:Key="DisplayModeSearchDelay">Search Delay</system:String>
|
||||||
<system:String x:Key="DisplayModeHomeOnOff">Home Page</system:String>
|
<system:String x:Key="DisplayModeHomeOnOff">Главная страница</system:String>
|
||||||
<system:String x:Key="currentPriority">Текущий приоритет</system:String>
|
<system:String x:Key="currentPriority">Текущий приоритет</system:String>
|
||||||
<system:String x:Key="newPriority">Новый приоритет</system:String>
|
<system:String x:Key="newPriority">Новый приоритет</system:String>
|
||||||
<system:String x:Key="priority">Приоритет</system:String>
|
<system:String x:Key="priority">Приоритет</system:String>
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Магазин плагинов</system:String>
|
<system:String x:Key="pluginStore">Магазин плагинов</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Ошибка</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Аргумент для файла</system:String>
|
<system:String x:Key="fileManager_file_arg">Аргумент для файла</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Браузер по умолчанию</system:String>
|
<system:String x:Key="defaultBrowserTitle">Браузер по умолчанию</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Новое окно</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Новое окно</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Новая вкладка</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Новая вкладка</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Приватный режим</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Приватный режим</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Изменить приоритет</system:String>
|
<system:String x:Key="changePriorityWindow">Изменить приоритет</system:String>
|
||||||
|
|
@ -525,7 +531,7 @@
|
||||||
<system:String x:Key="searchDelayTimeTips">Input the search delay time in ms you like to use for the plugin. Input empty if you don't want to specify any, and the plugin will use default search delay time.</system:String>
|
<system:String x:Key="searchDelayTimeTips">Input the search delay time in ms you like to use for the plugin. Input empty if you don't want to specify any, and the plugin will use default search delay time.</system:String>
|
||||||
|
|
||||||
<!-- Search Delay Settings Dialog -->
|
<!-- Search Delay Settings Dialog -->
|
||||||
<system:String x:Key="homeTitle">Home Page</system:String>
|
<system:String x:Key="homeTitle">Главная страница</system:String>
|
||||||
<system:String x:Key="homeTips">Enable the plugin home page state if you like to show the plugin results when query is empty.</system:String>
|
<system:String x:Key="homeTips">Enable the plugin home page state if you like to show the plugin results when query is empty.</system:String>
|
||||||
|
|
||||||
<!-- Custom Query Hotkey Dialog -->
|
<!-- Custom Query Hotkey Dialog -->
|
||||||
|
|
|
||||||
|
|
@ -176,7 +176,7 @@ Nevykonali sa žiadne zmeny.</system:String>
|
||||||
<system:String x:Key="showAtTopmost">Zobraziť vyhľadávacie okno v popredí</system:String>
|
<system:String x:Key="showAtTopmost">Zobraziť vyhľadávacie okno v popredí</system:String>
|
||||||
<system:String x:Key="showAtTopmostToolTip">Prepíše nastavenie "Vždy na vrchu" ostatných programov a zobrazí navrchu Flow.</system:String>
|
<system:String x:Key="showAtTopmostToolTip">Prepíše nastavenie "Vždy na vrchu" ostatných programov a zobrazí navrchu Flow.</system:String>
|
||||||
<system:String x:Key="autoRestartAfterChanging">Reštartovať po úprave pluginu cez Repozitár pluginov</system:String>
|
<system:String x:Key="autoRestartAfterChanging">Reštartovať po úprave pluginu cez Repozitár pluginov</system:String>
|
||||||
<system:String x:Key="autoRestartAfterChangingToolTip">Automaticky reštartovať Flow Launcher po inštalácii/odinštalácii/aktualizáciu pluginu cez Repozitár pluginov</system:String>
|
<system:String x:Key="autoRestartAfterChangingToolTip">Automaticky reštartovať Flow Launcher po inštalácii/odinštalácii/aktualizácii pluginu cez Repozitár pluginov</system:String>
|
||||||
<system:String x:Key="showUnknownSourceWarning">Zobraziť upozornenie na neznámy zdroj</system:String>
|
<system:String x:Key="showUnknownSourceWarning">Zobraziť upozornenie na neznámy zdroj</system:String>
|
||||||
<system:String x:Key="showUnknownSourceWarningToolTip">Zobraziť upozornenie pri inštalácii z neznámych zdrojov</system:String>
|
<system:String x:Key="showUnknownSourceWarningToolTip">Zobraziť upozornenie pri inštalácii z neznámych zdrojov</system:String>
|
||||||
<system:String x:Key="autoUpdatePlugins">Automaticky aktualizovať pluginy</system:String>
|
<system:String x:Key="autoUpdatePlugins">Automaticky aktualizovať pluginy</system:String>
|
||||||
|
|
@ -225,6 +225,7 @@ Nevykonali sa žiadne zmeny.</system:String>
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Nepodarilo sa odinštalovať {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Nepodarilo sa odinštalovať {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Súbor plugin.json sa nenašiel v rozbalenom zip súbore, alebo táto cesta {0} neexistuje</system:String>
|
<system:String x:Key="fileNotFoundMessage">Súbor plugin.json sa nenašiel v rozbalenom zip súbore, alebo táto cesta {0} neexistuje</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">Plugin s rovnakým ID už existuje, alebo ide o vyššiu verziu ako stiahnutý plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">Plugin s rovnakým ID už existuje, alebo ide o vyššiu verziu ako stiahnutý plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Chyba pri vytváraní panelu nastavení pre plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Repozitár pluginov</system:String>
|
<system:String x:Key="pluginStore">Repozitár pluginov</system:String>
|
||||||
|
|
@ -255,7 +256,7 @@ Nevykonali sa žiadne zmeny.</system:String>
|
||||||
<system:String x:Key="UpdatePromptTitle">Aktualizácia pluginu</system:String>
|
<system:String x:Key="UpdatePromptTitle">Aktualizácia pluginu</system:String>
|
||||||
<system:String x:Key="UpdatePromptSubtitle">{0} od {1} {2}{2}Chcete aktualizovať tento plugin?</system:String>
|
<system:String x:Key="UpdatePromptSubtitle">{0} od {1} {2}{2}Chcete aktualizovať tento plugin?</system:String>
|
||||||
<system:String x:Key="DownloadingPlugin">Sťahovanie pluginu</system:String>
|
<system:String x:Key="DownloadingPlugin">Sťahovanie pluginu</system:String>
|
||||||
<system:String x:Key="AutoRestartAfterChange">Automaticky reštartovať po inštalácii/odinštalácii/aktualizáciu pluginov cez Repozitár pluginov</system:String>
|
<system:String x:Key="AutoRestartAfterChange">Automaticky reštartovať po inštalácii/odinštalácii/aktualizácii pluginov cez Repozitár pluginov</system:String>
|
||||||
<system:String x:Key="ZipFileNotHavePluginJson">V zipe sa nenachádza platná konfigurácia plugin.json</system:String>
|
<system:String x:Key="ZipFileNotHavePluginJson">V zipe sa nenachádza platná konfigurácia plugin.json</system:String>
|
||||||
<system:String x:Key="InstallFromUnknownSourceTitle">Inštalácia z neznámeho zdroja</system:String>
|
<system:String x:Key="InstallFromUnknownSourceTitle">Inštalácia z neznámeho zdroja</system:String>
|
||||||
<system:String x:Key="InstallFromUnknownSourceSubtitle">Tento plugin pochádza z neznámeho zdroja a môže predstavovať potenciálne riziká!{0}{0}Uistite sa, že viete, odkiaľ tento plugin pochádza, a že je bezpečný.{0}{0}Stále chcete pokračovať?{0}{0}(Toto upozornenie môžete vypnúť sekcii Všeobecné v nastaveniach)</system:String>
|
<system:String x:Key="InstallFromUnknownSourceSubtitle">Tento plugin pochádza z neznámeho zdroja a môže predstavovať potenciálne riziká!{0}{0}Uistite sa, že viete, odkiaľ tento plugin pochádza, a že je bezpečný.{0}{0}Stále chcete pokračovať?{0}{0}(Toto upozornenie môžete vypnúť sekcii Všeobecné v nastaveniach)</system:String>
|
||||||
|
|
@ -267,7 +268,7 @@ Nevykonali sa žiadne zmeny.</system:String>
|
||||||
<system:String x:Key="updateAllPluginsTitle">Dostupná aktualizácia pluginu</system:String>
|
<system:String x:Key="updateAllPluginsTitle">Dostupná aktualizácia pluginu</system:String>
|
||||||
<system:String x:Key="updateAllPluginsButtonContent">Aktualizovať pluginy</system:String>
|
<system:String x:Key="updateAllPluginsButtonContent">Aktualizovať pluginy</system:String>
|
||||||
<system:String x:Key="checkPluginUpdatesTooltip">Skontrolovať dostupnosť aktualizácií</system:String>
|
<system:String x:Key="checkPluginUpdatesTooltip">Skontrolovať dostupnosť aktualizácií</system:String>
|
||||||
<system:String x:Key="PluginsUpdateSuccessNoRestart">Pluginy {0} boli úspešne aktualizované. Prosím, reštartuje Flow.</system:String>
|
<system:String x:Key="PluginsUpdateSuccessNoRestart">Pluginy boli úspešne aktualizované. Prosím, reštartuje Flow.</system:String>
|
||||||
|
|
||||||
<!-- Setting Theme -->
|
<!-- Setting Theme -->
|
||||||
<system:String x:Key="theme">Motív</system:String>
|
<system:String x:Key="theme">Motív</system:String>
|
||||||
|
|
@ -396,28 +397,28 @@ Nevykonali sa žiadne zmeny.</system:String>
|
||||||
<system:String x:Key="showBadges">Zobraziť výsledok v odznaku</system:String>
|
<system:String x:Key="showBadges">Zobraziť výsledok v odznaku</system:String>
|
||||||
<system:String x:Key="showBadgesToolTip">Ak to plugin podporuje, zobrazí sa jeho ikona v odznaku na jednoduchšie odlíšenie.</system:String>
|
<system:String x:Key="showBadgesToolTip">Ak to plugin podporuje, zobrazí sa jeho ikona v odznaku na jednoduchšie odlíšenie.</system:String>
|
||||||
<system:String x:Key="showBadgesGlobalOnly">Zobraziť výsledok v odznaku len pre globálne vyhľadávanie</system:String>
|
<system:String x:Key="showBadgesGlobalOnly">Zobraziť výsledok v odznaku len pre globálne vyhľadávanie</system:String>
|
||||||
<system:String x:Key="showBadgesGlobalOnlyToolTip">Show badges for global query results only</system:String>
|
<system:String x:Key="showBadgesGlobalOnlyToolTip">Zobrazí výsledok v odznaku len pre výsledky globálneho vyhľadávania</system:String>
|
||||||
<system:String x:Key="dialogJumpHotkey">Dialog Jump</system:String>
|
<system:String x:Key="dialogJumpHotkey">Rýchly prechod</system:String>
|
||||||
<system:String x:Key="dialogJumpHotkeyToolTip">Enter shortcut to quickly navigate the Open/Save As dialog window to the path of the current file manager.</system:String>
|
<system:String x:Key="dialogJumpHotkeyToolTip">Zadajte skratku na rýchly prechod na aktuálnu cestu správcu súborov v dialógovom okne Otvoriť/Uložiť.</system:String>
|
||||||
<system:String x:Key="dialogJump">Dialog Jump</system:String>
|
<system:String x:Key="dialogJump">Rýchly prechod</system:String>
|
||||||
<system:String x:Key="dialogJumpToolTip">When Open/Save As dialog window opens, quickly navigate to the current path of the file manager.</system:String>
|
<system:String x:Key="dialogJumpToolTip">Keď sa otvorí dialógové okno Otvoriť/Uložiť, rýchlo prejdete na aktuálnu cestu správcu súborov.</system:String>
|
||||||
<system:String x:Key="autoDialogJump">Dialog Jump Automatically</system:String>
|
<system:String x:Key="autoDialogJump">Automatický rýchly prechod</system:String>
|
||||||
<system:String x:Key="autoDialogJumpToolTip">When Open/Save As dialog window is displayed, automatically navigate to the path of the current file manager. (Experimental)</system:String>
|
<system:String x:Key="autoDialogJumpToolTip">Keď je otvorené dialógové okno Otvoriť/Uložiť, automaticky prejsť na cestu v aktuálnom správcovi súborov (Experimentálne)</system:String>
|
||||||
<system:String x:Key="showDialogJumpWindow">Show Dialog Jump Window</system:String>
|
<system:String x:Key="showDialogJumpWindow">Zobraziť okno na rýchly prechod</system:String>
|
||||||
<system:String x:Key="showDialogJumpWindowToolTip">Display Dialog Jump search window when the open/save dialog window is shown to quickly navigate to file/folder locations.</system:String>
|
<system:String x:Key="showDialogJumpWindowToolTip">Zobraziť okno rýchleho prechodu, keď je zobrazené dialógové okno Ovoriť/Uložiť na rýchlu navigáciu do umiestnenia súborov/priečinkov.</system:String>
|
||||||
<system:String x:Key="dialogJumpWindowPosition">Dialog Jump Window Position</system:String>
|
<system:String x:Key="dialogJumpWindowPosition">Umiestnenie okna "rýchly prechod"</system:String>
|
||||||
<system:String x:Key="dialogJumpWindowPositionToolTip">Select position for the Dialog Jump search window</system:String>
|
<system:String x:Key="dialogJumpWindowPositionToolTip">Vyberte umiestnenie vyhľadávacieho okna pre "rýchly prechod"</system:String>
|
||||||
<system:String x:Key="DialogJumpWindowPositionUnderDialog">Fixed under the Open/Save As dialog window. Displayed on open and stays until the window is closed</system:String>
|
<system:String x:Key="DialogJumpWindowPositionUnderDialog">Fixné pod oknom Otvoriť/Uložiť. Zostane zobrazené po otvorení až do uzavretia okna</system:String>
|
||||||
<system:String x:Key="DialogJumpWindowPositionFollowDefault">Default search window position. Displayed when triggered by search window hotkey</system:String>
|
<system:String x:Key="DialogJumpWindowPositionFollowDefault">Predvolená pozícia vyhľadávacieho okna. Zobrazí sa po zadaní skratky na otvorenie vyhľadávacieho okna</system:String>
|
||||||
<system:String x:Key="dialogJumpResultBehaviour">Dialog Jump Result Navigation Behaviour</system:String>
|
<system:String x:Key="dialogJumpResultBehaviour">Akcia na prechod k výsledku rýchleho prechodu</system:String>
|
||||||
<system:String x:Key="dialogJumpResultBehaviourToolTip">Behaviour to navigate Open/Save As dialog window to the selected result path</system:String>
|
<system:String x:Key="dialogJumpResultBehaviourToolTip">Ako prejsť na vybranú cestu v otvorenom dialógovom okne Otvoriť/Uložiť</system:String>
|
||||||
<system:String x:Key="DialogJumpResultBehaviourLeftClick">Left click or Enter key</system:String>
|
<system:String x:Key="DialogJumpResultBehaviourLeftClick">Kliknutie ľavým tlačidlom myši alebo klávesom Enter</system:String>
|
||||||
<system:String x:Key="DialogJumpResultBehaviourRightClick">Right click</system:String>
|
<system:String x:Key="DialogJumpResultBehaviourRightClick">Kliknutie pravým tlačidlom myši</system:String>
|
||||||
<system:String x:Key="dialogJumpFileResultBehaviour">Dialog Jump File Navigation Behaviour</system:String>
|
<system:String x:Key="dialogJumpFileResultBehaviour">Akcia na prechod k súboru rýchleho prechodu</system:String>
|
||||||
<system:String x:Key="dialogJumpFileResultBehaviourToolTip">Behaviour to navigate Open/Save As dialog window when the result is a file path</system:String>
|
<system:String x:Key="dialogJumpFileResultBehaviourToolTip">Akcia, ktorá sa vykoná na navigáciu v dialógovom okne Otvoriť/Uložiť, ak výsledkom je súbor</system:String>
|
||||||
<system:String x:Key="DialogJumpFileResultBehaviourFullPath">Fill full path in file name box</system:String>
|
<system:String x:Key="DialogJumpFileResultBehaviourFullPath">Vložiť celú cestu k súboru do poľa názvu súboru</system:String>
|
||||||
<system:String x:Key="DialogJumpFileResultBehaviourFullPathOpen">Fill full path in file name box and open</system:String>
|
<system:String x:Key="DialogJumpFileResultBehaviourFullPathOpen">Vložiť celú cestu k súboru do poľa názvu súboru a otvoriť</system:String>
|
||||||
<system:String x:Key="DialogJumpFileResultBehaviourDirectory">Fill directory in path box</system:String>
|
<system:String x:Key="DialogJumpFileResultBehaviourDirectory">Vložiť priečinok do poľa s cestou</system:String>
|
||||||
|
|
||||||
<!-- Setting Proxy -->
|
<!-- Setting Proxy -->
|
||||||
<system:String x:Key="proxy">HTTP proxy</system:String>
|
<system:String x:Key="proxy">HTTP proxy</system:String>
|
||||||
|
|
@ -468,8 +469,10 @@ Nevykonali sa žiadne zmeny.</system:String>
|
||||||
<system:String x:Key="userdatapathButton">Otvoriť priečinok</system:String>
|
<system:String x:Key="userdatapathButton">Otvoriť priečinok</system:String>
|
||||||
<system:String x:Key="advanced">Rozšírené</system:String>
|
<system:String x:Key="advanced">Rozšírené</system:String>
|
||||||
<system:String x:Key="logLevel">Úroveň logovania</system:String>
|
<system:String x:Key="logLevel">Úroveň logovania</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Žiadne</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Chyba</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Nastavenie písma okna</system:String>
|
<system:String x:Key="settingWindowFontTitle">Nastavenie písma okna</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -482,8 +485,8 @@ Nevykonali sa žiadne zmeny.</system:String>
|
||||||
<!-- FileManager Setting Dialog -->
|
<!-- FileManager Setting Dialog -->
|
||||||
<system:String x:Key="fileManagerWindow">Vyberte správcu súborov</system:String>
|
<system:String x:Key="fileManagerWindow">Vyberte správcu súborov</system:String>
|
||||||
<system:String x:Key="fileManager_learnMore">Viac informácií</system:String>
|
<system:String x:Key="fileManager_learnMore">Viac informácií</system:String>
|
||||||
<system:String x:Key="fileManager_tips">Zadajte umiestnenie súboru správcu súborov, ktorý používate, a podľa potreby pridajte argumenty. "%d" predstavuje cestu k priečinku, ktorý sa má otvoriť, používa sa v poli Arg pre priečinok a pri príkazoch na otvorenie konkrétnych priečinkov. "%f" predstavuje cestu k súboru, ktorá sa má otvoriť a používa sa v poli Arg pre súbor a pri príkazoch na otvorenie konkrétnych súborov.</system:String>
|
<system:String x:Key="fileManager_tips">Zadajte umiestnenie súboru správcu súborov, ktorý používate, a podľa potreby pridajte argumenty. "%d" predstavuje cestu k priečinku, ktorý sa má otvoriť, používa sa v poli Arg. pre priečinok a pri príkazoch na otvorenie konkrétnych priečinkov. "%f" predstavuje cestu k súboru, ktorá sa má otvoriť a používa sa v poli Arg. pre súbor a pri príkazoch na otvorenie konkrétnych súborov.</system:String>
|
||||||
<system:String x:Key="fileManager_tips2">Napríklad, ak správca súborov používa príkaz ako "totalcmd.exe /A c:\windows" na otvorenie priečinka c:\windows, cesta správcu súborov bude totalcmd.exe a Arg pre priečinok bude /A "%d". Niektorí správcovia súborov, ako napríklad QTTabBar, môžu vyžadovať len zadanie cesty, v tomto prípade použite "%d" ako cestu správcu súborov a zvyšok súborov nechajte prázdny.</system:String>
|
<system:String x:Key="fileManager_tips2">Napríklad, ak správca súborov používa príkaz ako "totalcmd.exe /A c:\windows" na otvorenie priečinka c:\windows, cesta správcu súborov bude totalcmd.exe a Arg. pre priečinok bude /A "%d". Niektorí správcovia súborov, ako napríklad QTTabBar, môžu vyžadovať len zadanie cesty, v tomto prípade použite "%d" ako cestu správcu súborov a zvyšok súborov nechajte prázdny.</system:String>
|
||||||
<system:String x:Key="fileManager_name">Správca súborov</system:String>
|
<system:String x:Key="fileManager_name">Správca súborov</system:String>
|
||||||
<system:String x:Key="fileManager_profile_name">Názov profilu</system:String>
|
<system:String x:Key="fileManager_profile_name">Názov profilu</system:String>
|
||||||
<system:String x:Key="fileManager_path">Cesta k správcovi súborov</system:String>
|
<system:String x:Key="fileManager_path">Cesta k správcovi súborov</system:String>
|
||||||
|
|
@ -491,6 +494,7 @@ Nevykonali sa žiadne zmeny.</system:String>
|
||||||
<system:String x:Key="fileManager_file_arg">Arg. pre súbor</system:String>
|
<system:String x:Key="fileManager_file_arg">Arg. pre súbor</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">Správca súborov '{0}' sa nenachádza na '{1}'. Chcete pokračovať?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">Správca súborov '{0}' sa nenachádza na '{1}'. Chcete pokračovať?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">Chyba v ceste k správcovi súborov</system:String>
|
<system:String x:Key="fileManagerPathError">Chyba v ceste k správcovi súborov</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">Prieskumník</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Predvolený webový prehliadač</system:String>
|
<system:String x:Key="defaultBrowserTitle">Predvolený webový prehliadač</system:String>
|
||||||
|
|
@ -501,6 +505,8 @@ Nevykonali sa žiadne zmeny.</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Nové okno</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Nové okno</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Nová karta</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Nová karta</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Privátny režim</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Privátny režim</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Predvolené</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">Nový profil</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Zmena priority</system:String>
|
<system:String x:Key="changePriorityWindow">Zmena priority</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Plugin Store</system:String>
|
<system:String x:Key="pluginStore">Plugin Store</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Error</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Arg For File</system:String>
|
<system:String x:Key="fileManager_file_arg">Arg For File</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Default Web Browser</system:String>
|
<system:String x:Key="defaultBrowserTitle">Default Web Browser</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">New Window</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">New Window</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">New Tab</system:String>
|
<system:String x:Key="defaultBrowser_newTab">New Tab</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Private Mode</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Private Mode</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Change Priority</system:String>
|
<system:String x:Key="changePriorityWindow">Change Priority</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Plugin Store</system:String>
|
<system:String x:Key="pluginStore">Plugin Store</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Error</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Arg For File</system:String>
|
<system:String x:Key="fileManager_file_arg">Arg For File</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Default Web Browser</system:String>
|
<system:String x:Key="defaultBrowserTitle">Default Web Browser</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">New Window</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">New Window</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">New Tab</system:String>
|
<system:String x:Key="defaultBrowser_newTab">New Tab</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Private Mode</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Private Mode</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Change Priority</system:String>
|
<system:String x:Key="changePriorityWindow">Change Priority</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">{0} kaldırılamıyor</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">{0} kaldırılamıyor</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">plugin.json dosyası çıkarılan zip dosyasında bulunamadı veya {0} yolu mevcut değil</system:String>
|
<system:String x:Key="fileNotFoundMessage">plugin.json dosyası çıkarılan zip dosyasında bulunamadı veya {0} yolu mevcut değil</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">Bu eklentiyle aynı ID ve sürüme sahip bir eklenti zaten var, ya da mevcut sürüm daha yüksek</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">Bu eklentiyle aynı ID ve sürüme sahip bir eklenti zaten var, ya da mevcut sürüm daha yüksek</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Eklenti Mağazası</system:String>
|
<system:String x:Key="pluginStore">Eklenti Mağazası</system:String>
|
||||||
|
|
@ -405,14 +406,14 @@
|
||||||
<system:String x:Key="showDialogJumpWindow">Diyalog Atlama Penceresini Göster</system:String>
|
<system:String x:Key="showDialogJumpWindow">Diyalog Atlama Penceresini Göster</system:String>
|
||||||
<system:String x:Key="showDialogJumpWindowToolTip">Dosya/klasör konumlarına hızlı erişim için aç/kaydet penceresi gösterildiğinde Diyalog Atlama arama penceresini görüntüle.</system:String>
|
<system:String x:Key="showDialogJumpWindowToolTip">Dosya/klasör konumlarına hızlı erişim için aç/kaydet penceresi gösterildiğinde Diyalog Atlama arama penceresini görüntüle.</system:String>
|
||||||
<system:String x:Key="dialogJumpWindowPosition">Diyalog Atlama Penceresi Konumu</system:String>
|
<system:String x:Key="dialogJumpWindowPosition">Diyalog Atlama Penceresi Konumu</system:String>
|
||||||
<system:String x:Key="dialogJumpWindowPositionToolTip">Select position for the Dialog Jump search window</system:String>
|
<system:String x:Key="dialogJumpWindowPositionToolTip">Diyalog Atlama arama penceresi için konum seçin</system:String>
|
||||||
<system:String x:Key="DialogJumpWindowPositionUnderDialog">Farklı Aç/Kaydet iletişim penceresinin altında düzeltildi. Açıldığında görüntülenir ve pencere kapatılana kadar kalır</system:String>
|
<system:String x:Key="DialogJumpWindowPositionUnderDialog">Farklı Aç/Kaydet iletişim penceresinin altında düzeltildi. Açıldığında görüntülenir ve pencere kapatılana kadar kalır</system:String>
|
||||||
<system:String x:Key="DialogJumpWindowPositionFollowDefault">Varsayılan arama penceresi konumu. Arama penceresi kısayol tuşu tarafından tetiklendiğinde görüntülenir</system:String>
|
<system:String x:Key="DialogJumpWindowPositionFollowDefault">Varsayılan arama penceresi konumu. Arama penceresi kısayol tuşu tarafından tetiklendiğinde görüntülenir</system:String>
|
||||||
<system:String x:Key="dialogJumpResultBehaviour">Dialog Jump Result Navigation Behaviour</system:String>
|
<system:String x:Key="dialogJumpResultBehaviour">Diyalog Atlama Sonucu Gezinme Davranışı</system:String>
|
||||||
<system:String x:Key="dialogJumpResultBehaviourToolTip">Farklı Aç/Kaydet iletişim penceresini seçilen sonuç yoluna yönlendirmek için davranış</system:String>
|
<system:String x:Key="dialogJumpResultBehaviourToolTip">Farklı Aç/Kaydet iletişim penceresini seçilen sonuç yoluna yönlendirmek için davranış</system:String>
|
||||||
<system:String x:Key="DialogJumpResultBehaviourLeftClick">Sol tık veya Enter tuşu</system:String>
|
<system:String x:Key="DialogJumpResultBehaviourLeftClick">Sol tık veya Enter tuşu</system:String>
|
||||||
<system:String x:Key="DialogJumpResultBehaviourRightClick">Sağ tık</system:String>
|
<system:String x:Key="DialogJumpResultBehaviourRightClick">Sağ tık</system:String>
|
||||||
<system:String x:Key="dialogJumpFileResultBehaviour">Dialog Jump File Navigation Behaviour</system:String>
|
<system:String x:Key="dialogJumpFileResultBehaviour">Dialog Jump Dosya Gezinme Davranışı</system:String>
|
||||||
<system:String x:Key="dialogJumpFileResultBehaviourToolTip">Sonuç bir dosya yolu olduğunda Farklı Aç/Kaydet iletişim penceresinde gezinme davranışı</system:String>
|
<system:String x:Key="dialogJumpFileResultBehaviourToolTip">Sonuç bir dosya yolu olduğunda Farklı Aç/Kaydet iletişim penceresinde gezinme davranışı</system:String>
|
||||||
<system:String x:Key="DialogJumpFileResultBehaviourFullPath">Dosya adı kutusuna tam yolu girin</system:String>
|
<system:String x:Key="DialogJumpFileResultBehaviourFullPath">Dosya adı kutusuna tam yolu girin</system:String>
|
||||||
<system:String x:Key="DialogJumpFileResultBehaviourFullPathOpen">Dosya adı kutusuna tam yolu girin ve açın</system:String>
|
<system:String x:Key="DialogJumpFileResultBehaviourFullPathOpen">Dosya adı kutusuna tam yolu girin ve açın</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Klasörü Aç</system:String>
|
<system:String x:Key="userdatapathButton">Klasörü Aç</system:String>
|
||||||
<system:String x:Key="advanced">Gelişmiş</system:String>
|
<system:String x:Key="advanced">Gelişmiş</system:String>
|
||||||
<system:String x:Key="logLevel">Günlük Düzeyi</system:String>
|
<system:String x:Key="logLevel">Günlük Düzeyi</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Hata ayıklama</system:String>
|
<system:String x:Key="LogLevelNONE">Sessiz</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Hata</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Bilgi</system:String>
|
<system:String x:Key="LogLevelINFO">Bilgi</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Hata ayıklama</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Pencere Yazı Tipini Ayarla</system:String>
|
<system:String x:Key="settingWindowFontTitle">Pencere Yazı Tipini Ayarla</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Dosya Açarken</system:String>
|
<system:String x:Key="fileManager_file_arg">Dosya Açarken</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">'{0}' dosya yöneticisi '{1}' konumunda bulunamadı. Devam etmek ister misiniz?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">'{0}' dosya yöneticisi '{1}' konumunda bulunamadı. Devam etmek ister misiniz?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">Dosya Yöneticisi Yol Hatası</system:String>
|
<system:String x:Key="fileManagerPathError">Dosya Yöneticisi Yol Hatası</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">İnternet Tarayıcı Seçenekleri</system:String>
|
<system:String x:Key="defaultBrowserTitle">İnternet Tarayıcı Seçenekleri</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Yeni Pencere</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Yeni Pencere</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Yeni Sekme</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Yeni Sekme</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Gizli Mod için Bağımsız Değişken</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Gizli Mod için Bağımsız Değişken</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Önceliği Ayarla</system:String>
|
<system:String x:Key="changePriorityWindow">Önceliği Ayarla</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Не вдалося видалити {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Не вдалося видалити {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Не вдалося знайти файл plugin.json у розпакованому zip-файлі або цей шлях {0} не існує.</system:String>
|
<system:String x:Key="fileNotFoundMessage">Не вдалося знайти файл plugin.json у розпакованому zip-файлі або цей шлях {0} не існує.</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">Вже існує плагін з таким самим ідентифікатором та версією, або версія цього плагіну вища за версію завантаженого.</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">Вже існує плагін з таким самим ідентифікатором та версією, або версія цього плагіну вища за версію завантаженого.</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Помилка створення панелі налаштувань для плагіну {0}: {1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Магазин плагінів</system:String>
|
<system:String x:Key="pluginStore">Магазин плагінів</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Відкрити теку</system:String>
|
<system:String x:Key="userdatapathButton">Відкрити теку</system:String>
|
||||||
<system:String x:Key="advanced">Розширені</system:String>
|
<system:String x:Key="advanced">Розширені</system:String>
|
||||||
<system:String x:Key="logLevel">Рівень журналювання</system:String>
|
<system:String x:Key="logLevel">Рівень журналювання</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Налагодження</system:String>
|
<system:String x:Key="LogLevelNONE">Без звуку</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Помилка</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Інформація</system:String>
|
<system:String x:Key="LogLevelINFO">Інформація</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Налагодження</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Встановлення шрифту вікна</system:String>
|
<system:String x:Key="settingWindowFontTitle">Встановлення шрифту вікна</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Аргумент для файлу</system:String>
|
<system:String x:Key="fileManager_file_arg">Аргумент для файлу</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">Не вдалося знайти файловий менеджер «{0}» за адресою «{1}». Чи бажаєте продовжити?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">Не вдалося знайти файловий менеджер «{0}» за адресою «{1}». Чи бажаєте продовжити?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">Помилка шляху до файлового менеджера</system:String>
|
<system:String x:Key="fileManagerPathError">Помилка шляху до файлового менеджера</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">Файловий провідник</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Типовий веббраузер</system:String>
|
<system:String x:Key="defaultBrowserTitle">Типовий веббраузер</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Нове вікно</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Нове вікно</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Нова вкладка</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Нова вкладка</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Приватний режим</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Приватний режим</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Типово</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">Новий профіль</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Змінити пріоритет</system:String>
|
<system:String x:Key="changePriorityWindow">Змінити пріоритет</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">Tải tiện ích mở rộng</system:String>
|
<system:String x:Key="pluginStore">Tải tiện ích mở rộng</system:String>
|
||||||
|
|
@ -469,8 +470,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Mở thư mục</system:String>
|
<system:String x:Key="userdatapathButton">Mở thư mục</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Lỗi</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -492,6 +495,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">Đối số cho tệp</system:String>
|
<system:String x:Key="fileManager_file_arg">Đối số cho tệp</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">Trình duyệt web tiêu chuẩn</system:String>
|
<system:String x:Key="defaultBrowserTitle">Trình duyệt web tiêu chuẩn</system:String>
|
||||||
|
|
@ -502,6 +506,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">Cửa sổ mới</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">Cửa sổ mới</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">Thẻ Mới</system:String>
|
<system:String x:Key="defaultBrowser_newTab">Thẻ Mới</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">Chế độ riêng tư</system:String>
|
<system:String x:Key="defaultBrowser_parameter">Chế độ riêng tư</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">Thay đổi mức độ ưu tiên</system:String>
|
<system:String x:Key="changePriorityWindow">Thay đổi mức độ ưu tiên</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">卸载 {0} 失败</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">卸载 {0} 失败</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">无法从提取的zip文件中找到plugin.json,或者此路径 {0} 不存在</system:String>
|
<system:String x:Key="fileNotFoundMessage">无法从提取的zip文件中找到plugin.json,或者此路径 {0} 不存在</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">已存在相同ID和版本的插件,或者存在版本大于此下载的插件</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">已存在相同ID和版本的插件,或者存在版本大于此下载的插件</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">插件商店</system:String>
|
<system:String x:Key="pluginStore">插件商店</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">打开文件夹</system:String>
|
<system:String x:Key="userdatapathButton">打开文件夹</system:String>
|
||||||
<system:String x:Key="advanced">高级</system:String>
|
<system:String x:Key="advanced">高级</system:String>
|
||||||
<system:String x:Key="logLevel">日志等级</system:String>
|
<system:String x:Key="logLevel">日志等级</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">调试</system:String>
|
<system:String x:Key="LogLevelNONE">静默</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">错误</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">信息</system:String>
|
<system:String x:Key="LogLevelINFO">信息</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">调试</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">设置窗口字体</system:String>
|
<system:String x:Key="settingWindowFontTitle">设置窗口字体</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">选中文件路径参数</system:String>
|
<system:String x:Key="fileManager_file_arg">选中文件路径参数</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">文件管理器 '{0}' 不能在 '{1}'中定位。您想要继续吗?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">文件管理器 '{0}' 不能在 '{1}'中定位。您想要继续吗?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">文件管理器路径错误</system:String>
|
<system:String x:Key="fileManagerPathError">文件管理器路径错误</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">文件资源管理器</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">默认浏览器</system:String>
|
<system:String x:Key="defaultBrowserTitle">默认浏览器</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">新窗口</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">新窗口</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">新标签</system:String>
|
<system:String x:Key="defaultBrowser_newTab">新标签</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">隐身模式</system:String>
|
<system:String x:Key="defaultBrowser_parameter">隐身模式</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">默认</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">新配置</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">更改优先级</system:String>
|
<system:String x:Key="changePriorityWindow">更改优先级</system:String>
|
||||||
|
|
|
||||||
|
|
@ -224,6 +224,7 @@
|
||||||
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
<system:String x:Key="failedToUninstallPluginTitle">Fail to uninstall {0}</system:String>
|
||||||
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
<system:String x:Key="fileNotFoundMessage">Unable to find plugin.json from the extracted zip file, or this path {0} does not exist</system:String>
|
||||||
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
<system:String x:Key="pluginExistAlreadyMessage">A plugin with the same ID and version already exists, or the version is greater than this downloaded plugin</system:String>
|
||||||
|
<system:String x:Key="errorCreatingSettingPanel">Error creating setting panel for plugin {0}:{1}{2}</system:String>
|
||||||
|
|
||||||
<!-- Setting Plugin Store -->
|
<!-- Setting Plugin Store -->
|
||||||
<system:String x:Key="pluginStore">插件商店</system:String>
|
<system:String x:Key="pluginStore">插件商店</system:String>
|
||||||
|
|
@ -467,8 +468,10 @@
|
||||||
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
<system:String x:Key="userdatapathButton">Open Folder</system:String>
|
||||||
<system:String x:Key="advanced">Advanced</system:String>
|
<system:String x:Key="advanced">Advanced</system:String>
|
||||||
<system:String x:Key="logLevel">Log Level</system:String>
|
<system:String x:Key="logLevel">Log Level</system:String>
|
||||||
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
<system:String x:Key="LogLevelNONE">Silent</system:String>
|
||||||
|
<system:String x:Key="LogLevelERROR">Error</system:String>
|
||||||
<system:String x:Key="LogLevelINFO">Info</system:String>
|
<system:String x:Key="LogLevelINFO">Info</system:String>
|
||||||
|
<system:String x:Key="LogLevelDEBUG">Debug</system:String>
|
||||||
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
<system:String x:Key="settingWindowFontTitle">Setting Window Font</system:String>
|
||||||
|
|
||||||
<!-- Release Notes Window -->
|
<!-- Release Notes Window -->
|
||||||
|
|
@ -490,6 +493,7 @@
|
||||||
<system:String x:Key="fileManager_file_arg">檔案參數</system:String>
|
<system:String x:Key="fileManager_file_arg">檔案參數</system:String>
|
||||||
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
<system:String x:Key="fileManagerPathNotFound">The file manager '{0}' could not be located at '{1}'. Would you like to continue?</system:String>
|
||||||
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
<system:String x:Key="fileManagerPathError">File Manager Path Error</system:String>
|
||||||
|
<system:String x:Key="fileManagerExplorer">File Explorer</system:String>
|
||||||
|
|
||||||
<!-- DefaultBrowser Setting Dialog -->
|
<!-- DefaultBrowser Setting Dialog -->
|
||||||
<system:String x:Key="defaultBrowserTitle">預設瀏覽器</system:String>
|
<system:String x:Key="defaultBrowserTitle">預設瀏覽器</system:String>
|
||||||
|
|
@ -500,6 +504,8 @@
|
||||||
<system:String x:Key="defaultBrowser_newWindow">新增視窗</system:String>
|
<system:String x:Key="defaultBrowser_newWindow">新增視窗</system:String>
|
||||||
<system:String x:Key="defaultBrowser_newTab">新增分頁</system:String>
|
<system:String x:Key="defaultBrowser_newTab">新增分頁</system:String>
|
||||||
<system:String x:Key="defaultBrowser_parameter">無痕模式</system:String>
|
<system:String x:Key="defaultBrowser_parameter">無痕模式</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_default">Default</system:String>
|
||||||
|
<system:String x:Key="defaultBrowser_new_profile">New Profile</system:String>
|
||||||
|
|
||||||
<!-- Priority Setting Dialog -->
|
<!-- Priority Setting Dialog -->
|
||||||
<system:String x:Key="changePriorityWindow">更改優先度</system:String>
|
<system:String x:Key="changePriorityWindow">更改優先度</system:String>
|
||||||
|
|
|
||||||
|
|
@ -92,7 +92,7 @@
|
||||||
SelectedIndex="{Binding SelectedCustomBrowserIndex}">
|
SelectedIndex="{Binding SelectedCustomBrowserIndex}">
|
||||||
<ComboBox.ItemTemplate>
|
<ComboBox.ItemTemplate>
|
||||||
<DataTemplate>
|
<DataTemplate>
|
||||||
<TextBlock Text="{Binding Name}" />
|
<TextBlock Text="{Binding DisplayName}" />
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
</ComboBox.ItemTemplate>
|
</ComboBox.ItemTemplate>
|
||||||
</ComboBox>
|
</ComboBox>
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
using System.Windows;
|
using System.Windows;
|
||||||
using System.Windows.Controls;
|
using System.Windows.Controls;
|
||||||
using CommunityToolkit.Mvvm.DependencyInjection;
|
using CommunityToolkit.Mvvm.DependencyInjection;
|
||||||
|
using Flow.Launcher.Infrastructure;
|
||||||
using Flow.Launcher.ViewModel;
|
using Flow.Launcher.ViewModel;
|
||||||
|
|
||||||
namespace Flow.Launcher
|
namespace Flow.Launcher
|
||||||
|
|
@ -31,7 +32,7 @@ namespace Flow.Launcher
|
||||||
|
|
||||||
private void btnBrowseFile_Click(object sender, RoutedEventArgs e)
|
private void btnBrowseFile_Click(object sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
var selectedFilePath = _viewModel.SelectFile();
|
var selectedFilePath = Win32Helper.SelectFile();
|
||||||
|
|
||||||
if (!string.IsNullOrEmpty(selectedFilePath))
|
if (!string.IsNullOrEmpty(selectedFilePath))
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -102,7 +102,7 @@
|
||||||
SelectedIndex="{Binding SelectedCustomExplorerIndex}">
|
SelectedIndex="{Binding SelectedCustomExplorerIndex}">
|
||||||
<ComboBox.ItemTemplate>
|
<ComboBox.ItemTemplate>
|
||||||
<DataTemplate>
|
<DataTemplate>
|
||||||
<TextBlock Text="{Binding Name}" />
|
<TextBlock Text="{Binding DisplayName}" />
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
</ComboBox.ItemTemplate>
|
</ComboBox.ItemTemplate>
|
||||||
</ComboBox>
|
</ComboBox>
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@
|
||||||
using System.Windows.Controls;
|
using System.Windows.Controls;
|
||||||
using System.Windows.Navigation;
|
using System.Windows.Navigation;
|
||||||
using CommunityToolkit.Mvvm.DependencyInjection;
|
using CommunityToolkit.Mvvm.DependencyInjection;
|
||||||
|
using Flow.Launcher.Infrastructure;
|
||||||
using Flow.Launcher.ViewModel;
|
using Flow.Launcher.ViewModel;
|
||||||
|
|
||||||
namespace Flow.Launcher
|
namespace Flow.Launcher
|
||||||
|
|
@ -32,13 +33,13 @@ namespace Flow.Launcher
|
||||||
|
|
||||||
private void Hyperlink_RequestNavigate(object sender, RequestNavigateEventArgs e)
|
private void Hyperlink_RequestNavigate(object sender, RequestNavigateEventArgs e)
|
||||||
{
|
{
|
||||||
_viewModel.OpenUrl(e.Uri.AbsoluteUri);
|
App.API.OpenUrl(e.Uri.AbsoluteUri);
|
||||||
e.Handled = true;
|
e.Handled = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void btnBrowseFile_Click(object sender, RoutedEventArgs e)
|
private void btnBrowseFile_Click(object sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
var selectedFilePath = _viewModel.SelectFile();
|
var selectedFilePath = Win32Helper.SelectFile();
|
||||||
|
|
||||||
if (!string.IsNullOrEmpty(selectedFilePath))
|
if (!string.IsNullOrEmpty(selectedFilePath))
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -231,35 +231,41 @@ public partial class SettingsPaneAboutViewModel : BaseModel
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// Firstly, delete plugin cache directories
|
// Check if plugin cache directory exists before attempting to delete
|
||||||
pluginCacheDirectory.EnumerateDirectories("*", SearchOption.TopDirectoryOnly)
|
// Or it will throw DirectoryNotFoundException in `pluginCacheDirectory.EnumerateDirectories`
|
||||||
.ToList()
|
if (pluginCacheDirectory.Exists)
|
||||||
.ForEach(dir =>
|
{
|
||||||
|
// Firstly, delete plugin cache directories
|
||||||
|
pluginCacheDirectory.EnumerateDirectories("*", SearchOption.TopDirectoryOnly)
|
||||||
|
.ToList()
|
||||||
|
.ForEach(dir =>
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// Plugin may create directories in its cache directory
|
||||||
|
dir.Delete(recursive: true);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
App.API.LogException(ClassName, $"Failed to delete cache directory: {dir.Name}", e);
|
||||||
|
success = false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Then, delete plugin directory
|
||||||
|
var dir = pluginCacheDirectory;
|
||||||
|
try
|
||||||
{
|
{
|
||||||
try
|
dir.Delete(recursive: false);
|
||||||
{
|
}
|
||||||
// Plugin may create directories in its cache directory
|
catch (Exception e)
|
||||||
dir.Delete(recursive: true);
|
{
|
||||||
}
|
App.API.LogException(ClassName, $"Failed to delete cache directory: {dir.Name}", e);
|
||||||
catch (Exception e)
|
success = false;
|
||||||
{
|
}
|
||||||
App.API.LogException(ClassName, $"Failed to delete cache directory: {dir.Name}", e);
|
|
||||||
success = false;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// Then, delete plugin directory
|
|
||||||
var dir = GetPluginCacheDir();
|
|
||||||
try
|
|
||||||
{
|
|
||||||
dir.Delete(recursive: false);
|
|
||||||
}
|
|
||||||
catch (Exception e)
|
|
||||||
{
|
|
||||||
App.API.LogException(ClassName, $"Failed to delete cache directory: {dir.Name}", e);
|
|
||||||
success = false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Raise regardless to cover scenario where size needs to be recalculated if the folder is manually removed on disk.
|
||||||
OnPropertyChanged(nameof(CacheFolderSize));
|
OnPropertyChanged(nameof(CacheFolderSize));
|
||||||
|
|
||||||
return success;
|
return success;
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
|
@ -123,7 +123,7 @@ public partial class SettingsPaneGeneralViewModel : BaseModel
|
||||||
}
|
}
|
||||||
|
|
||||||
// This is only required to set at startup. When portable mode enabled/disabled a restart is always required
|
// This is only required to set at startup. When portable mode enabled/disabled a restart is always required
|
||||||
private static bool _portableMode = DataLocation.PortableDataLocationInUse();
|
private static readonly bool _portableMode = DataLocation.PortableDataLocationInUse();
|
||||||
|
|
||||||
public bool PortableMode
|
public bool PortableMode
|
||||||
{
|
{
|
||||||
|
|
@ -219,6 +219,8 @@ public partial class SettingsPaneGeneralViewModel : BaseModel
|
||||||
DropdownDataGeneric<DialogJumpFileResultBehaviours>.UpdateLabels(DialogJumpFileResultBehaviours);
|
DropdownDataGeneric<DialogJumpFileResultBehaviours>.UpdateLabels(DialogJumpFileResultBehaviours);
|
||||||
// Since we are using Binding instead of DynamicResource, we need to manually trigger the update
|
// Since we are using Binding instead of DynamicResource, we need to manually trigger the update
|
||||||
OnPropertyChanged(nameof(AlwaysPreviewToolTip));
|
OnPropertyChanged(nameof(AlwaysPreviewToolTip));
|
||||||
|
Settings.CustomExplorer.OnDisplayNameChanged();
|
||||||
|
Settings.CustomBrowser.OnDisplayNameChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
public string Language
|
public string Language
|
||||||
|
|
|
||||||
|
|
@ -403,7 +403,7 @@
|
||||||
MaxWidth="250"
|
MaxWidth="250"
|
||||||
Margin="10 0 0 0"
|
Margin="10 0 0 0"
|
||||||
Command="{Binding SelectFileManagerCommand}"
|
Command="{Binding SelectFileManagerCommand}"
|
||||||
Content="{Binding Settings.CustomExplorer.Name}" />
|
Content="{Binding Settings.CustomExplorer.DisplayName}" />
|
||||||
</cc:Card>
|
</cc:Card>
|
||||||
|
|
||||||
<cc:Card
|
<cc:Card
|
||||||
|
|
@ -415,7 +415,7 @@
|
||||||
MaxWidth="250"
|
MaxWidth="250"
|
||||||
Margin="10 0 0 0"
|
Margin="10 0 0 0"
|
||||||
Command="{Binding SelectBrowserCommand}"
|
Command="{Binding SelectBrowserCommand}"
|
||||||
Content="{Binding Settings.CustomBrowser.Name}" />
|
Content="{Binding Settings.CustomBrowser.DisplayName}" />
|
||||||
</cc:Card>
|
</cc:Card>
|
||||||
|
|
||||||
<cc:Card Title="{DynamicResource pythonFilePath}" Margin="0 14 0 0">
|
<cc:Card Title="{DynamicResource pythonFilePath}" Margin="0 14 0 0">
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
using System.Threading.Tasks;
|
using System;
|
||||||
|
using System.Threading.Tasks;
|
||||||
using System.Windows;
|
using System.Windows;
|
||||||
using System.Windows.Controls;
|
using System.Windows.Controls;
|
||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
|
|
@ -14,8 +15,13 @@ namespace Flow.Launcher.ViewModel
|
||||||
{
|
{
|
||||||
public partial class PluginViewModel : BaseModel
|
public partial class PluginViewModel : BaseModel
|
||||||
{
|
{
|
||||||
|
private static readonly string ClassName = nameof(PluginViewModel);
|
||||||
|
|
||||||
private static readonly Settings Settings = Ioc.Default.GetRequiredService<Settings>();
|
private static readonly Settings Settings = Ioc.Default.GetRequiredService<Settings>();
|
||||||
|
|
||||||
|
private static readonly Thickness SettingPanelMargin = (Thickness)Application.Current.FindResource("SettingPanelMargin");
|
||||||
|
private static readonly Thickness SettingPanelItemTopBottomMargin = (Thickness)Application.Current.FindResource("SettingPanelItemTopBottomMargin");
|
||||||
|
|
||||||
private readonly PluginPair _pluginPair;
|
private readonly PluginPair _pluginPair;
|
||||||
public PluginPair PluginPair
|
public PluginPair PluginPair
|
||||||
{
|
{
|
||||||
|
|
@ -131,11 +137,30 @@ namespace Flow.Launcher.ViewModel
|
||||||
=> IsExpanded
|
=> IsExpanded
|
||||||
? _settingControl
|
? _settingControl
|
||||||
??= HasSettingControl
|
??= HasSettingControl
|
||||||
? ((ISettingProvider)PluginPair.Plugin).CreateSettingPanel()
|
? TryCreateSettingPanel(PluginPair)
|
||||||
: null
|
: null
|
||||||
: null;
|
: null;
|
||||||
private ImageSource _image = ImageLoader.MissingImage;
|
private ImageSource _image = ImageLoader.MissingImage;
|
||||||
|
|
||||||
|
private static Control TryCreateSettingPanel(PluginPair pair)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// We can safely cast here as we already check this in HasSettingControl
|
||||||
|
return ((ISettingProvider)pair.Plugin).CreateSettingPanel();
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
// Log exception
|
||||||
|
App.API.LogException(ClassName, $"Failed to create setting panel for {pair.Metadata.Name}", e);
|
||||||
|
|
||||||
|
// Show error message in UI
|
||||||
|
var errorMsg = string.Format(App.API.GetTranslation("errorCreatingSettingPanel"),
|
||||||
|
pair.Metadata.Name, Environment.NewLine, e.Message);
|
||||||
|
return CreateErrorSettingPanel(errorMsg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public Visibility ActionKeywordsVisibility => PluginPair.Metadata.HideActionKeywordPanel ?
|
public Visibility ActionKeywordsVisibility => PluginPair.Metadata.HideActionKeywordPanel ?
|
||||||
Visibility.Collapsed : Visibility.Visible;
|
Visibility.Collapsed : Visibility.Visible;
|
||||||
public string InitializeTime => PluginPair.Metadata.InitTime + "ms";
|
public string InitializeTime => PluginPair.Metadata.InitTime + "ms";
|
||||||
|
|
@ -186,5 +211,28 @@ namespace Flow.Launcher.ViewModel
|
||||||
var changeKeywordsWindow = new ActionKeywords(this);
|
var changeKeywordsWindow = new ActionKeywords(this);
|
||||||
changeKeywordsWindow.ShowDialog();
|
changeKeywordsWindow.ShowDialog();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static UserControl CreateErrorSettingPanel(string text)
|
||||||
|
{
|
||||||
|
var grid = new Grid()
|
||||||
|
{
|
||||||
|
Margin = SettingPanelMargin
|
||||||
|
};
|
||||||
|
var textBox = new TextBox
|
||||||
|
{
|
||||||
|
Text = text,
|
||||||
|
IsReadOnly = true,
|
||||||
|
HorizontalAlignment = HorizontalAlignment.Stretch,
|
||||||
|
VerticalAlignment = VerticalAlignment.Top,
|
||||||
|
TextWrapping = TextWrapping.Wrap,
|
||||||
|
Margin = SettingPanelItemTopBottomMargin
|
||||||
|
};
|
||||||
|
textBox.SetResourceReference(TextBox.ForegroundProperty, "Color04B");
|
||||||
|
grid.Children.Add(textBox);
|
||||||
|
return new UserControl
|
||||||
|
{
|
||||||
|
Content = grid
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -17,8 +17,13 @@ public partial class SelectBrowserViewModel : BaseModel
|
||||||
get => selectedCustomBrowserIndex;
|
get => selectedCustomBrowserIndex;
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
selectedCustomBrowserIndex = value;
|
// When one custom browser is selected and removed, the index will become -1, so we need to ignore this change
|
||||||
OnPropertyChanged(nameof(CustomBrowser));
|
if (value < 0) return;
|
||||||
|
if (selectedCustomBrowserIndex != value)
|
||||||
|
{
|
||||||
|
selectedCustomBrowserIndex = value;
|
||||||
|
OnPropertyChanged(nameof(CustomBrowser));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -40,22 +45,12 @@ public partial class SelectBrowserViewModel : BaseModel
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
internal string SelectFile()
|
|
||||||
{
|
|
||||||
var dlg = new Microsoft.Win32.OpenFileDialog();
|
|
||||||
var result = dlg.ShowDialog();
|
|
||||||
if (result == true)
|
|
||||||
return dlg.FileName;
|
|
||||||
|
|
||||||
return string.Empty;
|
|
||||||
}
|
|
||||||
|
|
||||||
[RelayCommand]
|
[RelayCommand]
|
||||||
private void Add()
|
private void Add()
|
||||||
{
|
{
|
||||||
CustomBrowsers.Add(new()
|
CustomBrowsers.Add(new()
|
||||||
{
|
{
|
||||||
Name = "New Profile"
|
Name = App.API.GetTranslation("defaultBrowser_new_profile")
|
||||||
});
|
});
|
||||||
SelectedCustomBrowserIndex = CustomBrowsers.Count - 1;
|
SelectedCustomBrowserIndex = CustomBrowsers.Count - 1;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,8 @@ public partial class SelectFileManagerViewModel : BaseModel
|
||||||
get => selectedCustomExplorerIndex;
|
get => selectedCustomExplorerIndex;
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
|
// When one custom file manager is selected and removed, the index will become -1, so we need to ignore this change
|
||||||
|
if (value < 0) return;
|
||||||
if (selectedCustomExplorerIndex != value)
|
if (selectedCustomExplorerIndex != value)
|
||||||
{
|
{
|
||||||
selectedCustomExplorerIndex = value;
|
selectedCustomExplorerIndex = value;
|
||||||
|
|
@ -98,27 +100,12 @@ public partial class SelectFileManagerViewModel : BaseModel
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
internal void OpenUrl(string absoluteUri)
|
|
||||||
{
|
|
||||||
App.API.OpenUrl(absoluteUri);
|
|
||||||
}
|
|
||||||
|
|
||||||
internal string SelectFile()
|
|
||||||
{
|
|
||||||
var dlg = new Microsoft.Win32.OpenFileDialog();
|
|
||||||
var result = dlg.ShowDialog();
|
|
||||||
if (result == true)
|
|
||||||
return dlg.FileName;
|
|
||||||
|
|
||||||
return string.Empty;
|
|
||||||
}
|
|
||||||
|
|
||||||
[RelayCommand]
|
[RelayCommand]
|
||||||
private void Add()
|
private void Add()
|
||||||
{
|
{
|
||||||
CustomExplorers.Add(new()
|
CustomExplorers.Add(new()
|
||||||
{
|
{
|
||||||
Name = "New Profile"
|
Name = App.API.GetTranslation("defaultBrowser_new_profile")
|
||||||
});
|
});
|
||||||
SelectedCustomExplorerIndex = CustomExplorers.Count - 1;
|
SelectedCustomExplorerIndex = CustomExplorers.Count - 1;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -16,9 +16,9 @@
|
||||||
},
|
},
|
||||||
"Fody": {
|
"Fody": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[6.9.2, )",
|
"requested": "[6.9.3, )",
|
||||||
"resolved": "6.9.2",
|
"resolved": "6.9.3",
|
||||||
"contentHash": "YBHobPGogb0vYhGYIxn/ndWqTjNWZveDi5jdjrcshL2vjwU3gQGyDeI7vGgye+2rAM5fGRvlLgNWLW3DpviS/w=="
|
"contentHash": "1CUGgFdyECDKgi5HaUBhdv6k+VG9Iy4OCforGfHyar3xQXAJypZkzymgKtWj/4SPd6nSG0Qi7NH71qHrDSZLaA=="
|
||||||
},
|
},
|
||||||
"MdXaml": {
|
"MdXaml": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
|
|
@ -71,41 +71,41 @@
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.DependencyInjection": {
|
"Microsoft.Extensions.DependencyInjection": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[9.0.7, )",
|
"requested": "[9.0.9, )",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "i05AYA91vgq0as84ROVCyltD2gnxaba/f1Qw2rG7mUsS0gv8cPTr1Gm7jPQHq7JTr4MJoQUcanLVs16tIOUJaQ==",
|
"contentHash": "zQV2WOSP+3z1EuK91ULxfGgo2Y75bTRnmJHp08+w/YXAyekZutX/qCd88/HOMNh35MDW9mJJJxPpMPS+1Rww8A==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7"
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Hosting": {
|
"Microsoft.Extensions.Hosting": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[9.0.7, )",
|
"requested": "[9.0.9, )",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "Dkv55VfitwJjPUk9mFHxT9MJAd8su7eJNaCHhBU/Y9xFqw3ZNHwrpeptXeaXiaPtfQq+alMmawIz1Impk5pHkQ==",
|
"contentHash": "DmRsWH3g8yZGho/pLQ79hxhM2ctE1eDTZ/HbAnrD/uw8m+P2pRRJOoBVxlrhbhMP3/y3oAJoy0yITasfmilbTg==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Configuration": "9.0.7",
|
"Microsoft.Extensions.Configuration": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Configuration.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.Binder": "9.0.7",
|
"Microsoft.Extensions.Configuration.Binder": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.CommandLine": "9.0.7",
|
"Microsoft.Extensions.Configuration.CommandLine": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.EnvironmentVariables": "9.0.7",
|
"Microsoft.Extensions.Configuration.EnvironmentVariables": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.FileExtensions": "9.0.7",
|
"Microsoft.Extensions.Configuration.FileExtensions": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.Json": "9.0.7",
|
"Microsoft.Extensions.Configuration.Json": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.UserSecrets": "9.0.7",
|
"Microsoft.Extensions.Configuration.UserSecrets": "9.0.9",
|
||||||
"Microsoft.Extensions.DependencyInjection": "9.0.7",
|
"Microsoft.Extensions.DependencyInjection": "9.0.9",
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Diagnostics": "9.0.7",
|
"Microsoft.Extensions.Diagnostics": "9.0.9",
|
||||||
"Microsoft.Extensions.FileProviders.Abstractions": "9.0.7",
|
"Microsoft.Extensions.FileProviders.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.FileProviders.Physical": "9.0.7",
|
"Microsoft.Extensions.FileProviders.Physical": "9.0.9",
|
||||||
"Microsoft.Extensions.Hosting.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Hosting.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging": "9.0.7",
|
"Microsoft.Extensions.Logging": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Logging.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.Configuration": "9.0.7",
|
"Microsoft.Extensions.Logging.Configuration": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.Console": "9.0.7",
|
"Microsoft.Extensions.Logging.Console": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.Debug": "9.0.7",
|
"Microsoft.Extensions.Logging.Debug": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.EventLog": "9.0.7",
|
"Microsoft.Extensions.Logging.EventLog": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.EventSource": "9.0.7",
|
"Microsoft.Extensions.Logging.EventSource": "9.0.9",
|
||||||
"Microsoft.Extensions.Options": "9.0.7"
|
"Microsoft.Extensions.Options": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Toolkit.Uwp.Notifications": {
|
"Microsoft.Toolkit.Uwp.Notifications": {
|
||||||
|
|
@ -154,9 +154,9 @@
|
||||||
},
|
},
|
||||||
"VirtualizingWrapPanel": {
|
"VirtualizingWrapPanel": {
|
||||||
"type": "Direct",
|
"type": "Direct",
|
||||||
"requested": "[2.3.0, )",
|
"requested": "[2.3.1, )",
|
||||||
"resolved": "2.3.0",
|
"resolved": "2.3.1",
|
||||||
"contentHash": "Dpmtcpn2HqAWZR0NkN7Qd4YCjf+sdQcemIMKm2suZVbOIB9NsmKZnYaQDIpXWTh87a9+nArVto6Od1cM2ohzCQ=="
|
"contentHash": "imph3SJqFFgX8vc7XRBcftfgzIL7Q+uE0Tvk7dbY0KY0tcqUCs0ZmKV3Gt9QX2745v6bSw6ns8UHpXtiptHqdA=="
|
||||||
},
|
},
|
||||||
"AvalonEdit": {
|
"AvalonEdit": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
|
|
@ -196,8 +196,8 @@
|
||||||
},
|
},
|
||||||
"FSharp.Core": {
|
"FSharp.Core": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.300",
|
"resolved": "9.0.303",
|
||||||
"contentHash": "TVt2J7RCE1KCS2IaONF+p8/KIZ1eHNbW+7qmKF6hGoD4tXl+o07ja1mPtFjMqRa5uHMFaTrGTPn/m945WnDLiQ=="
|
"contentHash": "6JlV8aD8qQvcmfoe/PMOxCHXc0uX4lR23u0fAyQtnVQxYULLoTZgwgZHSnRcuUHOvS3wULFWcwdnP1iwslH60g=="
|
||||||
},
|
},
|
||||||
"HtmlAgilityPack": {
|
"HtmlAgilityPack": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
|
|
@ -211,8 +211,8 @@
|
||||||
},
|
},
|
||||||
"JetBrains.Annotations": {
|
"JetBrains.Annotations": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "2024.3.0",
|
"resolved": "2025.2.2",
|
||||||
"contentHash": "ox5pkeLQXjvJdyAB4b2sBYAlqZGLh3PjSnP1bQNVx72ONuTJ9+34/+Rq91Fc0dG29XG9RgZur9+NcP4riihTug=="
|
"contentHash": "0X56ZRizuHdrnPpgXjWV7f2tQO1FlQg5O1967OGKnI/4ZRNOK642J8L7brM1nYvrxTTU5TP1yRyXLRLaXLPQ8A=="
|
||||||
},
|
},
|
||||||
"MemoryPack": {
|
"MemoryPack": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
|
|
@ -249,249 +249,249 @@
|
||||||
},
|
},
|
||||||
"Meziantou.Framework.Win32.Jobs": {
|
"Meziantou.Framework.Win32.Jobs": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "3.4.3",
|
"resolved": "3.4.4",
|
||||||
"contentHash": "REjInKnQ0OrhjjtSMPQtLtdURctCroB4L8Sd2gjTOYDysklvsdnrStx1tHS7uLv+fSyFF3aazZmo5Ka0v1oz/w=="
|
"contentHash": "AivBzH5wM1NHBLehclim+o37SmireP7JxCRUoTilsc/h7LH9+YCPjb6Ig6y0khnQhFcO1P8RHYw4oiR15TGHUg=="
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Configuration": {
|
"Microsoft.Extensions.Configuration": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "oxGR51+w5cXm5B9gU6XwpAB2sTiyPSmZm7hjvv0rzRnmL5o/KZzE103AuQj7sK26OBupjVzU/bZxDWvvU4nhEg==",
|
"contentHash": "w87wF/90/VI0ZQBhf4rbMEeyEy0vi2WKjFmACsNAKNaorY+ZlVz7ddyXkbADvaWouMKffNmR0yQOGcrvSSvKGg==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Configuration.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
"Microsoft.Extensions.Primitives": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Configuration.Abstractions": {
|
"Microsoft.Extensions.Configuration.Abstractions": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "lut/kiVvNsQ120VERMUYSFhpXPpKjjql+giy03LesASPBBcC0o6+aoFdzJH9GaYpFTQ3fGVhVjKjvJDoAW5/IQ==",
|
"contentHash": "p5RKAY9POvs3axwA/AQRuJeM8AHuE8h4qbP1NxQeGm0ep46aXz1oCLAp/oOYxX1GsjStgdhHrN3XXLLXr0+b3w==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
"Microsoft.Extensions.Primitives": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Configuration.Binder": {
|
"Microsoft.Extensions.Configuration.Binder": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "ExY+zXHhU4o9KC2alp3ZdLWyVWVRSn5INqax5ABk+HEOHlAHzomhJ7ek9HHliyOMiVGoYWYaMFOGr9q59mSAGA==",
|
"contentHash": "6SIp/6Bngk4jm2W36JekZbiIbFPdE/eMUtrJEqIqHGpd1zar3jvgnwxnpWQfzUiGrkyY8q8s6V82zkkEZozghA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7"
|
"Microsoft.Extensions.Configuration.Abstractions": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Configuration.CommandLine": {
|
"Microsoft.Extensions.Configuration.CommandLine": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "LqwdkMNFeRyuqExewBSaWj8roEgZH8JQ9zEAmHl5ZFcnhCvjAdHICdYVRIiSEq9RWGB731LL8kZJM8tdTKEscA==",
|
"contentHash": "9bzGOcHoTi8ijrj0MHh5qUY6n9CuittZUqEOj5iE0ZJoSCfG0BI9nhcpd8MC9bOOgjZW5OeizKO8rgta9lSVyA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Configuration": "9.0.7",
|
"Microsoft.Extensions.Configuration": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7"
|
"Microsoft.Extensions.Configuration.Abstractions": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Configuration.EnvironmentVariables": {
|
"Microsoft.Extensions.Configuration.EnvironmentVariables": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "R8kgazVpDr4k1K7MeWPLAwsi5VpwrhE3ubXK38D9gpHEvf9XhZhJ8kWHKK00LDg5hJ7pMQLggdZ7XFdQ5182Ug==",
|
"contentHash": "AB8suTh4STAMGDkPer5vL0YNp09eplvbkIbOfFJ1z8D1zOiFF8Hipk9FhCLU4Ea6TosWmGrK30ZIUO9KvAeFcg==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Configuration": "9.0.7",
|
"Microsoft.Extensions.Configuration": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7"
|
"Microsoft.Extensions.Configuration.Abstractions": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Configuration.FileExtensions": {
|
"Microsoft.Extensions.Configuration.FileExtensions": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "3LVg32iMfR9ENeegXAo73L+877iOcQauLJsXlKZNVSsLA/HbPgClZdeMGdjLSkaidYw3l02XbXTlOdGYNgu91Q==",
|
"contentHash": "fvgubCs++wTowHWuQ5TAyZV0S6ldA59U+tBVqFr4/WLd0oEf6ESbdBN2CFaVdn4sZqnarqMnl2O3++RG/Jrf/w==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Configuration": "9.0.7",
|
"Microsoft.Extensions.Configuration": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Configuration.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.FileProviders.Abstractions": "9.0.7",
|
"Microsoft.Extensions.FileProviders.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.FileProviders.Physical": "9.0.7",
|
"Microsoft.Extensions.FileProviders.Physical": "9.0.9",
|
||||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
"Microsoft.Extensions.Primitives": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Configuration.Json": {
|
"Microsoft.Extensions.Configuration.Json": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "3HQV326liEInT9UKEc+k73f1ECwNhvDS/DJAe5WvtMKDJTJqTH2ujrUC2ZlK/j6pXyPbV9f0Ku8JB20JveGImg==",
|
"contentHash": "PiPYo1GTinR2ECM80zYdZUIFmde6jj5DryXUcOJg3yIjh+KQMQr42e+COD03QUsUiqNkJk511wVTnVpTm2AVZA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Configuration": "9.0.7",
|
"Microsoft.Extensions.Configuration": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Configuration.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.FileExtensions": "9.0.7",
|
"Microsoft.Extensions.Configuration.FileExtensions": "9.0.9",
|
||||||
"Microsoft.Extensions.FileProviders.Abstractions": "9.0.7"
|
"Microsoft.Extensions.FileProviders.Abstractions": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Configuration.UserSecrets": {
|
"Microsoft.Extensions.Configuration.UserSecrets": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "ouDuPgRdeF4TJXKUh+lbm6QwyWwnCy+ijiqfFM2cI5NmW83MwKg1WNp2nCdMVcwQW8wJXteF/L9lA6ZPS3bCIQ==",
|
"contentHash": "bFaNxfU8gQJX3K/Dd6XT0YIJ5ZVihdAY6Z02p2nVTUHjUsaWflLIucZOgB/ecSNnN3zbbBEf1oFC7q5NHTZIHw==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Configuration.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.Json": "9.0.7",
|
"Microsoft.Extensions.Configuration.Json": "9.0.9",
|
||||||
"Microsoft.Extensions.FileProviders.Abstractions": "9.0.7",
|
"Microsoft.Extensions.FileProviders.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.FileProviders.Physical": "9.0.7"
|
"Microsoft.Extensions.FileProviders.Physical": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": {
|
"Microsoft.Extensions.DependencyInjection.Abstractions": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "iPK1FxbGFr2Xb+4Y+dTYI8Gupu9pOi8I3JPuPsrogUmEhe2hzZ9LpCmolMEBhVDo2ikcSr7G5zYiwaapHSQTew=="
|
"contentHash": "/hymojfWbE9AlDOa0mczR44m00Jj+T3+HZO0ZnVTI032fVycI0ZbNOVFP6kqZMcXiLSYXzR2ilcwaRi6dzeGyA=="
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Diagnostics": {
|
"Microsoft.Extensions.Diagnostics": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "6ykfInm6yw7pPHJACgnrPUXxUWVslFnzad44K/siXk6Ovan6fNMnXxI5X9vphHJuZ4JbMOdPIgsfTmLD+Dyxug==",
|
"contentHash": "gtzl9SD6CvFYOb92qEF41Z9rICzYniM342TWbbJwN3eLS6a5fCLFvO1pQGtpMSnP3h1zHXupMEeKSA9musWYCQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Configuration": "9.0.7",
|
"Microsoft.Extensions.Configuration": "9.0.9",
|
||||||
"Microsoft.Extensions.Diagnostics.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Diagnostics.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Options.ConfigurationExtensions": "9.0.7"
|
"Microsoft.Extensions.Options.ConfigurationExtensions": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Diagnostics.Abstractions": {
|
"Microsoft.Extensions.Diagnostics.Abstractions": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "d39Ov1JpeWCGLCOTinlaDkujhrSAQ0HFxb7Su1BjhCKBfmDcQ6Ia1i3JI6kd3NFgwi1dexTunu82daDNwt7E6w==",
|
"contentHash": "YHGmxccrVZ2Ar3eI+/NdbOHkd1/HzrHvmQ5yBsp0Gl7jTyBe6qcXNYjUt9v9JIO+Z14la44+YYEe63JSqs1fYg==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Options": "9.0.7"
|
"Microsoft.Extensions.Options": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.FileProviders.Abstractions": {
|
"Microsoft.Extensions.FileProviders.Abstractions": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "y9djCca1cz/oz/J8jTxtoecNiNvaiGBJeWd7XOPxonH+FnfHqcfslJMcSr5JMinmWFyS7eh3C9L6m6oURZ5lSA==",
|
"contentHash": "M1ZhL9QkBQ/k6l/Wjgcli5zrV86HzytQ+gQiNtk9vs9Ge1fb17KKZil9T6jd15p2x/BGfXpup7Hg55CC0kkfig==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
"Microsoft.Extensions.Primitives": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.FileProviders.Physical": {
|
"Microsoft.Extensions.FileProviders.Physical": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "JYEPYrb+YBpFTCdmSBrk8cg3wAi1V4so7ccq04qbhg3FQHQqgJk28L3heEOKMXcZobOBUjTnGCFJD49Ez9kG5w==",
|
"contentHash": "sRrPtEwbK23OCFOQ36Xn6ofiB0/nl54/BOdR7lJ/Vwg3XlyvUdmyXvFUS1EU5ltn+sQtbcPuy1l0hsysO8++SQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.FileProviders.Abstractions": "9.0.7",
|
"Microsoft.Extensions.FileProviders.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.FileSystemGlobbing": "9.0.7",
|
"Microsoft.Extensions.FileSystemGlobbing": "9.0.9",
|
||||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
"Microsoft.Extensions.Primitives": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.FileSystemGlobbing": {
|
"Microsoft.Extensions.FileSystemGlobbing": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "5VKpTH2ME0SSs0lrtkpKgjCeHzXR5ka/H+qThPwuWi78wHubApZ/atD7w69FDt0OOM7UMV6LIbkqEQgoby4IXA=="
|
"contentHash": "iQAgORaVIlkhcpxFnVEfjqNWfQCwBEEH7x2IanTwGafA6Tb4xiBoDWySTxUo3MV2NUV/PmwS/8OhT/elPnJCnw=="
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Hosting.Abstractions": {
|
"Microsoft.Extensions.Hosting.Abstractions": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "yG2JCXAR+VqI1mKqynLPNJlNlrUJeEISEpX4UznOp2uM4IEFz3pDDauzyMvTjICutEJtOigJ1yWBvxbaIlibBw==",
|
"contentHash": "ORA4dICNz7cuwupPkjXpSuoiK6GMg0aygInBIQCCFEimwoHntRKdJqB59faxq2HHJuTPW3NsZm5EjN5P5Zh6nQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Configuration.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Diagnostics.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Diagnostics.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.FileProviders.Abstractions": "9.0.7",
|
"Microsoft.Extensions.FileProviders.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7"
|
"Microsoft.Extensions.Logging.Abstractions": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Logging": {
|
"Microsoft.Extensions.Logging": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "fdIeQpXYV8yxSWG03cCbU2Otdrq4NWuhnQLXokWLv3L9YcK055E7u8WFJvP+uuP4CFeCEoqZQL4yPcjuXhCZrg==",
|
"contentHash": "MaCB0Y9hNDs4YLu3HCJbo199WnJT8xSgajG1JYGANz9FkseQ5f3v/llu3HxLI6mjDlu7pa7ps9BLPWjKzsAAzQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.DependencyInjection": "9.0.7",
|
"Microsoft.Extensions.DependencyInjection": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Logging.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Options": "9.0.7"
|
"Microsoft.Extensions.Options": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Logging.Abstractions": {
|
"Microsoft.Extensions.Logging.Abstractions": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "sMM6NEAdUTE/elJ2wqjOi0iBWqZmSyaTByLF9e8XHv6DRJFFnOe0N+s8Uc6C91E4SboQCfLswaBIZ+9ZXA98AA==",
|
"contentHash": "FEgpSF+Z9StMvrsSViaybOBwR0f0ZZxDm8xV5cSOFiXN/t+ys+rwAlTd/6yG7Ld1gfppgvLcMasZry3GsI9lGA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7"
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Logging.Configuration": {
|
"Microsoft.Extensions.Logging.Configuration": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "AEBty9rvFGvdFRqgIDEhQmiCnIfQWyzVoOZrO244cfu+n9M+wI1QLDpuROVILlplIBtLVmOezAF7d1H3Qog6Xw==",
|
"contentHash": "Abuo+S0Sg+Ke6vzSh5Ell+lwJJM+CEIqg1ImtWnnqF6a/ibJkQnmFJi4/ekEw/0uAcdFKJXtGV7w6cFN0nyXeg==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Configuration": "9.0.7",
|
"Microsoft.Extensions.Configuration": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Configuration.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.Binder": "9.0.7",
|
"Microsoft.Extensions.Configuration.Binder": "9.0.9",
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging": "9.0.7",
|
"Microsoft.Extensions.Logging": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Logging.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Options": "9.0.7",
|
"Microsoft.Extensions.Options": "9.0.9",
|
||||||
"Microsoft.Extensions.Options.ConfigurationExtensions": "9.0.7"
|
"Microsoft.Extensions.Options.ConfigurationExtensions": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Logging.Console": {
|
"Microsoft.Extensions.Logging.Console": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "pEHlNa8iCfKsBFA3YVDn/8EicjSU/m8uDfyoR0i4svONDss4Yu9Kznw53E/TyI+TveTo7CwRid4kfd4pLYXBig==",
|
"contentHash": "x3+W7IfW9Tg3sV+sU9N1039M4CqklaAecwhz9qNtjOCBdmg7h96JaL+NAvhYgZgweVJTJaxAvuO8I+ZZehE7Pg==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging": "9.0.7",
|
"Microsoft.Extensions.Logging": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Logging.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.Configuration": "9.0.7",
|
"Microsoft.Extensions.Logging.Configuration": "9.0.9",
|
||||||
"Microsoft.Extensions.Options": "9.0.7"
|
"Microsoft.Extensions.Options": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Logging.Debug": {
|
"Microsoft.Extensions.Logging.Debug": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "MxzZj7XbsYJwfjclVTjJym2/nVIkksu7l7tC/4HYy+YRdDmpE4B+hTzCXu3BNfLNhdLPZsWpyXuYe6UGgWDm3g==",
|
"contentHash": "q8IbjIzTjfaGfuf9LAuG3X9BytAWj2hWhLU61rEkit847oaSSbcdx/yybY3yL9RgVG1u9ctk7kbCv18M+7Fi6Q==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging": "9.0.7",
|
"Microsoft.Extensions.Logging": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7"
|
"Microsoft.Extensions.Logging.Abstractions": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Logging.EventLog": {
|
"Microsoft.Extensions.Logging.EventLog": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "usrMVsY7c8M8fESt34Y3eEIQIlRlKXfPDlI+vYEb6xT7SUjhua2ey3NpHgQktiTgz8Uo5RiWqGD8ieiyo2WaDA==",
|
"contentHash": "1SX5+mv16SBb5NrtLNxIvUt8PHbdvDloZazQdxz1CNM39jG7yeF6olH3sceQ4ONF0oVD5mVUsTag0iVX4xgyog==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging": "9.0.7",
|
"Microsoft.Extensions.Logging": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Logging.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Options": "9.0.7",
|
"Microsoft.Extensions.Options": "9.0.9",
|
||||||
"System.Diagnostics.EventLog": "9.0.7"
|
"System.Diagnostics.EventLog": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Logging.EventSource": {
|
"Microsoft.Extensions.Logging.EventSource": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "/wwi6ckTEegCExFV6gVToCO7CvysZnmE50fpdkYUsSMh0ue9vRkQ7uOqkHyHol93ASYTEahrp+guMtS/+fZKaA==",
|
"contentHash": "rGQi5mImot7tTFxj1tQWknWjOBHX1+gsX1WLmQNl5WHr4Sx1kXUBGDuRUjfx4c8pe/hcYHdalAmgk7RdusW6Jw==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging": "9.0.7",
|
"Microsoft.Extensions.Logging": "9.0.9",
|
||||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Logging.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Options": "9.0.7",
|
"Microsoft.Extensions.Options": "9.0.9",
|
||||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
"Microsoft.Extensions.Primitives": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Options": {
|
"Microsoft.Extensions.Options": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "trJnF6cRWgR5uMmHpGoHmM1wOVFdIYlELlkO9zX+RfieK0321Y55zrcs4AaEymKup7dxgEN/uJU25CAcMNQRXw==",
|
"contentHash": "loxGGHE1FC2AefwPHzrjPq7X92LQm64qnU/whKfo6oWaceewPUVYQJBJs3S3E2qlWwnCpeZ+dGCPTX+5dgVAuQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
"Microsoft.Extensions.Primitives": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Options.ConfigurationExtensions": {
|
"Microsoft.Extensions.Options.ConfigurationExtensions": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "pE/jeAWHEIy/8HsqYA+I1+toTsdvsv+WywAcRoNSvPoFwjOREa8Fqn7D0/i0PbiXsDLFupltTTctliePx8ib4w==",
|
"contentHash": "n4DCdnn2qs6V5U06Sx62FySEAZsJiJJgOzrPHDh9hPK7c2W8hEabC76F3Re3tGPjpiKa02RvB6FxZyxo8iICzg==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7",
|
"Microsoft.Extensions.Configuration.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Configuration.Binder": "9.0.7",
|
"Microsoft.Extensions.Configuration.Binder": "9.0.9",
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.9",
|
||||||
"Microsoft.Extensions.Options": "9.0.7",
|
"Microsoft.Extensions.Options": "9.0.9",
|
||||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
"Microsoft.Extensions.Primitives": "9.0.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Microsoft.Extensions.Primitives": {
|
"Microsoft.Extensions.Primitives": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "ti/zD9BuuO50IqlvhWQs9GHxkCmoph5BHjGiWKdg2t6Or8XoyAfRJiKag+uvd/fpASnNklfsB01WpZ4fhAe0VQ=="
|
"contentHash": "z4pyMePOrl733ltTowbN565PxBw1oAr8IHmIXNDiDqd22nFpYltX9KhrNC/qBWAG1/Zx5MHX+cOYhWJQYCO/iw=="
|
||||||
},
|
},
|
||||||
"Microsoft.IO.RecyclableMemoryStream": {
|
"Microsoft.IO.RecyclableMemoryStream": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
|
|
@ -590,15 +590,15 @@
|
||||||
},
|
},
|
||||||
"NLog": {
|
"NLog": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "6.0.1",
|
"resolved": "6.0.4",
|
||||||
"contentHash": "qDWiqy8/xdpZKtHna/645KbalwP86N2NFJEzfqhcv+Si4V2iNaEfR/dCneuF/4+Dcwl3f7jHMXj3ndWYftV3Ug=="
|
"contentHash": "Xr+lIk1ZlTTFXEqnxQVLxrDqZlt2tm5X+/AhJbaY2emb/dVtGDiU5QuEtj3gHtwV/SWlP/rJ922I/BPuOJXlRw=="
|
||||||
},
|
},
|
||||||
"NLog.OutputDebugString": {
|
"NLog.OutputDebugString": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "6.0.1",
|
"resolved": "6.0.4",
|
||||||
"contentHash": "wwJCQLaHVzuRf8TsXB+EEdrzVvE3dnzCSMQMDgwkw3AXp8VSp3JSVF/Q/H0oEqggKgKhPs13hh3a7svyQr4s3A==",
|
"contentHash": "TOP2Ap9BbE98B/l/TglnguowOD0rXo8B/20xAgvj9shO/kf6IJ5M4QMhVxq72mrneJ/ANhHY7Jcd+xJbzuI5PA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"NLog": "6.0.1"
|
"NLog": "6.0.4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"runtime.osx.10.10-x64.CoreCompat.System.Drawing": {
|
"runtime.osx.10.10-x64.CoreCompat.System.Drawing": {
|
||||||
|
|
@ -608,8 +608,8 @@
|
||||||
},
|
},
|
||||||
"SharpVectors.Wpf": {
|
"SharpVectors.Wpf": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "1.8.4.2",
|
"resolved": "1.8.5",
|
||||||
"contentHash": "PNxLkMBJnV8A+6yH9OqOlhLJegvWP/dvh0rAJp2l0kcrR+rB4R2tQ9vhUqka+UilH4atN8T6zvjDOizVyfz2Ng=="
|
"contentHash": "WURdBDq5AE8RjKV9pFS7lNkJe81gxja9SaMGE4URq9GJUZ6M+5DGUL0Lm3B0iYW2/Meyowaz4ffGsyW+RBSTtg=="
|
||||||
},
|
},
|
||||||
"Splat": {
|
"Splat": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
|
|
@ -672,8 +672,8 @@
|
||||||
},
|
},
|
||||||
"System.Diagnostics.EventLog": {
|
"System.Diagnostics.EventLog": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
"resolved": "9.0.7",
|
"resolved": "9.0.9",
|
||||||
"contentHash": "AJ+9fyCtQUImntxAJ9l4PZiCd4iepuk4pm7Qcno7PBIWQnfXlvwKuFsGk2H+QyY69GUVzDP2heELW6ho5BCXUg=="
|
"contentHash": "wpsUfnyv8E5K4WQaok6weewvAbQhcLwXFcHBm5U0gdEaBs85N//ssuYvRPFWwz2rO/9/DFP3A1sGMzUFBj8y3w=="
|
||||||
},
|
},
|
||||||
"System.Drawing.Common": {
|
"System.Drawing.Common": {
|
||||||
"type": "Transitive",
|
"type": "Transitive",
|
||||||
|
|
@ -838,10 +838,10 @@
|
||||||
"type": "Project",
|
"type": "Project",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"Droplex": "[1.7.0, )",
|
"Droplex": "[1.7.0, )",
|
||||||
"FSharp.Core": "[9.0.300, )",
|
"FSharp.Core": "[9.0.303, )",
|
||||||
"Flow.Launcher.Infrastructure": "[1.0.0, )",
|
"Flow.Launcher.Infrastructure": "[1.0.0, )",
|
||||||
"Flow.Launcher.Plugin": "[4.7.0, )",
|
"Flow.Launcher.Plugin": "[5.0.0, )",
|
||||||
"Meziantou.Framework.Win32.Jobs": "[3.4.3, )",
|
"Meziantou.Framework.Win32.Jobs": "[3.4.4, )",
|
||||||
"Microsoft.IO.RecyclableMemoryStream": "[3.0.1, )",
|
"Microsoft.IO.RecyclableMemoryStream": "[3.0.1, )",
|
||||||
"SemanticVersioning": "[3.0.0, )",
|
"SemanticVersioning": "[3.0.0, )",
|
||||||
"StreamJsonRpc": "[2.22.11, )",
|
"StreamJsonRpc": "[2.22.11, )",
|
||||||
|
|
@ -854,14 +854,14 @@
|
||||||
"Ben.Demystifier": "[0.4.1, )",
|
"Ben.Demystifier": "[0.4.1, )",
|
||||||
"BitFaster.Caching": "[2.5.4, )",
|
"BitFaster.Caching": "[2.5.4, )",
|
||||||
"CommunityToolkit.Mvvm": "[8.4.0, )",
|
"CommunityToolkit.Mvvm": "[8.4.0, )",
|
||||||
"Flow.Launcher.Plugin": "[4.7.0, )",
|
"Flow.Launcher.Plugin": "[5.0.0, )",
|
||||||
"InputSimulator": "[1.0.4, )",
|
"InputSimulator": "[1.0.4, )",
|
||||||
"MemoryPack": "[1.21.4, )",
|
"MemoryPack": "[1.21.4, )",
|
||||||
"Microsoft.VisualStudio.Threading": "[17.14.15, )",
|
"Microsoft.VisualStudio.Threading": "[17.14.15, )",
|
||||||
"NHotkey.Wpf": "[3.0.0, )",
|
"NHotkey.Wpf": "[3.0.0, )",
|
||||||
"NLog": "[6.0.1, )",
|
"NLog": "[6.0.4, )",
|
||||||
"NLog.OutputDebugString": "[6.0.1, )",
|
"NLog.OutputDebugString": "[6.0.4, )",
|
||||||
"SharpVectors.Wpf": "[1.8.4.2, )",
|
"SharpVectors.Wpf": "[1.8.5, )",
|
||||||
"System.Drawing.Common": "[7.0.0, )",
|
"System.Drawing.Common": "[7.0.0, )",
|
||||||
"ToolGood.Words.Pinyin": "[3.1.0.3, )"
|
"ToolGood.Words.Pinyin": "[3.1.0.3, )"
|
||||||
}
|
}
|
||||||
|
|
@ -869,7 +869,7 @@
|
||||||
"flow.launcher.plugin": {
|
"flow.launcher.plugin": {
|
||||||
"type": "Project",
|
"type": "Project",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"JetBrains.Annotations": "[2024.3.0, )"
|
"JetBrains.Annotations": "[2025.2.2, )"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<OutputType>Library</OutputType>
|
<OutputType>Library</OutputType>
|
||||||
|
|
@ -34,6 +34,7 @@
|
||||||
<ErrorReport>prompt</ErrorReport>
|
<ErrorReport>prompt</ErrorReport>
|
||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
<Prefer32Bit>false</Prefer32Bit>
|
<Prefer32Bit>false</Prefer32Bit>
|
||||||
|
<NoWarn>$(NoWarn);FLSG0007</NoWarn>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<Target Name="RemoveUnnecessaryRuntimesAfterBuild" AfterTargets="Build">
|
<Target Name="RemoveUnnecessaryRuntimesAfterBuild" AfterTargets="Build">
|
||||||
|
|
@ -103,9 +104,9 @@
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0" />
|
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0" />
|
||||||
<PackageReference Include="Flow.Launcher.Localization" Version="0.0.4" />
|
<PackageReference Include="Flow.Launcher.Localization" Version="0.0.6" />
|
||||||
<PackageReference Include="Microsoft.Data.Sqlite" Version="9.0.8" />
|
<PackageReference Include="Microsoft.Data.Sqlite" Version="9.0.9" />
|
||||||
<PackageReference Include="Svg.Skia" Version="3.0.4" />
|
<PackageReference Include="Svg.Skia" Version="3.0.6" />
|
||||||
<PackageReference Include="SkiaSharp" Version="3.119.0" />
|
<PackageReference Include="SkiaSharp" Version="3.119.0" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -106,12 +106,13 @@ public static class FaviconHelper
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
using (var image = SKImage.FromBitmap(bitmap))
|
using var image = SKImage.FromBitmap(bitmap);
|
||||||
using (var webp = image.Encode(SKEncodedImageFormat.Webp, 65))
|
if (image is null)
|
||||||
{
|
return null;
|
||||||
if (webp != null)
|
|
||||||
return webp.ToArray();
|
using var webp = image.Encode(SKEncodedImageFormat.Webp, 65);
|
||||||
}
|
if (webp != null)
|
||||||
|
return webp.ToArray();
|
||||||
}
|
}
|
||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -6,15 +6,15 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_plugin_description">ブラウザのブックマークを検索します</system:String>
|
<system:String x:Key="flowlauncher_plugin_browserbookmark_plugin_description">ブラウザのブックマークを検索します</system:String>
|
||||||
|
|
||||||
<!-- Main -->
|
<!-- Main -->
|
||||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_copy_failed">Failed to set url in clipboard</system:String>
|
<system:String x:Key="flowlauncher_plugin_browserbookmark_copy_failed">クリップボードにURLをコピーできませんでした</system:String>
|
||||||
|
|
||||||
<!-- Settings -->
|
<!-- Settings -->
|
||||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_bookmarkDataSetting">Bookmark Data</system:String>
|
<system:String x:Key="flowlauncher_plugin_browserbookmark_bookmarkDataSetting">ブックマークのデータ</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_openBookmarks">Open bookmarks in:</system:String>
|
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_openBookmarks">ブックマークを開く場所:</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_newWindow">New window</system:String>
|
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_newWindow">新しいウインドウ</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_newTab">New tab</system:String>
|
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_newTab">新しいタブ</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_setBrowserFromPath">Set browser from path:</system:String>
|
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_setBrowserFromPath">以下のパスからブラウザーを設定:</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_choose">Choose</system:String>
|
<system:String x:Key="flowlauncher_plugin_browserbookmark_settings_choose">選択</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_copyurl_title">URLをコピー</system:String>
|
<system:String x:Key="flowlauncher_plugin_browserbookmark_copyurl_title">URLをコピー</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_copyurl_subtitle">ブックマークのURLをクリップボードにコピー</system:String>
|
<system:String x:Key="flowlauncher_plugin_browserbookmark_copyurl_subtitle">ブックマークのURLをクリップボードにコピー</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_browserbookmark_loadBrowserFrom">次のブラウザから読み込む:</system:String>
|
<system:String x:Key="flowlauncher_plugin_browserbookmark_loadBrowserFrom">次のブラウザから読み込む:</system:String>
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<OutputType>Library</OutputType>
|
<OutputType>Library</OutputType>
|
||||||
|
|
@ -33,6 +33,7 @@
|
||||||
<ErrorReport>prompt</ErrorReport>
|
<ErrorReport>prompt</ErrorReport>
|
||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
<Prefer32Bit>false</Prefer32Bit>
|
<Prefer32Bit>false</Prefer32Bit>
|
||||||
|
<NoWarn>$(NoWarn);FLSG0007</NoWarn>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
@ -62,7 +63,7 @@
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Flow.Launcher.Localization" Version="0.0.4" />
|
<PackageReference Include="Flow.Launcher.Localization" Version="0.0.6" />
|
||||||
<PackageReference Include="Mages" Version="3.0.0" />
|
<PackageReference Include="Mages" Version="3.0.0" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">آلة حاسبة</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">آلة حاسبة</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">تمكنك من إجراء العمليات الحسابية. (جرب 5*3-2 في Flow Launcher)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">ليست رقمًا (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">ليست رقمًا (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">التعبير خاطئ أو غير مكتمل (هل نسيت بعض الأقواس؟)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">التعبير خاطئ أو غير مكتمل (هل نسيت بعض الأقواس؟)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">نسخ هذا الرقم إلى الحافظة</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">نسخ هذا الرقم إلى الحافظة</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">نقطة (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">نقطة (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">أقصى عدد من المنازل العشرية</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">أقصى عدد من المنازل العشرية</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Kalkulačka</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Kalkulačka</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Umožňuje provádět matematické výpočty.(Try 5*3-2 v průtokovém spouštěči)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Není číslo (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Není číslo (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Nesprávný nebo neúplný výraz (Nezapomněli jste na závorky?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Nesprávný nebo neúplný výraz (Nezapomněli jste na závorky?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Kopírování výsledku do schránky</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Kopírování výsledku do schránky</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Tečka (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Tečka (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Desetinná místa</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Desetinná místa</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculator</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculator</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations (including hexadecimal values). Use ',' or '.' as thousand separator or decimal place.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Not a number (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Not a number (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copy this number to the clipboard</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copy this number to the clipboard</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Dot (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Dot (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. decimal places</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. decimal places</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Rechner</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Rechner</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Ermöglicht mathematische Berechnungen. (Versuchen Sie 5*3-2 in Flow Launcher)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Nicht eine Zahl (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Nicht eine Zahl (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Ausdruck falsch oder unvollständig (Haben Sie einige Klammern vergessen?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Ausdruck falsch oder unvollständig (Haben Sie einige Klammern vergessen?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Diese Zahl in die Zwischenablage kopieren</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Diese Zahl in die Zwischenablage kopieren</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Punkt (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Punkt (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. Dezimalstellen</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. Dezimalstellen</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
xmlns:system="clr-namespace:System;assembly=mscorlib">
|
xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculator</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculator</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations (including hexadecimal values). Use ',' or '.' as thousand separator or decimal place.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Not a number (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Not a number (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copy this number to the clipboard</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copy this number to the clipboard</system:String>
|
||||||
|
|
@ -15,4 +15,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Dot (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Dot (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. decimal places</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. decimal places</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculadora</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculadora</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Permite hacer cálculos matemáticos. (Pruebe con 5*3-2 en Flow Launcher)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">No es un número (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">No es un número (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expresión incorrecta o incompleta (¿Olvidó algún paréntesis?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expresión incorrecta o incompleta (¿Olvidó algún paréntesis?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copiar este número al portapapeles</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copiar este número al portapapeles</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Punto (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Punto (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Número máximo de decimales</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Número máximo de decimales</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculadora</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculadora</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Realiza cálculos matemáticos (incluyendo valores hexadecimales). Utilizar ',' o '.' como separador de miles o decimal.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">No es un número (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">No es un número (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expresión incorrecta o incompleta (¿Ha olvidado algunos paréntesis?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expresión incorrecta o incompleta (¿Ha olvidado algunos paréntesis?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copiar este número al portapapeles</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copiar este número al portapapeles</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Punto (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Punto (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Número máximo de decimales</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Número máximo de decimales</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Ha fallado la copia, inténtelo más tarde</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Ha fallado la copia, inténtelo más tarde</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculatrice</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculatrice</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Effectuer des calculs mathématiques (y compris les valeurs hexadécimales). Utilisez ',' ou '.' comme séparateur de milliers ou décimaux.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Effectuez des calculs mathématiques, y compris les valeurs hexadécimales et les fonctions avancées telles que 'min(1,2,3)', 'sqrt(123)' et 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Pas un nombre (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Pas un nombre (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression incorrecte ou incomplète (avez-vous oublié certaines parenthèses ?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression incorrecte ou incomplète (avez-vous oublié certaines parenthèses ?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copier ce chiffre dans le presse-papiers</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copier ce chiffre dans le presse-papiers</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Point (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Point (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Décimales max.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Décimales max.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Échec de la copie, réessayer plus tard</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Échec de la copie, réessayer plus tard</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Afficher le message d'erreur lorsque le calcul échoue</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">מחשבו</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">מחשבו</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">מאפשר לבצע חישובים מתמטיים. (נסה 5*3-2 ב-Flow Launcher)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">לא מספר (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">לא מספר (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">הביטוי שגוי או לא שלם (האם שכחת סוגריים?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">הביטוי שגוי או לא שלם (האם שכחת סוגריים?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">העתק מספר זה ללוח</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">העתק מספר זה ללוח</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">נקודה (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">נקודה (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">מספר מקסימלי של מקומות עשרוניים</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">מספר מקסימלי של מקומות עשרוניים</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calcolatrice</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calcolatrice</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Consente di eseguire calcoli matematici (provare 5*3-2 in Flow Launcher)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Non è un numero (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Non è un numero (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Espressione sbagliata o incompleta (avete dimenticato delle parentesi?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Espressione sbagliata o incompleta (avete dimenticato delle parentesi?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copiare questo numero negli appunti</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copiare questo numero negli appunti</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Punto (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Punto (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. cifre decimali</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. cifre decimali</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculator</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">電卓</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations (including hexadecimal values). Use ',' or '.' as thousand separator or decimal place.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Not a number (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">数値で表せません (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">式が間違っているか不完全です(括弧を忘れていませんか?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">この数字をクリップボードにコピーします</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">この数字をクリップボードにコピーします</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_output_decimal_separator">小数点の区切り記号</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_output_decimal_separator">小数点の区切り記号</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_output_decimal_separator_help">The decimal separator to be used in the output.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_output_decimal_separator_help">出力で使用される小数点の区切り文字。</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_use_system_locale">システムのロケールを使用</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_use_system_locale">システムのロケールを使用</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_comma">コンマ(,)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_comma">コンマ(,)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">ドット (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">ドット (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">小数点以下の最大桁数</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">小数点以下の最大桁数</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">コピーに失敗しました。後でやり直してください</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">계산기</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">계산기</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">수학 계산을 할 수 있습니다. Flow Launcher에서 5*3-2를 입력해보세요.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">숫자가 아님 (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">숫자가 아님 (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">표현식이 잘못되었거나 불완전합니다. (괄호를 깜빡하셨나요?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">표현식이 잘못되었거나 불완전합니다. (괄호를 깜빡하셨나요?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">해당 숫자를 클립보드에 복사</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">해당 숫자를 클립보드에 복사</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">마침표 (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">마침표 (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">최대 소수점 아래 자릿 수</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">최대 소수점 아래 자릿 수</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Kalkulator</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Kalkulator</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Lar deg gjøre matematiske beregninger. (Prøv 5*3-2 i Flow Launcher)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Ikke et tall (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Ikke et tall (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Uttrykk feil eller ufullstendig (glem noen parenteser?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Uttrykk feil eller ufullstendig (glem noen parenteser?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Kopier dette nummeret til utklippstavlen</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Kopier dette nummeret til utklippstavlen</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Prikk (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Prikk (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Maks. desimaler</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Maks. desimaler</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculator</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculator</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations (including hexadecimal values). Use ',' or '.' as thousand separator or decimal place.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Not a number (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Not a number (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copy this number to the clipboard</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copy this number to the clipboard</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Dot (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Dot (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. decimal places</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. decimal places</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Kalkulator</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Kalkulator</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Szybkie wykonywanie obliczeń matematycznych. (Spróbuj wpisać 5*3-2 w oknie Flow Launchera)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Nie liczba (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Nie liczba (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Wyrażenie niepoprawne lub niekompletne (Czy zapomniałeś o nawiasach?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Wyrażenie niepoprawne lub niekompletne (Czy zapomniałeś o nawiasach?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Skopiuj ten numer do schowka</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Skopiuj ten numer do schowka</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Kropka (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Kropka (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Maks. liczba miejsc po przecinku</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Maks. liczba miejsc po przecinku</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculadora</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculadora</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Permite fazer cálculos matemáticos.(Tente 5*3-2 no Flow Launcher)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Não é um número (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Não é um número (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expressão errada ou incompleta (Você esqueceu de adicionar parênteses?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expressão errada ou incompleta (Você esqueceu de adicionar parênteses?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copiar este numero para a área de transferência</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copiar este numero para a área de transferência</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Ponto (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Ponto (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. decimal places</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. decimal places</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculadora</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculadora</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Execução de cálculos matemáticos (incluindo valores hexadecimais). Utilize ',' ou '.' como separador de milhares ou de casas decimais.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Execute cálculos matemáticos, incluindo valores hexadecimais e funções avançadas como 'min(1,2,3)', 'sqrt(123)' e 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Não é número (NN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Não é número (NN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expressão errada ou incompleta (esqueceu-se de algum parêntese?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expressão errada ou incompleta (esqueceu-se de algum parêntese?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copiar número para a área de transferência</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copiar número para a área de transferência</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Ponto (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Ponto (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Número máximo de casas decimais</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Número máximo de casas decimais</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Falha ao copiar. Por favor tente mais tarde.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Falha ao copiar. Por favor tente mais tarde.</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Mostrar mensagem de erro se o cálculo falhar</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Калькулятор</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Калькулятор</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Позволяет выполнять математические вычисления. (Попробуйте 5*3-2 в Flow Launcher)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Не является числом (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Не является числом (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Выражение неправильное или неполное (Вы забыли скобки?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Выражение неправильное или неполное (Вы забыли скобки?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Скопировать этот номер в буфер обмена</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Скопировать этот номер в буфер обмена</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Точка (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Точка (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Макс. число знаков после запятой</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Макс. число знаков после запятой</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Kalkulačka</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Kalkulačka</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Vykonávanie matematických výpočtov (vrátane hexadecimálnych hodnôt). Ako oddeľovač tisícov alebo desatinného miesta použite ',' alebo '.'.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Vykonávajte matematické výpočty vrátane hexadecimálnych hodnôt a pokročilých funkcií, ako napríklad "min(1,2,3)", "sqrt(123)" a "cos(123)".</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Nie je číslo (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Nie je číslo (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Nesprávny alebo neúplný výraz (Nezabudli ste na zátvorky?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Nesprávny alebo neúplný výraz (Nezabudli ste na zátvorky?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Kopírovať výsledok do schránky</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Kopírovať výsledok do schránky</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Bodka (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Bodka (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Desatinné miesta</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Desatinné miesta</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Kopírovanie zlyhalo, skúste to neskôr</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Kopírovanie zlyhalo, skúste to neskôr</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Zobraziť chybovú správu, keď výpočet zlyhá</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculator</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculator</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations (including hexadecimal values). Use ',' or '.' as thousand separator or decimal place.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Not a number (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Not a number (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copy this number to the clipboard</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copy this number to the clipboard</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Dot (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Dot (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. decimal places</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. decimal places</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculator</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Calculator</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations (including hexadecimal values). Use ',' or '.' as thousand separator or decimal place.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Not a number (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Not a number (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copy this number to the clipboard</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Copy this number to the clipboard</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Dot (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Dot (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. decimal places</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Max. decimal places</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Hesap Makinesi</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Hesap Makinesi</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Matematiksel hesaplamalar yapmaya yarar. (5*3-2 yazmayı deneyin)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Onaltılık değerler ve 'min(1,2,3)', 'sqrt(123)' ve 'cos(123)' gibi gelişmiş fonksiyonlar dahil olmak üzere matematiksel hesaplamalar gerçekleştirin.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Sayı değil (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Sayı değil (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">İfade hatalı ya da eksik. (Parantez koymayı mı unuttunuz?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">İfade hatalı ya da eksik. (Parantez koymayı mı unuttunuz?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Bu sayıyı panoya kopyala</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Bu sayıyı panoya kopyala</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Nokta (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Nokta (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Maks. ondalık basamak</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Maks. ondalık basamak</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Kopyalama başarısız oldu, lütfen daha sonra deneyin</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Kopyalama başarısız oldu, lütfen daha sonra deneyin</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Hesaplama başarısız olduğunda hata mesajı göster</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Калькулятор</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Калькулятор</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Виконуйте математичні обчислення (включаючи шістнадцяткові значення). Використовуйте «,» або «.» як роздільник тисяч або десяткових знаків.</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Виконуйте математичні розрахунки, включаючи шістнадцяткові значення та розширені функції, такі як «min(1,2,3)», «sqrt(123)» та «cos(123)».</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Не є числом (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Не є числом (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Вираз неправильний або неповний (Ви забули якісь дужки?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Вираз неправильний або неповний (Ви забули якісь дужки?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Скопіюйте це число в буфер обміну</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Скопіюйте це число в буфер обміну</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Крапка (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">Крапка (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Макс. кількість знаків після коми</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Макс. кількість знаків після коми</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Копіювання не вдалося, спробуйте пізніше</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Копіювання не вдалося, спробуйте пізніше</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Показувати повідомлення про помилку, якщо обчислення не вдалося</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Máy tính</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">Máy tính</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Cho phép thực hiện các phép tính toán học. (Thử 5*3-2 trong Flow Launcher)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Không phải là số (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">Không phải là số (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Biểu thức sai hoặc không đầy đủ (Bạn có quên một số dấu ngoặc đơn không?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Biểu thức sai hoặc không đầy đủ (Bạn có quên một số dấu ngoặc đơn không?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Sao chép số này vào clipboard</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">Sao chép số này vào clipboard</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">dấu chấm (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">dấu chấm (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Tối đa. chữ số thập phân</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">Tối đa. chữ số thập phân</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">计算器</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">计算器</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">执行数学计算(包括十六进制值)。使用 , 或 . 作为分隔符或小数点。</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">进行数学计算,包括十六进制值和高级函数,如“最小(1,2,3)”、“sqrt(123)”和“cos123”等。</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">请输入数字</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">请输入数字</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">表达错误或不完整(您是否忘记了一些括号?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">表达错误或不完整(您是否忘记了一些括号?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">将结果复制到剪贴板</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">将结果复制到剪贴板</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">点(.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">点(.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">小数点后最大位数</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">小数点后最大位数</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">复制失败,请稍后再试</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">复制失败,请稍后再试</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">计算错误时显示错误消息</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=mscorlib">
|
||||||
|
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">計算機</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_name">計算機</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">為 Flow Launcher 提供數學計算功能。(試著在 Flow Launcher 輸入 5*3-2)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_plugin_description">Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">不是一個數 (NaN)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_not_a_number">不是一個數 (NaN)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_expression_not_complete">Expression wrong or incomplete (Did you forget some parentheses?)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">複製此數至剪貼簿</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_copy_number_to_clipboard">複製此數至剪貼簿</system:String>
|
||||||
|
|
@ -13,4 +13,5 @@
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">點 (.)</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_decimal_separator_dot">點 (.)</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">小數點後最大位數</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_max_decimal_places">小數點後最大位數</system:String>
|
||||||
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
<system:String x:Key="flowlauncher_plugin_calculator_failed_to_copy">Copy failed, please try later</system:String>
|
||||||
|
<system:String x:Key="flowlauncher_plugin_calculator_show_error_message">Show error message when calculation fails</system:String>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
|
|
|
||||||
|
|
@ -13,30 +13,24 @@ namespace Flow.Launcher.Plugin.Calculator
|
||||||
{
|
{
|
||||||
public class Main : IPlugin, IPluginI18n, ISettingProvider
|
public class Main : IPlugin, IPluginI18n, ISettingProvider
|
||||||
{
|
{
|
||||||
private static readonly Regex RegValidExpressChar = MainRegexHelper.GetRegValidExpressChar();
|
|
||||||
private static readonly Regex RegBrackets = MainRegexHelper.GetRegBrackets();
|
|
||||||
private static readonly Regex ThousandGroupRegex = MainRegexHelper.GetThousandGroupRegex();
|
private static readonly Regex ThousandGroupRegex = MainRegexHelper.GetThousandGroupRegex();
|
||||||
private static readonly Regex NumberRegex = MainRegexHelper.GetNumberRegex();
|
private static readonly Regex NumberRegex = MainRegexHelper.GetNumberRegex();
|
||||||
|
private static readonly Regex PowRegex = MainRegexHelper.GetPowRegex();
|
||||||
|
private static readonly Regex LogRegex = MainRegexHelper.GetLogRegex();
|
||||||
|
private static readonly Regex LnRegex = MainRegexHelper.GetLnRegex();
|
||||||
|
private static readonly Regex FunctionRegex = MainRegexHelper.GetFunctionRegex();
|
||||||
|
|
||||||
private static Engine MagesEngine;
|
private static Engine MagesEngine;
|
||||||
private const string Comma = ",";
|
private const string Comma = ",";
|
||||||
private const string Dot = ".";
|
private const string Dot = ".";
|
||||||
|
private const string IcoPath = "Images/calculator.png";
|
||||||
|
private static readonly List<Result> EmptyResults = [];
|
||||||
|
|
||||||
internal static PluginInitContext Context { get; set; } = null!;
|
internal static PluginInitContext Context { get; set; } = null!;
|
||||||
|
|
||||||
private Settings _settings;
|
private Settings _settings;
|
||||||
private SettingsViewModel _viewModel;
|
private SettingsViewModel _viewModel;
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Holds the formatting information for a single query.
|
|
||||||
/// This is used to ensure thread safety by keeping query state local.
|
|
||||||
/// </summary>
|
|
||||||
private class ParsingContext
|
|
||||||
{
|
|
||||||
public string InputDecimalSeparator { get; set; }
|
|
||||||
public bool InputUsesGroupSeparators { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Init(PluginInitContext context)
|
public void Init(PluginInitContext context)
|
||||||
{
|
{
|
||||||
Context = context;
|
Context = context;
|
||||||
|
|
@ -54,38 +48,98 @@ namespace Flow.Launcher.Plugin.Calculator
|
||||||
|
|
||||||
public List<Result> Query(Query query)
|
public List<Result> Query(Query query)
|
||||||
{
|
{
|
||||||
if (!CanCalculate(query))
|
if (string.IsNullOrWhiteSpace(query.Search))
|
||||||
{
|
{
|
||||||
return new List<Result>();
|
return EmptyResults;
|
||||||
}
|
}
|
||||||
|
|
||||||
var context = new ParsingContext();
|
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var expression = NumberRegex.Replace(query.Search, m => NormalizeNumber(m.Value, context));
|
var search = query.Search;
|
||||||
|
bool isFunctionPresent = FunctionRegex.IsMatch(search);
|
||||||
|
|
||||||
|
// Mages is case sensitive, so we need to convert all function names to lower case.
|
||||||
|
search = FunctionRegex.Replace(search, m => m.Value.ToLowerInvariant());
|
||||||
|
|
||||||
|
var decimalSep = GetDecimalSeparator();
|
||||||
|
var groupSep = GetGroupSeparator(decimalSep);
|
||||||
|
var expression = NumberRegex.Replace(search, m => NormalizeNumber(m.Value, isFunctionPresent, decimalSep, groupSep));
|
||||||
|
|
||||||
|
// WORKAROUND START: The 'pow' function in Mages v3.0.0 is broken.
|
||||||
|
// https://github.com/FlorianRappl/Mages/issues/132
|
||||||
|
// We bypass it by rewriting any pow(x,y) expression to the equivalent (x^y) expression
|
||||||
|
// before the engine sees it. This loop handles nested calls.
|
||||||
|
{
|
||||||
|
string previous;
|
||||||
|
do
|
||||||
|
{
|
||||||
|
previous = expression;
|
||||||
|
expression = PowRegex.Replace(previous, PowMatchEvaluator);
|
||||||
|
} while (previous != expression);
|
||||||
|
}
|
||||||
|
// WORKAROUND END
|
||||||
|
|
||||||
|
// WORKAROUND START: The 'log' & 'ln' function in Mages v3.0.0 are broken.
|
||||||
|
// https://github.com/FlorianRappl/Mages/issues/137
|
||||||
|
// We bypass it by rewriting any log & ln expression to the equivalent (log10 & log) expression
|
||||||
|
// before the engine sees it. This loop handles nested calls.
|
||||||
|
{
|
||||||
|
string previous;
|
||||||
|
do
|
||||||
|
{
|
||||||
|
previous = expression;
|
||||||
|
expression = LogRegex.Replace(previous, LogMatchEvaluator);
|
||||||
|
} while (previous != expression);
|
||||||
|
}
|
||||||
|
{
|
||||||
|
string previous;
|
||||||
|
do
|
||||||
|
{
|
||||||
|
previous = expression;
|
||||||
|
expression = LnRegex.Replace(previous, LnMatchEvaluator);
|
||||||
|
} while (previous != expression);
|
||||||
|
}
|
||||||
|
// WORKAROUND END
|
||||||
|
|
||||||
var result = MagesEngine.Interpret(expression);
|
var result = MagesEngine.Interpret(expression);
|
||||||
|
|
||||||
if (result?.ToString() == "NaN")
|
if (result == null || string.IsNullOrEmpty(result.ToString()))
|
||||||
|
{
|
||||||
|
if (!_settings.ShowErrorMessage) return EmptyResults;
|
||||||
|
return
|
||||||
|
[
|
||||||
|
new Result
|
||||||
|
{
|
||||||
|
Title = Localize.flowlauncher_plugin_calculator_expression_not_complete(),
|
||||||
|
IcoPath = IcoPath
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (result.ToString() == "NaN")
|
||||||
|
{
|
||||||
result = Localize.flowlauncher_plugin_calculator_not_a_number();
|
result = Localize.flowlauncher_plugin_calculator_not_a_number();
|
||||||
|
}
|
||||||
|
|
||||||
if (result is Function)
|
if (result is Function)
|
||||||
|
{
|
||||||
result = Localize.flowlauncher_plugin_calculator_expression_not_complete();
|
result = Localize.flowlauncher_plugin_calculator_expression_not_complete();
|
||||||
|
}
|
||||||
|
|
||||||
if (!string.IsNullOrEmpty(result?.ToString()))
|
if (!string.IsNullOrEmpty(result.ToString()))
|
||||||
{
|
{
|
||||||
decimal roundedResult = Math.Round(Convert.ToDecimal(result), _settings.MaxDecimalPlaces, MidpointRounding.AwayFromZero);
|
decimal roundedResult = Math.Round(Convert.ToDecimal(result), _settings.MaxDecimalPlaces, MidpointRounding.AwayFromZero);
|
||||||
string newResult = FormatResult(roundedResult, context);
|
string newResult = FormatResult(roundedResult);
|
||||||
|
|
||||||
return new List<Result>
|
return
|
||||||
{
|
[
|
||||||
new Result
|
new Result
|
||||||
{
|
{
|
||||||
Title = newResult,
|
Title = newResult,
|
||||||
IcoPath = "Images/calculator.png",
|
IcoPath = IcoPath,
|
||||||
Score = 300,
|
Score = 300,
|
||||||
SubTitle = Localize.flowlauncher_plugin_calculator_copy_number_to_clipboard(),
|
// Check context nullability for unit testing
|
||||||
|
SubTitle = Context == null ? string.Empty : Localize.flowlauncher_plugin_calculator_copy_number_to_clipboard(),
|
||||||
CopyText = newResult,
|
CopyText = newResult,
|
||||||
Action = c =>
|
Action = c =>
|
||||||
{
|
{
|
||||||
|
|
@ -101,118 +155,206 @@ namespace Flow.Launcher.Plugin.Calculator
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception)
|
catch (Exception)
|
||||||
{
|
{
|
||||||
// ignored
|
// Mages engine can throw various exceptions, for simplicity we catch them all and show a generic message.
|
||||||
|
if (!_settings.ShowErrorMessage) return EmptyResults;
|
||||||
|
return
|
||||||
|
[
|
||||||
|
new Result
|
||||||
|
{
|
||||||
|
Title = Localize.flowlauncher_plugin_calculator_expression_not_complete(),
|
||||||
|
IcoPath = IcoPath
|
||||||
|
}
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
return new List<Result>();
|
return EmptyResults;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
private static string PowMatchEvaluator(Match m)
|
||||||
/// Parses a string representation of a number, detecting its format. It uses structural analysis
|
|
||||||
/// and falls back to system culture for truly ambiguous cases (e.g., "1,234").
|
|
||||||
/// It populates the provided ParsingContext with the detected format for later use.
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>A normalized number string with '.' as the decimal separator for the Mages engine.</returns>
|
|
||||||
private string NormalizeNumber(string numberStr, ParsingContext context)
|
|
||||||
{
|
{
|
||||||
var systemGroupSep = CultureInfo.CurrentCulture.NumberFormat.NumberGroupSeparator;
|
// m.Groups[1].Value will be `(...)` with parens
|
||||||
int dotCount = numberStr.Count(f => f == '.');
|
var contentWithParen = m.Groups[1].Value;
|
||||||
int commaCount = numberStr.Count(f => f == ',');
|
// remove outer parens. `(min(2,3), 4)` becomes `min(2,3), 4`
|
||||||
|
var argsContent = contentWithParen[1..^1];
|
||||||
|
|
||||||
// Case 1: Unambiguous mixed separators (e.g., "1.234,56")
|
var bracketCount = 0;
|
||||||
if (dotCount > 0 && commaCount > 0)
|
var splitIndex = -1;
|
||||||
|
|
||||||
|
// Find the top-level comma that separates the two arguments of pow.
|
||||||
|
for (var i = 0; i < argsContent.Length; i++)
|
||||||
{
|
{
|
||||||
context.InputUsesGroupSeparators = true;
|
switch (argsContent[i])
|
||||||
if (numberStr.LastIndexOf('.') > numberStr.LastIndexOf(','))
|
|
||||||
{
|
{
|
||||||
context.InputDecimalSeparator = Dot;
|
case '(':
|
||||||
return numberStr.Replace(Comma, string.Empty);
|
case '[':
|
||||||
|
bracketCount++;
|
||||||
|
break;
|
||||||
|
case ')':
|
||||||
|
case ']':
|
||||||
|
bracketCount--;
|
||||||
|
break;
|
||||||
|
case ',' when bracketCount == 0:
|
||||||
|
splitIndex = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (splitIndex != -1)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (splitIndex == -1)
|
||||||
|
{
|
||||||
|
// This indicates malformed arguments for pow, e.g., pow(5) or pow().
|
||||||
|
// Return original string to let Mages handle the error.
|
||||||
|
return m.Value;
|
||||||
|
}
|
||||||
|
|
||||||
|
var arg1 = argsContent[..splitIndex].Trim();
|
||||||
|
var arg2 = argsContent[(splitIndex + 1)..].Trim();
|
||||||
|
|
||||||
|
// Check for empty arguments which can happen with stray commas, e.g., pow(,5)
|
||||||
|
if (string.IsNullOrEmpty(arg1) || string.IsNullOrEmpty(arg2))
|
||||||
|
{
|
||||||
|
return m.Value;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $"({arg1}^{arg2})";
|
||||||
|
}
|
||||||
|
|
||||||
|
private static string LogMatchEvaluator(Match m)
|
||||||
|
{
|
||||||
|
// m.Groups[1].Value will be `(...)` with parens
|
||||||
|
var contentWithParen = m.Groups[1].Value;
|
||||||
|
var argsContent = contentWithParen[1..^1];
|
||||||
|
|
||||||
|
// log is unary — if malformed, return original to let Mages handle it
|
||||||
|
var arg = argsContent.Trim();
|
||||||
|
if (string.IsNullOrEmpty(arg)) return m.Value;
|
||||||
|
|
||||||
|
// log(x) -> log10(x) (natural log)
|
||||||
|
return $"(log10({arg}))";
|
||||||
|
}
|
||||||
|
|
||||||
|
private static string LnMatchEvaluator(Match m)
|
||||||
|
{
|
||||||
|
// m.Groups[1].Value will be `(...)` with parens
|
||||||
|
var contentWithParen = m.Groups[1].Value;
|
||||||
|
var argsContent = contentWithParen[1..^1];
|
||||||
|
|
||||||
|
// ln is unary — if malformed, return original to let Mages handle it
|
||||||
|
var arg = argsContent.Trim();
|
||||||
|
if (string.IsNullOrEmpty(arg)) return m.Value;
|
||||||
|
|
||||||
|
// ln(x) -> log(x) (natural log)
|
||||||
|
return $"(log({arg}))";
|
||||||
|
}
|
||||||
|
private static string NormalizeNumber(string numberStr, bool isFunctionPresent, string decimalSep, string groupSep)
|
||||||
|
{
|
||||||
|
if (isFunctionPresent)
|
||||||
|
{
|
||||||
|
// STRICT MODE: When functions are present, ',' is ALWAYS an argument separator.
|
||||||
|
if (numberStr.Contains(','))
|
||||||
|
{
|
||||||
|
return numberStr;
|
||||||
|
}
|
||||||
|
|
||||||
|
string processedStr = numberStr;
|
||||||
|
|
||||||
|
// Handle group separator, with special care for ambiguous dot.
|
||||||
|
if (!string.IsNullOrEmpty(groupSep))
|
||||||
|
{
|
||||||
|
if (groupSep == ".")
|
||||||
|
{
|
||||||
|
var parts = processedStr.Split('.');
|
||||||
|
if (parts.Length > 1)
|
||||||
|
{
|
||||||
|
var culture = CultureInfo.CurrentCulture;
|
||||||
|
if (IsValidGrouping(parts, culture.NumberFormat.NumberGroupSizes))
|
||||||
|
{
|
||||||
|
processedStr = processedStr.Replace(groupSep, "");
|
||||||
|
}
|
||||||
|
// If not grouped, it's likely a decimal number, so we don't strip dots.
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
processedStr = processedStr.Replace(groupSep, "");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Handle decimal separator.
|
||||||
|
if (decimalSep != ".")
|
||||||
|
{
|
||||||
|
processedStr = processedStr.Replace(decimalSep, ".");
|
||||||
|
}
|
||||||
|
|
||||||
|
return processedStr;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// LENIENT MODE: No functions are present, so we can be flexible.
|
||||||
|
string processedStr = numberStr;
|
||||||
|
if (!string.IsNullOrEmpty(groupSep))
|
||||||
|
{
|
||||||
|
processedStr = processedStr.Replace(groupSep, "");
|
||||||
|
}
|
||||||
|
if (decimalSep != ".")
|
||||||
|
{
|
||||||
|
processedStr = processedStr.Replace(decimalSep, ".");
|
||||||
|
}
|
||||||
|
return processedStr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static bool IsValidGrouping(string[] parts, int[] groupSizes)
|
||||||
|
{
|
||||||
|
if (parts.Length <= 1) return true;
|
||||||
|
|
||||||
|
if (groupSizes is null || groupSizes.Length == 0 || groupSizes[0] == 0)
|
||||||
|
return false; // has groups, but culture defines none.
|
||||||
|
|
||||||
|
var firstPart = parts[0];
|
||||||
|
if (firstPart.StartsWith('-')) firstPart = firstPart[1..];
|
||||||
|
if (firstPart.Length == 0) return false; // e.g. ",123"
|
||||||
|
|
||||||
|
if (firstPart.Length > groupSizes[0]) return false;
|
||||||
|
|
||||||
|
var lastGroupSize = groupSizes.Last();
|
||||||
|
var canRepeatLastGroup = lastGroupSize != 0;
|
||||||
|
|
||||||
|
int groupIndex = 0;
|
||||||
|
for (int i = parts.Length - 1; i > 0; i--)
|
||||||
|
{
|
||||||
|
int expectedSize;
|
||||||
|
if (groupIndex < groupSizes.Length)
|
||||||
|
{
|
||||||
|
expectedSize = groupSizes[groupIndex];
|
||||||
|
}
|
||||||
|
else if(canRepeatLastGroup)
|
||||||
|
{
|
||||||
|
expectedSize = lastGroupSize;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
context.InputDecimalSeparator = Comma;
|
return false;
|
||||||
return numberStr.Replace(Dot, string.Empty).Replace(Comma, Dot);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (parts[i].Length != expectedSize) return false;
|
||||||
|
|
||||||
|
groupIndex++;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Case 2: Only dots
|
return true;
|
||||||
if (dotCount > 0)
|
|
||||||
{
|
|
||||||
if (dotCount > 1)
|
|
||||||
{
|
|
||||||
context.InputUsesGroupSeparators = true;
|
|
||||||
return numberStr.Replace(Dot, string.Empty);
|
|
||||||
}
|
|
||||||
// A number is ambiguous if it has a single Dot in the thousands position,
|
|
||||||
// and does not start with a "0." or "."
|
|
||||||
bool isAmbiguous = numberStr.Length - numberStr.LastIndexOf('.') == 4
|
|
||||||
&& !numberStr.StartsWith("0.")
|
|
||||||
&& !numberStr.StartsWith(".");
|
|
||||||
if (isAmbiguous)
|
|
||||||
{
|
|
||||||
if (systemGroupSep == Dot)
|
|
||||||
{
|
|
||||||
context.InputUsesGroupSeparators = true;
|
|
||||||
return numberStr.Replace(Dot, string.Empty);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
context.InputDecimalSeparator = Dot;
|
|
||||||
return numberStr;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else // Unambiguous decimal (e.g., "12.34" or "0.123" or ".123")
|
|
||||||
{
|
|
||||||
context.InputDecimalSeparator = Dot;
|
|
||||||
return numberStr;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Case 3: Only commas
|
|
||||||
if (commaCount > 0)
|
|
||||||
{
|
|
||||||
if (commaCount > 1)
|
|
||||||
{
|
|
||||||
context.InputUsesGroupSeparators = true;
|
|
||||||
return numberStr.Replace(Comma, string.Empty);
|
|
||||||
}
|
|
||||||
// A number is ambiguous if it has a single Comma in the thousands position,
|
|
||||||
// and does not start with a "0," or ","
|
|
||||||
bool isAmbiguous = numberStr.Length - numberStr.LastIndexOf(',') == 4
|
|
||||||
&& !numberStr.StartsWith("0,")
|
|
||||||
&& !numberStr.StartsWith(",");
|
|
||||||
if (isAmbiguous)
|
|
||||||
{
|
|
||||||
if (systemGroupSep == Comma)
|
|
||||||
{
|
|
||||||
context.InputUsesGroupSeparators = true;
|
|
||||||
return numberStr.Replace(Comma, string.Empty);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
context.InputDecimalSeparator = Comma;
|
|
||||||
return numberStr.Replace(Comma, Dot);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else // Unambiguous decimal (e.g., "12,34" or "0,123" or ",123")
|
|
||||||
{
|
|
||||||
context.InputDecimalSeparator = Comma;
|
|
||||||
return numberStr.Replace(Comma, Dot);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Case 4: No separators
|
|
||||||
return numberStr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private string FormatResult(decimal roundedResult, ParsingContext context)
|
private string FormatResult(decimal roundedResult)
|
||||||
{
|
{
|
||||||
string decimalSeparator = context.InputDecimalSeparator ?? GetDecimalSeparator();
|
string decimalSeparator = GetDecimalSeparator();
|
||||||
string groupSeparator = GetGroupSeparator(decimalSeparator);
|
string groupSeparator = GetGroupSeparator(decimalSeparator);
|
||||||
|
|
||||||
string resultStr = roundedResult.ToString(CultureInfo.InvariantCulture);
|
string resultStr = roundedResult.ToString(CultureInfo.InvariantCulture);
|
||||||
|
|
@ -221,7 +363,7 @@ namespace Flow.Launcher.Plugin.Calculator
|
||||||
string integerPart = parts[0];
|
string integerPart = parts[0];
|
||||||
string fractionalPart = parts.Length > 1 ? parts[1] : string.Empty;
|
string fractionalPart = parts.Length > 1 ? parts[1] : string.Empty;
|
||||||
|
|
||||||
if (context.InputUsesGroupSeparators && integerPart.Length > 3)
|
if (integerPart.Length > 3)
|
||||||
{
|
{
|
||||||
integerPart = ThousandGroupRegex.Replace(integerPart, groupSeparator);
|
integerPart = ThousandGroupRegex.Replace(integerPart, groupSeparator);
|
||||||
}
|
}
|
||||||
|
|
@ -236,29 +378,23 @@ namespace Flow.Launcher.Plugin.Calculator
|
||||||
|
|
||||||
private string GetGroupSeparator(string decimalSeparator)
|
private string GetGroupSeparator(string decimalSeparator)
|
||||||
{
|
{
|
||||||
// This logic is now independent of the system's group separator
|
var culture = CultureInfo.CurrentCulture;
|
||||||
// to ensure consistent output for unit testing.
|
var systemGroupSeparator = culture.NumberFormat.NumberGroupSeparator;
|
||||||
return decimalSeparator == Dot ? Comma : Dot;
|
|
||||||
}
|
|
||||||
|
|
||||||
private bool CanCalculate(Query query)
|
if (_settings.DecimalSeparator == DecimalSeparator.UseSystemLocale)
|
||||||
{
|
|
||||||
if (query.Search.Length < 2)
|
|
||||||
{
|
{
|
||||||
return false;
|
return systemGroupSeparator;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!RegValidExpressChar.IsMatch(query.Search))
|
// When a custom decimal separator is used,
|
||||||
|
// use the system's group separator unless it conflicts with the custom decimal separator.
|
||||||
|
if (decimalSeparator == systemGroupSeparator)
|
||||||
{
|
{
|
||||||
return false;
|
// Conflict: use the opposite of the decimal separator as a fallback.
|
||||||
|
return decimalSeparator == Dot ? Comma : Dot;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!IsBracketComplete(query.Search))
|
return systemGroupSeparator;
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private string GetDecimalSeparator()
|
private string GetDecimalSeparator()
|
||||||
|
|
@ -273,25 +409,6 @@ namespace Flow.Launcher.Plugin.Calculator
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
private static bool IsBracketComplete(string query)
|
|
||||||
{
|
|
||||||
var matchs = RegBrackets.Matches(query);
|
|
||||||
var leftBracketCount = 0;
|
|
||||||
foreach (Match match in matchs)
|
|
||||||
{
|
|
||||||
if (match.Value == "(" || match.Value == "[")
|
|
||||||
{
|
|
||||||
leftBracketCount++;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
leftBracketCount--;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return leftBracketCount == 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
public string GetTranslatedPluginTitle()
|
public string GetTranslatedPluginTitle()
|
||||||
{
|
{
|
||||||
return Localize.flowlauncher_plugin_calculator_plugin_name();
|
return Localize.flowlauncher_plugin_calculator_plugin_name();
|
||||||
|
|
|
||||||
|
|
@ -4,16 +4,21 @@ namespace Flow.Launcher.Plugin.Calculator;
|
||||||
|
|
||||||
internal static partial class MainRegexHelper
|
internal static partial class MainRegexHelper
|
||||||
{
|
{
|
||||||
|
[GeneratedRegex(@"-?[\d\.,'\u00A0\u202F]+", RegexOptions.Compiled | RegexOptions.CultureInvariant)]
|
||||||
[GeneratedRegex(@"[\(\)\[\]]", RegexOptions.Compiled)]
|
|
||||||
public static partial Regex GetRegBrackets();
|
|
||||||
|
|
||||||
[GeneratedRegex(@"^(ceil|floor|exp|pi|e|max|min|det|abs|log|ln|sqrt|sin|cos|tan|arcsin|arccos|arctan|eigval|eigvec|eig|sum|polar|plot|round|sort|real|zeta|bin2dec|hex2dec|oct2dec|factorial|sign|isprime|isinfty|==|~=|&&|\|\||(?:\<|\>)=?|[ei]|[0-9]|0x[\da-fA-F]+|[\+\%\-\*\/\^\., ""]|[\(\)\|\!\[\]])+$", RegexOptions.Compiled)]
|
|
||||||
public static partial Regex GetRegValidExpressChar();
|
|
||||||
|
|
||||||
[GeneratedRegex(@"[\d\.,]+", RegexOptions.Compiled)]
|
|
||||||
public static partial Regex GetNumberRegex();
|
public static partial Regex GetNumberRegex();
|
||||||
|
|
||||||
[GeneratedRegex(@"\B(?=(\d{3})+(?!\d))", RegexOptions.Compiled)]
|
[GeneratedRegex(@"\B(?=(\d{3})+(?!\d))", RegexOptions.Compiled)]
|
||||||
public static partial Regex GetThousandGroupRegex();
|
public static partial Regex GetThousandGroupRegex();
|
||||||
|
|
||||||
|
[GeneratedRegex(@"\bpow(\((?:[^()\[\]]|\((?<Depth>)|\)(?<-Depth>)|\[(?<Depth>)|\](?<-Depth>))*(?(Depth)(?!))\))", RegexOptions.Compiled | RegexOptions.RightToLeft | RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)]
|
||||||
|
public static partial Regex GetPowRegex();
|
||||||
|
|
||||||
|
[GeneratedRegex(@"\blog(\((?:[^()\[\]]|\((?<Depth>)|\)(?<-Depth>)|\[(?<Depth>)|\](?<-Depth>))*(?(Depth)(?!))\))", RegexOptions.Compiled | RegexOptions.RightToLeft | RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)]
|
||||||
|
public static partial Regex GetLogRegex();
|
||||||
|
|
||||||
|
[GeneratedRegex(@"\bln(\((?:[^()\[\]]|\((?<Depth>)|\)(?<-Depth>)|\[(?<Depth>)|\](?<-Depth>))*(?(Depth)(?!))\))", RegexOptions.Compiled | RegexOptions.RightToLeft | RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)]
|
||||||
|
public static partial Regex GetLnRegex();
|
||||||
|
|
||||||
|
[GeneratedRegex(@"\b(sqrt|pow|factorial|abs|sign|ceil|floor|round|exp|log|log2|log10|min|max|lt|eq|gt|sin|cos|tan|arcsin|arccos|arctan|isnan|isint|isprime|isinfty|rand|randi|type|is|as|length|throw|catch|eval|map|clamp|lerp|regex|shuffle)\s*\(", RegexOptions.Compiled | RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)]
|
||||||
|
public static partial Regex GetFunctionRegex();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,11 @@
|
||||||
|
|
||||||
namespace Flow.Launcher.Plugin.Calculator
|
namespace Flow.Launcher.Plugin.Calculator;
|
||||||
|
|
||||||
|
public class Settings
|
||||||
{
|
{
|
||||||
public class Settings
|
public DecimalSeparator DecimalSeparator { get; set; } = DecimalSeparator.UseSystemLocale;
|
||||||
{
|
|
||||||
public DecimalSeparator DecimalSeparator { get; set; } = DecimalSeparator.UseSystemLocale;
|
public int MaxDecimalPlaces { get; set; } = 10;
|
||||||
public int MaxDecimalPlaces { get; set; } = 10;
|
|
||||||
}
|
public bool ShowErrorMessage { get; set; } = false;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,31 +1,25 @@
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
|
||||||
namespace Flow.Launcher.Plugin.Calculator.ViewModels
|
namespace Flow.Launcher.Plugin.Calculator.ViewModels;
|
||||||
|
|
||||||
|
public class SettingsViewModel(Settings settings) : BaseModel
|
||||||
{
|
{
|
||||||
public class SettingsViewModel : BaseModel
|
public Settings Settings { get; } = settings;
|
||||||
|
|
||||||
|
public static IEnumerable<int> MaxDecimalPlacesRange => Enumerable.Range(1, 20);
|
||||||
|
|
||||||
|
public List<DecimalSeparatorLocalized> AllDecimalSeparator { get; } = DecimalSeparatorLocalized.GetValues();
|
||||||
|
|
||||||
|
public DecimalSeparator SelectedDecimalSeparator
|
||||||
{
|
{
|
||||||
public SettingsViewModel(Settings settings)
|
get => Settings.DecimalSeparator;
|
||||||
|
set
|
||||||
{
|
{
|
||||||
Settings = settings;
|
if (Settings.DecimalSeparator != value)
|
||||||
}
|
|
||||||
|
|
||||||
public Settings Settings { get; init; }
|
|
||||||
|
|
||||||
public static IEnumerable<int> MaxDecimalPlacesRange => Enumerable.Range(1, 20);
|
|
||||||
|
|
||||||
public List<DecimalSeparatorLocalized> AllDecimalSeparator { get; } = DecimalSeparatorLocalized.GetValues();
|
|
||||||
|
|
||||||
public DecimalSeparator SelectedDecimalSeparator
|
|
||||||
{
|
|
||||||
get => Settings.DecimalSeparator;
|
|
||||||
set
|
|
||||||
{
|
{
|
||||||
if (Settings.DecimalSeparator != value)
|
Settings.DecimalSeparator = value;
|
||||||
{
|
OnPropertyChanged();
|
||||||
Settings.DecimalSeparator = value;
|
|
||||||
OnPropertyChanged();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@
|
||||||
<Grid.RowDefinitions>
|
<Grid.RowDefinitions>
|
||||||
<RowDefinition Height="auto" />
|
<RowDefinition Height="auto" />
|
||||||
<RowDefinition Height="auto" />
|
<RowDefinition Height="auto" />
|
||||||
|
<RowDefinition Height="auto" />
|
||||||
</Grid.RowDefinitions>
|
</Grid.RowDefinitions>
|
||||||
<Grid.ColumnDefinitions>
|
<Grid.ColumnDefinitions>
|
||||||
<ColumnDefinition Width="Auto" />
|
<ColumnDefinition Width="Auto" />
|
||||||
|
|
@ -58,5 +59,14 @@
|
||||||
ItemsSource="{Binding MaxDecimalPlacesRange}"
|
ItemsSource="{Binding MaxDecimalPlacesRange}"
|
||||||
SelectedItem="{Binding Settings.MaxDecimalPlaces}" />
|
SelectedItem="{Binding Settings.MaxDecimalPlaces}" />
|
||||||
|
|
||||||
|
<CheckBox
|
||||||
|
Grid.Row="2"
|
||||||
|
Grid.Column="0"
|
||||||
|
Grid.ColumnSpan="2"
|
||||||
|
Margin="{StaticResource SettingPanelItemTopBottomMargin}"
|
||||||
|
HorizontalAlignment="Left"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
Content="{DynamicResource flowlauncher_plugin_calculator_show_error_message}"
|
||||||
|
IsChecked="{Binding Settings.ShowErrorMessage, Mode=TwoWay}" />
|
||||||
</Grid>
|
</Grid>
|
||||||
</UserControl>
|
</UserControl>
|
||||||
|
|
|
||||||
|
|
@ -1,22 +1,16 @@
|
||||||
using System.Windows.Controls;
|
using System.Windows.Controls;
|
||||||
using Flow.Launcher.Plugin.Calculator.ViewModels;
|
using Flow.Launcher.Plugin.Calculator.ViewModels;
|
||||||
|
|
||||||
namespace Flow.Launcher.Plugin.Calculator.Views
|
namespace Flow.Launcher.Plugin.Calculator.Views;
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Interaction logic for CalculatorSettings.xaml
|
|
||||||
/// </summary>
|
|
||||||
public partial class CalculatorSettings : UserControl
|
|
||||||
{
|
|
||||||
private readonly SettingsViewModel _viewModel;
|
|
||||||
private readonly Settings _settings;
|
|
||||||
|
|
||||||
public CalculatorSettings(Settings settings)
|
public partial class CalculatorSettings : UserControl
|
||||||
{
|
{
|
||||||
_viewModel = new SettingsViewModel(settings);
|
private readonly SettingsViewModel _viewModel;
|
||||||
_settings = _viewModel.Settings;
|
|
||||||
DataContext = _viewModel;
|
public CalculatorSettings(Settings settings)
|
||||||
InitializeComponent();
|
{
|
||||||
}
|
_viewModel = new SettingsViewModel(settings);
|
||||||
|
DataContext = _viewModel;
|
||||||
|
InitializeComponent();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
"ID": "CEA0FDFC6D3B4085823D60DC76F28855",
|
"ID": "CEA0FDFC6D3B4085823D60DC76F28855",
|
||||||
"ActionKeyword": "*",
|
"ActionKeyword": "*",
|
||||||
"Name": "Calculator",
|
"Name": "Calculator",
|
||||||
"Description": "Perform mathematical calculations (including hexadecimal values). Use ',' or '.' as thousand separator or decimal place.",
|
"Description": "Perform mathematical calculations, including hex values and advanced functions such as 'min(1,2,3)', 'sqrt(123)' and 'cos(123)'.",
|
||||||
"Author": "cxfksword, dcog989",
|
"Author": "cxfksword, dcog989",
|
||||||
"Version": "1.0.0",
|
"Version": "1.0.0",
|
||||||
"Language": "csharp",
|
"Language": "csharp",
|
||||||
|
|
|
||||||
|
|
@ -66,8 +66,8 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
{
|
{
|
||||||
contextMenus.Add(new Result
|
contextMenus.Add(new Result
|
||||||
{
|
{
|
||||||
Title = Context.API.GetTranslation("plugin_explorer_add_to_quickaccess_title"),
|
Title = Localize.plugin_explorer_add_to_quickaccess_title(),
|
||||||
SubTitle = Context.API.GetTranslation("plugin_explorer_add_to_quickaccess_subtitle"),
|
SubTitle = Localize.plugin_explorer_add_to_quickaccess_subtitle(),
|
||||||
Action = (context) =>
|
Action = (context) =>
|
||||||
{
|
{
|
||||||
Settings.QuickAccessLinks.Add(new AccessLink
|
Settings.QuickAccessLinks.Add(new AccessLink
|
||||||
|
|
@ -77,16 +77,14 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
Type = record.Type
|
Type = record.Type
|
||||||
});
|
});
|
||||||
|
|
||||||
Context.API.ShowMsg(Context.API.GetTranslation("plugin_explorer_addfilefoldersuccess"),
|
Context.API.ShowMsg(Localize.plugin_explorer_addfilefoldersuccess(),
|
||||||
Context.API.GetTranslation("plugin_explorer_addfilefoldersuccess_detail"),
|
Localize.plugin_explorer_addfilefoldersuccess_detail(),
|
||||||
Constants.ExplorerIconImageFullPath);
|
Constants.ExplorerIconImageFullPath);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
},
|
},
|
||||||
SubTitleToolTip = Context.API.GetTranslation("plugin_explorer_contextmenu_titletooltip"),
|
SubTitleToolTip = Localize.plugin_explorer_contextmenu_titletooltip(),
|
||||||
TitleToolTip = Context.API.GetTranslation("plugin_explorer_contextmenu_titletooltip"),
|
TitleToolTip = Localize.plugin_explorer_contextmenu_titletooltip(),
|
||||||
IcoPath = Constants.QuickAccessImagePath,
|
IcoPath = Constants.QuickAccessImagePath,
|
||||||
Glyph = new GlyphInfo(FontFamily: "/Resources/#Segoe Fluent Icons", Glyph: "\ue718"),
|
Glyph = new GlyphInfo(FontFamily: "/Resources/#Segoe Fluent Icons", Glyph: "\ue718"),
|
||||||
});
|
});
|
||||||
|
|
@ -95,22 +93,20 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
{
|
{
|
||||||
contextMenus.Add(new Result
|
contextMenus.Add(new Result
|
||||||
{
|
{
|
||||||
Title = Context.API.GetTranslation("plugin_explorer_remove_from_quickaccess_title"),
|
Title = Localize.plugin_explorer_remove_from_quickaccess_title(),
|
||||||
SubTitle = Context.API.GetTranslation("plugin_explorer_remove_from_quickaccess_subtitle"),
|
SubTitle = Localize.plugin_explorer_remove_from_quickaccess_subtitle(),
|
||||||
Action = (context) =>
|
Action = (context) =>
|
||||||
{
|
{
|
||||||
Settings.QuickAccessLinks.Remove(Settings.QuickAccessLinks.FirstOrDefault(x => string.Equals(x.Path, record.FullPath, StringComparison.OrdinalIgnoreCase)));
|
Settings.QuickAccessLinks.Remove(Settings.QuickAccessLinks.FirstOrDefault(x => string.Equals(x.Path, record.FullPath, StringComparison.OrdinalIgnoreCase)));
|
||||||
|
|
||||||
Context.API.ShowMsg(Context.API.GetTranslation("plugin_explorer_removefilefoldersuccess"),
|
Context.API.ShowMsg(Localize.plugin_explorer_removefilefoldersuccess(),
|
||||||
Context.API.GetTranslation("plugin_explorer_removefilefoldersuccess_detail"),
|
Localize.plugin_explorer_removefilefoldersuccess_detail(),
|
||||||
Constants.ExplorerIconImageFullPath);
|
Constants.ExplorerIconImageFullPath);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
},
|
},
|
||||||
SubTitleToolTip = Context.API.GetTranslation("plugin_explorer_contextmenu_remove_titletooltip"),
|
SubTitleToolTip = Localize.plugin_explorer_contextmenu_remove_titletooltip(),
|
||||||
TitleToolTip = Context.API.GetTranslation("plugin_explorer_contextmenu_remove_titletooltip"),
|
TitleToolTip = Localize.plugin_explorer_contextmenu_remove_titletooltip(),
|
||||||
IcoPath = Constants.RemoveQuickAccessImagePath,
|
IcoPath = Constants.RemoveQuickAccessImagePath,
|
||||||
Glyph = new GlyphInfo(FontFamily: "/Resources/#Segoe Fluent Icons", Glyph: "\uecc9")
|
Glyph = new GlyphInfo(FontFamily: "/Resources/#Segoe Fluent Icons", Glyph: "\uecc9")
|
||||||
});
|
});
|
||||||
|
|
@ -118,8 +114,8 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
|
|
||||||
contextMenus.Add(new Result
|
contextMenus.Add(new Result
|
||||||
{
|
{
|
||||||
Title = Context.API.GetTranslation("plugin_explorer_copypath"),
|
Title = Localize.plugin_explorer_copypath(),
|
||||||
SubTitle = Context.API.GetTranslation("plugin_explorer_copypath_subtitle"),
|
SubTitle = Localize.plugin_explorer_copypath_subtitle(),
|
||||||
Action = _ =>
|
Action = _ =>
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
@ -130,7 +126,7 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
LogException("Fail to set text in clipboard", e);
|
LogException("Fail to set text in clipboard", e);
|
||||||
Context.API.ShowMsgError(Context.API.GetTranslation("plugin_explorer_fail_to_set_text"));
|
Context.API.ShowMsgError(Localize.plugin_explorer_fail_to_set_text());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
@ -140,8 +136,8 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
|
|
||||||
contextMenus.Add(new Result
|
contextMenus.Add(new Result
|
||||||
{
|
{
|
||||||
Title = Context.API.GetTranslation("plugin_explorer_copyname"),
|
Title = Localize.plugin_explorer_copyname(),
|
||||||
SubTitle = Context.API.GetTranslation("plugin_explorer_copyname_subtitle"),
|
SubTitle = Localize.plugin_explorer_copyname_subtitle(),
|
||||||
Action = _ =>
|
Action = _ =>
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
@ -152,7 +148,7 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
LogException("Fail to set text in clipboard", e);
|
LogException("Fail to set text in clipboard", e);
|
||||||
Context.API.ShowMsgError(Context.API.GetTranslation("plugin_explorer_fail_to_set_text"));
|
Context.API.ShowMsgError(Localize.plugin_explorer_fail_to_set_text());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
@ -162,8 +158,8 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
|
|
||||||
contextMenus.Add(new Result
|
contextMenus.Add(new Result
|
||||||
{
|
{
|
||||||
Title = Context.API.GetTranslation("plugin_explorer_copyfilefolder"),
|
Title = Localize.plugin_explorer_copyfilefolder(),
|
||||||
SubTitle = isFile ? Context.API.GetTranslation("plugin_explorer_copyfile_subtitle") : Context.API.GetTranslation("plugin_explorer_copyfolder_subtitle"),
|
SubTitle = isFile ? Localize.plugin_explorer_copyfile_subtitle(): Localize.plugin_explorer_copyfolder_subtitle(),
|
||||||
Action = _ =>
|
Action = _ =>
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
@ -174,28 +170,26 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
LogException($"Fail to set file/folder in clipboard", e);
|
LogException($"Fail to set file/folder in clipboard", e);
|
||||||
Context.API.ShowMsgError(Context.API.GetTranslation("plugin_explorer_fail_to_set_files"));
|
Context.API.ShowMsgError(Localize.plugin_explorer_fail_to_set_files());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
IcoPath = icoPath,
|
IcoPath = icoPath,
|
||||||
Glyph = new GlyphInfo(FontFamily: "/Resources/#Segoe Fluent Icons", Glyph: "\uf12b")
|
Glyph = new GlyphInfo(FontFamily: "/Resources/#Segoe Fluent Icons", Glyph: "\uf12b")
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
if (record.Type is ResultType.File or ResultType.Folder)
|
if (record.Type is ResultType.File or ResultType.Folder)
|
||||||
contextMenus.Add(new Result
|
contextMenus.Add(new Result
|
||||||
{
|
{
|
||||||
Title = Context.API.GetTranslation("plugin_explorer_deletefilefolder"),
|
Title = Localize.plugin_explorer_deletefilefolder(),
|
||||||
SubTitle = isFile ? Context.API.GetTranslation("plugin_explorer_deletefile_subtitle") : Context.API.GetTranslation("plugin_explorer_deletefolder_subtitle"),
|
SubTitle = isFile ? Localize.plugin_explorer_deletefile_subtitle(): Localize.plugin_explorer_deletefolder_subtitle(),
|
||||||
Action = (context) =>
|
Action = (context) =>
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (Context.API.ShowMsgBox(
|
if (Context.API.ShowMsgBox(
|
||||||
string.Format(Context.API.GetTranslation("plugin_explorer_delete_folder_link"), record.FullPath),
|
Localize.plugin_explorer_delete_folder_link(record.FullPath),
|
||||||
Context.API.GetTranslation("plugin_explorer_deletefilefolder"),
|
Localize.plugin_explorer_deletefilefolder(),
|
||||||
MessageBoxButton.OKCancel,
|
MessageBoxButton.OKCancel,
|
||||||
MessageBoxImage.Warning)
|
MessageBoxImage.Warning)
|
||||||
== MessageBoxResult.Cancel)
|
== MessageBoxResult.Cancel)
|
||||||
|
|
@ -208,15 +202,15 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
|
|
||||||
_ = Task.Run(() =>
|
_ = Task.Run(() =>
|
||||||
{
|
{
|
||||||
Context.API.ShowMsg(Context.API.GetTranslation("plugin_explorer_deletefilefoldersuccess"),
|
Context.API.ShowMsg(Localize.plugin_explorer_deletefilefoldersuccess(),
|
||||||
string.Format(Context.API.GetTranslation("plugin_explorer_deletefilefoldersuccess_detail"), record.FullPath),
|
Localize.plugin_explorer_deletefilefoldersuccess_detail(record.FullPath),
|
||||||
Constants.ExplorerIconImageFullPath);
|
Constants.ExplorerIconImageFullPath);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
LogException($"Fail to delete {record.FullPath}", e);
|
LogException($"Fail to delete {record.FullPath}", e);
|
||||||
Context.API.ShowMsgError(string.Format(Context.API.GetTranslation("plugin_explorer_fail_to_delete"), record.FullPath));
|
Context.API.ShowMsgError(Localize.plugin_explorer_fail_to_delete(record.FullPath));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -230,7 +224,7 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
{
|
{
|
||||||
contextMenus.Add(new Result()
|
contextMenus.Add(new Result()
|
||||||
{
|
{
|
||||||
Title = Context.API.GetTranslation("plugin_explorer_show_contextmenu_title"),
|
Title = Localize.plugin_explorer_show_contextmenu_title(),
|
||||||
IcoPath = Constants.ShowContextMenuImagePath,
|
IcoPath = Constants.ShowContextMenuImagePath,
|
||||||
Glyph = new GlyphInfo(FontFamily: "/Resources/#Segoe Fluent Icons", Glyph: "\ue700"),
|
Glyph = new GlyphInfo(FontFamily: "/Resources/#Segoe Fluent Icons", Glyph: "\ue700"),
|
||||||
Action = _ =>
|
Action = _ =>
|
||||||
|
|
@ -248,8 +242,8 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
if (record.Type == ResultType.File && CanRunAsDifferentUser(record.FullPath))
|
if (record.Type == ResultType.File && CanRunAsDifferentUser(record.FullPath))
|
||||||
contextMenus.Add(new Result
|
contextMenus.Add(new Result
|
||||||
{
|
{
|
||||||
Title = Context.API.GetTranslation("plugin_explorer_runasdifferentuser"),
|
Title = Localize.plugin_explorer_runasdifferentuser(),
|
||||||
SubTitle = Context.API.GetTranslation("plugin_explorer_runasdifferentuser_subtitle"),
|
SubTitle = Localize.plugin_explorer_runasdifferentuser_subtitle(),
|
||||||
Action = (context) =>
|
Action = (context) =>
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
@ -259,8 +253,8 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
catch (FileNotFoundException e)
|
catch (FileNotFoundException e)
|
||||||
{
|
{
|
||||||
Context.API.ShowMsgError(
|
Context.API.ShowMsgError(
|
||||||
Context.API.GetTranslation("plugin_explorer_plugin_name"),
|
Localize.plugin_explorer_plugin_name(),
|
||||||
string.Format(Context.API.GetTranslation("plugin_explorer_file_not_found"), e.Message));
|
Localize.plugin_explorer_file_not_found(e.Message));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -317,8 +311,8 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
{
|
{
|
||||||
return new Result
|
return new Result
|
||||||
{
|
{
|
||||||
Title = Context.API.GetTranslation("plugin_explorer_opencontainingfolder"),
|
Title = Localize.plugin_explorer_opencontainingfolder(),
|
||||||
SubTitle = Context.API.GetTranslation("plugin_explorer_opencontainingfolder_subtitle"),
|
SubTitle = Localize.plugin_explorer_opencontainingfolder_subtitle(),
|
||||||
Action = _ =>
|
Action = _ =>
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
@ -328,7 +322,7 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
LogException($"Fail to open file at {record.FullPath}", e);
|
LogException($"Fail to open file at {record.FullPath}", e);
|
||||||
Context.API.ShowMsgError(string.Format(Context.API.GetTranslation("plugin_explorer_fail_to_open"), record.FullPath));
|
Context.API.ShowMsgError(Localize.plugin_explorer_fail_to_open(record.FullPath));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -339,11 +333,9 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private Result CreateOpenWithEditorResult(SearchResult record, string editorPath)
|
private Result CreateOpenWithEditorResult(SearchResult record, string editorPath)
|
||||||
{
|
{
|
||||||
var name = $"{Context.API.GetTranslation("plugin_explorer_openwitheditor")} {Path.GetFileNameWithoutExtension(editorPath)}";
|
var name = $"{Localize.plugin_explorer_openwitheditor()} {Path.GetFileNameWithoutExtension(editorPath)}";
|
||||||
|
|
||||||
return new Result
|
return new Result
|
||||||
{
|
{
|
||||||
|
|
@ -361,8 +353,7 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
var raw_message = Context.API.GetTranslation("plugin_explorer_openwitheditor_error");
|
var message = Localize.plugin_explorer_openwitheditor_error(record.FullPath, Path.GetFileNameWithoutExtension(editorPath), editorPath);
|
||||||
var message = string.Format(raw_message, record.FullPath, Path.GetFileNameWithoutExtension(editorPath), editorPath);
|
|
||||||
LogException(message, e);
|
LogException(message, e);
|
||||||
Context.API.ShowMsgError(message);
|
Context.API.ShowMsgError(message);
|
||||||
return false;
|
return false;
|
||||||
|
|
@ -377,7 +368,7 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
{
|
{
|
||||||
string shellPath = Settings.ShellPath;
|
string shellPath = Settings.ShellPath;
|
||||||
|
|
||||||
var name = $"{Context.API.GetTranslation("plugin_explorer_openwithshell")} {Path.GetFileNameWithoutExtension(shellPath)}";
|
var name = $"{Localize.plugin_explorer_openwithshell()} {Path.GetFileNameWithoutExtension(shellPath)}";
|
||||||
|
|
||||||
return new Result
|
return new Result
|
||||||
{
|
{
|
||||||
|
|
@ -394,8 +385,7 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
var raw_message = Context.API.GetTranslation("plugin_explorer_openwithshell_error");
|
var message = Localize.plugin_explorer_openwithshell_error(record.FullPath, Path.GetFileNameWithoutExtension(shellPath), shellPath);
|
||||||
var message = string.Format(raw_message, record.FullPath, Path.GetFileNameWithoutExtension(shellPath), shellPath);
|
|
||||||
LogException(message, e);
|
LogException(message, e);
|
||||||
Context.API.ShowMsgError(message);
|
Context.API.ShowMsgError(message);
|
||||||
return false;
|
return false;
|
||||||
|
|
@ -410,8 +400,8 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
{
|
{
|
||||||
return new Result
|
return new Result
|
||||||
{
|
{
|
||||||
Title = Context.API.GetTranslation("plugin_explorer_excludefromindexsearch"),
|
Title = Localize.plugin_explorer_excludefromindexsearch(),
|
||||||
SubTitle = Context.API.GetTranslation("plugin_explorer_path") + " " + record.FullPath,
|
SubTitle = Localize.plugin_explorer_path()+ " " + record.FullPath,
|
||||||
Action = c_ =>
|
Action = c_ =>
|
||||||
{
|
{
|
||||||
if (!Settings.IndexSearchExcludedSubdirectoryPaths.Any(x => string.Equals(x.Path, record.FullPath, StringComparison.OrdinalIgnoreCase)))
|
if (!Settings.IndexSearchExcludedSubdirectoryPaths.Any(x => string.Equals(x.Path, record.FullPath, StringComparison.OrdinalIgnoreCase)))
|
||||||
|
|
@ -422,8 +412,8 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
|
|
||||||
_ = Task.Run(() =>
|
_ = Task.Run(() =>
|
||||||
{
|
{
|
||||||
Context.API.ShowMsg(Context.API.GetTranslation("plugin_explorer_excludedfromindexsearch_msg"),
|
Context.API.ShowMsg(Localize.plugin_explorer_excludedfromindexsearch_msg(),
|
||||||
Context.API.GetTranslation("plugin_explorer_path") +
|
Localize.plugin_explorer_path()+
|
||||||
" " + record.FullPath, Constants.ExplorerIconImageFullPath);
|
" " + record.FullPath, Constants.ExplorerIconImageFullPath);
|
||||||
|
|
||||||
// so the new path can be persisted to storage and not wait till next ViewModel save.
|
// so the new path can be persisted to storage and not wait till next ViewModel save.
|
||||||
|
|
@ -441,8 +431,8 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
{
|
{
|
||||||
return new Result
|
return new Result
|
||||||
{
|
{
|
||||||
Title = Context.API.GetTranslation("plugin_explorer_openindexingoptions"),
|
Title = Localize.plugin_explorer_openindexingoptions(),
|
||||||
SubTitle = Context.API.GetTranslation("plugin_explorer_openindexingoptions_subtitle"),
|
SubTitle = Localize.plugin_explorer_openindexingoptions_subtitle(),
|
||||||
Action = _ =>
|
Action = _ =>
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
@ -459,7 +449,7 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
var message = Context.API.GetTranslation("plugin_explorer_openindexingoptions_errormsg");
|
var message = Localize.plugin_explorer_openindexingoptions_errormsg();
|
||||||
LogException(message, e);
|
LogException(message, e);
|
||||||
Context.API.ShowMsgError(message);
|
Context.API.ShowMsgError(message);
|
||||||
return false;
|
return false;
|
||||||
|
|
@ -470,12 +460,12 @@ namespace Flow.Launcher.Plugin.Explorer
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
private Result CreateOpenWithMenu(SearchResult record)
|
private static Result CreateOpenWithMenu(SearchResult record)
|
||||||
{
|
{
|
||||||
return new Result
|
return new Result
|
||||||
{
|
{
|
||||||
Title = Context.API.GetTranslation("plugin_explorer_openwith"),
|
Title = Localize.plugin_explorer_openwith(),
|
||||||
SubTitle = Context.API.GetTranslation("plugin_explorer_openwith_subtitle"),
|
SubTitle = Localize.plugin_explorer_openwith_subtitle(),
|
||||||
Action = _ =>
|
Action = _ =>
|
||||||
{
|
{
|
||||||
Process.Start("rundll32.exe", $"{Path.Combine(Environment.SystemDirectory, "shell32.dll")},OpenAs_RunDLL {record.FullPath}");
|
Process.Start("rundll32.exe", $"{Path.Combine(Environment.SystemDirectory, "shell32.dll")},OpenAs_RunDLL {record.FullPath}");
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,7 @@
|
||||||
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
|
||||||
<OutputPath>..\..\Output\Release\Plugins\Flow.Launcher.Plugin.Explorer</OutputPath>
|
<OutputPath>..\..\Output\Release\Plugins\Flow.Launcher.Plugin.Explorer</OutputPath>
|
||||||
|
<NoWarn>$(NoWarn);FLSG0007</NoWarn>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
@ -47,8 +48,8 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0" />
|
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0" />
|
||||||
<PackageReference Include="Droplex" Version="1.7.0" />
|
<PackageReference Include="Droplex" Version="1.7.0" />
|
||||||
<PackageReference Include="Flow.Launcher.Localization" Version="0.0.4" />
|
<PackageReference Include="Flow.Launcher.Localization" Version="0.0.6" />
|
||||||
<PackageReference Include="System.Data.OleDb" Version="9.0.7" />
|
<PackageReference Include="System.Data.OleDb" Version="9.0.9" />
|
||||||
<PackageReference Include="System.Linq.Async" Version="6.0.3" />
|
<PackageReference Include="System.Linq.Async" Version="6.0.3" />
|
||||||
<PackageReference Include="tlbimp-Microsoft.Search.Interop" Version="1.0.0" />
|
<PackageReference Include="tlbimp-Microsoft.Search.Interop" Version="1.0.0" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@
|
||||||
<system:String x:Key="plugin_explorer_directoryinfosearch_error">حدث خطأ أثناء البحث: {0}</system:String>
|
<system:String x:Key="plugin_explorer_directoryinfosearch_error">حدث خطأ أثناء البحث: {0}</system:String>
|
||||||
<system:String x:Key="plugin_explorer_opendir_error">تعذر فتح المجلد</system:String>
|
<system:String x:Key="plugin_explorer_opendir_error">تعذر فتح المجلد</system:String>
|
||||||
<system:String x:Key="plugin_explorer_openfile_error">تعذر فتح الملف</system:String>
|
<system:String x:Key="plugin_explorer_openfile_error">تعذر فتح الملف</system:String>
|
||||||
|
<system:String x:Key="plugin_explorer_new_action_keyword_assigned">This new action keyword is already assigned to another plugin, please choose a different one</system:String>
|
||||||
|
|
||||||
<!-- Controls -->
|
<!-- Controls -->
|
||||||
<system:String x:Key="plugin_explorer_delete">حذف</system:String>
|
<system:String x:Key="plugin_explorer_delete">حذف</system:String>
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@
|
||||||
<system:String x:Key="plugin_explorer_directoryinfosearch_error">Při vyhledávání došlo k chybě: {0}</system:String>
|
<system:String x:Key="plugin_explorer_directoryinfosearch_error">Při vyhledávání došlo k chybě: {0}</system:String>
|
||||||
<system:String x:Key="plugin_explorer_opendir_error">Adresář nelze otevřít</system:String>
|
<system:String x:Key="plugin_explorer_opendir_error">Adresář nelze otevřít</system:String>
|
||||||
<system:String x:Key="plugin_explorer_openfile_error">Nelze otevřít soubor</system:String>
|
<system:String x:Key="plugin_explorer_openfile_error">Nelze otevřít soubor</system:String>
|
||||||
|
<system:String x:Key="plugin_explorer_new_action_keyword_assigned">This new action keyword is already assigned to another plugin, please choose a different one</system:String>
|
||||||
|
|
||||||
<!-- Controls -->
|
<!-- Controls -->
|
||||||
<system:String x:Key="plugin_explorer_delete">Smazat</system:String>
|
<system:String x:Key="plugin_explorer_delete">Smazat</system:String>
|
||||||
|
|
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue