[TxMt] CocoaDialog stalls with stdin
Quinn Comendant
quinn at strangecode.com
Thu Mar 30 20:39:34 UTC 2006
>You could make the command asynchronous by wrapping it in something
>like: { ... } &>/dev/null &
Yep, that works great. But I had to add a "cat - | " to the beginning to
pass stdin. Here is the finished command:
cat - | {
if [ -f /tmp/tm_saved_regex ]; then
REGEX="`cat /tmp/tm_saved_regex`";
else
REGEX="^\s*\w+.*$";
fi
res=$(CocoaDialog inputbox \
--title "Find matching lines" \
--informative-text "Regular expression to match lines:" \
--text "$REGEX" \
--button1 "Find" --button2 "Cancel")
[[ $(head -n1 <<<"$res") == "2" ]] && exit_discard
REGEX=$(tail -n1 <<<"$res");
echo "$REGEX" > /tmp/tm_saved_regex;
TMP="$(mktemp /tmp/tm_findmatchinglines_XXXXXXXX).${TM_FILENAME##*.}";
perl -ne "print if /$REGEX/" > "$TMP";
mate "$TMP"
} &>/dev/null &
Q
More information about the textmate
mailing list