fpf-cli 1.6.4 → 1.6.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fpf +40 -6
- package/package.json +1 -1
package/fpf
CHANGED
|
@@ -579,11 +579,38 @@ join_query() {
|
|
|
579
579
|
printf "%s" "${query}"
|
|
580
580
|
}
|
|
581
581
|
|
|
582
|
+
query_is_single_token() {
|
|
583
|
+
local query="$1"
|
|
584
|
+
[[ -n "${query}" && "${query}" != *[[:space:]]* ]]
|
|
585
|
+
}
|
|
586
|
+
|
|
587
|
+
exact_match_entry() {
|
|
588
|
+
local manager="$1"
|
|
589
|
+
local query="$2"
|
|
590
|
+
|
|
591
|
+
if ! query_is_single_token "${query}"; then
|
|
592
|
+
return 0
|
|
593
|
+
fi
|
|
594
|
+
|
|
595
|
+
case "${manager}" in
|
|
596
|
+
brew)
|
|
597
|
+
if brew info --formula "${query}" >/dev/null 2>&1 || brew info --cask "${query}" >/dev/null 2>&1; then
|
|
598
|
+
printf "%s\t-\n" "${query}"
|
|
599
|
+
fi
|
|
600
|
+
;;
|
|
601
|
+
npm|bun)
|
|
602
|
+
if command_exists npm && npm view "${query}" name >/dev/null 2>&1; then
|
|
603
|
+
printf "%s\t-\n" "${query}"
|
|
604
|
+
fi
|
|
605
|
+
;;
|
|
606
|
+
esac
|
|
607
|
+
}
|
|
608
|
+
|
|
582
609
|
manager_search_entries() {
|
|
583
610
|
local manager="$1"
|
|
584
611
|
local query="$2"
|
|
585
612
|
local effective_query="${query}"
|
|
586
|
-
local npm_search_limit=
|
|
613
|
+
local npm_search_limit=500
|
|
587
614
|
local line_limit=0
|
|
588
615
|
|
|
589
616
|
if [[ -z "${query}" ]]; then
|
|
@@ -592,7 +619,7 @@ manager_search_entries() {
|
|
|
592
619
|
fi
|
|
593
620
|
|
|
594
621
|
if ! [[ "${npm_search_limit}" =~ ^[0-9]+$ ]] || [[ "${npm_search_limit}" -eq 0 ]]; then
|
|
595
|
-
npm_search_limit=
|
|
622
|
+
npm_search_limit=500
|
|
596
623
|
fi
|
|
597
624
|
|
|
598
625
|
if ! [[ "${line_limit}" =~ ^[0-9]+$ ]]; then
|
|
@@ -673,8 +700,11 @@ manager_search_entries() {
|
|
|
673
700
|
'
|
|
674
701
|
;;
|
|
675
702
|
brew)
|
|
676
|
-
|
|
677
|
-
|
|
703
|
+
{
|
|
704
|
+
brew search "${effective_query}" 2>/dev/null |
|
|
705
|
+
awk 'NF > 0 && $1 != "==>" { print $1 "\t-" }'
|
|
706
|
+
exact_match_entry "${manager}" "${query}"
|
|
707
|
+
}
|
|
678
708
|
;;
|
|
679
709
|
winget)
|
|
680
710
|
winget search "${effective_query}" --source winget --accept-source-agreements --disable-interactivity 2>/dev/null |
|
|
@@ -744,8 +774,11 @@ manager_search_entries() {
|
|
|
744
774
|
fi
|
|
745
775
|
;;
|
|
746
776
|
npm)
|
|
747
|
-
|
|
748
|
-
|
|
777
|
+
{
|
|
778
|
+
npm search "${effective_query}" --searchlimit="${npm_search_limit}" --parseable 2>/dev/null |
|
|
779
|
+
awk -F'\t' 'NF >= 2 { print $1 "\t" $2 }'
|
|
780
|
+
exact_match_entry "${manager}" "${query}"
|
|
781
|
+
}
|
|
749
782
|
;;
|
|
750
783
|
bun)
|
|
751
784
|
{
|
|
@@ -756,6 +789,7 @@ manager_search_entries() {
|
|
|
756
789
|
npm search "${effective_query}" --searchlimit="${npm_search_limit}" --parseable 2>/dev/null |
|
|
757
790
|
awk -F'\t' 'NF >= 2 { print $1 "\t" $2 }'
|
|
758
791
|
fi
|
|
792
|
+
exact_match_entry "${manager}" "${query}"
|
|
759
793
|
} || true
|
|
760
794
|
;;
|
|
761
795
|
esac | awk -F'\t' 'NF >= 1 { if ($2 == "") $2 = "-"; print $1 "\t" $2 }' | sort -u | {
|