]> granicus.if.org Git - curl/commitdiff
curl: added --styled-output
authorDaniel Stenberg <daniel@haxx.se>
Thu, 17 May 2018 12:09:17 +0000 (14:09 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Mon, 21 May 2018 18:29:12 +0000 (20:29 +0200)
It is enabled by default, so --no-styled-output will switch off the
detection/use of bold headers.

Closes #2538

docs/cmdline-opts/Makefile.inc
docs/cmdline-opts/styled-output.d [new file with mode: 0644]
src/tool_cb_hdr.c
src/tool_cfgable.h
src/tool_getparam.c
src/tool_help.c
src/tool_main.c

index 778149ca3a9ac9baf8b3c8c9f75720245170716f..fb56d2552b7a042dcecce6d471e3d33cefda3982 100644 (file)
@@ -46,6 +46,7 @@ DPAGES = abstract-unix-socket.d anyauth.d append.d basic.d cacert.d capath.d cer
   tlsauthtype.d tlspassword.d tlsuser.d tlsv1.0.d tlsv1.1.d tlsv1.2.d   \
   tlsv1.3.d tlsv1.d trace-ascii.d trace.d trace-time.d tr-encoding.d    \
   unix-socket.d upload-file.d url.d use-ascii.d user-agent.d user.d     \
-  verbose.d version.d write-out.d xattr.d request-target.d
+  verbose.d version.d write-out.d xattr.d request-target.d              \
+  styled-output.d
 
 OTHERPAGES = page-footer page-header
diff --git a/docs/cmdline-opts/styled-output.d b/docs/cmdline-opts/styled-output.d
new file mode 100644 (file)
index 0000000..e4751ae
--- /dev/null
@@ -0,0 +1,6 @@
+Long: styled-output
+Help: Enable styled output for HTTP headers
+Added: 7.61.0
+---
+Enables the automatic use of bold font styles when writing HTTP headers to the
+terminal. Use --no-styled-output to switch them off.
index 4e9e49a6d9778ef1eba7ffe449c587fdf0b5a06e..88ce5e13b8486607a116f7cc67822318a8e9fae8 100644 (file)
@@ -163,7 +163,7 @@ size_t tool_header_cb(char *ptr, size_t size, size_t nmemb, void *userdata)
     if(!outs->stream && !tool_create_output_file(outs, FALSE))
       return failure;
 
-    if(hdrcbdata->global->isatty)
+    if(hdrcbdata->global->isatty && hdrcbdata->global->styled_output)
       value = memchr(ptr, ':', cb);
     if(value) {
       size_t namelen = value - ptr;
index 3bd90887966edef5600fd1d6b63aaad119522a94..9d995f85eb14442e3ecd4fce2e1e54f36f97d5e3 100644 (file)
@@ -276,6 +276,7 @@ struct GlobalConfig {
   int progressmode;               /* CURL_PROGRESS_BAR / CURL_PROGRESS_STATS */
   char *libcurl;                  /* Output libcurl code to this file name */
   bool fail_early;                /* exit on first transfer error */
+  bool styled_output;             /* enable fancy output style detection */
   struct OperationConfig *first;
   struct OperationConfig *current;
   struct OperationConfig *last;   /* Always last in the struct */
index 60a88e2667e6db55f5de53b2c076699f7364aa2e..4b9ae0653da5c40cb8666a1f14bd0bf248823a5b 100644 (file)
@@ -260,6 +260,7 @@ static const struct LongShort aliases[]= {
   {"EB", "socks5-gssapi",            ARG_BOOL},
   {"f",  "fail",                     ARG_BOOL},
   {"fa", "fail-early",               ARG_BOOL},
+  {"fb", "styled-output",            ARG_BOOL},
   {"F",  "form",                     ARG_STRING},
   {"Fs", "form-string",              ARG_STRING},
   {"g",  "globoff",                  ARG_BOOL},
@@ -1643,8 +1644,10 @@ ParameterError getparameter(const char *flag, /* f or -long-flag */
       case 'a': /* --fail-early */
         global->fail_early = toggle;
         break;
-      default:
-        /* fail hard on errors  */
+      case 'b': /* --styled-output */
+        global->styled_output = toggle;
+        break;
+      default: /* --fail (hard on errors)  */
         config->failonerror = toggle;
       }
       break;
index 71862511f2b6203b0be53be13b399b18a171a14a..7c4dda3b0224b004f09c6bc86f63ad76c54356bc 100644 (file)
@@ -414,6 +414,8 @@ static const struct helptxt helptext[] = {
    "Use SSLv3"},
   {"    --stderr",
    "Where to redirect stderr"},
+  {"    --styled-output",
+   "Enable styled output for HTTP headers"},
   {"    --suppress-connect-headers",
    "Suppress proxy CONNECT response headers"},
   {"    --tcp-fastopen",
index 4e78d332186c1801dfacb1d8fb250d59461a178d..b9f7eae2c4b4e12291ac28994d5c4951de30804a 100644 (file)
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -147,6 +147,7 @@ static CURLcode main_init(struct GlobalConfig *config)
   /* Initialise the global config */
   config->showerror = -1;             /* Will show errors */
   config->errors = stderr;            /* Default errors to stderr */
+  config->styled_output = TRUE;       /* enable detection */
 
   /* Allocate the initial operate config */
   config->first = config->last = malloc(sizeof(struct OperationConfig));