git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: git-blame.el won't run

From
David Kågedal <davidk@lysator.liu.se>
Date
Feb 21, 2007, 13:55 UTC
Message-ID
<87vehvsjho.fsf@morpheus.local>
In-Reply-To
<13478.1172059706@localhost>
Xavier Maillard <zedek@gnu.org> writes:
Show 16 quoted lines
> Hi,
>
> This is the backtrace after C-g (after a few minutes):
>
>
> Debugger entered--Lisp error: (quit)
>   process-send-region(#<process git-blame> 1 28910)
>   (let ((display-buf ...) (blame-buf ...) (args ...)) (if startline (setq args ...)) (setq args (append args ...)) (setq git-blame-proc (apply ... "git-blame" blame-buf "git" "blame" args)) (with-current-buffer blame-buf (erase-buffer) (make-local-variable ...) (make-local-variable ...) (setq git-blame-file display-buf) (setq git-blame-current nil)) (set-process-filter git-blame-proc (quote git-blame-filter)) (set-process-sentinel git-blame-proc (quote git-blame-sentinel)) (process-send-region git-blame-proc (point-min) (point-max)) (process-send-eof git-blame-proc))
>   (if git-blame-proc (message "Already running git blame") (let (... ... ...) (if startline ...) (setq args ...) (setq git-blame-proc ...) (with-current-buffer blame-buf ... ... ... ... ...) (set-process-filter git-blame-proc ...) (set-process-sentinel git-blame-proc ...) (process-send-region git-blame-proc ... ...) (process-send-eof git-blame-proc)))
>   git-blame-run()
>   (progn (let (...) (if ... ... ...)) (setq git-blame-cache (make-hash-table :test ...)) (git-blame-run))
>   (if git-blame-mode (progn (let ... ...) (setq git-blame-cache ...) (git-blame-run)) (cancel-timer git-blame-idle-timer))
>   git-blame-mode(nil)
>   call-interactively(git-blame-mode)
>   execute-extended-command(nil)
>   call-interactively(execute-extended-command)

If you switch to the buffer called " git blame for <filename>" (notice the leading space, you will probably see a usage/error message from git.

Maybe your git blame doesn't like the --incremental flag or the --contents flag. But the problem is that I'm not sure how to make emacs not hang.

process-send-region blocks when sending the file contents, since git isn't reading it. But git finishes, so emacs should be able to detect that there is no process that can read anything anymore.

-- 
David Kågedal
Previous: Xavier MaillardNext: Xavier Maillard
Message 10 of 11 in “git-blame.el won't run”
  1. Xavier MaillardFeb 14, 2007
  2. Xavier MaillardFeb 16, 2007
  3. David KågedalFeb 19, 2007
  4. Xavier MaillardFeb 19, 2007
  5. Jakub NarebskiFeb 20, 2007
  6. David KågedalFeb 20, 2007
  7. Xavier MaillardFeb 20, 2007
  8. David KågedalFeb 20, 2007
  9. Xavier MaillardFeb 21, 2007
  10. David KågedalFeb 21, 2007
  11. Xavier MaillardFeb 21, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.