Permalink
Browse files

curl: added --styled-output

It is enabled by default, so --no-styled-output will switch off the
detection/use of bold headers.

Closes #2538
  • Loading branch information...
bagder committed May 17, 2018
1 parent c1c2762 commit f3d836b73601fc6d14cb917e1cd72f43b9056dff
Showing with 19 additions and 5 deletions.
  1. +2 −1 docs/cmdline-opts/Makefile.inc
  2. +6 −0 docs/cmdline-opts/styled-output.d
  3. +1 −1 src/tool_cb_hdr.c
  4. +1 −0 src/tool_cfgable.h
  5. +5 −2 src/tool_getparam.c
  6. +2 −0 src/tool_help.c
  7. +2 −1 src/tool_main.c
@@ -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
@@ -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.
@@ -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;
@@ -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 */
@@ -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;
@@ -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",
@@ -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));

0 comments on commit f3d836b

Please sign in to comment.