Fast scoop search
drop-in replacement π
scoop install scoop-search
Instead of using scoop-search.exe <term>
you can create a hook that will run scoop-search.exe
whenever you use native scoop search
Add this to your Powershell profile (usually located at $PROFILE
)
Invoke-Expression (&scoop-search --hook)
If you use cmd.exe
you can use a wrapper script to do the same. Name this scoop.cmd
and add it to
a directory in your %PATH%
@echo off
if "%1" == "search" (
call :search_subroutine %*
) else (
powershell scoop.ps1 %*
)
goto :eof
:search_subroutine
set "args=%*"
set "newargs=%args:* =%"
scoop-search.exe %newargs%
goto :eof
Behaves just like scoop search
and returns identical output. If any differences are found please open an issue.
Non-goal: any additional features unavailable in scoop search
This project uses Zig. Building and running works on all platforms, not only Windows.
Build with (output is stored in ./zig-out/bin
):
zig build -Doptimize=ReleaseFast
Run debug with:
zig build run -- searchterm
Done with hyperfine. scoop-search
is on average 350 times faster.
β― hyperfine --warmup 1 'scoop-search google' 'scoop search google'
Benchmark 1: scoop-search google
Time (mean Β± Ο): 60.3 ms Β± 3.5 ms [User: 91.2 ms, System: 394.2 ms]
Range (min β¦ max): 55.1 ms β¦ 73.8 ms 49 runs
Benchmark 2: scoop search google
Time (mean Β± Ο): 21.275 s Β± 2.657 s [User: 9.604 s, System: 11.789 s]
Range (min β¦ max): 19.143 s β¦ 27.035 s 10 runs
Summary
scoop-search google ran
352.74 Β± 48.49 times faster than scoop search google
ran on AMD Ryzen 5 3600 @ 3.6GHz