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

[PATCH] parse-options: align curly braces for all options

From
Stefan Beller <sbeller@google.com>
Date
Jul 29, 2015, 21:36 UTC
Message-ID
<1438205787-23214-1-git-send-email-sbeller@google.com>
In-Reply-To
<xmqq7fpi904h.fsf@gitster.dls.corp.google.com>
Signed-off-by: Stefan Beller <sbeller@google.com>
---
Show 5 quoted lines
>> The non alignment of white space harmed my feelings for aesthetics more
>> than it should have.
>
> Hmm, but this does not align curlies for OPT_DATE(),
> OPT_EXPIRY_DATE(), etc...

That's true, but that was the least invasive fix to appease the aesthetics as it was all nicely aligned in the beginning, then there was one outlier, and it was nice again, at the end it is a mess.

Here is the another way to make it look nicer, though not minimally but rather extensive.

 parse-options.h | 79 ++++++++++++++++++++++++++++-----------------------------
 1 file changed, 39 insertions(+), 40 deletions(-)
diff --git a/parse-options.h b/parse-options.h
index c71e9da..78e4462 100644
--- a/parse-options.h
+++ b/parse-options.h
@@ -111,46 +111,45 @@ struct option {
 	intptr_t defval;
 };
 
-#define OPT_END()                   { OPTION_END }
-#define OPT_ARGUMENT(l, h)          { OPTION_ARGUMENT, 0, (l), NULL, NULL, \
-				      (h), PARSE_OPT_NOARG}
-#define OPT_GROUP(h)                { OPTION_GROUP, 0, NULL, NULL, NULL, (h) }
-#define OPT_BIT(s, l, v, h, b)      { OPTION_BIT, (s), (l), (v), NULL, (h), \
-				      PARSE_OPT_NOARG, NULL, (b) }
-#define OPT_NEGBIT(s, l, v, h, b)   { OPTION_NEGBIT, (s), (l), (v), NULL, \
-				      (h), PARSE_OPT_NOARG, NULL, (b) }
-#define OPT_COUNTUP(s, l, v, h)     { OPTION_COUNTUP, (s), (l), (v), NULL, \
-				      (h), PARSE_OPT_NOARG }
-#define OPT_SET_INT(s, l, v, h, i)  { OPTION_SET_INT, (s), (l), (v), NULL, \
-				      (h), PARSE_OPT_NOARG, NULL, (i) }
-#define OPT_BOOL(s, l, v, h)        OPT_SET_INT(s, l, v, h, 1)
-#define OPT_HIDDEN_BOOL(s, l, v, h) { OPTION_SET_INT, (s), (l), (v), NULL, \
-				      (h), PARSE_OPT_NOARG | PARSE_OPT_HIDDEN, NULL, 1}
-#define OPT_CMDMODE(s, l, v, h, i) { OPTION_CMDMODE, (s), (l), (v), NULL, \
-				      (h), PARSE_OPT_NOARG|PARSE_OPT_NONEG, NULL, (i) }
-#define OPT_INTEGER(s, l, v, h)     { OPTION_INTEGER, (s), (l), (v), N_("n"), (h) }
-#define OPT_STRING(s, l, v, a, h)   { OPTION_STRING,  (s), (l), (v), (a), (h) }
-#define OPT_STRING_LIST(s, l, v, a, h) \
-				    { OPTION_CALLBACK, (s), (l), (v), (a), \
-				      (h), 0, &parse_opt_string_list }
-#define OPT_UYN(s, l, v, h)         { OPTION_CALLBACK, (s), (l), (v), NULL, \
-				      (h), PARSE_OPT_NOARG, &parse_opt_tertiary }
-#define OPT_DATE(s, l, v, h) \
-	{ OPTION_CALLBACK, (s), (l), (v), N_("time"),(h), 0,	\
-	  parse_opt_approxidate_cb }
-#define OPT_EXPIRY_DATE(s, l, v, h) \
-	{ OPTION_CALLBACK, (s), (l), (v), N_("expiry-date"),(h), 0,	\
-	  parse_opt_expiry_date_cb }
-#define OPT_CALLBACK(s, l, v, a, h, f) \
-	{ OPTION_CALLBACK, (s), (l), (v), (a), (h), 0, (f) }
-#define OPT_NUMBER_CALLBACK(v, h, f) \
-	{ OPTION_NUMBER, 0, NULL, (v), NULL, (h), \
-	  PARSE_OPT_NOARG | PARSE_OPT_NONEG, (f) }
-#define OPT_FILENAME(s, l, v, h)    { OPTION_FILENAME, (s), (l), (v), \
-				       N_("file"), (h) }
-#define OPT_COLOR_FLAG(s, l, v, h) \
-	{ OPTION_CALLBACK, (s), (l), (v), N_("when"), (h), PARSE_OPT_OPTARG, \
-		parse_opt_color_flag_cb, (intptr_t)"always" }
+#define OPT_END()                      { OPTION_END }
+#define OPT_ARGUMENT(l, h)             { OPTION_ARGUMENT, 0, (l), NULL, NULL, \
+					(h), PARSE_OPT_NOARG}
+#define OPT_GROUP(h)                   { OPTION_GROUP, 0, NULL, NULL, NULL, \
+					(h) }
+#define OPT_BIT(s, l, v, h, b)         { OPTION_BIT, (s), (l), (v), NULL, \
+					(h), PARSE_OPT_NOARG, NULL, (b) }
+#define OPT_NEGBIT(s, l, v, h, b)      { OPTION_NEGBIT, (s), (l), (v), NULL, \
+					(h), PARSE_OPT_NOARG, NULL, (b) }
+#define OPT_COUNTUP(s, l, v, h)        { OPTION_COUNTUP, (s), (l), (v), NULL, \
+					(h), PARSE_OPT_NOARG }
+#define OPT_SET_INT(s, l, v, h, i)     { OPTION_SET_INT, (s), (l), (v), NULL, \
+					(h), PARSE_OPT_NOARG, NULL, (i) }
+#define OPT_BOOL(s, l, v, h)           OPT_SET_INT(s, l, v, \
+					(h), 1)
+#define OPT_HIDDEN_BOOL(s, l, v, h)    { OPTION_SET_INT, (s), (l), (v), NULL, \
+					(h), PARSE_OPT_NOARG | PARSE_OPT_HIDDEN, NULL, 1}
+#define OPT_CMDMODE(s, l, v, h, i)     { OPTION_CMDMODE, (s), (l), (v), NULL, \
+					(h), PARSE_OPT_NOARG|PARSE_OPT_NONEG, NULL, (i) }
+#define OPT_INTEGER(s, l, v, h)        { OPTION_INTEGER, (s), (l), (v), N_("n"), \
+					(h) }
+#define OPT_STRING(s, l, v, a, h)      { OPTION_STRING,  (s), (l), (v), (a), \
+					(h) }
+#define OPT_STRING_LIST(s, l, v, a, h) { OPTION_CALLBACK, (s), (l), (v), (a), \
+					(h), 0, &parse_opt_string_list }
+#define OPT_UYN(s, l, v, h)            { OPTION_CALLBACK, (s), (l), (v), NULL, \
+					(h), PARSE_OPT_NOARG, &parse_opt_tertiary }
+#define OPT_DATE(s, l, v, h)           { OPTION_CALLBACK, (s), (l), (v), N_("time"), \
+					(h), 0, parse_opt_approxidate_cb }
+#define OPT_EXPIRY_DATE(s, l, v, h)    { OPTION_CALLBACK, (s), (l), (v), N_("expiry-date"), \
+					(h), 0, parse_opt_expiry_date_cb }
+#define OPT_CALLBACK(s, l, v, a, h, f) { OPTION_CALLBACK, (s), (l), (v), (a), \
+					(h), 0, (f) }
+#define OPT_NUMBER_CALLBACK(v, h, f)   { OPTION_NUMBER, 0, NULL, (v), NULL, \
+					(h), PARSE_OPT_NOARG | PARSE_OPT_NONEG, (f) }
+#define OPT_FILENAME(s, l, v, h)       { OPTION_FILENAME, (s), (l), (v), N_("file"), \
+					(h) }
+#define OPT_COLOR_FLAG(s, l, v, h)     { OPTION_CALLBACK, (s), (l), (v), N_("when"), \
+					(h), PARSE_OPT_OPTARG, parse_opt_color_flag_cb, (intptr_t)"always" }
 
 #define OPT_NOOP_NOARG(s, l) \
 	{ OPTION_CALLBACK, (s), (l), NULL, NULL, \
-- 
2.5.0.rc1.391.g15b60ce
Previous: Junio C Hamano
Message 3 of 3 in “parse-options: align curly braces for all options”
  1. parse-options: align curly braces for all optionsStefan Beller, Jul 29, 2015
  2. Junio C HamanoJul 29, 2015
  3. parse-options: align curly braces for all optionsStefan Beller, Jul 29, 2015

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.