mirror of
https://github.com/lin-ycv/EverythingPowerToys.git
synced 2025-01-05 10:27:48 +08:00
Enhanced ARM64 support and code cleanup
- Updated `Community.PowerToys.Run.Plugin.Everything.csproj` for better `x64` and `ARM64` support, including platform-specific constants and simplified resource management. - Improved `ARM64` build process in `PostBuild` event, including automatic replacement of `Everything64.dll` with `EverythingARM64.dll`. - Streamlined result processing in `Everything.cs` for efficiency and readability, using direct paths and filenames from the Everything SDK. - Reverted to `[DllImport]` in `NativeMethods.cs` for P/Invoke, updating method signatures accordingly. - Cleaned up `Main.cs` by removing unused `using` directives, handling a new `Prefix` setting, and removing obsolete ARM DLL logic. - Extended plugin configuration options in `Settings.cs` with a new property for the query prefix and differentiated update logic in `Update.cs` for `x64` and `ARM64` executables. - Closes #115 #112
This commit is contained in:
parent
9f19e814c5
commit
3841365af3
@ -33,6 +33,14 @@
|
||||
<DebugType>none</DebugType>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Platform)'=='x64'">
|
||||
<DefineConstants>$(DefineConstants);X64</DefineConstants>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Platform)'=='ARM64'">
|
||||
<DefineConstants>$(DefineConstants);ARM64</DefineConstants>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Remove="NativeMethods.cs" />
|
||||
</ItemGroup>
|
||||
@ -65,23 +73,14 @@
|
||||
<EmbeddedResource Update="Properties\Resources.es-es.resx">
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Update="Properties\Resources.de-de.resx">
|
||||
<CustomToolNamespace>Community.PowerToys.Run.Plugin.Everything.Language</CustomToolNamespace>
|
||||
<LastGenOutput>Resources.de.Designer.cs</LastGenOutput>
|
||||
<Generator>PublicResXFileCodeGenerator</Generator>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Update="Properties\Resources.zh-cn.resx">
|
||||
<CustomToolNamespace>Community.PowerToys.Run.Plugin.Everything.Language</CustomToolNamespace>
|
||||
<LastGenOutput>Resources - Copy.zh.Designer.cs</LastGenOutput>
|
||||
<Generator>PublicResXFileCodeGenerator</Generator>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Update="Properties\Resources.resx">
|
||||
<Generator>PublicResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Update="Properties\Resources.zh.resx">
|
||||
<CustomToolNamespace>Community.PowerToys.Run.Plugin.Everything.Language</CustomToolNamespace>
|
||||
<LastGenOutput>Resources.zh.Designer.cs</LastGenOutput>
|
||||
<Generator>PublicResXFileCodeGenerator</Generator>
|
||||
<EmbeddedResource Update="Properties\Resources.zh-tw.resx">
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
|
||||
@ -137,7 +136,7 @@
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="PostBuild" AfterTargets="PostBuildEvent">
|
||||
<Exec Command="del /Q "$(TargetDir)*.pdb"
del /Q "$(TargetDir)PowerToys*.dll"
del /Q "$(TargetDir)Wox*.dll"
del /Q "$(TargetDir)Ijwhost.dll"
del /Q "$(TargetDir)*.xml"
del/ Q "$(TargetDir)backup_restore_settings.json"
del /Q ".\bin\CHECKSUM.txt"
copy /y ".\NSIS\MIT.txt" "$(TargetDir)LICENSE.txt"
powershell Compress-Archive -Path $(TargetDir) -DestinationPath .\bin\EverythingPT-$(Version)-x64+ARM64.zip -Force
"C:\Program Files (x86)\NSIS\makensis" /Dver=$(Version) /Ddirect=$(TargetDir) .\NSIS\exeCreator.nsi
certUtil -hashfile .\bin\EverythingPT-$(Version)-x64+ARM64.zip SHA256 >> .\bin\CHECKSUM.txt
certUtil -hashfile .\bin\EverythingPT-$(Version)-x64+ARM64.exe SHA256 >> .\bin\CHECKSUM.txt
rd /Q /S "$(TargetDir)"
rd /Q /S "$(ProjectDir)obj"" />
|
||||
<Exec Command="if $(Platform) == ARM64 (
del /Q "$(TargetDir)Everything64.dll"
copy /y "$(TargetDir)EverythingARM64.dll" "$(TargetDir)Everything64.dll"
)
del /Q "$(TargetDir)EverythingARM64.dll"
del /Q "$(TargetDir)*.pdb"
del /Q "$(TargetDir)PowerToys*.dll"
del /Q "$(TargetDir)Wox*.dll"
del /Q "$(TargetDir)Ijwhost.dll"
del /Q "$(TargetDir)*.xml"
del/ Q "$(TargetDir)backup_restore_settings.json"
del /Q ".\bin\CHECKSUM.txt"
copy /y ".\NSIS\MIT.txt" "$(TargetDir)LICENSE.txt"
powershell Compress-Archive -Path $(TargetDir) -DestinationPath .\bin\EverythingPT-$(Version)-$(Platform).zip -Force
"C:\Program Files (x86)\NSIS\makensis" /Dver=$(Version) /Ddirect=$(TargetDir) /Dplatform=$(Platform) .\NSIS\exeCreator.nsi
certUtil -hashfile .\bin\EverythingPT-$(Version)-$(Platform).zip SHA256 >> .\bin\CHECKSUM.txt
certUtil -hashfile .\bin\EverythingPT-$(Version)-$(Platform).exe SHA256 >> .\bin\CHECKSUM.txt
rd /Q /S "$(TargetDir)"
rd /Q /S "$(ProjectDir)obj"" />
|
||||
</Target>
|
||||
|
||||
</Project>
|
||||
|
@ -3,6 +3,7 @@ using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.Runtime.InteropServices;
|
||||
using Community.PowerToys.Run.Plugin.Everything.Properties;
|
||||
using Wox.Plugin;
|
||||
using static Community.PowerToys.Run.Plugin.Everything.Interop.NativeMethods;
|
||||
@ -13,7 +14,7 @@ namespace Community.PowerToys.Run.Plugin.Everything
|
||||
{
|
||||
internal Everything(Settings setting)
|
||||
{
|
||||
Everything_SetRequestFlags(Request.FULL_PATH_AND_FILE_NAME);
|
||||
Everything_SetRequestFlags(Request.FILE_NAME | Request.PATH);
|
||||
UpdateSettings(setting);
|
||||
}
|
||||
|
||||
@ -30,14 +31,18 @@ namespace Community.PowerToys.Run.Plugin.Everything
|
||||
if (setting.Log > LogLevel.None)
|
||||
{
|
||||
Debugger.Write($"\r\n\r\nNew Query: {query}\r\n" +
|
||||
$"Prefix {setting.Prefix} | " +
|
||||
$"Sort {(int)setting.Sort}_{Everything_GetSort()} | " +
|
||||
$"Max {setting.Max}_{Everything_GetMax()} | " +
|
||||
$"Match Path {setting.MatchPath}_{Everything_GetMatchPath()} | " +
|
||||
$"Regex {setting.RegEx}_{Everything_GetRegex()}");
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(setting.Prefix))
|
||||
query = setting.Prefix + query;
|
||||
|
||||
string orgqry = query;
|
||||
|
||||
|
||||
if (setting.EnvVar && orgqry.Contains('%'))
|
||||
{
|
||||
query = Environment.ExpandEnvironmentVariables(query).Replace(';', '|');
|
||||
@ -76,16 +81,16 @@ namespace Community.PowerToys.Run.Plugin.Everything
|
||||
if (setting.Log > LogLevel.None)
|
||||
Debugger.Write($"\r\n===== RESULT #{i} =====");
|
||||
|
||||
char[] buffer = new char[32767];
|
||||
uint length = Everything_GetResultFullPathNameW(i, buffer, (uint)buffer.Length);
|
||||
string name = Marshal.PtrToStringUni(Everything_GetResultFileNameW(i));
|
||||
string path = Marshal.PtrToStringUni(Everything_GetResultPathW(i));
|
||||
string fullPath = Path.Combine(path, name);
|
||||
|
||||
string fullPath = new(buffer, 0, (int)length);
|
||||
if (setting.Log > LogLevel.None)
|
||||
Debugger.Write($"{length} {(setting.Log == LogLevel.Verbose ? fullPath : string.Empty)}");
|
||||
string name = Path.GetFileName(fullPath);
|
||||
bool isFolder = Everything_IsFolderResult(i);
|
||||
Debugger.Write($"{fullPath.Length} {(setting.Log == LogLevel.Verbose ? fullPath : string.Empty)}");
|
||||
|
||||
string path = isFolder ? fullPath : Path.GetDirectoryName(fullPath);
|
||||
bool isFolder = Everything_IsFolderResult(i);
|
||||
if (isFolder)
|
||||
path = fullPath;
|
||||
string ext = Path.GetExtension(fullPath.Replace(".lnk", string.Empty));
|
||||
if (setting.Log > LogLevel.None)
|
||||
Debugger.Write($"Folder: {isFolder}\r\nFile Path {(setting.Log == LogLevel.Verbose ? path : path.Length)}\r\nFile Name {(setting.Log == LogLevel.Verbose ? name : name.Length)}\r\nExt: {ext}");
|
||||
@ -114,7 +119,7 @@ namespace Community.PowerToys.Run.Plugin.Everything
|
||||
try
|
||||
{
|
||||
process.Start();
|
||||
_ = Everything_IncRunCountFromFileNameW(fullPath);
|
||||
_ = Everything_IncRunCountFromFileName(fullPath);
|
||||
return true;
|
||||
}
|
||||
catch (Win32Exception)
|
||||
|
@ -13,3 +13,5 @@ using System.Diagnostics.CodeAnalysis;
|
||||
[assembly: SuppressMessage("StyleCop.CSharp.DocumentationRules", "SA1633:File should have header", Justification = "Reviewed")]
|
||||
[assembly: SuppressMessage("StyleCop.CSharp.DocumentationRules", "SA1636:FileHeaderCopyrightTextMustMatch", Justification = "Reviewed.")]
|
||||
[assembly: SuppressMessage("StyleCop.CSharp.SpacingRules", "SA1010:Opening square brackets should be spaced correctly", Justification = "Reviewed")]
|
||||
[assembly: SuppressMessage("StyleCop.CSharp.SpacingRules", "SA1005:Single line comments should begin with single space", Justification = "Reviewed")]
|
||||
[assembly: SuppressMessage("StyleCop.CSharp.LayoutRules", "SA1512:Single-line comments should not be followed by blank line", Justification = "Reviewed")]
|
||||
|
@ -3,7 +3,7 @@ using System.Runtime.InteropServices;
|
||||
|
||||
namespace Community.PowerToys.Run.Plugin.Everything.Interop
|
||||
{
|
||||
public sealed partial class NativeMethods
|
||||
public sealed class NativeMethods
|
||||
{
|
||||
#region FlagsEnums
|
||||
[Flags]
|
||||
@ -106,40 +106,38 @@ namespace Community.PowerToys.Run.Plugin.Everything.Interop
|
||||
}
|
||||
#endregion
|
||||
internal const string dllName = "Everything64.dll";
|
||||
[LibraryImport(dllName)]
|
||||
internal static partial uint Everything_GetNumResults();
|
||||
[LibraryImport(dllName)]
|
||||
[DllImport(dllName)]
|
||||
internal static extern uint Everything_GetNumResults();
|
||||
[DllImport(dllName)]
|
||||
[return: MarshalAs(UnmanagedType.Bool)]
|
||||
internal static partial bool Everything_GetMatchPath();
|
||||
[LibraryImport(dllName)]
|
||||
internal static partial uint Everything_GetMax();
|
||||
[LibraryImport(dllName)]
|
||||
[return: MarshalAs(UnmanagedType.Bool)]
|
||||
internal static partial bool Everything_GetRegex();
|
||||
[LibraryImport(dllName, StringMarshalling = StringMarshalling.Utf16)]
|
||||
internal static partial uint Everything_GetResultFullPathNameW(uint nIndex, [Out] char[] lpString, uint nMaxCount);
|
||||
[LibraryImport(dllName)]
|
||||
internal static partial uint Everything_GetSort();
|
||||
[LibraryImport(dllName, StringMarshalling = StringMarshalling.Utf16)]
|
||||
internal static partial uint Everything_IncRunCountFromFileNameW(string lpFileName);
|
||||
[LibraryImport(dllName)]
|
||||
[return: MarshalAs(UnmanagedType.Bool)]
|
||||
internal static partial bool Everything_IsFolderResult(uint index);
|
||||
[LibraryImport(dllName)]
|
||||
[return: MarshalAs(UnmanagedType.Bool)]
|
||||
internal static partial bool Everything_QueryW([MarshalAs(UnmanagedType.Bool)] bool bWait);
|
||||
[LibraryImport(dllName)]
|
||||
internal static partial void Everything_SetMax(uint dwMax);
|
||||
[LibraryImport(dllName)]
|
||||
internal static partial void Everything_SetRegex([MarshalAs(UnmanagedType.Bool)] bool bEnable);
|
||||
[LibraryImport(dllName)]
|
||||
internal static partial void Everything_SetRequestFlags(Request RequestFlags);
|
||||
[LibraryImport(dllName, StringMarshalling = StringMarshalling.Utf16)]
|
||||
internal static partial void Everything_SetSearchW(string lpSearchString);
|
||||
[LibraryImport(dllName)]
|
||||
[return: MarshalAs(UnmanagedType.Bool)]
|
||||
internal static partial bool Everything_SetMatchPath([MarshalAs(UnmanagedType.Bool)] bool bEnable);
|
||||
[LibraryImport(dllName)]
|
||||
internal static partial void Everything_SetSort(Sort SortType);
|
||||
internal static extern bool Everything_GetMatchPath();
|
||||
[DllImport(dllName)]
|
||||
internal static extern uint Everything_GetMax();
|
||||
[DllImport(dllName)]
|
||||
internal static extern bool Everything_GetRegex();
|
||||
[DllImport(dllName, CharSet = CharSet.Unicode)]
|
||||
internal static extern IntPtr Everything_GetResultFileNameW(uint nIndex);
|
||||
[DllImport(dllName, CharSet = CharSet.Unicode)]
|
||||
internal static extern IntPtr Everything_GetResultPathW(uint nIndex);
|
||||
[DllImport(dllName)]
|
||||
internal static extern uint Everything_GetSort();
|
||||
[DllImport(dllName, CharSet = CharSet.Unicode)]
|
||||
internal static extern uint Everything_IncRunCountFromFileName(string lpFileName);
|
||||
[DllImport(dllName)]
|
||||
internal static extern bool Everything_IsFolderResult(uint index);
|
||||
[DllImport(dllName)]
|
||||
internal static extern bool Everything_QueryW([MarshalAs(UnmanagedType.Bool)] bool bWait);
|
||||
[DllImport(dllName)]
|
||||
internal static extern void Everything_SetMax(uint dwMax);
|
||||
[DllImport(dllName)]
|
||||
internal static extern void Everything_SetRegex([MarshalAs(UnmanagedType.Bool)] bool bEnable);
|
||||
[DllImport(dllName)]
|
||||
internal static extern void Everything_SetRequestFlags(Request RequestFlags);
|
||||
[DllImport(dllName, CharSet = CharSet.Unicode)]
|
||||
internal static extern void Everything_SetSearchW(string lpSearchString);
|
||||
[DllImport(dllName)]
|
||||
internal static extern bool Everything_SetMatchPath([MarshalAs(UnmanagedType.Bool)] bool bEnable);
|
||||
[DllImport(dllName)]
|
||||
internal static extern void Everything_SetSort(Sort SortType);
|
||||
}
|
||||
}
|
||||
|
40
Main.cs
40
Main.cs
@ -1,9 +1,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Controls;
|
||||
using Community.PowerToys.Run.Plugin.Everything.Properties;
|
||||
@ -19,10 +17,8 @@ namespace Community.PowerToys.Run.Plugin.Everything
|
||||
public static string PluginID => "A86867E2D932459CBD77D176373DD657";
|
||||
public string Name => Resources.plugin_name;
|
||||
public string Description => Resources.plugin_description;
|
||||
|
||||
private readonly Settings _setting = new();
|
||||
private Everything _everything;
|
||||
|
||||
private ContextMenuLoader _contextMenuLoader;
|
||||
private bool _disposed;
|
||||
|
||||
@ -54,6 +50,14 @@ namespace Community.PowerToys.Run.Plugin.Everything
|
||||
NumberValue = _setting.Max,
|
||||
},
|
||||
new()
|
||||
{
|
||||
Key = nameof(Settings.Prefix),
|
||||
DisplayLabel = Resources.Prefix,
|
||||
DisplayDescription = Resources.Prefix_Description,
|
||||
PluginOptionType = PluginAdditionalOption.AdditionalOptionType.Textbox,
|
||||
TextValue = _setting.Prefix,
|
||||
},
|
||||
new()
|
||||
{
|
||||
Key = nameof(Settings.Copy),
|
||||
DisplayLabel = Resources.SwapCopy,
|
||||
@ -112,33 +116,8 @@ namespace Community.PowerToys.Run.Plugin.Everything
|
||||
},
|
||||
];
|
||||
|
||||
private void CheckArm()
|
||||
{
|
||||
string dir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location),
|
||||
arm = Path.Combine(dir, "EverythingARM64.dll");
|
||||
if (File.Exists(arm))
|
||||
{
|
||||
Architecture arch = RuntimeInformation.ProcessArchitecture;
|
||||
if (_setting.Log > LogLevel.None)
|
||||
Debugger.Write("0.Checking ARM..." + (_setting.Log == LogLevel.Verbose ? $"\r\n\tArchitecture: {arch}" : string.Empty));
|
||||
if (arch == Architecture.Arm64)
|
||||
{
|
||||
File.Delete(Path.Combine(dir, "Everything64.dll"));
|
||||
File.Move(arm, Path.Combine(dir, "Everything64.dll"));
|
||||
}
|
||||
else
|
||||
{
|
||||
File.Delete(arm);
|
||||
}
|
||||
}
|
||||
|
||||
if (_setting.Log > LogLevel.None)
|
||||
Debugger.Write(" Checking ARM...Done");
|
||||
}
|
||||
|
||||
public void Init(PluginInitContext context)
|
||||
{
|
||||
CheckArm();
|
||||
if (_setting.Updates)
|
||||
Task.Run(() => new Update().UpdateAsync(Assembly.GetExecutingAssembly().GetName().Version, _setting));
|
||||
_setting.Getfilters();
|
||||
@ -164,6 +143,7 @@ namespace Community.PowerToys.Run.Plugin.Everything
|
||||
_setting.EnvVar = settings.AdditionalOptions.FirstOrDefault(x => x.Key == nameof(_setting.EnvVar)).Value;
|
||||
_setting.Updates = settings.AdditionalOptions.FirstOrDefault(x => x.Key == nameof(_setting.Updates)).Value;
|
||||
_setting.Log = (LogLevel)settings.AdditionalOptions.FirstOrDefault(x => x.Key == nameof(_setting.Log)).ComboBoxValue;
|
||||
_setting.Prefix = settings.AdditionalOptions.FirstOrDefault(x => x.Key == nameof(_setting.Prefix)).TextValue;
|
||||
|
||||
_everything?.UpdateSettings(_setting);
|
||||
_contextMenuLoader?.Update(_setting);
|
||||
@ -229,10 +209,8 @@ namespace Community.PowerToys.Run.Plugin.Everything
|
||||
}
|
||||
|
||||
public List<ContextMenuResult> LoadContextMenus(Result selectedResult) => _contextMenuLoader.LoadContextMenus(selectedResult);
|
||||
|
||||
public Control CreateSettingPanel() => throw new NotImplementedException();
|
||||
public string GetTranslatedPluginTitle() => Resources.plugin_name;
|
||||
|
||||
public string GetTranslatedPluginDescription() => Resources.plugin_description;
|
||||
}
|
||||
}
|
||||
|
@ -1,11 +1,10 @@
|
||||
; Silent switch /S
|
||||
; to check silent mode `start /wait EverythingPT-0.81.0-x64+ARM64.exe /S`
|
||||
; to check silent mode `start /wait EverythingPT-0.81.0-x64.exe /S`
|
||||
; and `echo %ERRORLEVEL%` to check if 0 or 2
|
||||
; Pass in /Dver=0.00.0 /Ddirect=(TargetDir) before calling the script to set the version
|
||||
; Pass in /Dver=0.00.0 /Ddirect=$(TargetDir) before calling the script to set the version
|
||||
; ie: makensis /Dver=0.77.0 /Ddirect=bin\x64\Release\Everything\ .\exeCreator.nsi
|
||||
; Doc: https://nsis.sourceforge.io/Docs/Chapter4.html
|
||||
!define EPT "EverythingPT"
|
||||
!define PT "PowerToys.exe"
|
||||
|
||||
LoadLanguageFile "${NSISDIR}\Contrib\Language files\English.nlf"
|
||||
;--------------------------------
|
||||
@ -25,7 +24,7 @@ FileErrorText "Can't write: $\r$\n$\r$\n$0$\r$\n$\r$\nPowerToys is probably stil
|
||||
Icon Everything.ico
|
||||
InstallDir "$LOCALAPPDATA\Microsoft\PowerToys\PowerToys Run\Plugins\Everything"
|
||||
Name "${EPT}"
|
||||
OutFile ".\..\bin\${EPT}-${ver}-x64+ARM64.exe"
|
||||
OutFile ".\..\bin\${EPT}-${ver}-${platform}.exe"
|
||||
RequestExecutionLevel user
|
||||
SetCompressor /SOLID /FINAL lzma
|
||||
LicenseData "MIT.txt"
|
||||
|
21
Properties/Resources.Designer.cs
generated
21
Properties/Resources.Designer.cs
generated
@ -134,7 +134,7 @@ namespace Community.PowerToys.Run.Plugin.Everything.Properties {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Expanded enviroment variables, such as %appdata%, so that they work properly at the cost of query time..
|
||||
/// Looks up a localized string similar to Expand enviroment variables, such as %appdata%, so that they work properly at the cost of query time..
|
||||
/// </summary>
|
||||
public static string EnvVar_Description {
|
||||
get {
|
||||
@ -241,6 +241,25 @@ namespace Community.PowerToys.Run.Plugin.Everything.Properties {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Query Prefix.
|
||||
/// </summary>
|
||||
public static string Prefix {
|
||||
get {
|
||||
return ResourceManager.GetString("Prefix", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Adds prefix to all queries, so that you can always include certain filters/modifiers without typing it every time.
|
||||
///Space is not added automatically between prfix and query..
|
||||
/// </summary>
|
||||
public static string Prefix_Description {
|
||||
get {
|
||||
return ResourceManager.GetString("Prefix_Description", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Preview.
|
||||
/// </summary>
|
||||
|
@ -143,7 +143,7 @@
|
||||
<value>Enviroment Variables</value>
|
||||
</data>
|
||||
<data name="EnvVar_Description" xml:space="preserve">
|
||||
<value>Expanded enviroment variables, such as %appdata%, so that they work properly at the cost of query time.</value>
|
||||
<value>Expand enviroment variables, such as %appdata%, so that they work properly at the cost of query time.</value>
|
||||
</data>
|
||||
<data name="Everything_ini" xml:space="preserve">
|
||||
<value>Install Everything if not installed</value>
|
||||
@ -178,6 +178,13 @@
|
||||
<data name="plugin_name" xml:space="preserve">
|
||||
<value>Everything</value>
|
||||
</data>
|
||||
<data name="Prefix" xml:space="preserve">
|
||||
<value>Query Prefix</value>
|
||||
</data>
|
||||
<data name="Prefix_Description" xml:space="preserve">
|
||||
<value>Adds prefix to all queries, so that you can always include certain filters/modifiers without typing it every time.
|
||||
Space is not added automatically between prfix and query.</value>
|
||||
</data>
|
||||
<data name="Preview" xml:space="preserve">
|
||||
<value>Preview</value>
|
||||
</data>
|
||||
|
@ -191,4 +191,4 @@
|
||||
安装版本:{0}
|
||||
最新版本:{1}</value>
|
||||
</data>
|
||||
</root>
|
||||
</root>
|
@ -146,7 +146,7 @@
|
||||
<value>也收尋路徑</value>
|
||||
</data>
|
||||
<data name="Max_Description" xml:space="preserve">
|
||||
<value>結果中顯示的最大結果數</value>
|
||||
<value>結果中顯示的結果數上限</value>
|
||||
</data>
|
||||
<data name="open_containing_folder" xml:space="preserve">
|
||||
<value>開啟檔案位置 (Ctrl+Shift+E)</value>
|
||||
@ -160,6 +160,10 @@
|
||||
<data name="plugin_name" xml:space="preserve">
|
||||
<value>Everything 搜尋</value>
|
||||
</data>
|
||||
<data name="Prefix_Description" xml:space="preserve">
|
||||
<value>為收尋詞增加固定的前綴,在收詢時不用再自行打修飾詞/篩選詞
|
||||
前綴與收尋詞之間不會自動加入空格</value>
|
||||
</data>
|
||||
<data name="Preview_Description" xml:space="preserve">
|
||||
<value>將檔案內容顯示為預覽圖示,預覽雲端的檔案可能會造成停頓</value>
|
||||
</data>
|
||||
@ -174,7 +178,7 @@
|
||||
<value>以系統管理員身分執行 (Ctrl+Shift+Enter)</value>
|
||||
</data>
|
||||
<data name="run_as_user" xml:space="preserve">
|
||||
<value>以其他使用者身份執行 (Ctrl+Shift+U)</value>
|
||||
<value>以其他使用者身分執行 (Ctrl+Shift+U)</value>
|
||||
</data>
|
||||
<data name="Sort_Description" xml:space="preserve">
|
||||
<value>設定結果排序方法</value>
|
@ -21,6 +21,7 @@ namespace Community.PowerToys.Run.Plugin.Everything
|
||||
public bool Updates { get; set; } = true;
|
||||
public string Skip { get; set; }
|
||||
public LogLevel Log { get; set; } = LogLevel.None;
|
||||
public string Prefix { get; set; }
|
||||
|
||||
// Get Filters from settings.toml
|
||||
public Dictionary<string, string> Filters { get; } = [];
|
||||
|
@ -44,7 +44,11 @@ namespace Community.PowerToys.Run.Plugin.Everything
|
||||
string[] nameUrl = [string.Empty, string.Empty];
|
||||
foreach (JsonElement asset in assets.EnumerateArray())
|
||||
{
|
||||
if (asset.TryGetProperty("browser_download_url", out JsonElement downUrl) && downUrl.ToString().EndsWith(".exe", StringComparison.OrdinalIgnoreCase))
|
||||
#if X64
|
||||
if (asset.TryGetProperty("browser_download_url", out JsonElement downUrl) && downUrl.ToString().EndsWith("x64.exe", StringComparison.OrdinalIgnoreCase))
|
||||
#elif ARM64
|
||||
if (asset.TryGetProperty("browser_download_url", out JsonElement downUrl) && downUrl.ToString().EndsWith("ARM64.exe", StringComparison.OrdinalIgnoreCase))
|
||||
#endif
|
||||
{
|
||||
nameUrl[0] = asset.GetProperty("name").ToString();
|
||||
nameUrl[1] = downUrl.ToString();
|
||||
@ -81,7 +85,8 @@ namespace Community.PowerToys.Run.Plugin.Everything
|
||||
Debugger.Write($"\r\nERROR: {e.Message}\r\n{e.StackTrace}\r\n");
|
||||
}
|
||||
|
||||
Debugger.Write(" Checking Update...Done");
|
||||
if (s.Log > LogLevel.None)
|
||||
Debugger.Write(" Checking Update...Done");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -4,7 +4,7 @@
|
||||
"IsGlobal": true,
|
||||
"Name": "Everything",
|
||||
"Author": "Yu Chieh (Victor) Lin",
|
||||
"Version": "0.81.0.1",
|
||||
"Version": "0.82.0",
|
||||
"Language": "csharp",
|
||||
"Website": "https://github.com/Lin-ycv/EverythingPowerToys",
|
||||
"ExecuteFileName": "Community.PowerToys.Run.Plugin.Everything.dll",
|
||||
|
Loading…
Reference in New Issue
Block a user