|
|
@ -63,7 +63,8 @@ zmodload zsh/datetime zsh/system
|
|
|
|
#
|
|
|
|
#
|
|
|
|
## Usage: gitstatus_query [OPTION]... NAME
|
|
|
|
## Usage: gitstatus_query [OPTION]... NAME
|
|
|
|
#
|
|
|
|
#
|
|
|
|
# -d STR Directory to query. Defaults to ${${GIT_DIR:-$PWD}:a}. Must be absolute.
|
|
|
|
# -d STR Directory to query. Must be absolute. Defaults to $GIT_DIR or the current
|
|
|
|
|
|
|
|
# directory if GIT_DIR is not set.
|
|
|
|
# -c STR Callback function to call once the results are available. Called only after
|
|
|
|
# -c STR Callback function to call once the results are available. Called only after
|
|
|
|
# gitstatus_query returns 0 with VCS_STATUS_RESULT=tout.
|
|
|
|
# gitstatus_query returns 0 with VCS_STATUS_RESULT=tout.
|
|
|
|
# -t FLOAT Timeout in seconds. Will block for at most this long. If no results are
|
|
|
|
# -t FLOAT Timeout in seconds. Will block for at most this long. If no results are
|
|
|
@ -126,8 +127,8 @@ function gitstatus_query() {
|
|
|
|
setopt err_return no_unset
|
|
|
|
setopt err_return no_unset
|
|
|
|
|
|
|
|
|
|
|
|
local opt
|
|
|
|
local opt
|
|
|
|
local dir=${${GIT_DIR:-$PWD}:a}
|
|
|
|
local dir=${GIT_DIR:-}
|
|
|
|
local callback=''
|
|
|
|
local callback
|
|
|
|
local -F timeout=-1
|
|
|
|
local -F timeout=-1
|
|
|
|
local no_diff=0
|
|
|
|
local no_diff=0
|
|
|
|
while true; do
|
|
|
|
while true; do
|
|
|
@ -150,6 +151,8 @@ function gitstatus_query() {
|
|
|
|
local client_pid_var=_GITSTATUS_CLIENT_PID_${name}
|
|
|
|
local client_pid_var=_GITSTATUS_CLIENT_PID_${name}
|
|
|
|
[[ ${(P)client_pid_var} == $$ ]]
|
|
|
|
[[ ${(P)client_pid_var} == $$ ]]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[[ $dir == /* ]] || dir=${(%):-%/}/$dir
|
|
|
|
|
|
|
|
|
|
|
|
local req_fd_var=_GITSTATUS_REQ_FD_${name}
|
|
|
|
local req_fd_var=_GITSTATUS_REQ_FD_${name}
|
|
|
|
local -i req_fd=${(P)req_fd_var}
|
|
|
|
local -i req_fd=${(P)req_fd_var}
|
|
|
|
local -r req_id="$EPOCHREALTIME"
|
|
|
|
local -r req_id="$EPOCHREALTIME"
|
|
|
|