Add an optional argument 'stdout' to print the quickfix lines to standard output. It can be used with M-x grep on Emacs. Detect emacsclient by GIT_EDITOR and invoke the function. Tested with EDITOR="emacsclient" and EDITOR="emacsclient -t". Jeff King (1): git-jump: move valid-mode check earlier Yoichi Nakayama (2): git-jump: add an optional argument '--stdout' git-jump: invoke emacs/emacsclient contrib/git-jump/README | 10 ++++++++- contrib/git-jump/git-jump | 45 ++++++++++++++++++++++++++++++++++++--- 2 files changed, 51 insertions(+), 4 deletions(-) base-commit: eea7033409a0ed713c78437fc76486983d211e25 Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1423%2Fyoichi%2Fgit-jump-emacs-support-v8 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1423/yoichi/git-jump-emacs-support-v8 Pull-Request: https://github.com/gitgitgadget/git/pull/1423 Range-diff vs v7: 1: 446777d300d ! 1: afface9b010 git-jump: add an optional argument '--stdout' @@ contrib/git-jump/git-jump: mode_ws() { + case "$1" in + --stdout) + use_stdout=t -+ shift + ;; + --*) + usage >&2 @@ contrib/git-jump/git-jump: mode_ws() { + break + ;; + esac ++ shift +done if test $# -lt 1; then usage >&2 2: 972d51888ba = 2: e9aa6fdf836 git-jump: move valid-mode check earlier 3: d8233f96175 ! 3: 048f508ca99 git-jump: invoke emacs/emacsclient @@ contrib/git-jump/git-jump: EOF + # + # Wait for completion of the asynchronously executed process + # to avoid race conditions in case of "emacsclient". -+ eval "$editor --eval \"(let ((buf (compilation-start \\\"cat \$1\\\" 'grep-mode))) (pop-to-buffer buf) (select-frame-set-input-focus (selected-frame)) (while (get-buffer-process buf) (sleep-for 0.1)))\"" ++ eval "$editor --eval \"(let ((buf (grep \\\"cat \$1\\\"))) (pop-to-buffer buf) (select-frame-set-input-focus (selected-frame)) (while (get-buffer-process buf) (sleep-for 0.1)))\"" + ;; + *) + # assume anything else is vi-compatible -- gitgitgadget