gawk all the things
This commit is contained in:
parent
b072d91958
commit
b582a44955
|
@ -14,31 +14,15 @@ function check_pattern() {
|
|||
fi
|
||||
}
|
||||
|
||||
HAS_GAWK=$(which gawk &> /dev/null && echo $(($? == 0)))
|
||||
|
||||
function supports_intervals_in_awk() {
|
||||
echo "wtfwtfwtf" | __awk__ "/(wtf){3}/ { print \"wtf\" }" | grep -c wtf
|
||||
}
|
||||
|
||||
source "$CURRENT_DIR/utils.sh"
|
||||
|
||||
if [[ $(supports_intervals_in_awk) == "1" ]]; then
|
||||
PATTERNS_LIST=(
|
||||
"((^|^\.|[[:space:]]|[[:space:]]\.|[[:space:]]\.\.|^\.\.)[[:alnum:]~_-]*/[][[:alnum:]_.#$%&+=/@-]+)"
|
||||
"([[:digit:]]{4,})"
|
||||
"([0-9a-f]{7,40})"
|
||||
"((https?://|git@|git://|ssh://|ftp://|file:///)[[:alnum:]?=%/_.:,;~@!#$&()*+-]*)"
|
||||
"([[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3})"
|
||||
)
|
||||
else
|
||||
PATTERNS_LIST=(
|
||||
"((^|^\.|[[:space:]]|[[:space:]]\.|[[:space:]]\.\.|^\.\.)[[:alnum:]~_-]*/[][[:alnum:]_.#$%&+=/@-]+)"
|
||||
"([[:digit:]][[:digit:]][[:digit:]][[:digit:]]([[:digit:]])*)"
|
||||
"([0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]|[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f])"
|
||||
"((https?://|git@|git://|ssh://|ftp://|file:///)[[:alnum:]?=%/_.:,;~@!#$&()*+-]*)"
|
||||
"([[:digit:]][[:digit:]]?[[:digit:]]?\.[[:digit:]][[:digit:]]?[[:digit:]]?\.[[:digit:]][[:digit:]]?[[:digit:]]?\.[[:digit:]][[:digit:]]?[[:digit:]]?)"
|
||||
)
|
||||
fi
|
||||
PATTERNS_LIST=(
|
||||
"((^|^\.|[[:space:]]|[[:space:]]\.|[[:space:]]\.\.|^\.\.)[[:alnum:]~_-]*/[][[:alnum:]_.#$%&+=/@-]+)"
|
||||
"([[:digit:]]{4,})"
|
||||
"([0-9a-f]{7,40})"
|
||||
"((https?://|git@|git://|ssh://|ftp://|file:///)[[:alnum:]?=%/_.:,;~@!#$&()*+-]*)"
|
||||
"([[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3}\.[[:digit:]]{1,3})"
|
||||
)
|
||||
|
||||
IFS=$'\n'
|
||||
USER_DEFINED_PATTERNS=($(tmux show-options -g | sed -n 's/^@fingers-pattern-[0-9]\{1,\} "\(.*\)"$/(\1)/p'))
|
||||
|
|
|
@ -30,7 +30,7 @@ function show_hints() {
|
|||
local compact_hints=$2
|
||||
|
||||
clear_screen "$fingers_pane_id"
|
||||
get_stdin | COMPACT_HINTS=$compact_hints FINGER_PATTERNS=$PATTERNS __awk__ -f $CURRENT_DIR/hinter.awk 3> $match_lookup_table
|
||||
get_stdin | COMPACT_HINTS=$compact_hints FINGER_PATTERNS=$PATTERNS gawk -f $CURRENT_DIR/hinter.awk 3> $match_lookup_table
|
||||
}
|
||||
|
||||
function show_hints_and_swap() {
|
||||
|
|
|
@ -87,14 +87,6 @@ function fingers_tmp() {
|
|||
echo "$tmp_path"
|
||||
}
|
||||
|
||||
function __awk__() {
|
||||
if hash gawk 2>/dev/null; then
|
||||
gawk "$@"
|
||||
else
|
||||
awk "$@"
|
||||
fi
|
||||
}
|
||||
|
||||
function clear_screen() {
|
||||
local fingers_pane_id=$1
|
||||
clear
|
||||
|
|
Loading…
Reference in New Issue