threads / rfc / 19210

RFC patchPrettify log decorations even more

Subject: [RFC/PATCH] Prettify log decorations even more

## tl;dr

3 messages between May 6, 2009 and May 8, 2009. Diffs are folded; open one to read it.

replies: 2people: 2as markdown or json

Felipe Contreras· May 6, 2009, 22:45 UTC · lore
"tag: v1.6.2.5" looks much better than "tag: refs/tags/v1.6.2.5".
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 log-tree.c |    1 +
 refs.c     |    3 +--
 refs.h     |    3 ++-
 3 files changed, 4 insertions(+), 3 deletions(-)
Show changes to 3 files +4 −3

log-tree.c, refs.c, refs.h

diff --git a/log-tree.c b/log-tree.c
index 5bd29e6..59d63eb 100644
--- a/log-tree.c
+++ b/log-tree.c
@@ -25,6 +25,7 @@ static int add_ref_decoration(const char *refname, const unsigned char *sha1, in
 	struct object *obj = parse_object(sha1);
 	if (!obj)
 		return 0;
+	refname = prettify_refname(refname);
 	add_name_decoration("", refname, obj);
 	while (obj->type == OBJ_TAG) {
 		obj = ((struct tag *)obj)->tagged;
diff --git a/refs.c b/refs.c
index e65a3b4..e74461e 100644
--- a/refs.c
+++ b/refs.c
@@ -750,9 +750,8 @@ int check_ref_format(const char *ref)
 	}
 }
 
-const char *prettify_ref(const struct ref *ref)
+const char *prettify_refname(const char *name)
 {
-	const char *name = ref->name;
 	return name + (
 		!prefixcmp(name, "refs/heads/") ? 11 :
 		!prefixcmp(name, "refs/tags/") ? 10 :
diff --git a/refs.h b/refs.h
index 29d17a4..3de5e1c 100644
--- a/refs.h
+++ b/refs.h
@@ -80,7 +80,8 @@ extern int for_each_reflog(each_ref_fn, void *);
 #define CHECK_REF_FORMAT_WILDCARD (-3)
 extern int check_ref_format(const char *target);
 
-extern const char *prettify_ref(const struct ref *ref);
+extern const char *prettify_refname(const char *refname);
+#define prettify_ref(ref) prettify_refname((ref)->name)
 extern char *shorten_unambiguous_ref(const char *ref, int strict);
 
 /** rename ref, return 0 on success **/
-- 
1.6.3.rc4.14.g96da.dirty
Jeff King· May 8, 2009, 07:45 UTC · re: Felipe Contreras · lore

Re: [RFC/PATCH] Prettify log decorations even more

On Thu, May 07, 2009 at 01:45:48AM +0300, Felipe Contreras wrote:
> -extern const char *prettify_ref(const struct ref *ref);
> +extern const char *prettify_refname(const char *refname);
> +#define prettify_ref(ref) prettify_refname((ref)->name)

I think it is an improvement for this function to take just the name, but I don't see much point in keeping the crufty #define compatibility. I would just fix up the few callers, as it really is just s/ref/ref->name/.

-Peff
Felipe Contreras· May 8, 2009, 07:49 UTC · re: Jeff King · lore

Re: [RFC/PATCH] Prettify log decorations even more

On Fri, May 8, 2009 at 10:45 AM, Jeff King <peff@peff.net> wrote:
Show 10 quoted lines
> On Thu, May 07, 2009 at 01:45:48AM +0300, Felipe Contreras wrote:
>
>> -extern const char *prettify_ref(const struct ref *ref);
>> +extern const char *prettify_refname(const char *refname);
>> +#define prettify_ref(ref) prettify_refname((ref)->name)
>
> I think it is an improvement for this function to take just the name,
> but I don't see much point in keeping the crufty #define compatibility.
> I would just fix up the few callers, as it really is just
> s/ref/ref->name/.

Good, I started doing that but I thought it would create a big diff and perhaps it was best to send some RFC before.

Will do that.
-- 
Felipe Contreras

← back to recent threads