summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernt Hansen <bernt@norang.ca>2009-08-18 12:32:43 -0400
committerCarsten Dominik <carsten.dominik@gmail.com>2009-08-18 20:05:56 +0100
commita32e8e8fec22654a085fdc99df7a94f9315902eb (patch)
treec1525df6a7d32f288732f73c25ff2de26c117f14
parenta5e87a47230030ab4c4bc4521f5af47a7521243a (diff)
downloadorg-mode-a32e8e8fec22654a085fdc99df7a94f9315902eb.tar.gz
Add .dirty to git org-version info if files are modified
Shows files as modified by appending .dirty to indicate that you are running org-mode from a dirty working tree (some tracked files are modified)
-rw-r--r--lisp/org.el7
1 files changed, 6 insertions, 1 deletions
diff --git a/lisp/org.el b/lisp/org.el
index 1f4055d..da9199f 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -103,6 +103,7 @@
With prefix arg HERE, insert it at point."
(interactive "P")
(let* ((org-version org-version)
+ (git-version)
(dir (concat (file-name-directory (locate-library "org")) "../" )))
(if (file-exists-p (expand-file-name ".git" dir))
(progn
@@ -113,7 +114,11 @@ With prefix arg HERE, insert it at point."
(replace-regexp "-" ".")
(goto-char (point-min))
(re-search-forward "[^\n]+")
- (setq org-version (concat org-version " (" (match-string 0) ")")))))
+ (setq git-version (match-string 0))
+ (shell-command (concat "cd " dir " && git diff-index --name-only HEAD --"))
+ (unless (eql 1 (point-max))
+ (setq git-version (concat git-version ".dirty")))
+ (setq org-version (concat org-version " (" git-version ")")))))
(let ((version (format "Org-mode version %s" org-version)))
(message version)
(if here