|
From: | GNU bug Tracking System |
Subject: | [debbugs-tracker] bug#17515: closed (* lisp/vc/vc-hg.el (vc-hg-root-log-format): New format supports graph, branches and bookmarks.) |
Date: | Fri, 06 Jun 2014 16:13:02 +0000 |
Your message dated Fri, 06 Jun 2014 12:12:09 -0400 with message-id <address@hidden> and subject line Re: bug#17515: Correction: using log-switch causes normal non shortlog use fail format has caused the debbugs.gnu.org bug report #17515, regarding * lisp/vc/vc-hg.el (vc-hg-root-log-format): New format supports graph, branches and bookmarks. to be marked as done. (If you believe you have received this mail in error, please contact address@hidden) -- 17515: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=17515 GNU Bug Tracking System Contact address@hidden with problems
--- Begin Message ---Subject: * lisp/vc/vc-hg.el (vc-hg-root-log-format): New format supports graph, branches and bookmarks. Date: Sat, 17 May 2014 00:09:52 +0200 Hi emacs,
I wish to improve the vc-change-log buffer in vc-hg with the graph view. My proposal is a change in default configuration. The vc-hg-root-log-format is compatible with or without the graph view. Also added branches and bookmarks.2014-05-17 Santiago Payà i Miralta <address@hidden>* lisp/vc/vc-hg.el (vc-hg-root-log-format): New formatsupports graph, branches and bookmarks.
From a917e85f083907030daea6d1cf70ba524f5bbab9 Mon Sep 17 00:00:00 2001From: =?UTF-8?q?Santiago=20Pay=C3=A0=20i=20Miralta?= <address@hidden>Date: Fri, 16 May 2014 23:58:57 +0200Subject: [PATCH] * lisp/vc/vc-hg.el (vc-hg-root-log-format): New formatsupports graph, branches and bookmarks.
Modern Mercurial log command supports --graph, also the graphlog extension is widely used in ancient Mercurial. So with adding this default configuration vc-hg users may see the graph DAG in the vc-change-log buffer. Users have the choice to define vc-hg-log-switches as nil again, the vc-hg-root-log-format is compatible with no graph switch.Also added branches and bookmarks to the log format, with some different but existing faces from add-log.---lisp/vc/vc-hg.el | 19 +++++++++++--------1 file changed, 11 insertions(+), 8 deletions(-)
diff --git a/lisp/vc/vc-hg.el b/lisp/vc/vc-hg.elindex 05b53a3..649c736 100644--- a/lisp/vc/vc-hg.el+++ b/lisp/vc/vc-hg.el@@ -146,12 +146,14 @@ If nil, use the value of `vc-diff-switches'. If t, use no switches.":group 'vc-hg)(defcustom vc-hg-root-log-format- '("{rev}:{tags}: {author|person} {date|shortdate} {desc|firstline}\\n"- "^\\([0-9]+\\):\\([^:]*\\): \\(.*?\\)[ \t]+\\([0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\}\\)"- ((1 'log-view-message-face)- (2 'change-log-list)- (3 'change-log-name)- (4 'change-log-date)))+ '("{rev}:{ifeq(branch, 'default','', '{branch}')}:{bookmarks}:{tags}: {author|person} {date|shortdate} {desc|firstline}\\n"+ "^\\(?:address@hidden x|-]*\\)\\([0-9]+\\):\\([^:]*\\):\\([^:]*\\):\\([^:]*\\): \\(.*?\\)[ \t]+\\([0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\}\\)"+((1 'log-view-message-face)+ (2 'change-log-file)+ (3 'change-log-list)+ (4 'change-log-conditionals)+ (5 'change-log-name)+ (6 'change-log-date)))"Mercurial log template for `vc-hg-print-log' short format.This should be a list (TEMPLATE REGEXP KEYWORDS), where TEMPLATEis the \"--template\" argument string to pass to Mercurial,@@ -238,8 +240,9 @@ highlighting the Log View buffer.";;; History functions-(defcustom vc-hg-log-switches nil- "String or list of strings specifying switches for hg log under VC."+(defcustom vc-hg-log-switches (list "--graph")+ "String or list of strings specifying switches for hg log under VC.+Using --graph needs Mercurial 3.0+ or the graphlog extension.":type '(choice (const :tag "None" nil)(string :tag "Argument String")(repeat :tag "Argument List" :value ("") string))--2.0.0.rc0
--- End Message ---
--- Begin Message ---Subject: Re: bug#17515: Correction: using log-switch causes normal non shortlog use fail format Date: Fri, 06 Jun 2014 12:12:09 -0400 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4.50 (gnu/linux) OK, I see your papers are in. Now that I'm looking at your patch, I have one more comment. The previous version of your patch said: Using --graph needs Mercurial 3.0+ or the graphlog extension. Yet my Debian install is still at 2.9.2, so using --graph by default seems risky. Is there a way to test whether "hg" supports "--graph"? Oh, and your patch was mangled. Try to use a MUA that doesn't wrap lines for you. I installed the tweaked patch below, which avoids going over 80-columns, updates the :version info, and introduces a config var to enable the --graph (this var should be set automatically depending on whether --graph is supported, but for now it just defaults to nil). Stefan === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-06-06 14:37:05 +0000 +++ lisp/ChangeLog 2014-06-06 16:11:32 +0000 @@ -1,3 +1,10 @@ +2014-06-06 Santiago Payà i Miralta <address@hidden> + + * vc/vc-hg.el (vc-hg-log-graph): New var. + (vc-hg-print-log): Use it. + (vc-hg-root-log-format): Include branch name and bookmarks; ignore + graph output (bug#17515). + 2014-06-06 Stefan Monnier <address@hidden> * mouse.el (mouse-posn-property): Ignore buffer position info when the @@ -631,7 +638,7 @@ * emacs-lisp/nadvice.el (advice--interactive-form): Don't get fooled into autoloading just because of a silly indirection. -2014-05-12 Santiago Payà i Miralta <address@hidden> (tiny change) +2014-05-12 Santiago Payà i Miralta <address@hidden> * vc/vc-hg.el (vc-hg-unregister): New function. (Bug#17454) === modified file 'lisp/vc/vc-hg.el' --- lisp/vc/vc-hg.el 2014-05-11 02:01:08 +0000 +++ lisp/vc/vc-hg.el 2014-06-06 16:07:59 +0000 @@ -146,12 +146,19 @@ :group 'vc-hg) (defcustom vc-hg-root-log-format - '("{rev}:{tags}: {author|person} {date|shortdate} {desc|firstline}\\n" - "^\\([0-9]+\\):\\([^:]*\\): \\(.*?\\)[ \t]+\\([0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\}\\)" + `(,(concat "{rev}:{ifeq(branch, 'default','', '{branch}')}" + ":{bookmarks}:{tags}:{author|person}" + " {date|shortdate} {desc|firstline}\\n") + ,(concat "^\\(?:address@hidden x|-]*\\)" ;Graph data. + "\\([0-9]+\\):\\([^:]*\\)" + ":\\([^:]*\\):\\([^:]*\\):\\(.*?\\)" + "[ \t]+\\([0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\}\\)") ((1 'log-view-message-face) - (2 'change-log-list) - (3 'change-log-name) - (4 'change-log-date))) + (2 'change-log-file) + (3 'change-log-list) + (4 'change-log-conditionals) + (5 'change-log-name) + (6 'change-log-date))) "Mercurial log template for `vc-hg-print-log' short format. This should be a list (TEMPLATE REGEXP KEYWORDS), where TEMPLATE is the \"--template\" argument string to pass to Mercurial, @@ -160,7 +167,7 @@ highlighting the Log View buffer." :type '(list string string (repeat sexp)) :group 'vc-hg - :version "24.1") + :version "24.5") ;;; Properties of the backend @@ -247,6 +254,9 @@ (autoload 'vc-setup-buffer "vc-dispatcher") +(defvar vc-hg-log-graph nil + "If non-nil, use `--graph' in the short log output.") + (defun vc-hg-print-log (files buffer &optional shortlog start-revision limit) "Print commit log associated with FILES into specified BUFFER. If SHORTLOG is non-nil, use a short format based on `vc-hg-root-log-format'. @@ -264,7 +274,9 @@ (nconc (when start-revision (list (format "-r%s:0" start-revision))) (when limit (list "-l" (format "%s" limit))) - (when shortlog (list "--template" (car vc-hg-root-log-format))) + (when shortlog `(,@(if vc-hg-log-graph '("--graph")) + "--template" + ,(car vc-hg-root-log-format))) vc-hg-log-switches))))) (defvar log-view-message-re)
--- End Message ---
[Prev in Thread] | Current Thread | [Next in Thread] |