I call git get the toplevel dir (according to Is there a way to get the git root directory in one command? ).
(let ((tmpbuffer (get-buffer-create (make-temp-
If you only want to remove a newline at the very end of the output, use
(replace-regexp-in-string "\n\\'" ""
(shell-command-to-string "git rev-parse --show-toplevel"))
The accepted answer also replaces pairs of newlines ("\n\n"
) in the output by single newlines ("\n"
), because $
matches at the end of the string or after a newline, while \\'
only matches at the end of the string.