Hi,
I've found a solution by using the code below.
Regards, Feek
START CODE ======
#!/bin/bash [[ -f "${TM_SUPPORT_PATH}/lib/bash_init.sh" ]] && . "${TM_SUPPORT_PATH}/lib/bash_init.sh"
function_name="$TM_CURRENT_WORD" project_dir="$TM_PROJECT_DIRECTORY" output=''
# find php-related files in project directory, result is a string files_string=`find "$project_dir" -type f | egrep '.(module|inc|php|engine|install)$'`
# place multi-line sting in a array, works for file names with spaces! files_array=() while read -r line; do files_array+=("$line") done <<< "$files_string"
# # Lookup for a function declaration inside the file content. # multi space allowed in function declaration # <file> <function> # function lookup_function { local line=`nl -b a "$1" | grep 'function\s+'"$2"'\s*(' | awk '{print $1}'` if [[ "$line" -gt 0 ]]; then mate "$1" -l "$line" exit 0 fi }
# Iterate the array with files, works for files with spaces! for (( i=0; i < ${#files_array[*]}; i++)); do file="${files_array[${i}]}" lookup_function "$file" "$function_name" done
# Nothing found echo 'NOTE: Function '${function_name}' was not found within the current project directory.'
END CODE ======
-- View this message in context: http://textmate.1073791.n5.nabble.com/Call-Find-in-Project-window-in-a-bundl... Sent from the textmate users mailing list archive at Nabble.com.