X-Git-Url: https://git.plutz.net/?a=blobdiff_plain;f=macros%2Fsearch;fp=macros%2Fsearch;h=b60305068479eda05e2d36937ec06c6013a5f734;hb=6a9f5a21897f72c61f297b256c5512d5e1b8c667;hp=b3d06e85a86fbc33274b48b298b4af9b926bd48b;hpb=11ae66b8f347ea9714716b558ba98a7524f9afb8;p=shellwiki diff --git a/macros/search b/macros/search index b3d06e8..b603050 100755 --- a/macros/search +++ b/macros/search @@ -25,7 +25,7 @@ I="$_DATA/index" _(){ printf %s\\n "$*"; } [ "${LANGUAGE}" -a -r "${_EXEC}/l10n/${LANGUAGE}.sh" ] && . "${_EXEC}/l10n/${LANGUAGE}.sh" -show_form=true show_hits='' action='' +show_form=true show_hits='' action='' query='' set -- "$@" -- while [ $# -gt 0 ]; do case $1 in @@ -41,6 +41,8 @@ while [ $# -gt 0 ]; do case $1 in *) set -- "$@" "$1"; shift 1;; esac; done +[ $@ -gt 0 ] && query="$*" || query="$(GET q)" + searchteaser() { local file="$1" words db3_data local w l nc nl hits mhits cont mcont @@ -79,14 +81,18 @@ elif [ ! "$action" ]; then fi if [ "${show_form}" = true ]; then - printf '' "$action" "$(_ Search)" "$([ "$show_hits" = true ] && GET q |HTML)" "$(_ Search)" + cat <<-EOF + + EOF fi if [ "${show_hits}" = true ]; then { read tags; read ntags; read words; } <<-EOF - $(GET q | awk ' + $(printf %s\\n "${query}" | awk ' BEGIN { # Field separator FS should include punctuation, including Unicode Block U+2000 - U+206F if ( length("¡") == 1 ) # Utf-8 aware AWK FS = "([] \\t\\n\\r\"'\''()*+,./:;<=>?\\\\^_`{|}~[-]|%[0-9A-Fa-f]{2}|'"$(printf '[\342\200\200-\342\201\257]')"')+";