diff --git a/c/a.tmp b/c/a.tmp index bfde6bfa0..aad1e1a0c 100644 --- a/c/a.tmp +++ b/c/a.tmp @@ -1,2 +1,2 @@ a,b,c -1,2,3 +1,x,3 diff --git a/c/b.tmp b/c/b.tmp index dffbd4bbc..8328ee9b3 100644 --- a/c/b.tmp +++ b/c/b.tmp @@ -1,2 +1,2 @@ a,b,c -1,"2,3",4 +1,"x,3",y diff --git a/c/c.tmp b/c/c.tmp index 50d78f50d..e487ad006 100644 --- a/c/c.tmp +++ b/c/c.tmp @@ -1,3 +1,3 @@ a,b,c -1,"2 -3",4 +1,"x +3",y diff --git a/c/output/lrec_writer_csv.c b/c/output/lrec_writer_csv.c index 7fb2e3944..fc15e1571 100644 --- a/c/output/lrec_writer_csv.c +++ b/c/output/lrec_writer_csv.c @@ -93,8 +93,8 @@ lrec_writer_t* lrec_writer_csv_alloc(char ors, char ofs, int oquoting) { switch(oquoting) { case QUOTE_ALL: pstate->pquoted_output_func = quote_all_output_func; break; case QUOTE_NONE: pstate->pquoted_output_func = quote_none_output_func; break; - case QUOTE_NUMERIC: pstate->pquoted_output_func = quote_minimal_output_func; break; - case QUOTE_MINIMAL: pstate->pquoted_output_func = quote_numeric_output_func; break; + case QUOTE_MINIMAL: pstate->pquoted_output_func = quote_minimal_output_func; break; + case QUOTE_NUMERIC: pstate->pquoted_output_func = quote_numeric_output_func; break; default: fprintf(stderr, "%s: internal coding error: output-quoting style 0x%x unrecognized.\n", MLR_GLOBALS.argv0, oquoting); @@ -148,20 +148,3 @@ static void quote_numeric_output_func(FILE* fp, char* string, char ors, char ofs fputs(string, fp); } } - -// Checkpoint: -// $ ./mlr --csvex --quote-all cat b.tmp -// "a","b","c" -// "1","2,3","4" -// $ ./mlr --csvex --quote-none cat b.tmp -// a,b,c -// 1,2,3,4 -// $ ./mlr --csvex --quote-minimal cat b.tmp -// a,b,c -// "1",2,3,"4" -// $ ./mlr --csvex --quote-numeric cat b.tmp -// a,b,c -// 1,"2,3",4 -// $ ./mlr --csvex --ofs ';' --quote-numeric cat b.tmp -// a;b;c -// 1;2,3;4