From 8b48e98dac73ad43df9caf78f8213bbdf4b75f22 Mon Sep 17 00:00:00 2001 From: Kevin Day Date: Mon, 31 Jan 2022 21:09:45 -0600 Subject: [PATCH] Update: Use raw printing whenever safely possible and add missing raw safe print. The formatted print is supposed to support "%R". The "%R" is now (hastily) implemented. --- level_0/f_print/c/print.c | 140 ++++ level_0/f_print/c/print.h | 357 ++++++++++ level_0/f_print/c/private-print.c | 280 +++++++- level_0/f_print/c/private-print.h | 102 +++ level_0/f_print/c/private-print_to.c | 249 +++++++ level_0/f_print/c/private-print_to.h | 131 +++- level_1/fl_print/c/print.c | 150 ++++ level_1/fl_print/c/print.h | 389 +++++++++++ level_1/fl_print/c/private-print.c | 772 ++++++++++++++------- level_1/fl_print/c/private-print.h | 79 +++ level_1/fl_string/c/private-string.c | 2 +- level_1/fl_utf/c/private-utf.c | 2 +- level_2/fll_error/c/error.c | 188 ++--- level_2/fll_error/c/private-error.c | 60 +- level_2/fll_print/c/print.c | 234 +++++++ level_2/fll_print/c/print.h | 482 +++++++++++++ level_2/fll_program/c/program.c | 18 +- level_3/byte_dump/c/byte_dump.c | 82 +-- level_3/byte_dump/c/common.c | 8 + level_3/byte_dump/c/common.h | 20 + level_3/byte_dump/c/private-byte_dump.c | 178 ++--- level_3/byte_dump/c/private-common.c | 4 +- level_3/control/c/control.c | 12 +- level_3/control/c/private-control.c | 8 +- level_3/control/c/private-print.c | 56 +- level_3/controller/c/controller.c | 48 +- .../controller/c/controller/private-controller.c | 40 +- .../c/controller/private-controller_print.c | 4 +- level_3/controller/c/entry/private-entry.c | 150 ++-- level_3/controller/c/entry/private-entry_print.c | 30 +- level_3/controller/c/lock/private-lock_print.c | 4 +- level_3/controller/c/rule/private-rule.c | 364 +++++----- level_3/controller/c/rule/private-rule_print.c | 118 ++-- level_3/controller/c/thread/private-thread.c | 6 +- level_3/controller/c/thread/private-thread_entry.c | 12 +- level_3/fake/c/fake.c | 40 +- level_3/fake/c/private-build-library.c | 12 +- level_3/fake/c/private-build-load.c | 118 ++-- level_3/fake/c/private-build-objects.c | 12 +- level_3/fake/c/private-build-program.c | 4 +- level_3/fake/c/private-build-skeleton.c | 4 +- level_3/fake/c/private-build.c | 12 +- level_3/fake/c/private-clean.c | 8 +- level_3/fake/c/private-fake.c | 78 +-- level_3/fake/c/private-make-load_fakefile.c | 22 +- level_3/fake/c/private-make-operate.c | 18 +- level_3/fake/c/private-make-operate_process.c | 26 +- level_3/fake/c/private-make-operate_process_type.c | 52 +- level_3/fake/c/private-make-operate_validate.c | 184 ++--- level_3/fake/c/private-make.c | 20 +- level_3/fake/c/private-print.c | 128 ++-- level_3/fake/c/private-skeleton.c | 28 +- level_3/firewall/c/firewall.c | 40 +- level_3/firewall/c/private-common.c | 22 +- level_3/firewall/c/private-firewall.c | 48 +- .../fss_basic_list_read/c/fss_basic_list_read.c | 142 ++-- level_3/fss_basic_list_read/c/private-common.c | 4 +- level_3/fss_basic_list_read/c/private-print.c | 4 +- level_3/fss_basic_list_read/c/private-read.c | 20 +- .../fss_basic_list_write/c/fss_basic_list_write.c | 98 +-- level_3/fss_basic_list_write/c/private-common.c | 4 +- level_3/fss_basic_list_write/c/private-write.c | 22 +- level_3/fss_basic_read/c/fss_basic_read.c | 142 ++-- level_3/fss_basic_read/c/private-common.c | 4 +- level_3/fss_basic_read/c/private-print.c | 6 +- level_3/fss_basic_read/c/private-read.c | 18 +- level_3/fss_basic_write/c/fss_basic_write.c | 100 +-- level_3/fss_basic_write/c/private-common.c | 4 +- level_3/fss_basic_write/c/private-write.c | 22 +- .../c/fss_embedded_list_read.c | 174 ++--- level_3/fss_embedded_list_read/c/private-common.c | 4 +- level_3/fss_embedded_list_read/c/private-read.c | 22 +- .../c/fss_embedded_list_write.c | 106 +-- level_3/fss_embedded_list_write/c/private-common.c | 4 +- level_3/fss_embedded_list_write/c/private-write.c | 22 +- .../c/fss_extended_list_read.c | 140 ++-- level_3/fss_extended_list_read/c/private-common.c | 4 +- level_3/fss_extended_list_read/c/private-print.c | 4 +- level_3/fss_extended_list_read/c/private-read.c | 22 +- .../c/fss_extended_list_write.c | 106 +-- level_3/fss_extended_list_write/c/private-common.c | 4 +- level_3/fss_extended_list_write/c/private-write.c | 22 +- level_3/fss_extended_read/c/fss_extended_read.c | 142 ++-- level_3/fss_extended_read/c/private-common.c | 4 +- level_3/fss_extended_read/c/private-print.c | 4 +- level_3/fss_extended_read/c/private-read.c | 18 +- level_3/fss_extended_write/c/fss_extended_write.c | 108 +-- level_3/fss_extended_write/c/private-common.c | 4 +- level_3/fss_extended_write/c/private-write.c | 20 +- level_3/fss_identify/c/fss_identify.c | 70 +- level_3/fss_identify/c/private-common.c | 4 +- level_3/fss_identify/c/private-print.c | 2 +- level_3/fss_payload_read/c/fss_payload_read.c | 152 ++-- level_3/fss_payload_read/c/private-common.c | 4 +- level_3/fss_payload_read/c/private-print.c | 20 +- level_3/fss_payload_read/c/private-read.c | 34 +- level_3/fss_payload_write/c/fss_payload_write.c | 100 +-- level_3/fss_payload_write/c/private-common.c | 4 +- level_3/fss_payload_write/c/private-write.c | 22 +- level_3/fss_status_code/c/fss_status_code.c | 30 +- level_3/fss_status_code/c/private-common.c | 4 +- .../fss_status_code/c/private-fss_status_code.c | 30 +- level_3/iki_read/c/iki_read.c | 120 ++-- level_3/iki_read/c/private-common.c | 4 +- level_3/iki_read/c/private-read.c | 12 +- level_3/iki_write/c/iki_write.c | 68 +- level_3/iki_write/c/private-common.c | 4 +- level_3/iki_write/c/private-write.c | 10 +- level_3/status_code/c/private-common.c | 4 +- level_3/status_code/c/private-status_code.c | 30 +- level_3/status_code/c/status_code.c | 30 +- level_3/utf8/c/private-print.c | 48 +- level_3/utf8/c/private-utf8.c | 2 +- level_3/utf8/c/utf8.c | 22 +- 114 files changed, 5416 insertions(+), 2593 deletions(-) diff --git a/level_0/f_print/c/print.c b/level_0/f_print/c/print.c index 94f776b..c52f41e 100644 --- a/level_0/f_print/c/print.c +++ b/level_0/f_print/c/print.c @@ -125,6 +125,26 @@ extern "C" { } #endif // _di_f_print_dynamic_partial_raw_ +#ifndef _di_f_print_dynamic_partial_raw_safely_ + f_status_t f_print_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *output) { + #ifndef _di_level_0_parameter_checking_ + if (!output) return F_status_set_error(F_parameter); + #endif // _di_level_0_parameter_checking_ + + if (!buffer.string || !buffer.used || range.start > range.stop || range.start >= buffer.used) { + return F_data_not; + } + + f_array_length_t length = (range.stop - range.start) + 1; + + if (length + range.start > buffer.used) { + length = buffer.used - range.start; + } + + return private_f_print_raw_safely(buffer.string + range.start, length, output); + } +#endif // _di_f_print_dynamic_partial_raw_safely_ + #ifndef _di_f_print_dynamic_partial_safely_ f_status_t f_print_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *output) { #ifndef _di_level_0_parameter_checking_ @@ -159,6 +179,20 @@ extern "C" { } #endif // _di_f_print_dynamic_raw_ +#ifndef _di_f_print_dynamic_raw_safely_ + f_status_t f_print_dynamic_raw_safely(const f_string_static_t buffer, FILE *output) { + #ifndef _di_level_0_parameter_checking_ + if (!output) return F_status_set_error(F_parameter); + #endif // _di_level_0_parameter_checking_ + + if (!buffer.string || !buffer.used) { + return F_data_not; + } + + return private_f_print_raw_safely(buffer.string, buffer.used, output); + } +#endif // _di_f_print_dynamic_raw_safely_ + #ifndef _di_f_print_dynamic_safely_ f_status_t f_print_dynamic_safely(const f_string_static_t buffer, FILE *output) { #ifndef _di_level_0_parameter_checking_ @@ -239,6 +273,26 @@ extern "C" { } #endif // _di_f_print_except_dynamic_partial_raw_ +#ifndef _di_f_print_except_dynamic_partial_raw_safely_ + f_status_t f_print_except_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except, FILE *output) { + #ifndef _di_level_0_parameter_checking_ + if (!output) return F_status_set_error(F_parameter); + #endif // _di_level_0_parameter_checking_ + + if (!buffer.string || !buffer.used || range.start > range.stop || range.start >= buffer.used) { + return F_data_not; + } + + f_array_length_t length = (range.stop - range.start) + 1; + + if (length + range.start > buffer.used) { + length = buffer.used - range.start; + } + + return private_f_print_except_raw_safely(buffer.string, range.start, range.start + length, except, output); + } +#endif // _di_f_print_except_dynamic_partial_raw_safely_ + #ifndef _di_f_print_except_dynamic_partial_safely_ f_status_t f_print_except_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except, FILE *output) { #ifndef _di_level_0_parameter_checking_ @@ -271,6 +325,18 @@ extern "C" { } #endif // _di_f_print_except_dynamic_raw_ +#ifndef _di_f_print_except_dynamic_raw_safely_ + f_status_t f_print_except_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except, FILE *output) { + #ifndef _di_level_0_parameter_checking_ + if (!output) return F_status_set_error(F_parameter); + #endif // _di_level_0_parameter_checking_ + + if (!buffer.string || !buffer.used) return F_data_not; + + return private_f_print_except_raw_safely(buffer.string, 0, buffer.used, except, output); + } +#endif // _di_f_print_except_dynamic_raw_safely_ + #ifndef _di_f_print_except_dynamic_safely_ f_status_t f_print_except_dynamic_safely(const f_string_static_t buffer, const f_array_lengths_t except, FILE *output) { #ifndef _di_level_0_parameter_checking_ @@ -349,6 +415,26 @@ extern "C" { } #endif // _di_f_print_except_in_dynamic_partial_raw_ +#ifndef _di_f_print_except_in_dynamic_partial_raw_safely_ + f_status_t f_print_except_in_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { + #ifndef _di_level_0_parameter_checking_ + if (!output) return F_status_set_error(F_parameter); + #endif // _di_level_0_parameter_checking_ + + if (!buffer.string || !buffer.used || range.start > range.stop || range.start >= buffer.used) { + return F_data_not; + } + + f_array_length_t length = (range.stop - range.start) + 1; + + if (length + range.start > buffer.used) { + length = buffer.used - range.start; + } + + return private_f_print_except_in_raw_safely(buffer.string, range.start, range.start + length, except_at, except_in, output); + } +#endif // _di_f_print_except_in_dynamic_partial_raw_safely_ + #ifndef _di_f_print_except_in_dynamic_partial_safely_ f_status_t f_print_except_in_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { #ifndef _di_level_0_parameter_checking_ @@ -381,6 +467,18 @@ extern "C" { } #endif // _di_f_print_except_in_dynamic_raw_ +#ifndef _di_f_print_except_in_dynamic_raw_safely_ + f_status_t f_print_except_in_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { + #ifndef _di_level_0_parameter_checking_ + if (!output) return F_status_set_error(F_parameter); + #endif // _di_level_0_parameter_checking_ + + if (!buffer.string || !buffer.used) return F_data_not; + + return private_f_print_except_in_raw_safely(buffer.string, 0, buffer.used, except_at, except_in, output); + } +#endif // _di_f_print_except_in_dynamic_raw_safely_ + #ifndef _di_f_print_except_in_dynamic_safely_ f_status_t f_print_except_in_dynamic_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { #ifndef _di_level_0_parameter_checking_ @@ -407,6 +505,20 @@ extern "C" { } #endif // _di_f_print_except_in_raw_ +#ifndef _di_f_print_except_in_raw_safely_ + f_status_t f_print_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { + #ifndef _di_level_0_parameter_checking_ + if (!output) return F_status_set_error(F_parameter); + #endif // _di_level_0_parameter_checking_ + + if (!string || !length) { + return F_data_not; + } + + return private_f_print_except_in_raw_safely(string, offset, length, except_at, except_in, output); + } +#endif // _di_f_print_except_in_raw_safely_ + #ifndef _di_f_print_except_in_safely_ f_status_t f_print_except_in_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { #ifndef _di_level_0_parameter_checking_ @@ -435,6 +547,20 @@ extern "C" { } #endif // _di_f_print_except_raw_ +#ifndef _di_f_print_except_raw_safely_ + f_status_t f_print_except_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except, FILE *output) { + #ifndef _di_level_0_parameter_checking_ + if (!output) return F_status_set_error(F_parameter); + #endif // _di_level_0_parameter_checking_ + + if (!string || !length) { + return F_data_not; + } + + return private_f_print_except_raw_safely(string, offset, length, except, output); + } +#endif // _di_f_print_except_raw_safely_ + #ifndef _di_f_print_except_safely_ f_status_t f_print_except_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except, FILE *output) { #ifndef _di_level_0_parameter_checking_ @@ -463,6 +589,20 @@ extern "C" { } #endif // _di_f_print_raw_ +#ifndef _di_f_print_raw_safely_ + f_status_t f_print_raw_safely(const f_string_t string, const f_array_length_t length, FILE *output) { + #ifndef _di_level_0_parameter_checking_ + if (!output) return F_status_set_error(F_parameter); + #endif // _di_level_0_parameter_checking_ + + if (!string || !length) { + return F_data_not; + } + + return private_f_print_raw_safely(string, length, output); + } +#endif // _di_f_print_raw_safely_ + #ifndef _di_f_print_raw_terminated_ f_status_t f_print_raw_terminated(const f_string_t string, FILE *output) { #ifndef _di_level_0_parameter_checking_ diff --git a/level_0/f_print/c/print.h b/level_0/f_print/c/print.h index fa2d11b..d876e40 100644 --- a/level_0/f_print/c/print.h +++ b/level_0/f_print/c/print.h @@ -233,6 +233,42 @@ extern "C" { /** * Similar to a c-library printf, except that this will only print a specific range in a given dynamic string. * + * This is essentually a "safe" print that also prints NULL. + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL. + * Will print up to the specified range within the buffer. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param buffer + * The string to output. + * @param range + * The range within the provided string to print. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see fwrite_unlocked() + * + * @see f_utf_is_valid() + */ +#ifndef _di_f_print_dynamic_partial_raw_safely_ + extern f_status_t f_print_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *output); +#endif // _di_f_print_dynamic_partial_raw_safely_ + +/** + * Similar to a c-library printf, except that this will only print a specific range in a given dynamic string. + * * Control characters are converted to the Unicode control character symbols, excluding NULL. * UTF-8 sequences with invalid widths are converted to the unknown character '�'. * @@ -296,6 +332,40 @@ extern "C" { /** * Similar to a c-library printf, except that this prints a given dynamic string. * + * This is essentually a "safe" print that also prints NULL. + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL. + * Will print up to length 1-byte characters. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param buffer + * The string to output. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see fwrite_unlocked() + * + * @see f_utf_is_valid() + */ +#ifndef _di_f_print_dynamic_raw_safely_ + extern f_status_t f_print_dynamic_raw_safely(const f_string_static_t buffer, FILE *output); +#endif // _di_f_print_dynamic_raw_safely_ + +/** + * Similar to a c-library printf, except that this prints a given dynamic string. + * * Control characters are converted to the Unicode control character symbols, excluding NULL. * UTF-8 sequences with invalid widths are converted to the unknown character '�'. * @@ -464,6 +534,46 @@ extern "C" { /** * Similar to a c-library printf, except that this will only print a specific range in a given dynamic string. * + * This is essentually a "safe" print that also prints NULL. + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL. + * Will not print any 1-byte character at a location specified in except array. + * Will print up to the specified range within the buffer. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param buffer + * The string to output. + * @param range + * The range within the provided string to print. + * @param except + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see fwrite_unlocked() + * + * @see f_utf_is_valid() + */ +#ifndef _di_f_print_dynamic_except_partial_raw_safely_ + extern f_status_t f_print_except_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except, FILE *output); +#endif // _di_f_print_except_dynamic_partial_raw_safely_ + +/** + * Similar to a c-library printf, except that this will only print a specific range in a given dynamic string. + * * Control characters are converted to the Unicode control character symbols, excluding NULL. * UTF-8 sequences with invalid widths are converted to the unknown character '�'. * @@ -535,6 +645,44 @@ extern "C" { /** * Similar to a c-library printf, except that this prints a given dynamic string. * + * This is essentually a "safe" print that also prints NULL. + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL. + * Will not print any 1-byte character at a location specified in except array. + * Will print up to length 1-byte characters. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param buffer + * The string to output. + * @param except + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see fwrite_unlocked() + * + * @see f_utf_is_valid() + */ +#ifndef _di_f_print_except_dynamic_raw_safely_ + extern f_status_t f_print_except_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except, FILE *output); +#endif // _di_f_print_except_dynamic_raw_safely_ + +/** + * Similar to a c-library printf, except that this prints a given dynamic string. + * * Control characters are converted to the Unicode control character symbols, excluding NULL. * UTF-8 sequences with invalid widths are converted to the unknown character '�'. * @@ -723,6 +871,47 @@ extern "C" { /** * Similar to a c-library printf, except that this will only print a specific range in a given dynamic string. * + * This is essentually a "safe" print that also prints NULL. + * + * Will not stop at NULL. + * Will print NULL. + * Will not print any 1-byte character at a location specified in except_at array. + * Will not print any 1-byte character within the ranges specified in except_in array. + * Will print up to the specified range within the buffer. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param buffer + * The string to output. + * @param range + * The range within the provided string to print. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see fwrite_unlocked() + * + * @see f_utf_is_valid() + */ +#ifndef _di_f_print_dynamic_except_partial_raw_safely_ + extern f_status_t f_print_except_in_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output); +#endif // _di_f_print_except_in_dynamic_partial_raw_safely_ + +/** + * Similar to a c-library printf, except that this will only print a specific range in a given dynamic string. + * * Will not stop at NULL. * Will not print NULL. * Will not print any 1-byte character at a location specified in except_at array. @@ -799,6 +988,48 @@ extern "C" { /** * Similar to a c-library printf, except that this prints a given dynamic string. * + * This is essentually a "safe" print that also prints NULL. + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL. + * Will not print any 1-byte character at a location specified in except_at array. + * Will not print any 1-byte character within the ranges specified in except_in array. + * Will print up to the length of the buffer. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param buffer + * The string to output. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see fwrite_unlocked() + * + * @see f_utf_is_valid() + */ +#ifndef _di_f_print_except_in_dynamic_raw_safely_ + extern f_status_t f_print_except_in_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output); +#endif // _di_f_print_except_in_dynamic_raw_safely_ + +/** + * Similar to a c-library printf, except that this prints a given dynamic string. + * * Control characters are converted to the Unicode control character symbols, excluding NULL. * UTF-8 sequences with invalid widths are converted to the unknown character '�'. * @@ -882,6 +1113,54 @@ extern "C" { /** * Similar to a c-library printf, except that this will only print a specific range. * + * This is essentually a "safe" print that also prints NULL. + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * An offset is provided because the except_at/except_int positions are expected to be relative to the start position, without the offset applied. + * + * Will not stop at NULL. + * Will print NULL. + * Will not print any 1-byte character at a location specified in except_at array. + * Will not print any 1-byte character within the ranges specified in except_in array. + * Will print up to length 1-byte characters. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param length + * The total number of characters to print. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see fwrite_unlocked() + * + * @see f_utf_is_valid() + */ +#ifndef _di_f_print_except_in_raw_safely_ + extern f_status_t f_print_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output); +#endif // _di_f_print_except_in_raw_safely_ + +/** + * Similar to a c-library printf, except that this will only print a specific range. + * * Control characters are converted to the Unicode control character symbols, excluding NULL. * UTF-8 sequences with invalid widths are converted to the unknown character '�'. * @@ -967,6 +1246,48 @@ extern "C" { /** * Similar to a c-library printf, except that this will only print a specific range. * + * This is essentually a "safe" print that also prints NULL. + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL. + * Will not print any 1-byte character at a location specified in except array. + * Will print up to length 1-byte characters. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param length + * The total number of characters to print. + * @param except + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see fwrite_unlocked() + * + * @see f_utf_is_valid() + */ +#ifndef _di_f_print_except_raw_safely_ + extern f_status_t f_print_except_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except, FILE *output); +#endif // _di_f_print_except_raw_safely_ + +/** + * Similar to a c-library printf, except that this will only print a specific range. + * * Control characters are converted to the Unicode control character symbols, excluding NULL. * UTF-8 sequences with invalid widths are converted to the unknown character '�'. * @@ -1036,6 +1357,42 @@ extern "C" { #endif // _di_f_print_raw_ /** + * Similar to a c-library printf, except that this will only print a specific range. + * + * This is essentually a "safe" print that also prints NULL. + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL. + * Will print up to length 1-byte characters. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param string + * The string to output. + * @param length + * The total number of characters to print. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see fwrite_unlocked() + * + * @see f_utf_is_valid() + */ +#ifndef _di_f_print_raw_safely_ + extern f_status_t f_print_raw_safely(const f_string_t string, const f_array_length_t length, FILE *output); +#endif // _di_f_print_raw_safely_ + +/** * Similar to a c-library printf. * * Will stop at NULL. diff --git a/level_0/f_print/c/private-print.c b/level_0/f_print/c/private-print.c index 6e5353b..efe7599 100644 --- a/level_0/f_print/c/private-print.c +++ b/level_0/f_print/c/private-print.c @@ -255,6 +255,113 @@ extern "C" { } #endif // !defined(_di_f_print_except_in_raw_) || !defined(_di_f_print_except_in_dynamic_raw_) || !defined(_di_f_print_except_in_dynamic_partial_raw_) +#if !defined(_di_f_print_except_in_raw_safely_) || !defined(_di_f_print_except_in_dynamic_raw_safely_) || !defined(_di_f_print_except_in_dynamic_partial_raw_safely_) + f_status_t private_f_print_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t stop, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { + + f_array_length_t i = offset; + f_array_length_t at = 0; + f_array_length_t in = 0; + f_array_length_t start = i; + f_array_length_t total = 0; + + f_status_t status = F_none; + f_string_static_t safe = f_string_static_t_initialize; + + uint8_t width = 0; + + while (i < stop) { + + while (at < except_at.used && except_at.array[at] < i) { + ++at; + } // while + + if (at < except_at.used && except_at.array[at] == i) { + if (total) { + if (fwrite_unlocked(string + start, 1, total, output) < total) { + return F_status_set_error(F_output); + } + + total = 0; + } + + start = ++i; + + continue; + } + + if (in < except_in.used) { + while (in < except_in.used && except_in.array[in].start < i && except_in.array[in].stop < i) { + ++in; + } // while + + if (in < except_in.used && except_in.array[in].start <= i && except_in.array[in].stop >= i) { + if (total) { + if (fwrite_unlocked(string + start, 1, total, output) < total) { + return F_status_set_error(F_output); + } + + total = 0; + } + + i = except_in.array[in].stop + 1; + start = i; + + continue; + } + } + + if (string[i]) { + width = macro_f_utf_character_t_width(string[i]); + + safe = private_f_print_safely_get(string + i, width); + } + else { + width = 1; + safe.used = 0; + } + + if (safe.used) { + if (total) { + if (fwrite_unlocked(string + start, 1, total, output) < total) { + return F_status_set_error(F_output); + } + + total = 0; + } + + if (fwrite_unlocked(safe.string, 1, safe.used, output) < safe.used) { + return F_status_set_error(F_output); + } + + i += width; + start = i; + + continue; + } + + if (total + width >= F_print_write_max_d) { + if (fwrite_unlocked(string + start, 1, total, output) < total) { + return F_status_set_error(F_output); + } + + total = 0; + start = i; + } + + total += width; + i += width; + } // while + + if (total) { + if (fwrite_unlocked(string + start, 1, total, output) < total) { + return F_status_set_error(F_output); + } + } + + return F_none; + } +#endif // !defined(_di_f_print_except_in_raw_safely_) || !defined(_di_f_print_except_in_dynamic_raw_safely_) || !defined(_di_f_print_except_in_dynamic_partial_raw_safely_) + #if !defined(_di_f_print_except_in_safely_) || !defined(_di_f_print_except_in_dynamic_safely_) || !defined(_di_f_print_except_in_dynamic_partial_safely_) f_status_t private_f_print_except_in_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t stop, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { @@ -421,6 +528,85 @@ extern "C" { } #endif // !defined(_di_f_print_except_raw_) || !defined(_di_f_print_except_dynamic_raw_) || !defined(_di_f_print_except_dynamic_partial_raw_) +#if !defined(_di_f_print_except_raw_safely_) || !defined(_di_f_print_except_dynamic_raw_) || !defined(_di_f_print_except_dynamic_partial_raw_) + f_status_t private_f_print_except_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t stop, const f_array_lengths_t except, FILE *output) { + + f_array_length_t i = offset; + f_array_length_t j = 0; + f_array_length_t start = i; + f_array_length_t total = 0; + + f_status_t status = F_none; + f_string_static_t safe = f_string_static_t_initialize; + + uint8_t width = 0; + + while (i < stop) { + + while (j < except.used && except.array[j] < i) { + ++j; + } // while + + if (j < except.used && except.array[j] == i) { + if (total) { + if (fwrite_unlocked(string + start, 1, total, output) < total) { + return F_status_set_error(F_output); + } + + total = 0; + } + + start = ++i; + + continue; + } + + if (string[i]) { + width = macro_f_utf_character_t_width(string[i]); + + safe = private_f_print_safely_get(string + i, width); + } + else { + width = 1; + safe.used = 0; + } + + if (safe.used) { + if (total) { + if (fwrite_unlocked(string + start, 1, total, output) < total) { + return F_status_set_error(F_output); + } + + total = 0; + } + + if (fwrite_unlocked(safe.string, 1, safe.used, output) < safe.used) { + return F_status_set_error(F_output); + } + + i += width; + start = i; + + continue; + } + + if (total + width >= F_print_write_max_d) { + if (fwrite_unlocked(string + start, 1, total, output) < total) { + return F_status_set_error(F_output); + } + + total = 0; + start = i; + } + + total += width; + i += width; + } // while + + return F_none; + } +#endif // !defined(_di_f_print_except_raw_safely_) || !defined(_di_f_print_except_dynamic_raw_) || !defined(_di_f_print_except_dynamic_partial_raw_) + #if !defined(_di_f_print_except_safely_) || !defined(_di_f_print_except_dynamic_safely_) || !defined(_di_f_print_except_dynamic_partial_safely_) f_status_t private_f_print_except_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t stop, const f_array_lengths_t except, FILE *output) { @@ -473,8 +659,6 @@ extern "C" { continue; } - width = macro_f_utf_character_t_width(string[i]); - if (safe.used) { if (total) { if (fwrite_unlocked(string + start, 1, total, output) < total) { @@ -514,45 +698,99 @@ extern "C" { #if !defined(_di_f_print_raw_) || !defined(_di_f_print_raw_dynamic_) || !defined(_di_f_print_raw_dynamic_partial_) f_status_t private_f_print_raw(const f_string_t string, const f_array_length_t length, FILE *output) { + if (length < F_print_write_max_d) { + if (fwrite_unlocked(string, 1, length, output) < length) { + return F_status_set_error(F_output); + } + } + else { + for (f_array_length_t total = 0; ; total += F_print_write_max_d) { + + if (length - total > F_print_write_max_d) { + if (fwrite_unlocked(string, 1, F_print_write_max_d, output) < total) { + return F_status_set_error(F_output); + } + } + else { + if (fwrite_unlocked(string, 1, length - total, output) < length - total) { + return F_status_set_error(F_output); + } + + break; + } + } // for + } + + return F_none; + } +#endif // !defined(_di_f_print_raw_) || !defined(_di_f_print_raw_dynamic_) || !defined(_di_f_print_raw_dynamic_partial_) + +#if !defined(_di_f_print_raw_safely_) || !defined(_di_f_print_raw_safely_dynamic_) || !defined(_di_f_print_raw_safely_dynamic_partial_) + f_status_t private_f_print_raw_safely(const f_string_t string, const f_array_length_t length, FILE *output) { + + f_status_t status = F_none; + + register f_array_length_t i = 0; f_array_length_t start = 0; f_array_length_t total = 0; - for (register f_array_length_t i = 0; i < length; ) { + f_string_static_t safe = f_string_static_t_initialize; - total = strnlen(string + i, length - i); + uint8_t width = 0; - if (total) { - if (total > F_print_write_max_d) { - total = F_print_write_max_d; + while (i < length) { + + if (string[i]) { + width = macro_f_utf_character_t_width(string[i]); + + safe = private_f_print_safely_get(string + i, width); + } + else { + width = 1; + safe.used = 0; + } + + if (safe.used) { + if (total) { + if (fwrite_unlocked(string + start, 1, total, output) < total) { + return F_status_set_error(F_output); + } + + total = 0; } - if (fwrite_unlocked(string + i, 1, total, output) < total) { + if (!fwrite_unlocked(safe.string, 1, safe.used, output) < safe.used) { return F_status_set_error(F_output); } - i += total; - total = 0; - } - - // Print all NULL characters. - if (i < length && !string[i]) { + i += width; start = i; - do { - ++i; - ++total; - - } while (i < length && !string[i] && total < F_print_write_max_d); + continue; + } + if (total + width >= F_print_write_max_d) { if (fwrite_unlocked(string + start, 1, total, output) < total) { return F_status_set_error(F_output); } + + total = 0; + start = i; } - } // for + + total += width; + i += width; + } // while + + if (total) { + if (fwrite_unlocked(string + start, 1, total, output) < total) { + return F_status_set_error(F_output); + } + } return F_none; } -#endif // !defined(_di_f_print_raw_) || !defined(_di_f_print_raw_dynamic_) || !defined(_di_f_print_raw_dynamic_partial_) +#endif // !defined(_di_f_print_raw_safely_) || !defined(_di_f_print_raw_safely_dynamic_) || !defined(_di_f_print_raw_safely_dynamic_partial_) #if !defined(_di_f_print_safely_) || !defined(_di_f_print_safely_dynamic_) || !defined(_di_f_print_safely_dynamic_partial_) f_status_t private_f_print_safely(const f_string_t string, const f_array_length_t length, FILE *output) { diff --git a/level_0/f_print/c/private-print.h b/level_0/f_print/c/private-print.h index 2bbde88..a81affc 100644 --- a/level_0/f_print/c/private-print.h +++ b/level_0/f_print/c/private-print.h @@ -227,6 +227,44 @@ extern "C" { #endif // !defined(_di_f_print_except_in_raw_) || !defined(_di_f_print_except_dynamic_in_raw_) || !defined(_di_f_print_except_in_dynamic_partial_raw_) /** + * Private implementation of f_print_except_in_raw_safely(). + * + * Intended to be shared to each of the different implementation variations. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param stop + * The exclusive stop point to stop printing. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see fwrite_unlocked() + * + * @see f_print_except_in_raw_safely() + * @see f_print_except_in_dynamic_raw_safely() + * @see f_print_except_in_dynamic_partial_raw_safely() + * @see f_utf_is_valid() + */ +#if !defined(_di_f_print_except_in_raw_safely_) || !defined(_di_f_print_except_dynamic_in_raw_safely_) || !defined(_di_f_print_except_in_dynamic_partial_raw_safely_) + extern f_status_t private_f_print_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t stop, const f_array_lengths_t except_at, f_string_ranges_t except_in, FILE *output) F_attribute_visibility_internal_d; +#endif // !defined(_di_f_print_except_in_raw_safely_) || !defined(_di_f_print_except_dynamic_in_raw_safely_) || !defined(_di_f_print_except_in_dynamic_partial_raw_safely_) + +/** * Private implementation of f_print_except_in_safely(). * * Intended to be shared to each of the different implementation variations. @@ -299,6 +337,40 @@ extern "C" { #endif // !defined(_di_f_print_except_raw_) || !defined(_di_f_print_except_dynamic_raw_) || !defined(_di_f_print_except_dynamic_partial_raw_) /** + * Private implementation of f_print_except_raw_safely(). + * + * Intended to be shared to each of the different implementation variations. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param stop + * The exclusive stop point to stop printing. + * @param except + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see fwrite_unlocked() + * + * @see f_print_except_raw_safely() + * @see f_print_except_dynamic_raw_safely() + * @see f_print_except_dynamic_partial_raw_safely() + */ +#if !defined(_di_f_print_except_raw_safely_) || !defined(_di_f_print_except_dynamic_raw_safely_) || !defined(_di_f_print_except_dynamic_partial_raw_safely_) + extern f_status_t private_f_print_except_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t stop, const f_array_lengths_t except, FILE *output) F_attribute_visibility_internal_d; +#endif // !defined(_di_f_print_except_raw_safely_) || !defined(_di_f_print_except_dynamic_raw_safely_) || !defined(_di_f_print_except_dynamic_partial_raw_safely_) + +/** * Private implementation of f_print_except_safely(). * * Intended to be shared to each of the different implementation variations. @@ -363,6 +435,36 @@ extern "C" { #endif // !defined(_di_f_print_raw_) || !defined(_di_f_print_raw_dynamic_) || !defined(_di_f_print_raw_dynamic_partial_) /** + * Private implementation of f_print_raw_safely(). + * + * Intended to be shared to each of the different implementation variations. + * + * @param string + * The string to output. + * @param length + * The total number of characters to print. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see fwrite_unlocked() + * + * @see f_print_raw_safely() + * @see f_print_raw_safely_dynamic() + * @see f_print_raw_safely_dynamic_partial() + * @see f_utf_is_valid() + */ +#if !defined(_di_f_print_raw_safely_) || !defined(_di_f_print_raw_safely_dynamic_) || !defined(_di_f_print_raw_safely_dynamic_partial_) + extern f_status_t private_f_print_raw_safely(const f_string_t string, const f_array_length_t length, FILE *output) F_attribute_visibility_internal_d; +#endif // !defined(_di_f_print_raw_safely_) || !defined(_di_f_print_raw_safely_dynamic_) || !defined(_di_f_print_raw_safely_dynamic_partial_) + +/** * Private implementation of f_print_safely(). * * Intended to be shared to each of the different implementation variations. diff --git a/level_0/f_print/c/private-print_to.c b/level_0/f_print/c/private-print_to.c index 7f8296c..b20d522 100644 --- a/level_0/f_print/c/private-print_to.c +++ b/level_0/f_print/c/private-print_to.c @@ -190,6 +190,82 @@ static inline f_status_t private_inline_f_print_to_error() { } #endif // !defined(_di_f_print_to_except_raw_) || !defined(_di_f_print_to_except_dynamic_raw_) || !defined(_di_f_print_to_except_dynamic_partial_raw_) +#if !defined(_di_f_print_to_except_dynamic_raw_safely_) || !defined(_di_f_print_to_except_dynamic_partial_raw_safely_) || !defined(_di_f_print_to_except_raw_safely_) + f_status_t private_f_print_to_except_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t stop, const f_array_lengths_t except, const int id) { + + f_array_length_t i = offset; + f_array_length_t j = 0; + f_array_length_t start = offset; + f_array_length_t total = 0; + + f_status_t status = F_none; + f_string_static_t safe = f_string_empty_s; + + uint8_t width = 0; + + while (i < stop) { + + while (j < except.used && except.array[j] < i) { + ++j; + } // while + + if (j < except.used && except.array[j] == i) { + ++i; + + continue; + } + + if (string[i]) { + width = macro_f_utf_character_t_width(string[i]); + + safe = private_f_print_safely_get(string + i, width); + } + else { + width = 1; + safe.used = 0; + } + + if (safe.used) { + if (total) { + if (write(id, string + start, total) == -1) { + return private_inline_f_print_to_error(); + } + + total = 0; + } + + if (write(id, safe.string, safe.used) == -1) { + return private_inline_f_print_to_error(); + } + + start = ++i; + + continue; + } + + if (total + width >= F_print_write_max_d) { + if (write(id, string + start, total) == -1) { + return private_inline_f_print_to_error(); + } + + total = 0; + start = i; + } + + total += width; + i += width; + } // while + + if (total) { + if (write(id, string + start, total) == -1) { + return private_inline_f_print_to_error(); + } + } + + return F_none; + } +#endif // !defined(_di_f_print_to_except_dynamic_raw_safely_) || !defined(_di_f_print_to_except_dynamic_partial_raw_safely_) || !defined(_di_f_print_to_except_raw_safely_) + #if !defined(_di_f_print_to_except_dynamic_safely_) || !defined(_di_f_print_to_except_dynamic_partial_safely_) || !defined(_di_f_print_to_except_safely_) f_status_t private_f_print_to_except_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t stop, const f_array_lengths_t except, const int id) { @@ -421,6 +497,112 @@ static inline f_status_t private_inline_f_print_to_error() { } #endif // !defined(_di_f_print_to_except_in_raw_) || !defined(_di_f_print_to_except_in_dynamic_raw_) || !defined(_di_f_print_to_except_in_dynamic_partial_raw_) +#if !defined(_di_f_print_to_except_in_raw_safely_) || !defined(_di_f_print_to_except_in_dynamic_raw_safely_) || !defined(_di_f_print_to_except_in_dynamic_partial_raw_safely_) + f_status_t private_f_print_to_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t stop, const f_array_lengths_t except_at, const f_string_ranges_t except_in, const int id) { + + f_array_length_t i = offset; + f_array_length_t at = 0; + f_array_length_t in = 0; + f_array_length_t start = i; + f_array_length_t total = 0; + + f_status_t status = F_none; + f_string_static_t safe = f_string_empty_s; + + uint8_t width = 0; + + while (i < stop) { + + while (at < except_at.used && except_at.array[at] < i) { + ++at; + } // while + + if (at < except_at.used && except_at.array[at] == i) { + if (total) { + if (write(id, string + start, total) == -1) { + return private_inline_f_print_to_error(); + } + + total = 0; + } + + start = ++i; + + continue; + } + + if (in < except_in.used) { + while (in < except_in.used && except_in.array[in].start < i && except_in.array[in].stop < i) { + ++in; + } // while + + if (in < except_in.used && except_in.array[in].start <= i && except_in.array[in].stop >= i) { + if (total) { + if (write(id, string + start, total) == -1) { + return private_inline_f_print_to_error(); + } + + total = 0; + } + + i = except_in.array[in].stop + 1; + start = i; + + continue; + } + } + + if (string[i]) { + width = macro_f_utf_character_t_width(string[i]); + + safe = private_f_print_safely_get(string + i, width); + } + else { + width = 1; + safe.used = 0; + } + + if (safe.used) { + if (total) { + if (write(id, string + start, total) == -1) { + return private_inline_f_print_to_error(); + } + + total = 0; + } + + if (write(id, safe.string, safe.used) == -1) { + return private_inline_f_print_to_error(); + } + + start = ++i; + + continue; + } + + if (total + width >= F_print_write_max_d) { + if (write(id, string + start, total) == -1) { + return private_inline_f_print_to_error(); + } + + total = 0; + start = i; + } + + total += width; + i += width; + } // while + + if (total) { + if (write(id, string + start, total) == -1) { + return private_inline_f_print_to_error(); + } + } + + return F_none; + } +#endif // !defined(_di_f_print_to_except_in_raw_safely_) || !defined(_di_f_print_to_except_in_dynamic_raw_safely_) || !defined(_di_f_print_to_except_in_dynamic_partial_raw_safely_) + #if !defined(_di_f_print_to_except_in_safely_) || !defined(_di_f_print_to_except_in_dynamic_safely_) || !defined(_di_f_print_to_except_in_dynamic_partial_safely_) f_status_t private_f_print_to_except_in_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t stop, const f_array_lengths_t except_at, const f_string_ranges_t except_in, const int id) { @@ -579,6 +761,73 @@ static inline f_status_t private_inline_f_print_to_error() { } #endif // !defined(_di_f_print_to_raw_) || !defined(_di_f_print_dynamic_to_raw_) || !defined(_di_f_print_dynamic_partial_to_raw_) +#if !defined(_di_f_print_to_dynamic_raw_safely_) || !defined(_di_f_print_to_dynamic_partial_raw_safely_) || !defined(_di_f_print_to_raw_safely_) + f_status_t private_f_print_to_raw_safely(const f_string_t string, const f_array_length_t length, const int id) { + + f_status_t status = F_none; + + register f_array_length_t i = 0; + f_array_length_t start = 0; + f_array_length_t total = 0; + + f_string_static_t safe = f_string_empty_s; + + uint8_t width = 0; + + while (i < length) { + + if (string[i]) { + width = macro_f_utf_character_t_width(string[i]); + + safe = private_f_print_safely_get(string + i, width); + } + else { + width = 1; + safe.used = 0; + } + + if (safe.used) { + if (total) { + if (write(id, string + start, total) == -1) { + return private_inline_f_print_to_error(); + } + + total = 0; + } + + if (write(id, safe.string, safe.used) == -1) { + return private_inline_f_print_to_error(); + } + + i += width; + start = i; + + continue; + } + + if (total + width >= F_print_write_max_d) { + if (write(id, string + start, total) == -1) { + return private_inline_f_print_to_error(); + } + + total = 0; + start = i; + } + + total += width; + i += width; + } // while + + if (total) { + if (write(id, string + start, total) == -1) { + return private_inline_f_print_to_error(); + } + } + + return F_none; + } +#endif // !defined(_di_f_print_to_dynamic_raw_safely_) || !defined(_di_f_print_dynamic_partial_to_raw_safely_) || !defined(_di_f_print_to_raw_safely_) + #if !defined(_di_f_print_to_dynamic_safely_) || !defined(_di_f_print_to_dynamic_partial_safely_) || !defined(_di_f_print_to_safely_) f_status_t private_f_print_to_safely(const f_string_t string, const f_array_length_t length, const int id) { diff --git a/level_0/f_print/c/private-print_to.h b/level_0/f_print/c/private-print_to.h index bfd6977..ec2f2a3 100644 --- a/level_0/f_print/c/private-print_to.h +++ b/level_0/f_print/c/private-print_to.h @@ -226,6 +226,44 @@ extern "C" { #endif // !defined(_di_f_print_to_except_in_raw_) || !defined(_di_f_print_to_except_dynamic_in_raw_) || !defined(_di_f_print_to_except_in_dynamic_partial_raw_) /** + * Private implementation of f_print_to_except_in_raw_safely(). + * + * Intended to be shared to each of the different implementation variations. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param stop + * The exclusive stop point to stop printing. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param id + * The file descriptor to output to. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_output (with error bit) on failure. + * F_parameter (with error bit) if a parameter is invalid. + * + * @see write() + * + * @see f_print_to_except_in_raw_safely() + * @see f_print_to_except_in_dynamic_raw_safely() + * @see f_print_to_except_in_dynamic_partial_raw_safely() + * @see f_utf_is_valid() + */ +#if !defined(_di_f_print_to_except_in_raw_safely_) || !defined(_di_f_print_to_except_dynamic_in_raw_safely_) || !defined(_di_f_print_to_except_in_dynamic_partial_raw_safely_) + extern f_status_t private_f_print_to_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t stop, const f_array_lengths_t except_at, f_string_ranges_t except_in, const int id) F_attribute_visibility_internal_d; +#endif // !defined(_di_f_print_to_except_in_raw_safely_) || !defined(_di_f_print_to_except_dynamic_in_raw_safely_) || !defined(_di_f_print_to_except_in_dynamic_partial_raw_safely_) + +/** * Private implementation of f_print_to_except_in_safely(). * * Intended to be shared to each of the different implementation variations. @@ -311,6 +349,54 @@ extern "C" { #endif // !defined(_di_f_print_to_except_raw_) || !defined(_di_f_print_to_except_dynamic_raw_) || !defined(_di_f_print_to_except_dynamic_partial_raw_) /** + * Private implementation of f_print_to_except_raw_safely(). + * + * Intended to be shared to each of the different implementation variations. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param stop + * The exclusive stop point to stop printing. + * @param except + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param id + * The file descriptor to output to. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_block (with error bit) if file descriptor is set to non-block and the write would result in a blocking operation. + * F_buffer (with error bit) if the buffer is invalid. + * F_file_closed (with error bit) if file is not open. + * F_file_descriptor (with error bit) if the file descriptor is invalid. + * F_file_type_directory (with error bit) if file descriptor represents a directory. + * F_filesystem_quota_block (with error bit) if quota is reached or exceeded. + * F_input_output (with error bit) on I/O error. + * F_interrupt (with error bit) if interrupt was received. + * F_number_overflow (with error bit) if maximum size reached while writing or attempting to write beyond maximum allowed offset. + * F_parameter (with error bit) if a parameter is invalid. + * F_pipe (with error bit) if a connected pipe or socket is closed. + * F_space_not (with error bit) cannot write, out of space. + * F_socket_not (with error bit) if socket is not connected. + * + * F_output (with error bit) on any other failure. + * + * @see write() + * + * @see f_print_to_except_raw_safely() + * @see f_print_to_except_dynamic_raw_safely() + * @see f_print_to_except_dynamic_partial_raw_safely() + * @see f_utf_is_valid() + */ +#if !defined(_di_f_print_to_except_raw_safely_) || !defined(_di_f_print_to_except_dynamic_raw_safely_) || !defined(_di_f_print_to_except_dynamic_partial_raw_safely_) + extern f_status_t private_f_print_to_except_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t stop, const f_array_lengths_t except, const int id) F_attribute_visibility_internal_d; +#endif // !defined(_di_f_print_to_except_raw_safely_) || !defined(_di_f_print_to_except_dynamic_raw_safely_) || !defined(_di_f_print_to_except_dynamic_partial_raw_safely_) + +/** * Private implementation of f_print_to_except_safely(). * * Intended to be shared to each of the different implementation variations. @@ -398,7 +484,50 @@ extern "C" { */ #if !defined(_di_f_print_to_raw_) || !defined(_di_f_print_to_dynamic_raw_) || !defined(_di_f_print_to_dynamic_partial_raw_) extern f_status_t private_f_print_to_raw(const f_string_t string, const f_array_length_t length, const int id) F_attribute_visibility_internal_d; -#endif // !defined(_di_f_print_to_raw_) || !defined(_di_f_print_to_dynamic_raw_) || !defined(_di_f_print_to_dynamic_partial_raw_) +#endif // !defined(_di_f_print_to_raw_) || !defined(_di_f_print_to_dynamic_raw_) || !defined(_di_f_print_to_dynamic_partial_raw_ + +/** + * Private implementation of f_print_to_raw_safely(). + * + * Intended to be shared to each of the different implementation variations. + * + * @param string + * The string to output. + * @param length + * The total number of characters to print. + * @param id + * The file descriptor to output to. + * + * @return + * F_none on success. + * F_data_not if there is nothing to print. + * + * F_block (with error bit) if file descriptor is set to non-block and the write would result in a blocking operation. + * F_buffer (with error bit) if the buffer is invalid. + * F_file_closed (with error bit) if file is not open. + * F_file_descriptor (with error bit) if the file descriptor is invalid. + * F_file_type_directory (with error bit) if file descriptor represents a directory. + * F_filesystem_quota_block (with error bit) if quota is reached or exceeded. + * F_input_output (with error bit) on I/O error. + * F_interrupt (with error bit) if interrupt was received. + * F_number_overflow (with error bit) if maximum size reached while writing or attempting to write beyond maximum allowed offset. + * F_parameter (with error bit) if a parameter is invalid. + * F_pipe (with error bit) if a connected pipe or socket is closed. + * F_space_not (with error bit) cannot write, out of space. + * F_socket_not (with error bit) if socket is not connected. + * + * F_output (with error bit) on any other failure. + * + * @see write() + * + * @see f_print_to_raw_safely() + * @see f_print_to_dynamic_raw_safely() + * @see f_print_to_dynamic_partial_raw_safely() + * @see f_utf_is_valid() + */ +#if !defined(_di_f_print_to_raw_safely_) || !defined(_di_f_print_to_dynamic_raw_safely_) || !defined(_di_f_print_to_dynamic_partial_raw_safely_) + extern f_status_t private_f_print_to_raw_safely(const f_string_t string, const f_array_length_t length, const int id) F_attribute_visibility_internal_d; +#endif // !defined(_di_f_print_to_raw_safely_) || !defined(_di_f_print_to_dynamic_raw_safely_) || !defined(_di_f_print_to_dynamic_partial_raw_safely_) /** * Private implementation of f_print_to_safely(). diff --git a/level_1/fl_print/c/print.c b/level_1/fl_print/c/print.c index 93e19f8..e45b046 100644 --- a/level_1/fl_print/c/print.c +++ b/level_1/fl_print/c/print.c @@ -111,6 +111,20 @@ extern "C" { } #endif // _di_fl_print_trim_raw_ +#ifndef _di_fl_print_trim_raw_safely_ + f_status_t fl_print_trim_raw_safely(const f_string_t string, const f_array_length_t length, FILE *stream) { + #ifndef _di_level_1_parameter_checking_ + if (!stream) return F_status_set_error(F_parameter); + #endif // _di_level_1_parameter_checking_ + + if (!string || !length) { + return F_data_not; + } + + return private_fl_print_trim_raw_safely(string, length, stream); + } +#endif // _di_fl_print_trim_raw_safely_ + #ifndef _di_fl_print_trim_safely_ f_status_t fl_print_trim_safely(const f_string_t string, const f_array_length_t length, FILE *stream) { #ifndef _di_level_1_parameter_checking_ @@ -153,6 +167,20 @@ extern "C" { } #endif // _di_fl_print_trim_dynamic_raw_ +#ifndef _di_fl_print_trim_dynamic_raw_safely_ + f_status_t fl_print_trim_dynamic_raw_safely(const f_string_static_t buffer, FILE *stream) { + #ifndef _di_level_1_parameter_checking_ + if (!stream) return F_status_set_error(F_parameter); + #endif // _di_level_1_parameter_checking_ + + if (!buffer.used) { + return F_data_not; + } + + return private_fl_print_trim_raw_safely(buffer.string, buffer.used, stream); + } +#endif // _di_fl_print_trim_dynamic_raw_safely_ + #ifndef _di_fl_print_trim_dynamic_safely_ f_status_t fl_print_trim_dynamic_safely(const f_string_static_t buffer, FILE *stream) { #ifndef _di_level_1_parameter_checking_ @@ -207,6 +235,26 @@ extern "C" { } #endif // _di_fl_print_trim_dynamic_partial_raw_ +#ifndef _di_fl_print_trim_dynamic_partial_raw_safely_ + f_status_t fl_print_trim_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *stream) { + #ifndef _di_level_1_parameter_checking_ + if (!stream) return F_status_set_error(F_parameter); + #endif // _di_level_1_parameter_checking_ + + if (!buffer.used || range.start > range.stop || range.start >= buffer.used) { + return F_data_not; + } + + f_array_length_t length = (range.stop - range.start) + 1; + + if (length + range.start > buffer.used) { + length = buffer.used - range.start; + } + + return private_fl_print_trim_raw_safely(buffer.string + range.start, length, stream); + } +#endif // _di_fl_print_trim_dynamic_partial_raw_safely_ + #ifndef _di_fl_print_trim_dynamic_partial_safely_ f_status_t fl_print_trim_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *stream) { #ifndef _di_level_1_parameter_checking_ @@ -259,6 +307,22 @@ extern "C" { } #endif // _di_fl_print_trim_except_raw_ +#ifndef _di_fl_print_trim_except_raw_safely_ + f_status_t fl_print_trim_except_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, FILE *stream) { + #ifndef _di_level_1_parameter_checking_ + if (!stream) return F_status_set_error(F_parameter); + #endif // _di_level_1_parameter_checking_ + + if (!string || !length) { + return F_data_not; + } + + const f_string_ranges_t except_in = f_string_ranges_t_initialize; + + return private_fl_print_trim_except_in_raw_safely(string, offset, length, except_at, except_in, stream); + } +#endif // _di_fl_print_trim_except_raw_safely_ + #ifndef _di_fl_print_trim_except_safely_ f_status_t fl_print_trim_except_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, FILE *stream) { #ifndef _di_level_1_parameter_checking_ @@ -307,6 +371,22 @@ extern "C" { } #endif // _di_fl_print_trim_except_dynamic_raw_ +#ifndef _di_fl_print_trim_except_dynamic_raw_safely_ + f_status_t fl_print_trim_except_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, FILE *stream) { + #ifndef _di_level_1_parameter_checking_ + if (!stream) return F_status_set_error(F_parameter); + #endif // _di_level_1_parameter_checking_ + + if (!buffer.used) { + return F_data_not; + } + + const f_string_ranges_t except_in = f_string_ranges_t_initialize; + + return private_fl_print_trim_except_in_raw_safely(buffer.string, 0, buffer.used, except_at, except_in, stream); + } +#endif // _di_fl_print_trim_except_dynamic_raw_safely_ + #ifndef _di_fl_print_trim_except_dynamic_safely_ f_status_t fl_print_trim_except_dynamic_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, FILE *stream) { #ifndef _di_level_1_parameter_checking_ @@ -351,6 +431,20 @@ extern "C" { } #endif // _di_fl_print_trim_except_in_raw_ +#ifndef _di_fl_print_trim_except_in_raw_safely_ + f_status_t fl_print_trim_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream) { + #ifndef _di_level_1_parameter_checking_ + if (!stream) return F_status_set_error(F_parameter); + #endif // _di_level_1_parameter_checking_ + + if (!string || !length) { + return F_data_not; + } + + return private_fl_print_trim_except_in_raw_safely(string, offset, length, except_at, except_in, stream); + } +#endif // _di_fl_print_trim_except_in_raw_safely_ + #ifndef _di_fl_print_trim_except_in_safely_ f_status_t fl_print_trim_except_in_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream) { #ifndef _di_level_1_parameter_checking_ @@ -393,6 +487,20 @@ extern "C" { } #endif // _di_fl_print_trim_except_in_dynamic_raw_ +#ifndef _di_fl_print_trim_except_in_dynamic_raw_safely_ + f_status_t fl_print_trim_except_in_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream) { + #ifndef _di_level_1_parameter_checking_ + if (!stream) return F_status_set_error(F_parameter); + #endif // _di_level_1_parameter_checking_ + + if (!buffer.used) { + return F_data_not; + } + + return private_fl_print_trim_except_in_raw_safely(buffer.string, 0, buffer.used, except_at, except_in, stream); + } +#endif // _di_fl_print_trim_except_in_dynamic_raw_safely_ + #ifndef _di_fl_print_trim_except_in_dynamic_safely_ f_status_t fl_print_trim_except_in_dynamic_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream) { #ifndef _di_level_1_parameter_checking_ @@ -447,6 +555,26 @@ extern "C" { } #endif // _di_fl_print_trim_except_in_dynamic_partial_raw_ +#ifndef _di_fl_print_trim_except_in_dynamic_partial_raw_safely_ + f_status_t fl_print_trim_except_in_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream) { + #ifndef _di_level_1_parameter_checking_ + if (!stream) return F_status_set_error(F_parameter); + #endif // _di_level_1_parameter_checking_ + + if (!buffer.used || range.start > range.stop || range.start >= buffer.used) { + return F_data_not; + } + + f_array_length_t length = (range.stop - range.start) + 1; + + if (length + range.start > buffer.used) { + length = buffer.used - range.start; + } + + return private_fl_print_trim_except_in_raw_safely(buffer.string, range.start, length, except_at, except_in, stream); + } +#endif // _di_fl_print_trim_except_in_dynamic_partial_raw_safely_ + #ifndef _di_fl_print_trim_except_in_dynamic_partial_safely_ f_status_t fl_print_trim_except_in_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream) { #ifndef _di_level_1_parameter_checking_ @@ -511,6 +639,28 @@ extern "C" { } #endif // _di_fl_print_trim_except_dynamic_partial_raw_ +#ifndef _di_fl_print_trim_except_dynamic_partial_raw_safely_ + f_status_t fl_print_trim_except_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except, FILE *stream) { + #ifndef _di_level_1_parameter_checking_ + if (!stream) return F_status_set_error(F_parameter); + #endif // _di_level_1_parameter_checking_ + + if (!buffer.used || range.start > range.stop || range.start >= buffer.used) { + return F_data_not; + } + + f_array_length_t length = (range.stop - range.start) + 1; + + if (length + range.start > buffer.used) { + length = buffer.used - range.start; + } + + const f_string_ranges_t except_in = f_string_ranges_t_initialize; + + return private_fl_print_trim_except_in_raw_safely(buffer.string, range.start, length, except, except_in, stream); + } +#endif // _di_fl_print_trim_except_dynamic_partial_raw_safely_ + #ifndef _di_fl_print_trim_except_dynamic_partial_safely_ f_status_t fl_print_trim_except_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except, FILE *stream) { #ifndef _di_level_1_parameter_checking_ diff --git a/level_1/fl_print/c/print.h b/level_1/fl_print/c/print.h index 520b25f..0fce758 100644 --- a/level_1/fl_print/c/print.h +++ b/level_1/fl_print/c/print.h @@ -403,6 +403,43 @@ extern "C" { #endif // _di_fl_print_trim_raw_ /** + * Print a string, stripping leading and trailing whitespace (and NULLs). + * + * This is essentually a "safe" print that also prints NULL (except for trimmed NULLs). + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL (that are not trimmed). + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param string + * The string to output. + * @param length + * The total number of characters to print. + * @param stream + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not on success but there is nothing to print. + * + * F_output (with error bit) on error when printing to output. + * F_parameter (with error bit) if a parameter is invalid. + * F_utf_not (with error bit) if character is an invalid UTF-8 character. + * + * Errors (with error bit) from: f_utf_is_valid() + * Errors (with error bit) from: f_utf_is_whitespace(). + * + * @see fputc_unlocked() + */ +#ifndef _di_fl_print_trim_raw_safely_ + extern f_status_t fl_print_trim_raw_safely(const f_string_t string, const f_array_length_t length, FILE *stream); +#endif // _di_fl_print_trim_raw_safely_ + +/** * Print a string, stripping leading and trailing whitespace. * * Control characters are converted to the Unicode control character symbols, excluding NULL. @@ -511,6 +548,44 @@ extern "C" { #endif // _di_fl_print_trim_dynamic_raw_ /** + * Print a dynamic string, stripping leading and trailing whitespace (and NULLs). + * + * This is essentually a "safe" print that also prints NULL (except for trimmed NULLs). + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL (that are not trimmed). + * Will print the entire dynamic string, except for leading/trailing whitespace. + * + * NULL characters are treated as whitespace for the purpose of trimming. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param buffer + * The string to output. + * @param stream + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not on success but there is nothing to print. + * + * F_output (with error bit) on error when printing to output. + * F_parameter (with error bit) if a parameter is invalid. + * F_utf_not (with error bit) if character is an invalid UTF-8 character. + * + * Errors (with error bit) from: f_utf_is_valid() + * Errors (with error bit) from: f_utf_is_whitespace(). + * + * @see fputc_unlocked() + */ +#ifndef _di_fl_print_trim_dynamic_raw_safely_ + extern f_status_t fl_print_trim_dynamic_raw_safely(const f_string_static_t buffer, FILE *stream); +#endif // _di_fl_print_trim_dynamic_raw_safely_ + +/** * Print a dynamic string, stripping leading and trailing whitespace. * * Control characters are converted to the Unicode control character symbols, excluding NULL. @@ -624,6 +699,46 @@ extern "C" { #endif // _di_fl_print_trim_dynamic_partial_raw_ /** + * Print a partial dynamic string, stripping leading and trailing whitespace (and NULLs). + * + * This is essentually a "safe" print that also prints NULL (except for trimmed NULLs). + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL (that are not trimmed). + * Will print the only the buffer range specified by range, except for leading/trailing whitespace. + * + * NULL characters are treated as whitespace for the purpose of trimming. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param buffer + * The string to output. + * @param range + * The range within the provided string to print. + * @param stream + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not on success but there is nothing to print. + * + * F_output (with error bit) on error when printing to output. + * F_parameter (with error bit) if a parameter is invalid. + * F_utf_not (with error bit) if character is an invalid UTF-8 character. + * + * Errors (with error bit) from: f_utf_is_valid() + * Errors (with error bit) from: f_utf_is_whitespace(). + * + * @see fputc_unlocked() + */ +#ifndef _di_fl_print_trim_dynamic_partial_raw_safely_ + extern f_status_t fl_print_trim_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *stream); +#endif // _di_fl_print_trim_dynamic_partial_raw_safely_ + +/** * Print a partial dynamic string, stripping leading and trailing whitespace. * * Control characters are converted to the Unicode control character symbols, excluding NULL. @@ -749,6 +864,51 @@ extern "C" { #endif // _di_fl_print_trim_except_raw_ /** + * Print a string, stripping leading and trailing whitespace (and NULLs). + * + * This is essentually a "safe" print that also prints NULL (except for trimmed NULLs). + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL (that are not trimmed). + * Will not print any 1-byte character at a location specified in except_at array. + * + * NULL characters are treated as whitespace for the purpose of trimming. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param length + * The total number of characters to print. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param stream + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not on success but there is nothing to print. + * + * F_output (with error bit) on error when printing to output. + * F_parameter (with error bit) if a parameter is invalid. + * F_utf_not (with error bit) if character is an invalid UTF-8 character. + * + * Errors (with error bit) from: f_utf_is_valid() + * Errors (with error bit) from: f_utf_is_whitespace(). + * + * @see fputc_unlocked() + */ +#ifndef _di_fl_print_trim_except_raw_safely_ + extern f_status_t fl_print_trim_except_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, FILE *stream); +#endif // _di_fl_print_trim_except_raw_safely_ + +/** * Print a string, stripping leading and trailing whitespace. * * Control characters are converted to the Unicode control character symbols, excluding NULL. @@ -873,6 +1033,48 @@ extern "C" { #endif // _di_fl_print_trim_except_dynamic_raw_ /** + * Print a dynamic string, stripping leading and trailing whitespace (and NULLs). + * + * This is essentually a "safe" print that also prints NULL (except for trimmed NULLs). + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL (that are not trimmed). + * Will print the entire dynamic string, except for leading/trailing whitespace. + * Will not print any 1-byte character at a location specified in except_at array. + * + * NULL characters are treated as whitespace for the purpose of trimming. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param buffer + * The string to output. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param stream + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not on success but there is nothing to print. + * + * F_output (with error bit) on error when printing to output. + * F_parameter (with error bit) if a parameter is invalid. + * F_utf_not (with error bit) if character is an invalid UTF-8 character. + * + * Errors (with error bit) from: f_utf_is_valid() + * Errors (with error bit) from: f_utf_is_whitespace(). + * + * @see fputc_unlocked() + */ +#ifndef _di_fl_print_trim_except_dynamic_raw_safely_ + extern f_status_t fl_print_trim_except_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, FILE *stream); +#endif // _di_fl_print_trim_except_dynamic_raw_safely_ + +/** * Print a dynamic string, stripping leading and trailing whitespace. * * Control characters are converted to the Unicode control character symbols, excluding NULL. @@ -1008,6 +1210,55 @@ extern "C" { #endif // _di_fl_print_trim_except_in_raw_ /** + * Print a string, stripping leading and trailing whitespace (and NULLs). + * + * This is essentually a "safe" print that also prints NULL (except for trimmed NULLs). + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL (that are not trimmed). + * Will not print any 1-byte character at a location specified in except_at array. + * Will not print any 1-byte character within the ranges specified in except_in array. + * + * NULL characters are treated as whitespace for the purpose of trimming. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param length + * The total number of characters to print. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param stream + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not on success but there is nothing to print. + * + * F_output (with error bit) on error when printing to output. + * F_parameter (with error bit) if a parameter is invalid. + * F_utf_not (with error bit) if character is an invalid UTF-8 character. + * + * Errors (with error bit) from: f_utf_is_valid() + * Errors (with error bit) from: f_utf_is_whitespace(). + * + * @see fputc_unlocked() + */ +#ifndef _di_fl_print_trim_except_in_raw_safely_ + extern f_status_t fl_print_trim_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream); +#endif // _di_fl_print_trim_except_in_raw_safely_ + +/** * Print a string, stripping leading and trailing whitespace. * * Control characters are converted to the Unicode control character symbols, excluding NULL. @@ -1146,6 +1397,52 @@ extern "C" { #endif // _di_fl_print_trim_except_in_dynamic_raw_ /** + * Print a dynamic string, stripping leading and trailing whitespace (and NULLs). + * + * This is essentually a "safe" print that also prints NULL (except for trimmed NULLs). + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL (that are not trimmed). + * Will print the entire dynamic string, except for leading/trailing whitespace. + * Will not print any 1-byte character at a location specified in except_at array. + * Will not print any 1-byte character within the ranges specified in except_in array. + * + * NULL characters are treated as whitespace for the purpose of trimming. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param buffer + * The string to output. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param stream + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not on success but there is nothing to print. + * + * F_output (with error bit) on error when printing to output. + * F_parameter (with error bit) if a parameter is invalid. + * F_utf_not (with error bit) if character is an invalid UTF-8 character. + * + * Errors (with error bit) from: f_utf_is_valid() + * Errors (with error bit) from: f_utf_is_whitespace(). + * + * @see fputc_unlocked() + */ +#ifndef _di_fl_print_trim_except_in_dynamic_raw_safely_ + extern f_status_t fl_print_trim_except_in_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream); +#endif // _di_fl_print_trim_except_in_dynamic_raw_safely_ + +/** * Print a dynamic string, stripping leading and trailing whitespace. * * Control characters are converted to the Unicode control character symbols, excluding NULL. @@ -1283,6 +1580,54 @@ extern "C" { #endif // _di_fl_print_trim_except_in_dynamic_partial_raw_ /** + * Print a partial dynamic string, stripping leading and trailing whitespace (and NULLs). + * + * This is essentually a "safe" print that also prints NULL (except for trimmed NULLs). + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL (that are not trimmed). + * Will not print any 1-byte character at a location specified in except_at array. + * Will not print any 1-byte character within the ranges specified in except_in array. + * Will print the only the buffer range specified by range, except for leading/trailing whitespace. + * + * NULL characters are treated as whitespace for the purpose of trimming. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param buffer + * The string to output. + * @param range + * The range within the provided string to print. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param stream + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not on success but there is nothing to print. + * + * F_output (with error bit) on error when printing to output. + * F_parameter (with error bit) if a parameter is invalid. + * F_utf_not (with error bit) if character is an invalid UTF-8 character. + * + * Errors (with error bit) from: f_utf_is_valid() + * Errors (with error bit) from: f_utf_is_whitespace(). + * + * @see fputc_unlocked() + */ +#ifndef _di_fl_print_trim_except_in_dynamic_partial_raw_safely_ + extern f_status_t fl_print_trim_except_in_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream); +#endif // _di_fl_print_trim_except_in_dynamic_partial_raw_safely_ + +/** * Print a partial dynamic string, stripping leading and trailing whitespace. * * Control characters are converted to the Unicode control character symbols, excluding NULL. @@ -1414,6 +1759,50 @@ extern "C" { #endif // _di_fl_print_trim_except_dynamic_partial_raw_ /** + * Print a partial dynamic string, stripping leading and trailing whitespace (and NULLs). + * + * This is essentually a "safe" print that also prints NULL (except for trimmed NULLs). + * + * Control characters are converted to the Unicode control character symbols, excluding NULL. + * UTF-8 sequences with invalid widths are converted to the unknown character '�'. + * + * Will not stop at NULL. + * Will print NULL (that are not trimmed). + * Will not print any 1-byte character at a location specified in except array. + * Will print the only the buffer range specified by range, except for leading/trailing whitespace. + * + * NULL characters are treated as whitespace for the purpose of trimming. + * + * This print function does not use locking, be sure something like flockfile() and funlockfile() are appropriately called. + * + * @param buffer + * The string to output. + * @param range + * The range within the provided string to print. + * @param except + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param stream + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not on success but there is nothing to print. + * + * F_output (with error bit) on error when printing to output. + * F_parameter (with error bit) if a parameter is invalid. + * F_utf_not (with error bit) if character is an invalid UTF-8 character. + * + * Errors (with error bit) from: f_utf_is_valid() + * Errors (with error bit) from: f_utf_is_whitespace(). + * + * @see fputc_unlocked() + */ +#ifndef _di_fl_print_trim_except_dynamic_partial_raw_safely_ + extern f_status_t fl_print_trim_except_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except, FILE *stream); +#endif // _di_fl_print_trim_except_dynamic_partial_raw_safely_ + +/** * Print a partial dynamic string, stripping leading and trailing whitespace. * * Control characters are converted to the Unicode control character symbols, excluding NULL. diff --git a/level_1/fl_print/c/private-print.c b/level_1/fl_print/c/private-print.c index b6a2c90..61592ad 100644 --- a/level_1/fl_print/c/private-print.c +++ b/level_1/fl_print/c/private-print.c @@ -373,6 +373,123 @@ extern "C" { return string; } + else if (*string == f_string_ascii_R_s.string[0]) { + const f_string_static_t value = va_arg(*ap, f_string_static_t); + + if (flag & F_print_format_flag_range_d) { + const f_string_range_t partial = va_arg(*ap, f_string_range_t); + + if (flag & F_print_format_flag_ignore_index_d) { + const f_array_lengths_t except_at = va_arg(*ap, f_array_lengths_t); + f_string_ranges_t except_in = f_string_ranges_t_initialize; + + if (flag & F_print_format_flag_ignore_range_d) { + except_in = va_arg(*ap, f_string_ranges_t); + } + + if (partial.start > partial.start) { + *status = F_data_not; + + return string; + } + + f_array_length_t length = (partial.stop - partial.start) + 1; + + if (length + partial.start > value.used) { + length = value.used - partial.start; + } + + if (flag & F_print_format_flag_trim_d) { + *status = private_fl_print_trim_except_in_raw_safely(value.string, partial.start, length, except_at, except_in, stream); + } + else { + *status = f_print_except_in_raw_safely(value.string, partial.start, length, except_at, except_in, stream); + } + } + else if (flag & F_print_format_flag_ignore_range_d) { + const f_array_lengths_t except_at = f_array_lengths_t_initialize; + const f_string_ranges_t except_in = va_arg(*ap, f_string_ranges_t); + + if (partial.start > partial.start) { + *status = F_data_not; + + return string; + } + + f_array_length_t length = (partial.stop - partial.start) + 1; + + if (length + partial.start > value.used) { + length = value.used - partial.start; + } + + if (flag & F_print_format_flag_trim_d) { + *status = private_fl_print_trim_except_in_raw_safely(value.string, partial.start, length, except_at, except_in, stream); + } + else { + *status = f_print_except_in_raw_safely(value.string, partial.start, length, except_at, except_in, stream); + } + } + else { + const f_array_lengths_t except_at = f_array_lengths_t_initialize; + const f_string_ranges_t except_in = f_string_ranges_t_initialize; + + if (partial.start > partial.start) { + *status = F_data_not; + + return string; + } + + f_array_length_t length = (partial.stop - partial.start) + 1; + + if (length + partial.start > value.used) { + length = value.used - partial.start; + } + + if (flag & F_print_format_flag_trim_d) { + *status = private_fl_print_trim_raw_safely(value.string + partial.start, length, stream); + } + else { + *status = f_print_raw_safely(value.string + partial.start, length, stream); + } + } + } + else if (flag & F_print_format_flag_ignore_index_d) { + const f_array_lengths_t except_at = va_arg(*ap, f_array_lengths_t); + f_string_ranges_t except_in = f_string_ranges_t_initialize; + + if (flag & F_print_format_flag_ignore_range_d) { + except_in = va_arg(*ap, f_string_ranges_t); + } + + if (flag & F_print_format_flag_trim_d) { + *status = private_fl_print_trim_except_in_raw_safely(value.string, 0, value.used, except_at, except_in, stream); + } + else { + *status = f_print_except_in_dynamic_raw_safely(value, except_at, except_in, stream); + } + } + else if (flag & F_print_format_flag_ignore_range_d) { + const f_array_lengths_t except_at = f_array_lengths_t_initialize; + const f_string_ranges_t except_in = va_arg(*ap, f_string_ranges_t); + + if (flag & F_print_format_flag_trim_d) { + *status = private_fl_print_trim_except_in_raw_safely(value.string, 0, value.used, except_at, except_in, stream); + } + else { + *status = f_print_except_in_dynamic_raw_safely(value, except_at, except_in, stream); + } + } + else { + if (flag & F_print_format_flag_trim_d) { + *status = private_fl_print_trim_raw_safely(value.string, value.used, stream); + } + else { + *status = f_print_dynamic_raw_safely(value, stream); + } + } + + return string; + } else if (*string == f_string_ascii_S_s.string[0]) { const f_string_t value = va_arg(*ap, f_string_t); @@ -424,7 +541,7 @@ extern "C" { const f_color_set_t value = va_arg(*ap, f_color_set_t); if (value.before) { - *status = f_print_dynamic(*value.before, stream); + *status = f_print_dynamic_raw(*value.before, stream); } return string; @@ -433,7 +550,7 @@ extern "C" { const f_color_set_t value = va_arg(*ap, f_color_set_t); if (value.after) { - *status = f_print_dynamic(*value.after, stream); + *status = f_print_dynamic_raw(*value.after, stream); } return string; @@ -1049,7 +1166,7 @@ extern "C" { f_status_t status = F_none; - // skip past leading whitespace. + // Skip past leading whitespace. while (i < length) { if (!string[i]) { @@ -1210,28 +1327,10 @@ extern "C" { return F_status_set_error(F_complete_not_utf_stop); } - if (!fputc_unlocked(string[i], stream)) { + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { return F_status_set_error(F_output); } - if (macro_f_utf_byte_width(string[i]) > 1) { - if (!fputc_unlocked(string[i + 1], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 2) { - if (!fputc_unlocked(string[i + 2], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 3) { - if (!fputc_unlocked(string[i + 3], stream)) { - return F_status_set_error(F_output); - } - } - } - } - i += macro_f_utf_byte_width(string[i]); } // while @@ -1262,28 +1361,10 @@ extern "C" { return F_status_set_error(F_utf_not); } - if (!fputc_unlocked(string[i], stream)) { + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { return F_status_set_error(F_output); } - if (macro_f_utf_byte_width(string[i]) > 1) { - if (!fputc_unlocked(string[i + 1], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 2) { - if (!fputc_unlocked(string[i + 2], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 3) { - if (!fputc_unlocked(string[i + 3], stream)) { - return F_status_set_error(F_output); - } - } - } - } - i += macro_f_utf_byte_width(string[i]); } // while @@ -1303,7 +1384,7 @@ extern "C" { f_status_t status = F_none; - // skip past leading whitespace. + // Skip past leading whitespace. while (i < length) { if (!string[i]) { @@ -1431,56 +1512,20 @@ extern "C" { continue; } - if (!fputc_unlocked(string[i], stream)) { + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { return F_status_set_error(F_output); } - if (macro_f_utf_byte_width(string[i]) > 1 && i + 1 < length) { - if (!fputc_unlocked(string[i + 1], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 2 && i + 2 < length) { - if (!fputc_unlocked(string[i + 2], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 3 && i + 3 < length) { - if (!fputc_unlocked(string[i + 3], stream)) { - return F_status_set_error(F_output); - } - } - } - } - i += macro_f_utf_byte_width(string[i]); } // while if (i >= length) break; } - if (!fputc_unlocked(string[i], stream)) { + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { return F_status_set_error(F_output); } - if (macro_f_utf_byte_width(string[i]) > 1 && i + 1 < length) { - if (!fputc_unlocked(string[i + 1], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 2 && i + 2 < length) { - if (!fputc_unlocked(string[i + 2], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 3 && i + 3 < length) { - if (!fputc_unlocked(string[i + 3], stream)) { - return F_status_set_error(F_output); - } - } - } - } - i += macro_f_utf_byte_width(string[i]); } // while @@ -1488,8 +1533,8 @@ extern "C" { } #endif // !defined(_di_fl_print_trim_except_raw_) || !defined(_di_fl_print_trim_except_dynamic_raw_) || !defined(_di_fl_print_trim_except_dynamic_partial_raw_) || !defined(_di_fl_print_trim_except_in_raw_) || !defined(_di_fl_print_trim_except_in_dynamic_raw_) || !defined(_di_fl_print_trim_except_in_dynamic_partial_raw_) -#if !defined(_di_fl_print_trim_except_safely_) || !defined(_di_fl_print_trim_except_dynamic_safely_) || !defined(_di_fl_print_trim_except_dynamic_partial_safely_) || !defined(_di_fl_print_trim_except_in_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_partial_safely_) - f_status_t private_fl_print_trim_except_in_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream) { +#if !defined(_di_fl_print_trim_except_raw_safely_) || !defined(_di_fl_print_trim_except_dynamic_raw_safely_) || !defined(_di_fl_print_trim_except_dynamic_partial_raw_safely_) || !defined(_di_fl_print_trim_except_in_raw_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_raw_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_partial_raw_safely_) + f_status_t private_fl_print_trim_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream) { f_array_length_t i = offset; f_array_length_t j = 0; @@ -1502,7 +1547,7 @@ extern "C" { f_string_t s = 0; - // skip past leading whitespace. + // Skip past leading whitespace. while (i < length) { if (!string[i]) { @@ -1533,7 +1578,7 @@ extern "C" { status = f_utf_is_whitespace(string + i, (length - i) + 1); - // invalid UTF will not be treated as whitespace. + // Invalid UTF will not be treated as whitespace. if (F_status_is_error(status) || status == F_false) break; i += macro_f_utf_byte_width(string[i]); @@ -1603,7 +1648,7 @@ extern "C" { if (F_status_is_error(status) || status == F_false && string[i]) break; } // while - if (j == length || status == F_true || !string[i]) break; + if (j == length || status == F_true) break; // Print all processed whitespace (note: control characters are not whitespace so no checks for this are needed). while (i < j) { @@ -1640,6 +1685,10 @@ extern "C" { } if (!string[i]) { + if (!fputc_unlocked(string[i], stream)) { + return F_status_set_error(F_output); + } + ++i; continue; @@ -1648,27 +1697,9 @@ extern "C" { status = f_utf_is_valid(string + i, length - i); if (status == F_true) { - if (!fputc_unlocked(string[i], stream)) { + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { return F_status_set_error(F_output); } - - if (macro_f_utf_byte_width(string[i]) > 1) { - if (!fputc_unlocked(string[i + 1], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 2) { - if (!fputc_unlocked(string[i + 2], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 3) { - if (!fputc_unlocked(string[i + 3], stream)) { - return F_status_set_error(F_output); - } - } - } - } } else { if (!fwrite_unlocked(f_print_sequence_unknown_s.string, 1, f_print_sequence_unknown_s.used, stream) < f_print_sequence_unknown_s.used) { @@ -1707,44 +1738,32 @@ extern "C" { continue; } - if (!fputc_unlocked(string[i], stream)) { + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { return F_status_set_error(F_output); } - if (macro_f_utf_byte_width(string[i]) > 1) { - if (!fputc_unlocked(string[i + 1], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 2) { - if (!fputc_unlocked(string[i + 2], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 3) { - if (!fputc_unlocked(string[i + 3], stream)) { - return F_status_set_error(F_output); - } - } - } - } - i += macro_f_utf_byte_width(string[i]); } // while return F_none; } -#endif // !defined(_di_fl_print_trim_except_safely_) || !defined(_di_fl_print_trim_except_dynamic_safely_) || !defined(_di_fl_print_trim_except_dynamic_partial_safely_) || !defined(_di_fl_print_trim_except_in_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_partial_safely_) +#endif // !defined(_di_fl_print_trim_except_raw_safely_) || !defined(_di_fl_print_trim_except_dynamic_raw_safely_) || !defined(_di_fl_print_trim_except_dynamic_partial_raw_safely_) || !defined(_di_fl_print_trim_except_in_raw_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_raw_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_partial_raw_safely_) -#if !defined(_di_fl_print_trim_) || !defined(_di_fl_print_trim_dynamic_) || !defined(_di_fl_print_trim_dynamic_partial_) - f_status_t private_fl_print_trim(const f_string_t string, const f_array_length_t length, FILE *stream) { +#if !defined(_di_fl_print_trim_except_safely_) || !defined(_di_fl_print_trim_except_dynamic_safely_) || !defined(_di_fl_print_trim_except_dynamic_partial_safely_) || !defined(_di_fl_print_trim_except_in_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_partial_safely_) + f_status_t private_fl_print_trim_except_in_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream) { - f_array_length_t i = 0; + f_array_length_t i = offset; f_array_length_t j = 0; + f_array_length_t at = 0; + f_array_length_t at2 = 0; + f_array_length_t in = 0; + f_array_length_t in2 = 0; f_status_t status = F_none; - // skip past leading whitespace. + f_string_t s = 0; + + // Skip past leading whitespace. while (i < length) { if (!string[i]) { @@ -1753,36 +1772,61 @@ extern "C" { continue; } - status = f_utf_is_whitespace(string + i, (length - i) + 1); + while (at < except_at.used && except_at.array[at] < i) { + ++at; + } // while - if (F_status_is_error(status)) { - if (F_status_set_fine(status) == F_maybe) { - return F_status_set_error(F_utf); - } + if (at < except_at.used && except_at.array[at] == i) { + ++i; - return status; + continue; } - if (status == F_false) break; + while (in < except_in.used && except_in.array[in].start < i && except_in.array[in].stop < i) { + ++in; + } // while + + if (in < except_in.used && except_in.array[in].start <= i && except_in.array[in].stop >= i) { + i = except_in.array[in].stop + 1; + + continue; + } + + status = f_utf_is_whitespace(string + i, (length - i) + 1); + + // Invalid UTF will not be treated as whitespace. + if (F_status_is_error(status) || status == F_false) break; i += macro_f_utf_byte_width(string[i]); } // while - f_string_t s = 0; - while (i < length) { - status = f_utf_is_whitespace(string + i, (length - i) + 1); + while (at < except_at.used && except_at.array[at] < i) { + ++at; + } // while - if (F_status_is_error(status)) { - if (F_status_set_fine(status) == F_maybe) { - return F_status_set_error(F_utf); - } + if (at < except_at.used && except_at.array[at] == i) { + ++i; - return status; + continue; } - // determine if this is an end of string whitespace that needs to be trimmed. + if (in < except_in.used) { + while (in < except_in.used && except_in.array[in].start < i && except_in.array[in].stop < i) { + ++in; + } // while + + if (in < except_in.used && except_in.array[in].start <= i && except_in.array[in].stop >= i) { + i = except_in.array[in].stop + 1; + + continue; + } + } + + status = f_utf_is_whitespace(string + i, (length - i) + 1); + + // Determine if this is an end of string whitespace that needs to be trimmed. if (status == F_true || !string[i]) { j = i + macro_f_utf_byte_width(string[i]); status = F_none; @@ -1795,54 +1839,217 @@ extern "C" { continue; } - status = f_utf_is_whitespace(string + j, (length - j) + 1); + while (at2 < except_at.used && except_at.array[at2] < j) { + ++at2; + } // while - if (F_status_is_error(status)) { - if (F_status_set_fine(status) == F_maybe) { - return F_status_set_error(F_utf); - } + if (at2 < except_at.used && except_at.array[at2] == j) { + ++j; - return status; + continue; } - if (status == F_false && string[i]) break; - } // while - - if (j == length) break; + while (in2 < except_in.used && except_in.array[in2].start < j && except_in.array[in2].stop < j) { + ++in2; + } // while - // print all processed whitespace (note: control characters are not whitespace so no checks for this are needed). + if (in2 < except_in.used && except_in.array[in2].start <= j && except_in.array[in2].stop >= j) { + j = except_in.array[in2].stop + 1; + + continue; + } + + status = f_utf_is_whitespace(string + j, (length - j) + 1); + + if (F_status_is_error(status) || status == F_false && string[i]) break; + } // while + + if (j == length || status == F_true || !string[i]) break; + + // Print all processed whitespace (note: control characters are not whitespace so no checks for this are needed). while (i < j) { - if (!string[i]) { + while (at < except_at.used && except_at.array[at] < i) { + ++at; + } // while + + if (at < except_at.used && except_at.array[at] == i) { ++i; continue; } + while (in < except_in.used && except_in.array[in].start < i && except_in.array[in].stop < i) { + ++in; + } // while + + if (in < except_in.used && except_in.array[in].start <= i && except_in.array[in].stop >= i) { + i = except_in.array[in].stop + 1; + + continue; + } + if (i + macro_f_utf_byte_width(string[i]) >= length) { - return F_status_set_error(F_complete_not_utf_stop); + if (!fwrite_unlocked(f_print_sequence_unknown_s.string, 1, f_print_sequence_unknown_s.used, stream) < f_print_sequence_unknown_s.used) { + return F_status_set_error(F_output); + } + + i = length; + status = F_none; + + break; } - if (!fputc_unlocked(string[i], stream)) { - return F_status_set_error(F_output); + if (!string[i]) { + ++i; + + continue; } - if (macro_f_utf_byte_width(string[i]) > 1) { - if (!fputc_unlocked(string[i + 1], stream)) { + status = f_utf_is_valid(string + i, length - i); + + if (status == F_true) { + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { + return F_status_set_error(F_output); + } + } + else { + if (!fwrite_unlocked(f_print_sequence_unknown_s.string, 1, f_print_sequence_unknown_s.used, stream) < f_print_sequence_unknown_s.used) { return F_status_set_error(F_output); } + } - if (macro_f_utf_byte_width(string[i]) > 2) { - if (!fputc_unlocked(string[i + 2], stream)) { - return F_status_set_error(F_output); - } + i += macro_f_utf_byte_width(string[i]); + } // while - if (macro_f_utf_byte_width(string[i]) > 3) { - if (!fputc_unlocked(string[i + 3], stream)) { - return F_status_set_error(F_output); - } - } + if (i >= length) break; + } + + status = f_utf_is_valid(string + i, length - i); + + if (F_status_is_error(status)) { + if (F_status_set_fine(status) == F_maybe) { + return F_status_set_error(F_utf); + } + + return status; + } + + if (status == F_false || i + macro_f_utf_byte_width(string[i]) >= length) { + if (!fwrite_unlocked(f_print_sequence_unknown_s.string, 1, f_print_sequence_unknown_s.used, stream) < f_print_sequence_unknown_s.used) { + return F_status_set_error(F_output); + } + + if (status == F_false) { + i += macro_f_utf_byte_width(string[i]); + } + else { + i = length; + } + + continue; + } + + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { + return F_status_set_error(F_output); + } + + i += macro_f_utf_byte_width(string[i]); + } // while + + return F_none; + } +#endif // !defined(_di_fl_print_trim_except_safely_) || !defined(_di_fl_print_trim_except_dynamic_safely_) || !defined(_di_fl_print_trim_except_dynamic_partial_safely_) || !defined(_di_fl_print_trim_except_in_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_partial_safely_) + +#if !defined(_di_fl_print_trim_) || !defined(_di_fl_print_trim_dynamic_) || !defined(_di_fl_print_trim_dynamic_partial_) + f_status_t private_fl_print_trim(const f_string_t string, const f_array_length_t length, FILE *stream) { + + f_array_length_t i = 0; + f_array_length_t j = 0; + + f_status_t status = F_none; + + // Skip past leading whitespace. + while (i < length) { + + if (!string[i]) { + ++i; + + continue; + } + + status = f_utf_is_whitespace(string + i, (length - i) + 1); + + if (F_status_is_error(status)) { + if (F_status_set_fine(status) == F_maybe) { + return F_status_set_error(F_utf); + } + + return status; + } + + if (status == F_false) break; + + i += macro_f_utf_byte_width(string[i]); + } // while + + f_string_t s = 0; + + while (i < length) { + + status = f_utf_is_whitespace(string + i, (length - i) + 1); + + if (F_status_is_error(status)) { + if (F_status_set_fine(status) == F_maybe) { + return F_status_set_error(F_utf); + } + + return status; + } + + // Determine if this is an end of string whitespace that needs to be trimmed. + if (status == F_true || !string[i]) { + j = i + macro_f_utf_byte_width(string[i]); + status = F_none; + + while (j < length) { + + if (!string[j]) { + ++j; + + continue; + } + + status = f_utf_is_whitespace(string + j, (length - j) + 1); + + if (F_status_is_error(status)) { + if (F_status_set_fine(status) == F_maybe) { + return F_status_set_error(F_utf); } + + return status; + } + + if (status == F_false && string[i]) break; + } // while + + if (j == length) break; + + // Print all processed whitespace (note: control characters are not whitespace so no checks for this are needed). + while (i < j) { + + if (!string[i]) { + ++i; + + continue; + } + + if (i + macro_f_utf_byte_width(string[i]) >= length) { + return F_status_set_error(F_complete_not_utf_stop); + } + + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { + return F_status_set_error(F_output); } i += macro_f_utf_byte_width(string[i]); @@ -1875,29 +2082,10 @@ extern "C" { return F_status_set_error(F_utf_not); } - // @todo change logic to use single fwrite() based on byte width rather than multiple fputc... - if (!fputc_unlocked(string[i], stream)) { + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { return F_status_set_error(F_output); } - if (macro_f_utf_byte_width(string[i]) > 1) { - if (!fputc_unlocked(string[i + 1], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 2) { - if (!fputc_unlocked(string[i + 2], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 3) { - if (!fputc_unlocked(string[i + 3], stream)) { - return F_status_set_error(F_output); - } - } - } - } - i += macro_f_utf_byte_width(string[i]); } // while @@ -1913,7 +2101,7 @@ extern "C" { f_status_t status = F_none; - // skip past leading whitespace. + // Skip past leading whitespace. while (i < length) { if (!string[i]) { @@ -1924,7 +2112,7 @@ extern "C" { status = f_utf_is_whitespace(string + i, (length - i) + 1); - // consider invalid data not-whitespace. + // Consider invalid data not-whitespace. if (F_status_is_error(status) || status == F_false) break; i += macro_f_utf_byte_width(string[i]); @@ -1936,7 +2124,7 @@ extern "C" { status = f_utf_is_whitespace(string + i, (length - i) + 1); - // determine if this is an end of string whitespace that needs to be trimmed. + // Determine if this is an end of string whitespace that needs to be trimmed. if (status == F_true || !string[i]) { j = i + macro_f_utf_byte_width(string[i]); status = F_none; @@ -1956,28 +2144,115 @@ extern "C" { if (j == length) break; - // print all processed whitespace (note: control characters are not whitespace so no checks for this are needed). + // Print all processed whitespace (note: control characters are not whitespace so no checks for this are needed). while (i < j) { - if (!fputc_unlocked(string[i], stream)) { + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { return F_status_set_error(F_output); } - if (macro_f_utf_byte_width(string[i]) > 1 && i + 1 < length) { - if (!fputc_unlocked(string[i + 1], stream)) { + i += macro_f_utf_byte_width(string[i]); + } // while + + if (i >= length) break; + } + + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { + return F_status_set_error(F_output); + } + + i += macro_f_utf_byte_width(string[i]); + } // while + + return F_none; + } +#endif // !defined(_di_fl_print_trim_raw_) || !defined(_di_fl_print_trim_dynamic_raw_) || !defined(_di_fl_print_trim_dynamic_partial_raw_) + +#if !defined(_di_fl_print_trim_raw_safely_) || !defined(_di_fl_print_trim_dynamic_raw_safely_) || !defined(_di_fl_print_trim_dynamic_partial_raw_safely_) + f_status_t private_fl_print_trim_raw_safely(const f_string_t string, const f_array_length_t length, FILE *stream) { + + f_array_length_t i = 0; + f_array_length_t j = 0; + + f_status_t status = F_none; + + f_string_t s = 0; + + // Skip past leading whitespace. + while (i < length) { + + if (!string[i]) { + ++i; + + continue; + } + + status = f_utf_is_whitespace(string + i, (length - i) + 1); + + // Invalid UTF will not be treated as whitespace. + if (F_status_is_error(status) || status == F_false) break; + + i += macro_f_utf_byte_width(string[i]); + } // while + + while (i < length) { + + status = f_utf_is_whitespace(string + i, (length - i) + 1); + + // Determine if this is an end of string whitespace that needs to be trimmed. + if (status == F_true || !string[i]) { + j = i + macro_f_utf_byte_width(string[i]); + status = F_none; + + while (j < length) { + + if (!string[j]) { + ++j; + + continue; + } + + status = f_utf_is_whitespace(string + j, (length - j) + 1); + + if (F_status_is_error(status) || status == F_false && string[i]) break; + } // while + + if (j == length || status == F_true) break; + + // Print all processed whitespace (note: control characters are not whitespace so no checks for this are needed). + while (i < j) { + + if (i + macro_f_utf_byte_width(string[i]) >= length) { + if (!fwrite_unlocked(f_print_sequence_unknown_s.string, 1, f_print_sequence_unknown_s.used, stream) < f_print_sequence_unknown_s.used) { return F_status_set_error(F_output); } - if (macro_f_utf_byte_width(string[i]) > 2 && i + 2 < length) { - if (!fputc_unlocked(string[i + 2], stream)) { - return F_status_set_error(F_output); - } + i = length; + status = F_none; - if (macro_f_utf_byte_width(string[i]) > 3 && i + 3 < length) { - if (!fputc_unlocked(string[i + 3], stream)) { - return F_status_set_error(F_output); - } - } + break; + } + + if (!string[i]) { + if (!fputc_unlocked(string[i], stream)) { + return F_status_set_error(F_output); + } + + ++i; + + continue; + } + + status = f_utf_is_valid(string + i, length - i); + + if (status == F_true) { + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { + return F_status_set_error(F_output); + } + } + else { + if (!fwrite_unlocked(f_print_sequence_unknown_s.string, 1, f_print_sequence_unknown_s.used, stream) < f_print_sequence_unknown_s.used) { + return F_status_set_error(F_output); } } @@ -1987,26 +2262,33 @@ extern "C" { if (i >= length) break; } - if (!fputc_unlocked(string[i], stream)) { - return F_status_set_error(F_output); + status = f_utf_is_valid(string + i, length - i); + + if (F_status_is_error(status)) { + if (F_status_set_fine(status) == F_maybe) { + return F_status_set_error(F_utf); + } + + return status; } - if (macro_f_utf_byte_width(string[i]) > 1 && i + 1 < length) { - if (!fputc_unlocked(string[i + 1], stream)) { + if (status == F_false || i + macro_f_utf_byte_width(string[i]) >= length) { + if (!fwrite_unlocked(f_print_sequence_unknown_s.string, 1, f_print_sequence_unknown_s.used, stream) < f_print_sequence_unknown_s.used) { return F_status_set_error(F_output); } - if (macro_f_utf_byte_width(string[i]) > 2 && i + 2 < length) { - if (!fputc_unlocked(string[i + 2], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 3 && i + 3 < length) { - if (!fputc_unlocked(string[i + 3], stream)) { - return F_status_set_error(F_output); - } - } + if (status == F_false) { + i += macro_f_utf_byte_width(string[i]); } + else { + i = length; + } + + continue; + } + + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { + return F_status_set_error(F_output); } i += macro_f_utf_byte_width(string[i]); @@ -2014,7 +2296,7 @@ extern "C" { return F_none; } -#endif // !defined(_di_fl_print_trim_raw_) || !defined(_di_fl_print_trim_dynamic_raw_) || !defined(_di_fl_print_trim_dynamic_partial_raw_) +#endif // !defined(_di_fl_print_trim_raw_safely_) || !defined(_di_fl_print_trim_dynamic_raw_safely_) || !defined(_di_fl_print_trim_dynamic_partial_raw_safely_) #if !defined(_di_fl_print_trim_safely_) || !defined(_di_fl_print_trim_dynamic_safely_) || !defined(_di_fl_print_trim_dynamic_partial_safely_) f_status_t private_fl_print_trim_safely(const f_string_t string, const f_array_length_t length, FILE *stream) { @@ -2026,7 +2308,7 @@ extern "C" { f_string_t s = 0; - // skip past leading whitespace. + // Skip past leading whitespace. while (i < length) { if (!string[i]) { @@ -2037,7 +2319,7 @@ extern "C" { status = f_utf_is_whitespace(string + i, (length - i) + 1); - // invalid UTF will not be treated as whitespace. + // Invalid UTF will not be treated as whitespace. if (F_status_is_error(status) || status == F_false) break; i += macro_f_utf_byte_width(string[i]); @@ -2047,7 +2329,7 @@ extern "C" { status = f_utf_is_whitespace(string + i, (length - i) + 1); - // determine if this is an end of string whitespace that needs to be trimmed. + // Determine if this is an end of string whitespace that needs to be trimmed. if (status == F_true || !string[i]) { j = i + macro_f_utf_byte_width(string[i]); status = F_none; @@ -2067,7 +2349,7 @@ extern "C" { if (j == length || status == F_true || !string[i]) break; - // print all processed whitespace (note: control characters are not whitespace so no checks for this are needed). + // Print all processed whitespace (note: control characters are not whitespace so no checks for this are needed). while (i < j) { if (i + macro_f_utf_byte_width(string[i]) >= length) { @@ -2090,27 +2372,9 @@ extern "C" { status = f_utf_is_valid(string + i, length - i); if (status == F_true) { - if (!fputc_unlocked(string[i], stream)) { + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { return F_status_set_error(F_output); } - - if (macro_f_utf_byte_width(string[i]) > 1) { - if (!fputc_unlocked(string[i + 1], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 2) { - if (!fputc_unlocked(string[i + 2], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 3) { - if (!fputc_unlocked(string[i + 3], stream)) { - return F_status_set_error(F_output); - } - } - } - } } else { if (!fwrite_unlocked(f_print_sequence_unknown_s.string, 1, f_print_sequence_unknown_s.used, stream) < f_print_sequence_unknown_s.used) { @@ -2149,28 +2413,10 @@ extern "C" { continue; } - if (!fputc_unlocked(string[i], stream)) { + if (fwrite_unlocked(string + i, 1, macro_f_utf_byte_width(string[i]), stream) < macro_f_utf_byte_width(string[i])) { return F_status_set_error(F_output); } - if (macro_f_utf_byte_width(string[i]) > 1) { - if (!fputc_unlocked(string[i + 1], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 2) { - if (!fputc_unlocked(string[i + 2], stream)) { - return F_status_set_error(F_output); - } - - if (macro_f_utf_byte_width(string[i]) > 3) { - if (!fputc_unlocked(string[i + 3], stream)) { - return F_status_set_error(F_output); - } - } - } - } - i += macro_f_utf_byte_width(string[i]); } // while diff --git a/level_1/fl_print/c/private-print.h b/level_1/fl_print/c/private-print.h index a64c04f..c7b9b23 100644 --- a/level_1/fl_print/c/private-print.h +++ b/level_1/fl_print/c/private-print.h @@ -190,6 +190,51 @@ extern "C" { #endif // !defined(_di_fl_print_trim_except_raw_) || !defined(_di_fl_print_trim_except_dynamic_raw_) || !defined(_di_fl_print_trim_except_dynamic_partial_raw_) || !defined(_di_fl_print_trim_except_in_raw_) || !defined(_di_fl_print_trim_except_in_dynamic_raw_) || !defined(_di_fl_print_trim_except_in_dynamic_partial_raw_) /** + * Private implementation of fl_print_trim_except_raw_safely(). + * + * Intended to be shared to each of the different implementation variations. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param length + * The total number of characters to print. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param stream + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not on success but there is nothing to print. + * + * F_output (with error bit) on failure to print to the output file. + * F_parameter (with error bit) if a parameter is invalid. + * F_utf_not (with error bit) if character is an invalid UTF-8 character. + * + * Errors (with error bit) from: f_utf_is_valid() + * Errors (with error bit) from: f_utf_is_whitespace(). + * + * @see fputc_unlocked() + * @see fwrite_unlocked() + * + * @see fl_print_trim_except_raw_safely() + * @see fl_print_trim_except_dynamic_raw_safely() + * @see fl_print_trim_except_dynamic_partial_raw_safely() + * @see fl_print_trim_except_in_raw_safely() + * @see fl_print_trim_except_in_dynamic_raw_safely() + * @see fl_print_trim_except_in_dynamic_partial_raw_safely() + */ +#if !defined(_di_fl_print_trim_except_raw_safely_) || !defined(_di_fl_print_trim_except_dynamic_raw_safely_) || !defined(_di_fl_print_trim_except_dynamic_partial_raw_safely_) || !defined(_di_fl_print_trim_except_in_raw_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_raw_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_partial_raw_safely_) + extern f_status_t private_fl_print_trim_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *stream) F_attribute_visibility_internal_d; +#endif // !defined(_di_fl_print_trim_except_raw_safely_) || !defined(_di_fl_print_trim_except_dynamic_raw_safely_) || !defined(_di_fl_print_trim_except_dynamic_partial_raw_safely_) || !defined(_di_fl_print_trim_except_in_raw_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_raw_safely_) || !defined(_di_fl_print_trim_except_in_dynamic_partial_raw_safely_) + +/** * Private implementation of fl_print_trim_except_safely(). * * Intended to be shared to each of the different implementation variations. @@ -303,6 +348,40 @@ extern "C" { #endif // !defined(_di_fl_print_trim_raw_) || !defined(_di_fl_print_trim_dynamic_raw_) || !defined(_di_fl_print_trim_dynamic_partial_raw_) /** + * Private implementation of fl_print_trim_raw_safely(). + * + * Intended to be shared to each of the different implementation variations. + * + * @param string + * The string to output. + * @param length + * The total number of characters to print. + * @param stream + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * F_none on success. + * F_data_not on success but there is nothing to print. + * + * F_output (with error bit) on failure to print to the output file. + * F_parameter (with error bit) if a parameter is invalid. + * F_utf_not (with error bit) if character is an invalid UTF-8 character. + * + * Errors (with error bit) from: f_utf_is_valid() + * Errors (with error bit) from: f_utf_is_whitespace(). + * + * @see fputc_unlocked() + * @see fwrite_unlocked() + * + * @see fl_print_trim_raw_safely() + * @see fl_print_trim_dynamic_raw_safely() + * @see fl_print_trim_dynamic_partial_raw_safely() + */ +#if !defined(_di_fl_print_trim_raw_safely_) || !defined(_di_fl_print_trim_dynamic_raw_safely_) || !defined(_di_fl_print_trim_dynamic_partial_raw_safely_) + extern f_status_t private_fl_print_trim_raw_safely(const f_string_t string, const f_array_length_t length, FILE *stream) F_attribute_visibility_internal_d; +#endif // !defined(_di_fl_print_trim_raw_safely_) || !defined(_di_fl_print_trim_dynamic_raw_safely_) || !defined(_di_fl_print_trim_dynamic_partial_raw_safely_) + +/** * Private implementation of fl_print_trim_safely(). * * Intended to be shared to each of the different implementation variations. diff --git a/level_1/fl_string/c/private-string.c b/level_1/fl_string/c/private-string.c index c2f4c47..c4f24bf 100644 --- a/level_1/fl_string/c/private-string.c +++ b/level_1/fl_string/c/private-string.c @@ -500,7 +500,7 @@ extern "C" { uint8_t width = 0; - // skip past leading whitespace. + // Skip past leading whitespace. for (; *start <= *stop; *start += width) { // skip past NULL. diff --git a/level_1/fl_utf/c/private-utf.c b/level_1/fl_utf/c/private-utf.c index 3b42bf8..84c6669 100644 --- a/level_1/fl_utf/c/private-utf.c +++ b/level_1/fl_utf/c/private-utf.c @@ -175,7 +175,7 @@ extern "C" { f_status_t status = F_none; - // skip past leading whitespace. + // Skip past leading whitespace. for (; *start <= *stop; ++(*start)) { // skip past NULL. diff --git a/level_2/fll_error/c/error.c b/level_2/fll_error/c/error.c index 96d8344..a07fc36 100644 --- a/level_2/fll_error/c/error.c +++ b/level_2/fll_error/c/error.c @@ -34,9 +34,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QAccess denied while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QAccess denied while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -48,9 +48,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QCurrent user is not allowed to use the given group while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QCurrent user is not allowed to use the given group while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -62,9 +62,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QCurrent user is not allowed to use the given owner while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QCurrent user is not allowed to use the given owner while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -76,9 +76,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QInvalid directory while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QInvalid directory while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -90,9 +90,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[', not empty.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[', not empty.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -104,9 +104,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QFailed to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QFailed to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -118,9 +118,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[', failed to close.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[', failed to close.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -132,9 +132,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[', is closed.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[', is closed.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -146,9 +146,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QFile descriptor error while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QFile descriptor error while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -160,9 +160,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QMax file descriptors reached while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QMax file descriptors reached while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -174,9 +174,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QInvalid file descriptor while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QInvalid file descriptor while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -188,9 +188,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[', %Q is empty.%]%q", print.to.stream, print.context, type_name, print.context, f_string_eol_s); + fl_print_format("%[', %Q is empty.%]%r", print.to.stream, print.context, type_name, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -202,9 +202,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[', flush failed.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[', flush failed.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -216,9 +216,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[', found.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[', found.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -230,9 +230,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[', could not find.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[', could not find.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -244,9 +244,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[', already open.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[', already open.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -258,9 +258,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QMax open files reached while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QMax open files reached while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -272,9 +272,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QOverflow while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QOverflow while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -286,9 +286,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[', purge failed.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[', purge failed.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -300,9 +300,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QRead failed while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QRead failed while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -314,9 +314,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QSeek failed while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QSeek failed while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -328,9 +328,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QStat failed while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QStat failed while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -342,9 +342,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QSynchronize failed while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QSynchronize failed while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -356,9 +356,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QFailed to %Q %Q, the path '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QFailed to %Q %Q, the path '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[' is an unknown file type.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[' is an unknown file type.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -370,9 +370,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUTF failure while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUTF failure while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -384,9 +384,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QInvalid UTF while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QInvalid UTF while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -398,9 +398,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnderflow while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUnderflow while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -412,9 +412,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QFailed to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QFailed to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[', write failure.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[', write failure.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -426,9 +426,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QLoop while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QLoop while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -440,9 +440,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QInvalid %Q name '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, type_name, print.context); + fl_print_format("%r%[%QInvalid %Q name '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -454,9 +454,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QNumber overflow while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QNumber overflow while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -468,9 +468,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QNumber underflow while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QNumber underflow while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -482,13 +482,13 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QInvalid parameter", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QInvalid parameter", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); fl_print_format(" for the %Q '%]", print.to.stream, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -500,9 +500,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QProhibited by system while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QProhibited by system while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -514,9 +514,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[', %Q is read only.%]%q", print.to.stream, print.context, type_name, print.context, f_string_eol_s); + fl_print_format("%[', %Q is read only.%]%r", print.to.stream, print.context, type_name, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -528,9 +528,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QUnable to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[', %Q is write only.%]%q", print.to.stream, print.context, type_name, print.context, f_string_eol_s); + fl_print_format("%[', %Q is write only.%]%r", print.to.stream, print.context, type_name, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -543,9 +543,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QInvalid or missing directory in path while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QInvalid or missing directory in path while trying to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -557,9 +557,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QFailed to %Q %Q, the path '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QFailed to %Q %Q, the path '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[' is a directory.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[' is a directory.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -572,9 +572,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QFailed to %Q %Q, the path '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QFailed to %Q %Q, the path '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[' is a file.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[' is a file.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -588,9 +588,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QFailed to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QFailed to %Q %Q '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[' due to an invalid directory in the path.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[' due to an invalid directory in the path.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -602,9 +602,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QFailed to %Q %Q, the path '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); + fl_print_format("%r%[%QFailed to %Q %Q, the path '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, operation, type_name, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, name, print.notable); - fl_print_format("%[' is a %Q.%]%q", print.to.stream, print.context, status == F_file_type_pipe ? fll_error_file_type_pipe_s : fll_error_file_type_socket_s, print.context, f_string_eol_s); + fl_print_format("%[' is a %Q.%]%r", print.to.stream, print.context, status == F_file_type_pipe ? fll_error_file_type_pipe_s : fll_error_file_type_socket_s, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -624,9 +624,9 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QThe argument for the parameter '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); + fl_print_format("%r%[%QThe argument for the parameter '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, parameter, print.notable); - fl_print_format("%[' must not be an empty string.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[' must not be an empty string.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -638,11 +638,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QThe argument '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); + fl_print_format("%r%[%QThe argument '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, argument, print.notable); fl_print_format("%[' is not a valid number for the parameter '%]", print.to.stream, print.context, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, parameter, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -654,11 +654,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QThe argument '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); + fl_print_format("%r%[%QThe argument '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, argument, print.notable); fl_print_format("%[' is negative, which is not allowed for the parameter '%]", print.to.stream, print.context, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, parameter, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -670,11 +670,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QThe argument '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); + fl_print_format("%r%[%QThe argument '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, argument, print.notable); fl_print_format("%[' is too large for the parameter '%]", print.to.stream, print.context, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, parameter, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -686,11 +686,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QThe argument '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); + fl_print_format("%r%[%QThe argument '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, argument, print.notable); fl_print_format("%[' is positive, which is not allowed for the parameter '%]", print.to.stream, print.context, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, parameter, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -702,11 +702,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QThe argument '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); + fl_print_format("%r%[%QThe argument '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, argument, print.notable); fl_print_format("%[' is too small for the parameter '%]", print.to.stream, print.context, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, parameter, print.notable); - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); funlockfile(print.to.stream); } diff --git a/level_2/fll_error/c/private-error.c b/level_2/fll_error/c/private-error.c index 2db8b62..4dcaa44 100644 --- a/level_2/fll_error/c/private-error.c +++ b/level_2/fll_error/c/private-error.c @@ -12,11 +12,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QAccess denied", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QAccess denied", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -28,11 +28,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QMaximum array length reached", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QMaximum array length reached", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -44,11 +44,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QMaximum buffer length reached", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QMaximum buffer length reached", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -60,11 +60,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QFile not found", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QFile not found", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -76,11 +76,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QUnable to allocate memory", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QUnable to allocate memory", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -92,11 +92,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QInvalid parameter", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QInvalid parameter", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -108,11 +108,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QMaximum string length reached", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QMaximum string length reached", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -124,11 +124,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QInvalid UTF-8 character found", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QInvalid UTF-8 character found", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -140,11 +140,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QInvalid UTF-8 character (Fragment) found", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QInvalid UTF-8 character (Fragment) found", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -156,18 +156,18 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QInvalid (incomplete) UTF-8 character found", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QInvalid (incomplete) UTF-8 character found", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); if (status == F_complete_not_utf_eos) { - fl_print_format(" at the end of string.%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(" at the end of string.%]%r", print.to.stream, print.context, f_string_eol_s); } else if (status == F_complete_not_utf_stop) { - fl_print_format(" at the stop point of string.%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(" at the stop point of string.%]%r", print.to.stream, print.context, f_string_eol_s); } else { - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); } funlockfile(print.to.stream); @@ -180,11 +180,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QFailure", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QFailure", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -196,11 +196,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QSignal received", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QSignal received", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -212,11 +212,11 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%QInterrupt signal received", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QInterrupt signal received", print.to.stream, f_string_eol_s, print.context, print.prefix); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } @@ -228,12 +228,12 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { flockfile(print.to.stream); - fl_print_format("%q%[%Q(%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); + fl_print_format("%r%[%Q(%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); fl_print_format("%[%ui%]%[)", print.to.stream, print.notable, status, print.notable, print.context); private_fll_error_print_function(print, function); - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); funlockfile(print.to.stream); } diff --git a/level_2/fll_print/c/print.c b/level_2/fll_print/c/print.c index 13b7720..875bccf 100644 --- a/level_2/fll_print/c/print.c +++ b/level_2/fll_print/c/print.c @@ -82,6 +82,19 @@ extern "C" { } #endif // _di_fll_print_dynamic_partial_raw_ +#ifndef _di_fll_print_dynamic_partial_raw_safely_ + f_status_t fll_print_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *output) { + + flockfile(output); + + const f_status_t status = f_print_dynamic_partial_raw_safely(buffer, range, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_dynamic_partial_raw_safely_ + #ifndef _di_fll_print_dynamic_partial_safely_ f_status_t fll_print_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *output) { @@ -108,6 +121,19 @@ extern "C" { } #endif // _di_fll_print_dynamic_raw_ +#ifndef _di_fll_print_dynamic_raw_safely_ + f_status_t fll_print_dynamic_raw_safely(const f_string_static_t buffer, FILE *output) { + + flockfile(output); + + const f_status_t status = f_print_dynamic_raw_safely(buffer, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_dynamic_raw_safely_ + #ifndef _di_fll_print_dynamic_safely_ f_status_t fll_print_dynamic_safely(const f_string_static_t buffer, FILE *output) { @@ -173,6 +199,19 @@ extern "C" { } #endif // _di_fll_print_except_dynamic_partial_raw_ +#ifndef _di_fll_print_except_dynamic_partial_raw_safely_ + f_status_t fll_print_except_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except, FILE *output) { + + flockfile(output); + + const f_status_t status = f_print_except_dynamic_partial_raw_safely(buffer, range, except, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_except_dynamic_partial_raw_safely_ + #ifndef _di_fll_print_except_dynamic_partial_safely_ f_status_t fll_print_except_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except, FILE *output) { @@ -199,6 +238,19 @@ extern "C" { } #endif // _di_fll_print_except_dynamic_raw_ +#ifndef _di_fll_print_except_dynamic_raw_safely_ + f_status_t fll_print_except_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except, FILE *output) { + + flockfile(output); + + const f_status_t status = f_print_except_dynamic_raw_safely(buffer, except, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_except_dynamic_raw_safely_ + #ifndef _di_fll_print_except_dynamic_safely_ f_status_t fll_print_except_dynamic_safely(const f_string_static_t buffer, const f_array_lengths_t except, FILE *output) { @@ -225,6 +277,19 @@ extern "C" { } #endif // _di_fll_print_except_raw_ +#ifndef _di_fll_print_except_raw_safely_ + f_status_t fll_print_except_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except, FILE *output) { + + flockfile(output); + + const f_status_t status = f_print_except_raw_safely(string, offset, length, except, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_except_raw_safely_ + #ifndef _di_fll_print_except_safely_ f_status_t fll_print_except_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except, FILE *output) { @@ -290,6 +355,19 @@ extern "C" { } #endif // _di_fll_print_except_in_dynamic_partial_raw_ +#ifndef _di_fll_print_except_in_dynamic_partial_raw_safely_ + f_status_t fll_print_except_in_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { + + flockfile(output); + + const f_status_t status = f_print_except_in_dynamic_partial_raw_safely(buffer, range, except_at, except_in, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_except_in_dynamic_partial_raw_safely_ + #ifndef _di_fll_print_except_in_dynamic_partial_safely_ f_status_t fll_print_except_in_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { @@ -316,6 +394,19 @@ extern "C" { } #endif // _di_fll_print_except_in_dynamic_raw_ +#ifndef _di_fll_print_except_in_dynamic_raw_safely_ + f_status_t fll_print_except_in_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { + + flockfile(output); + + const f_status_t status = f_print_except_in_dynamic_raw_safely(buffer, except_at, except_in, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_except_in_dynamic_raw_safely_ + #ifndef _di_fll_print_except_in_dynamic_safely_ f_status_t fll_print_except_in_dynamic_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { @@ -342,6 +433,19 @@ extern "C" { } #endif // _di_fll_print_except_in_raw_ +#ifndef _di_fll_print_except_in_raw_safely_ + f_status_t fll_print_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { + + flockfile(output); + + const f_status_t status = f_print_except_in_raw_safely(string, offset, length, except_at, except_in, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_except_in_raw_safely_ + #ifndef _di_fll_print_except_in_safely_ f_status_t fll_print_except_in_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { @@ -400,6 +504,19 @@ extern "C" { } #endif // _di_fll_print_raw_ +#ifndef _di_fll_print_raw_safely_ + f_status_t fll_print_raw_safely(const f_string_t string, const f_array_length_t length, FILE *output) { + + flockfile(output); + + const f_status_t status = f_print_raw_safely(string, length, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_raw_safely_ + #ifndef _di_fll_print_raw_terminated_ f_status_t fll_print_raw_terminated(const f_string_t string, FILE *output) { @@ -478,6 +595,19 @@ extern "C" { } #endif // _di_fll_print_trim_raw_ +#ifndef _di_fll_print_trim_raw_safely_ + f_status_t fll_print_trim_raw_safely(const f_string_t string, const f_array_length_t length, FILE *output) { + + flockfile(output); + + const f_status_t status = fl_print_trim_raw_safely(string, length, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_trim_raw_safely_ + #ifndef _di_fll_print_trim_safely_ f_status_t fll_print_trim_safely(const f_string_t string, const f_array_length_t length, FILE *output) { @@ -517,6 +647,19 @@ extern "C" { } #endif // _di_fll_print_trim_dynamic_raw_ +#ifndef _di_fll_print_trim_dynamic_raw_safely_ + f_status_t fll_print_trim_dynamic_raw_safely(const f_string_static_t buffer, FILE *output) { + + flockfile(output); + + const f_status_t status = fl_print_trim_dynamic_raw_safely(buffer, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_trim_dynamic_raw_safely_ + #ifndef _di_fll_print_trim_dynamic_safely_ f_status_t fll_print_trim_dynamic_safely(const f_string_static_t buffer, FILE *output) { @@ -556,6 +699,19 @@ extern "C" { } #endif // _di_fll_print_trim_dynamic_partial_raw_ +#ifndef _di_fll_print_trim_dynamic_partial_raw_safely_ + f_status_t fll_print_trim_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *output) { + + flockfile(output); + + const f_status_t status = fl_print_trim_dynamic_partial_raw_safely(buffer, range, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_trim_dynamic_partial_raw_safely_ + #ifndef _di_fll_print_trim_dynamic_partial_safely_ f_status_t fll_print_trim_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *output) { @@ -595,6 +751,19 @@ extern "C" { } #endif // _di_fll_print_trim_except_raw_ +#ifndef _di_fll_print_trim_except_raw_safely_ + f_status_t fll_print_trim_except_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except, FILE *output) { + + flockfile(output); + + const f_status_t status = fl_print_trim_except_raw_safely(string, offset, length, except, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_trim_except_raw_safely_ + #ifndef _di_fll_print_trim_except_safely_ f_status_t fll_print_trim_except_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except, FILE *output) { @@ -634,6 +803,19 @@ extern "C" { } #endif // _di_fll_print_trim_except_dynamic_raw_ +#ifndef _di_fll_print_trim_except_dynamic_raw_safely_ + f_status_t fll_print_trim_except_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except, FILE *output) { + + flockfile(output); + + const f_status_t status = fl_print_trim_except_dynamic_raw_safely(buffer, except, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_trim_except_dynamic_raw_safely_ + #ifndef _di_fll_print_trim_except_dynamic_safely_ f_status_t fll_print_trim_except_dynamic_safely(const f_string_static_t buffer, const f_array_lengths_t except, FILE *output) { @@ -673,6 +855,19 @@ extern "C" { } #endif // _di_fll_print_trim_except_in_raw_ +#ifndef _di_fll_print_trim_except_in_raw_safely_ + f_status_t fll_print_trim_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { + + flockfile(output); + + const f_status_t status = fl_print_trim_except_in_raw_safely(string, offset, length, except_at, except_in, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_trim_except_in_raw_safely_ + #ifndef _di_fll_print_trim_except_in_safely_ f_status_t fll_print_trim_except_in_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { @@ -712,6 +907,19 @@ extern "C" { } #endif // _di_fll_print_trim_except_in_dynamic_raw_ +#ifndef _di_fll_print_trim_except_in_dynamic_raw_safely_ + f_status_t fll_print_trim_except_in_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { + + flockfile(output); + + const f_status_t status = fl_print_trim_except_in_dynamic_raw_safely(buffer, except_at, except_in, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_trim_except_in_dynamic_raw_safely_ + #ifndef _di_fll_print_trim_except_in_dynamic_safely_ f_status_t fll_print_trim_except_in_dynamic_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { @@ -751,6 +959,19 @@ extern "C" { } #endif // _di_fll_print_trim_except_in_dynamic_partial_raw_ +#ifndef _di_fll_print_trim_except_in_dynamic_partial_raw_safely_ + f_status_t fll_print_trim_except_in_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { + + flockfile(output); + + const f_status_t status = fl_print_trim_except_in_dynamic_partial_raw_safely(buffer, range, except_at, except_in, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_trim_except_in_dynamic_partial_raw_safely_ + #ifndef _di_fll_print_trim_except_in_dynamic_partial_safely_ f_status_t fll_print_trim_except_in_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output) { @@ -790,6 +1011,19 @@ extern "C" { } #endif // _di_fll_print_trim_except_dynamic_partial_raw_ +#ifndef _di_fll_print_trim_except_dynamic_partial_raw_safely_ + f_status_t fll_print_trim_except_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except, FILE *output) { + + flockfile(output); + + const f_status_t status = fl_print_trim_except_dynamic_partial_raw_safely(buffer, range, except, output); + + funlockfile(output); + + return status; + } +#endif // _di_fll_print_trim_except_dynamic_partial_raw_safely_ + #ifndef _di_fll_print_trim_except_dynamic_partial_safely_ f_status_t fll_print_trim_except_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except, FILE *output) { diff --git a/level_2/fll_print/c/print.h b/level_2/fll_print/c/print.h index 0b328ad..3f71002 100644 --- a/level_2/fll_print/c/print.h +++ b/level_2/fll_print/c/print.h @@ -168,6 +168,30 @@ extern "C" { #endif // _di_fll_print_dynamic_partial_raw_ /** + * This is a variation of f_print_dynamic_partial_raw_safely() that uses locking. + * + * @param buffer + * The string to output. + * @param range + * The range within the provided string to print. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: f_print_dynamic_partial_raw_safely(). + * + * Errors (with error bit) from: f_print_dynamic_partial_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see f_print_dynamic_partial_raw_safely() + */ +#ifndef _di_fll_print_dynamic_partial_raw_safely_ + extern f_status_t fll_print_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *output); +#endif // _di_fll_print_dynamic_partial_raw_safely_ + +/** * This is a variation of f_print_dynamic_partial_safely() that uses locking. * * @param buffer @@ -214,6 +238,28 @@ extern "C" { #endif // _di_fll_print_dynamic_raw_ /** + * This is a variation of f_print_dynamic_raw_safely() that uses locking. + * + * @param buffer + * The string to output. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: f_print_dynamic_raw_safely(). + * + * Errors (with error bit) from: f_print_dynamic_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see f_print_dynamic_raw_safely() + */ +#ifndef _di_fll_print_dynamic_raw_safely_ + extern f_status_t fll_print_dynamic_raw_safely(const f_string_static_t buffer, FILE *output); +#endif // _di_fll_print_dynamic_raw_safely_ + +/** * This is a variation of f_print_dynamic_safely() that uses locking. * * @param buffer @@ -344,6 +390,33 @@ extern "C" { #endif // _di_fll_print_except_dynamic_partial_raw_ /** + * This is a variation of f_print_except_dynamic_partial_raw_safely() that uses locking. + * + * @param buffer + * The string to output. + * @param range + * The range within the provided string to print. + * @param except + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: f_print_except_dynamic_partial_raw_safely(). + * + * Errors (with error bit) from: f_print_except_dynamic_partial_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see f_print_except_dynamic_partial_raw_safely() + */ +#ifndef _di_fll_print_except_dynamic_partial_raw_safely_ + extern f_status_t fll_print_except_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except, FILE *output); +#endif // _di_fll_print_except_dynamic_partial_raw_safely_ + +/** * This is a variation of f_print_except_dynamic_partial_safely() that uses locking. * * @param buffer @@ -396,6 +469,31 @@ extern "C" { #endif // _di_fll_print_except_dynamic_raw_ /** + * This is a variation of f_print_except_dynamic_raw_safely() that uses locking. + * + * @param buffer + * The string to output. + * @param except + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: f_print_except_dynamic_raw_safely(). + * + * Errors (with error bit) from: f_print_except_dynamic_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see f_print_except_dynamic_raw_safely() + */ +#ifndef _di_fll_print_except_dynamic_raw_safely_ + extern f_status_t fll_print_except_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except, FILE *output); +#endif // _di_fll_print_except_dynamic_raw_safely_ + +/** * This is a variation of f_print_except_dynamic_safely() that uses locking. * * @param buffer @@ -485,6 +583,38 @@ extern "C" { #endif // _di_fll_print_except_in_raw_ /** + * This is a variation of f_print_except_in_raw_safely() that uses locking. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param length + * The total number of characters to print. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: f_print_except_in_raw_safely(). + * + * Errors (with error bit) from: f_print_except_in_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see f_print_except_in_raw_safely() + */ +#ifndef _di_fll_print_except_in_raw_safely_ + extern f_status_t fll_print_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output); +#endif // _di_fll_print_except_in_raw_safely_ + +/** * This is a variation of f_print_except_in_safely() that uses locking. * * @param string @@ -605,6 +735,36 @@ extern "C" { #endif // _di_fll_print_except_in_dynamic_partial_raw_ /** + * This is a variation of f_print_except_in_dynamic_partial_raw_safely() that uses locking. + * + * @param buffer + * The string to output. + * @param range + * The range within the provided string to print. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: f_print_except_in_dynamic_partial_raw_safely(). + * + * Errors (with error bit) from: f_print_except_in_dynamic_partial_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see f_print_except_in_dynamic_partial_raw_safely() + */ +#ifndef _di_fll_print_except_in_dynamic_partial_raw_safely_ + extern f_status_t fll_print_except_in_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output); +#endif // _di_fll_print_except_in_dynamic_partial_raw_safely_ + +/** * This is a variation of f_print_except_in_dynamic_partial_safely() that uses locking. * * @param buffer @@ -663,6 +823,34 @@ extern "C" { #endif // _di_fll_print_except_in_dynamic_raw_ /** + * This is a variation of f_print_except_in_dynamic_raw_safely() that uses locking. + * + * @param buffer + * The string to output. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: f_print_except_in_dynamic_raw_safely(). + * + * Errors (with error bit) from: f_print_except_in_dynamic_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see f_print_except_in_dynamic_raw_safely() + */ +#ifndef _di_fll_print_except_in_dynamic_raw_safely_ + extern f_status_t fll_print_except_in_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output); +#endif // _di_fll_print_except_in_dynamic_raw_safely_ + +/** * This is a variation of f_print_except_in_dynamic_safely() that uses locking. * * @param buffer @@ -720,6 +908,35 @@ extern "C" { #endif // _di_fll_print_except_raw_ /** + * This is a variation of f_print_except_raw_safely() that uses locking. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param length + * The total number of characters to print. + * @param except + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: f_print_except_raw_safely(). + * + * Errors (with error bit) from: f_print_except_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see f_print_except_raw_safely() + */ +#ifndef _di_fll_print_except_raw_safely_ + extern f_status_t fll_print_except_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except, FILE *output); +#endif // _di_fll_print_except_raw_safely_ + +/** * This is a variation of f_print_except_safely() that uses locking. * * @param string @@ -824,6 +1041,30 @@ extern "C" { #endif // _di_fll_print_raw_ /** + * This is a variation of f_print_raw_safely() that uses locking. + * + * @param string + * The string to output. + * @param length + * The total number of characters to print. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: f_print_raw_safely(). + * + * Errors (with error bit) from: f_print_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see f_print_raw_safely() + */ +#ifndef _di_fll_print_raw_safely_ + extern f_status_t fll_print_raw_safely(const f_string_t string, const f_array_length_t length, FILE *output); +#endif // _di_fll_print_raw_safely_ + +/** * This is a variation of f_print_raw_terminated() that uses locking. * * @param string @@ -989,6 +1230,30 @@ extern "C" { #endif // _di_fll_print_trim_raw_ /** + * This is a variation of fl_print_trim_raw_safely() that uses locking. + * + * @param string + * The string to output. + * @param length + * The total number of characters to print. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: fl_print_trim_raw_safely(). + * + * Errors (with error bit) from: fl_print_trim_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see fl_print_trim_raw_safely() + */ +#ifndef _di_fll_print_trim_raw_safely_ + extern f_status_t fll_print_trim_raw_safely(const f_string_t string, const f_array_length_t length, FILE *output); +#endif // _di_fll_print_trim_raw_safely_ + +/** * This is a variation of fl_print_trim_safely() that uses locking. * * @param string @@ -1057,6 +1322,28 @@ extern "C" { #endif // _di_fll_print_trim_dynamic_raw_ /** + * This is a variation of fl_print_trim_dynamic_raw_safely() that uses locking. + * + * @param buffer + * The string to output. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: fl_print_trim_dynamic_raw_safely(). + * + * Errors (with error bit) from: fl_print_trim_dynamic_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see fl_print_trim_dynamic_raw_safely() + */ +#ifndef _di_fll_print_trim_dynamic_raw_safely_ + extern f_status_t fll_print_trim_dynamic_raw_safely(const f_string_static_t buffer, FILE *output); +#endif // _di_fll_print_trim_dynamic_raw_safely_ + +/** * This is a variation of fl_print_trim_dynamic_safely() that uses locking. * * @param buffer @@ -1146,6 +1433,30 @@ extern "C" { * * @see f_print_except_dynamic_partial() */ +#ifndef _di_fll_print_trim_dynamic_partial_raw_safely_ + extern f_status_t fll_print_trim_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *output); +#endif // _di_fll_print_trim_dynamic_partial_raw_safely_ + +/** + * This is a variation of f_print_except_dynamic_partial() that uses locking. + * + * @param buffer + * The string to output. + * @param range + * The range within the provided string to print. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: f_print_except_dynamic_partial(). + * + * Errors (with error bit) from: f_print_except_dynamic_partial(). + * + * @see flockfile() + * @see funlockfile() + * + * @see f_print_except_dynamic_partial() + */ #ifndef _di_fll_print_trim_dynamic_partial_safely_ extern f_status_t fll_print_trim_dynamic_partial_safely(const f_string_static_t buffer, const f_string_range_t range, FILE *output); #endif // _di_fll_print_trim_dynamic_partial_safely_ @@ -1209,6 +1520,35 @@ extern "C" { #endif // _di_fll_print_trim_except_raw_ /** + * This is a variation of fl_print_trim_except_raw_safely() that uses locking. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param length + * The total number of characters to print. + * @param except + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: fl_print_trim_except_raw_safely(). + * + * Errors (with error bit) from: fl_print_trim_except_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see fl_print_trim_except_raw_safely() + */ +#ifndef _di_fll_print_trim_except_raw_safely_ + extern f_status_t fll_print_trim_except_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except, FILE *output); +#endif // _di_fll_print_trim_except_raw_safely_ + +/** * This is a variation of fl_print_trim_except_safely() that uses locking. * * @param string @@ -1288,6 +1628,31 @@ extern "C" { #endif // _di_fll_print_trim_except_dynamic_raw_ /** + * This is a variation of fl_print_trim_except_dynamic_raw_safely() that uses locking. + * + * @param buffer + * The string to output. + * @param except + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: fl_print_trim_except_dynamic_raw_safely(). + * + * Errors (with error bit) from: fl_print_trim_except_dynamic_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see fl_print_trim_except_dynamic_raw_safely() + */ +#ifndef _di_fll_print_trim_except_dynamic_raw_safely_ + extern f_status_t fll_print_trim_except_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except, FILE *output); +#endif // _di_fll_print_trim_except_dynamic_raw_safely_ + +/** * This is a variation of fl_print_trim_except_dynamic_safely() that uses locking. * * @param buffer @@ -1377,6 +1742,38 @@ extern "C" { #endif // _di_fll_print_trim_except_in_raw_ /** + * This is a variation of fl_print_trim_except_in_raw_safely() that uses locking. + * + * @param string + * The string to output. + * @param offset + * The inclusive start point to start printing. + * @param length + * The total number of characters to print. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: fl_print_trim_except_in_raw_safely(). + * + * Errors (with error bit) from: fl_print_trim_except_in_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see fl_print_trim_except_in_raw_safely() + */ +#ifndef _di_fll_print_trim_except_in_raw_safely_ + extern f_status_t fll_print_trim_except_in_raw_safely(const f_string_t string, const f_array_length_t offset, const f_array_length_t length, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output); +#endif // _di_fll_print_trim_except_in_raw_safely_ + +/** * This is a variation of fl_print_trim_except_in_safely() that uses locking. * * @param string @@ -1465,6 +1862,34 @@ extern "C" { #endif // _di_fll_print_trim_except_in_dynamic_raw_ /** + * This is a variation of fl_print_trim_except_in_dynamic_raw_safely() that uses locking. + * + * @param buffer + * The string to output. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: fl_print_trim_except_in_dynamic_raw_safely(). + * + * Errors (with error bit) from: fl_print_trim_except_in_dynamic_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see fl_print_trim_except_in_dynamic_raw_safely() + */ +#ifndef _di_fll_print_trim_except_in_dynamic_raw_safely_ + extern f_status_t fll_print_trim_except_in_dynamic_raw_safely(const f_string_static_t buffer, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output); +#endif // _di_fll_print_trim_except_in_dynamic_raw_safely_ + +/** * This is a variation of fl_print_trim_except_in_dynamic_safely() that uses locking. * * @param buffer @@ -1553,6 +1978,36 @@ extern "C" { #endif // _di_fll_print_trim_except_in_dynamic_partial_raw_ /** + * This is a variation of fl_print_trim_except_in_dynamic_partial_raw_safely() that uses locking. + * + * @param buffer + * The string to output. + * @param range + * The range within the provided string to print. + * @param except_at + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param except_in + * An array of ranges within the string to not print. + * The array of ranges is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: fl_print_trim_except_in_dynamic_partial_raw_safely(). + * + * Errors (with error bit) from: fl_print_trim_except_in_dynamic_partial_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see f_print_except_dynamic_partial() + */ +#ifndef _di_fll_print_trim_except_in_dynamic_partial_raw_safely_ + extern f_status_t fll_print_trim_except_in_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except_at, const f_string_ranges_t except_in, FILE *output); +#endif // _di_fll_print_trim_except_in_dynamic_partial_raw_safely_ + +/** * This is a variation of fl_print_trim_except_in_dynamic_partial_safely() that uses locking. * * @param buffer @@ -1637,6 +2092,33 @@ extern "C" { #endif // _di_fll_print_trim_except_dynamic_partial_raw_ /** + * This is a variation of fl_print_trim_except_dynamic_partial_raw_safely() that uses locking. + * + * @param buffer + * The string to output. + * @param range + * The range within the provided string to print. + * @param except + * An array of locations within the given string to not print. + * The array of locations is required/assumed to be in linear order. + * @param output + * The file stream to output to, including standard streams such as stdout and stderr. + * + * @return + * Success from: fl_print_trim_except_dynamic_partial_raw_safely(). + * + * Errors (with error bit) from: fl_print_trim_except_dynamic_partial_raw_safely(). + * + * @see flockfile() + * @see funlockfile() + * + * @see fl_print_trim_except_dynamic_partial_raw_safely() + */ +#ifndef _di_fll_print_trim_except_dynamic_partial_raw_safely_ + extern f_status_t fll_print_trim_except_dynamic_partial_raw_safely(const f_string_static_t buffer, const f_string_range_t range, const f_array_lengths_t except, FILE *output); +#endif // _di_fll_print_trim_except_dynamic_partial_raw_safely_ + +/** * This is a variation of fl_print_trim_except_dynamic_partial_safely() that uses locking. * * @param buffer diff --git a/level_2/fll_program/c/program.c b/level_2/fll_program/c/program.c index 34a1ba8..82d72b2 100644 --- a/level_2/fll_program/c/program.c +++ b/level_2/fll_program/c/program.c @@ -7,10 +7,10 @@ extern "C" { #ifndef _di_fll_program_print_help_header_ f_status_t fll_program_print_help_header(const f_file_t output, const f_color_context_t context, const f_string_static_t name, const f_string_static_t version) { - fl_print_format("%q %[%Q%]%q", output.stream, f_string_eol_s, context.set.title, name, context.set.title, f_string_eol_s); - fl_print_format(" %[Version %Q%]%q", output.stream, context.set.notable, version, context.set.notable, f_string_eol_s); + fl_print_format("%r %[%Q%]%r", output.stream, f_string_eol_s, context.set.title, name, context.set.title, f_string_eol_s); + fl_print_format(" %[Version %Q%]%r", output.stream, context.set.notable, version, context.set.notable, f_string_eol_s); - fl_print_format("%q %[Available Options:%] ", output.stream, f_string_eol_s, context.set.important, context.set.important); + fl_print_format("%r %[Available Options:%] ", output.stream, f_string_eol_s, context.set.important, context.set.important); return F_none; } @@ -19,7 +19,7 @@ extern "C" { #ifndef _di_fll_program_print_help_option_ f_status_t fll_program_print_help_option(const f_file_t output, const f_color_context_t context, const f_string_static_t option_short, const f_string_static_t option_long, const f_string_static_t symbol_short, const f_string_static_t symbol_long, const f_string_t description) { - fl_print_format("%q %Q%[%Q%]", output.stream, f_string_eol_s, symbol_short, context.set.standout, option_short, context.set.standout); + fl_print_format("%r %Q%[%Q%]", output.stream, f_string_eol_s, symbol_short, context.set.standout, option_short, context.set.standout); fl_print_format(", %Q%[%Q%] %S", output.stream, symbol_long, context.set.standout, option_long, context.set.standout, description); return F_none; @@ -29,7 +29,7 @@ extern "C" { #ifndef _di_fll_program_print_help_option_long_ f_status_t fll_program_print_help_option_long(const f_file_t output, const f_color_context_t context, const f_string_static_t option_long, const f_string_static_t symbol_long, const f_string_t description) { - fl_print_format("%q %Q%[%Q%] %S", output.stream, f_string_eol_s, symbol_long, context.set.standout, option_long, context.set.standout, description); + fl_print_format("%r %Q%[%Q%] %S", output.stream, f_string_eol_s, symbol_long, context.set.standout, option_long, context.set.standout, description); return F_none; } @@ -38,7 +38,7 @@ extern "C" { #ifndef _di_fll_program_print_help_option_other_ f_status_t fll_program_print_help_option_other(const f_file_t output, const f_color_context_t context, const f_string_static_t option_other, const f_string_t description) { - fl_print_format("%q %[%Q%] %S", output.stream, f_string_eol_s, context.set.standout, option_other, context.set.standout, description); + fl_print_format("%r %[%Q%] %S", output.stream, f_string_eol_s, context.set.standout, option_other, context.set.standout, description); return F_none; } @@ -47,12 +47,12 @@ extern "C" { #ifndef _di_fll_program_print_help_usage_ f_status_t fll_program_print_help_usage(const f_file_t output, const f_color_context_t context, const f_string_static_t name, const f_string_static_t parameters) { - fl_print_format("%q%q %[Usage:%]%q", output.stream, f_string_eol_s, f_string_eol_s, context.set.important, context.set.important, f_string_eol_s); + fl_print_format("%r%r %[Usage:%]%r", output.stream, f_string_eol_s, f_string_eol_s, context.set.important, context.set.important, f_string_eol_s); fl_print_format(" %[%Q%]", output.stream, context.set.standout, name, context.set.standout); fl_print_format(" %[[%] options %[]%]", output.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable); fl_print_format(" %[[%] %Q", output.stream, context.set.notable, context.set.notable, parameters); - fl_print_format(" %[]%]%q%q", output.stream, context.set.notable, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" %[]%]%r%r", output.stream, context.set.notable, context.set.notable, f_string_eol_s, f_string_eol_s); return F_none; } @@ -62,7 +62,7 @@ extern "C" { f_status_t fll_program_print_version(const f_file_t output, const f_string_static_t version) { f_print_dynamic(version, output.stream); - f_print_dynamic(f_string_eol_s, output.stream); + f_print_dynamic_raw(f_string_eol_s, output.stream); return F_none; } diff --git a/level_3/byte_dump/c/byte_dump.c b/level_3/byte_dump/c/byte_dump.c index 9172aad..c116b5c 100644 --- a/level_3/byte_dump/c/byte_dump.c +++ b/level_3/byte_dump/c/byte_dump.c @@ -23,7 +23,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, byte_dump_short_binary_s, byte_dump_long_binary_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Display binary representation."); fll_program_print_help_option(file, context, byte_dump_short_decimal_s, byte_dump_long_decimal_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Display decimal representation."); @@ -32,12 +32,12 @@ extern "C" { fll_program_print_help_option(file, context, byte_dump_short_octal_s, byte_dump_long_octal_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Display octal representation."); fll_program_print_help_option(file, context, byte_dump_short_unicode_s, byte_dump_long_unicode_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Display using Unicode representation for valid Unicode (like: U+0000)."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, byte_dump_short_first_s, byte_dump_long_first_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Start reading at this byte offset."); fll_program_print_help_option(file, context, byte_dump_short_last_s, byte_dump_long_last_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Stop reading at this (inclusive) byte offset."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, byte_dump_short_narrow_s, byte_dump_long_narrow_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Use narrow display, resulting in 1*width reducing size of the text columns."); fll_program_print_help_option(file, context, byte_dump_short_placeholder_s, byte_dump_long_placeholder_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Use a placeholder character instead of a space for placeholders."); @@ -45,8 +45,8 @@ extern "C" { fll_program_print_help_option(file, context, byte_dump_short_wide_s, byte_dump_long_wide_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Use wide display, resulting in 2*width allowing for space for wide characters in the text columns."); fll_program_print_help_option(file, context, byte_dump_short_width_s, byte_dump_long_width_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Set number of columns of Bytes to display."); - f_print_dynamic(f_string_eol_s, file.stream); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fl_print_format(" %[Special Options:%] ", file.stream, context.set.important, context.set.important); @@ -56,15 +56,15 @@ extern "C" { fll_program_print_help_usage(file, context, byte_dump_program_name_s, byte_dump_program_help_parameters_s); - fl_print_format(" When using the %[%q%q%] option, some UTF-8 characters may be replaced by your instance and cause display alignment issues.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_text_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When using the %[%r%r%] option, some UTF-8 characters may be replaced by your instance and cause display alignment issues.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_text_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" Special UTF-8 characters and non-spacing UTF-8 characters may be replaced with a space (or a placeholder when the %[%q%q%] option is used).%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_placeholder_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" Special UTF-8 characters and non-spacing UTF-8 characters may be replaced with a space (or a placeholder when the %[%r%r%] option is used).%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_placeholder_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" UTF-8 \"Combining\" characters might have a space appended to allow a proper display but this may cause copy and paste issues.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" UTF-8 \"Combining\" characters might have a space appended to allow a proper display but this may cause copy and paste issues.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When %[%q%q%] is used, any UTF-8 sequences will still be printed in full should any part is found within the requested range.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_last_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When %[%r%r%] is used, any UTF-8 sequences will still be printed in full should any part is found within the requested range.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_last_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" When using the %[%q%q%] option, invalid Unicode will fallback to being displayed using one of the other modes.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_unicode_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When using the %[%r%r%] option, invalid Unicode will fallback to being displayed using one of the other modes.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_unicode_s, context.set.notable, f_string_eol_s, f_string_eol_s); fflush(file.stream); funlockfile(file.stream); @@ -267,8 +267,8 @@ extern "C" { flockfile(main->error.to.stream); fl_print_format("%[%QThe parameter '%]", main->error.to.stream, main->context.set.error, main->error.prefix, main->context.set.error); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_width_s, main->context.set.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_width_s, main->context.set.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); @@ -289,12 +289,12 @@ extern "C" { flockfile(main->error.to.stream); fl_print_format("%[%QThe parameter '%]", main->error.to.stream, main->context.set.error, main->error.prefix, main->context.set.error); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_width_s, main->context.set.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_width_s, main->context.set.notable); fl_print_format("%[' value can only be a number (inclusively) between %]", main->error.to.stream, main->context.set.error, main->context.set.error); fl_print_format("%[1%]", main->error.to.stream, main->context.set.notable, main->context.set.notable); fl_print_format(" %[and%] ", main->error.to.stream, main->context.set.error, main->context.set.error); fl_print_format("%[250%]", main->error.to.stream, main->context.set.notable, main->context.set.notable); - fl_print_format("%[.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); @@ -312,8 +312,8 @@ extern "C" { flockfile(main->error.to.stream); fl_print_format("%[%QThe parameter '%]", main->error.to.stream, main->context.set.error, main->error.prefix, main->context.set.error); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_first_s, main->context.set.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_first_s, main->context.set.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); @@ -334,12 +334,12 @@ extern "C" { flockfile(main->error.to.stream); fl_print_format("%[%QThe parameter '%]", main->error.to.stream, main->context.set.error, main->error.prefix, main->context.set.error); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_first_s, main->context.set.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_first_s, main->context.set.notable); fl_print_format("%[' value can only be a number (inclusively) between %]", main->error.to.stream, main->context.set.error, main->context.set.error); fl_print_format("%[0%]", main->error.to.stream, main->context.set.notable, main->context.set.notable); fl_print_format(" %[and%] ", main->error.to.stream, main->context.set.error, main->context.set.error); fl_print_format("%[%un%]", main->error.to.stream, main->context.set.notable, F_number_t_size_unsigned_d, main->context.set.notable); - fl_print_format("%[.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); @@ -357,8 +357,8 @@ extern "C" { flockfile(main->error.to.stream); fl_print_format("%[%QThe parameter '%]", main->error.to.stream, main->context.set.error, main->error.prefix, main->context.set.error); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_last_s, main->context.set.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_last_s, main->context.set.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); @@ -379,12 +379,12 @@ extern "C" { flockfile(main->error.to.stream); fl_print_format("%[%QThe parameter '%]", main->error.to.stream, main->context.set.error, main->error.prefix, main->context.set.error); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_last_s, main->context.set.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_last_s, main->context.set.notable); fl_print_format("%[' value can only be a number (inclusively) between %]", main->error.to.stream, main->context.set.error, main->context.set.error); fl_print_format("%[0%]", main->error.to.stream, main->context.set.notable, main->context.set.notable); fl_print_format(" %[and%] ", main->error.to.stream, main->context.set.error, main->context.set.error); fl_print_format("%[%un%]", main->error.to.stream, main->context.set.notable, F_number_t_size_unsigned_d, main->context.set.notable); - fl_print_format("%[.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); @@ -403,10 +403,10 @@ extern "C" { flockfile(main->error.to.stream); fl_print_format("%[%QThe parameter '%]", main->error.to.stream, main->context.set.error, main->error.prefix, main->context.set.error); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_first_s, main->context.set.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_first_s, main->context.set.notable); fl_print_format("%[' value cannot be greater than the parameter '%]", main->error.to.stream, main->context.set.error, main->context.set.error); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_last_s, main->context.set.notable); - fl_print_format("%[' value.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, byte_dump_long_last_s, main->context.set.notable); + fl_print_format("%[' value.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); @@ -427,26 +427,26 @@ extern "C" { flockfile(main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); fl_print_format("%[Piped Byte Dump: (in ", main->output.to.stream, main->context.set.title); if (main->mode == byte_dump_mode_hexidecimal_e) { - f_print_terminated("Hexidecimal", main->output.to.stream); + f_print_dynamic_raw(byte_dump_print_strings_hexidecimal_s, main->output.to.stream); } else if (main->mode == byte_dump_mode_duodecimal_e) { - f_print_terminated("Duodecimal", main->output.to.stream); + f_print_dynamic_raw(byte_dump_print_strings_duodecimal_s, main->output.to.stream); } else if (main->mode == byte_dump_mode_octal_e) { - f_print_terminated("Octal", main->output.to.stream); + f_print_dynamic_raw(byte_dump_print_strings_octal_s, main->output.to.stream); } else if (main->mode == byte_dump_mode_binary_e) { - f_print_terminated("Binary", main->output.to.stream); + f_print_dynamic_raw(byte_dump_print_strings_binary_s, main->output.to.stream); } else if (main->mode == byte_dump_mode_decimal_e) { - f_print_terminated("Decimal", main->output.to.stream); + f_print_dynamic_raw(byte_dump_print_strings_decimal_s, main->output.to.stream); } - fl_print_format(")%]%q", main->output.to.stream, main->context.set.title, f_string_eol_s); + fl_print_format(")%]%r", main->output.to.stream, main->context.set.title, f_string_eol_s); funlockfile(main->output.to.stream); @@ -509,26 +509,26 @@ extern "C" { flockfile(main->output.to.stream); - fl_print_format("%q%[Byte Dump of: %]%[", main->output.to.stream, f_string_eol_s, main->context.set.title, main->context.set.title, main->context.set.notable); + fl_print_format("%r%[Byte Dump of: %]%[", main->output.to.stream, f_string_eol_s, main->context.set.title, main->context.set.title, main->context.set.notable); fl_print_format("%Q%] %[(in ", main->output.to.stream, argv[main->remaining.array[counter]], main->context.set.notable, main->context.set.title); if (main->mode == byte_dump_mode_hexidecimal_e) { - f_print_terminated("Hexidecimal", main->output.to.stream); + f_print_dynamic_raw(byte_dump_print_strings_hexidecimal_s, main->output.to.stream); } else if (main->mode == byte_dump_mode_duodecimal_e) { - f_print_terminated("Duodecimal", main->output.to.stream); + f_print_dynamic_raw(byte_dump_print_strings_duodecimal_s, main->output.to.stream); } else if (main->mode == byte_dump_mode_octal_e) { - f_print_terminated("Octal", main->output.to.stream); + f_print_dynamic_raw(byte_dump_print_strings_octal_s, main->output.to.stream); } else if (main->mode == byte_dump_mode_binary_e) { - f_print_terminated("Binary", main->output.to.stream); + f_print_dynamic_raw(byte_dump_print_strings_binary_s, main->output.to.stream); } else if (main->mode == byte_dump_mode_decimal_e) { - f_print_terminated("Decimal", main->output.to.stream); + f_print_dynamic_raw(byte_dump_print_strings_decimal_s, main->output.to.stream); } - fl_print_format(")%]%q", main->output.to.stream, main->context.set.title, f_string_eol_s); + fl_print_format(")%]%r", main->output.to.stream, main->context.set.title, f_string_eol_s); funlockfile(main->output.to.stream); @@ -543,7 +543,7 @@ extern "C" { if (main->output.verbosity != f_console_verbosity_quiet_e) { fflush(main->output.to.stream); - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } else { @@ -563,7 +563,7 @@ extern "C" { } } else { - fll_print_format("%q%[%QYou failed to specify one or more filenames.%]%q", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error, f_string_eol_s); + fll_print_format("%r%[%QYou failed to specify one or more filenames.%]%r", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error, f_string_eol_s); status = F_status_set_error(F_parameter); } diff --git a/level_3/byte_dump/c/common.c b/level_3/byte_dump/c/common.c index 30466d4..98661a9 100644 --- a/level_3/byte_dump/c/common.c +++ b/level_3/byte_dump/c/common.c @@ -18,6 +18,14 @@ extern "C" { const f_string_static_t byte_dump_program_help_parameters_s = macro_f_string_static_t_initialize(BYTE_DUMP_program_help_parameters_s, 0, BYTE_DUMP_program_help_parameters_s_length); #endif // _di_byte_dump_program_help_parameters_ +#ifndef _di_byte_dump_print_strings_ + const f_string_static_t byte_dump_print_strings_hexidecimal_s = macro_f_string_static_t_initialize(BYTE_DUMP_print_strings_hexidecimal_s, 0, BYTE_DUMP_print_strings_hexidecimal_s_length); + const f_string_static_t byte_dump_print_strings_duodecimal_s = macro_f_string_static_t_initialize(BYTE_DUMP_print_strings_duodecimal_s, 0, BYTE_DUMP_print_strings_duodecimal_s_length); + const f_string_static_t byte_dump_print_strings_octal_s = macro_f_string_static_t_initialize(BYTE_DUMP_print_strings_octal_s, 0, BYTE_DUMP_print_strings_octal_s_length); + const f_string_static_t byte_dump_print_strings_binary_s = macro_f_string_static_t_initialize(BYTE_DUMP_print_strings_binary_s, 0, BYTE_DUMP_print_strings_binary_s_length); + const f_string_static_t byte_dump_print_strings_decimal_s = macro_f_string_static_t_initialize(BYTE_DUMP_print_strings_decimal_s, 0, BYTE_DUMP_print_strings_decimal_s_length); +#endif // _di_byte_dump_print_strings_ + #ifndef _di_byte_dump_defines_ const f_string_static_t byte_dump_character_wall_s = macro_f_string_static_t_initialize(BYTE_DUMP_character_wall_s, 0, BYTE_DUMP_character_wall_s_length); const f_string_static_t byte_dump_character_placeholder_s = macro_f_string_static_t_initialize(BYTE_DUMP_character_placeholder_s, 0, BYTE_DUMP_character_placeholder_s_length); diff --git a/level_3/byte_dump/c/common.h b/level_3/byte_dump/c/common.h index cbd9e46..ca3bea4 100644 --- a/level_3/byte_dump/c/common.h +++ b/level_3/byte_dump/c/common.h @@ -60,6 +60,26 @@ extern "C" { extern const f_string_static_t byte_dump_program_help_parameters_s; #endif // _di_byte_dump_program_help_parameters_ +#ifndef _di_byte_dump_print_strings_ + #define BYTE_DUMP_print_strings_hexidecimal_s "Hexidecimal" + #define BYTE_DUMP_print_strings_duodecimal_s "Duodecimal" + #define BYTE_DUMP_print_strings_octal_s "Octal" + #define BYTE_DUMP_print_strings_binary_s "Binary" + #define BYTE_DUMP_print_strings_decimal_s "Decimal" + + #define BYTE_DUMP_print_strings_hexidecimal_s_length 11 + #define BYTE_DUMP_print_strings_duodecimal_s_length 10 + #define BYTE_DUMP_print_strings_octal_s_length 5 + #define BYTE_DUMP_print_strings_binary_s_length 6 + #define BYTE_DUMP_print_strings_decimal_s_length 7 + + extern const f_string_static_t byte_dump_print_strings_hexidecimal_s; + extern const f_string_static_t byte_dump_print_strings_duodecimal_s; + extern const f_string_static_t byte_dump_print_strings_octal_s; + extern const f_string_static_t byte_dump_print_strings_binary_s; + extern const f_string_static_t byte_dump_print_strings_decimal_s; +#endif // _di_byte_dump_print_strings_ + /** * Set to at least 4 to provide a UTF-8 friendly allocation step. */ diff --git a/level_3/byte_dump/c/private-byte_dump.c b/level_3/byte_dump/c/private-byte_dump.c index f9476ca..a412af1 100644 --- a/level_3/byte_dump/c/private-byte_dump.c +++ b/level_3/byte_dump/c/private-byte_dump.c @@ -228,32 +228,32 @@ extern "C" { if (cell.column < main->width) { if (main->parameters.array[byte_dump_parameter_unicode_e].result == f_console_result_found_e) { if (!(cell.column % 4)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_hexidecimal_e) { if (!(cell.column % 8)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_duodecimal_e) { if (!(cell.column % 6)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_octal_e) { if (!(cell.column % 6)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_binary_e) { if (!(cell.column % 6)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_decimal_e) { if (!(cell.column % 6)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } } @@ -263,11 +263,11 @@ extern "C" { byte_dump_print_text(main, characters, invalid, &previous, &offset); } else { - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); funlockfile(main->output.to.stream); @@ -279,7 +279,7 @@ extern "C" { fl_print_format("%[Invalid UTF-8 codes were detected for file '%]", main->error.to.stream, main->context.set.error, main->context.set.error); fl_print_format("%[%Q%]", main->error.to.stream, main->context.set.notable, file_name.used ? file_name : f_string_ascii_minus_s, main->context.set.notable); - fl_print_format("%['.%]%q%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s, f_string_eol_s); + fl_print_format("%['.%]%r%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -290,7 +290,7 @@ extern "C" { fl_print_format("%[%Qread() failed for '%]", main->error.to.stream, main->context.set.error, main->error.prefix, main->context.set.error); fl_print_format("%[%Q%]", main->error.to.stream, main->context.set.notable, file_name.used ? file_name : f_string_ascii_minus_s, main->context.set.notable); - fl_print_format("%['.%]%q%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s, f_string_eol_s); + fl_print_format("%['.%]%r%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s, f_string_eol_s); funlockfile(main->error.to.stream); @@ -359,32 +359,32 @@ extern "C" { if (cell->column < main->width) { if (main->parameters.array[byte_dump_parameter_unicode_e].result == f_console_result_found_e) { if (!(cell->column % 4)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_hexidecimal_e) { if (!(cell->column % 8)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_duodecimal_e) { if (!(cell->column % 6)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_octal_e) { if (!(cell->column % 6)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_binary_e) { if (!(cell->column % 4)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_decimal_e) { if (!(cell->column % 6)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } } @@ -512,7 +512,7 @@ extern "C" { byte_dump_print_text(main, characters, invalid, previous, offset); } else { - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } cell->column = 0; @@ -530,32 +530,32 @@ extern "C" { else { if (main->parameters.array[byte_dump_parameter_unicode_e].result == f_console_result_found_e) { if (!(cell->column % 4)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_hexidecimal_e) { if (!(cell->column % 8)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_duodecimal_e) { if (!(cell->column % 6)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_octal_e) { if (!(cell->column % 6)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_binary_e) { if (!(cell->column % 4)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } else if (main->mode == byte_dump_mode_decimal_e) { if (!(cell->column % 6)) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } } @@ -574,16 +574,16 @@ extern "C" { char byte[5] = { 0, 0, 0, 0, 0 }; - fl_print_format(" %[%q%] ", main->output.to.stream, main->context.set.notable, byte_dump_character_wall_s, main->context.set.notable); + fl_print_format(" %[%r%] ", main->output.to.stream, main->context.set.notable, byte_dump_character_wall_s, main->context.set.notable); if (*offset) { if (main->parameters.array[byte_dump_parameter_classic_e].result == f_console_result_found_e) { while (*offset && at < main->width) { - f_print_dynamic(f_string_ascii_period_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_period_s, main->output.to.stream); if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } --(*offset); @@ -594,20 +594,20 @@ extern "C" { if (main->parameters.array[byte_dump_parameter_placeholder_e].result == f_console_result_found_e) { for (; *offset && at < main->width; --(*offset), ++at) { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning); if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } // for } else { for (; *offset && at < main->width; --(*offset), ++at) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } // for } @@ -627,27 +627,27 @@ extern "C" { for (; at < previous->bytes && at < main->width; ++at) { if (previous->invalid) { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.error, byte_dump_character_placeholder_s, main->context.set.error); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.error, byte_dump_character_placeholder_s, main->context.set.error); } else if (main->parameters.array[byte_dump_parameter_classic_e].result == f_console_result_found_e) { - f_print_dynamic(f_string_ascii_period_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_period_s, main->output.to.stream); } else { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning); } if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } } // for } else { for (; at < previous->bytes && at < main->width; ++at) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } // for } @@ -668,10 +668,10 @@ extern "C" { width_utf = macro_f_utf_byte_width_is(c); if (invalid[i]) { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.error, byte_dump_character_incomplete_s, main->context.set.error); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.error, byte_dump_character_incomplete_s, main->context.set.error); if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } } else if (f_utf_character_is_control(characters.string[i]) == F_true) { @@ -712,72 +712,72 @@ extern "C" { if (main->options & byte_dump_option_wide_d) { if (f_utf_character_is_wide(characters.string[i]) != F_true) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } } } else { if (main->presentation == byte_dump_presentation_simple_e) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); if (width_utf > 1) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); if (width_utf > 2) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); if (width_utf > 3) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } } } else if (main->presentation == byte_dump_presentation_classic_e) { - f_print_dynamic(f_string_ascii_period_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_period_s, main->output.to.stream); if (width_utf > 1) { - f_print_dynamic(f_string_ascii_period_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_period_s, main->output.to.stream); if (width_utf > 2) { - f_print_dynamic(f_string_ascii_period_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_period_s, main->output.to.stream); if (width_utf > 3) { - f_print_dynamic(f_string_ascii_period_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_period_s, main->output.to.stream); } } } } if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } } } else if (f_utf_character_is_whitespace(characters.string[i]) == F_true) { if (main->parameters.array[byte_dump_parameter_classic_e].result == f_console_result_found_e) { - f_print_dynamic(f_string_ascii_period_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_period_s, main->output.to.stream); } else { - fl_print_format("%[%[%q%]%]", main->output.to.stream, main->context.set.notable, main->context.set.warning, f_print_sequence_space_s, main->context.set.warning, main->context.set.notable); + fl_print_format("%[%[%r%]%]", main->output.to.stream, main->context.set.notable, main->context.set.warning, f_print_sequence_space_s, main->context.set.warning, main->context.set.notable); } if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } } else if (f_utf_character_is_zero_width(characters.string[i]) == F_true) { if (main->presentation == byte_dump_presentation_classic_e) { - f_print_dynamic(f_string_ascii_period_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_period_s, main->output.to.stream); } else if (main->parameters.array[byte_dump_parameter_placeholder_e].result == f_console_result_found_e) { - fl_print_format("%[%[%q%]%]", main->output.to.stream, main->context.set.notable, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning, main->context.set.notable); + fl_print_format("%[%[%r%]%]", main->output.to.stream, main->context.set.notable, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning, main->context.set.notable); } else { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } } else if (width_utf) { @@ -787,10 +787,10 @@ extern "C" { // Print invalid placeholder for invalid UTF-8 widths. if (invalid[i]) { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.error, byte_dump_character_incomplete_s, main->context.set.error); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.error, byte_dump_character_incomplete_s, main->context.set.error); } else { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.warning, byte_dump_character_incomplete_s, main->context.set.warning); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.warning, byte_dump_character_incomplete_s, main->context.set.warning); } } else if (width_utf == 2) { @@ -801,17 +801,17 @@ extern "C" { // Use space to represent Specials codes. // 0xefbfbd00 is excluded because it is printable (and is the "Replacement Character" code). - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } else if (characters.string[i] >= 0xe290a700 && characters.string[i] <= 0xe290bf00) { // Use space to represent Control Pictues codes that are not currently defined but are reserved. - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } else if (characters.string[i] >= 0xee808000 && characters.string[i] <= 0xefa3bf00) { // Use space to represent Private Use Area codes. - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } else { print = F_true; @@ -820,17 +820,17 @@ extern "C" { else if (characters.string[i] >= 0xf09c80a0 && characters.string[i] <= 0xf09c80bd) { // Use space to represent Variation Selectors Supplement codes. - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } else if (characters.string[i] >= 0xf3b08080 && characters.string[i] <= 0xf3bfbfbf) { // Use space to represent Supplemental Private Use Area-A codes. - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } else if (characters.string[i] >= 0xf4808080 && characters.string[i] <= 0xf48fbfbf) { // Use space to represent Supplemental Private Use Area-B codes. - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } else { print = F_true; @@ -852,18 +852,18 @@ extern "C" { } if (f_utf_character_is_combining(characters.string[i]) == F_true) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } if (main->options & byte_dump_option_wide_d) { if (width_utf == 1 || f_utf_character_is_wide(characters.string[i]) != F_true) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } } } else { if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } } } @@ -871,7 +871,7 @@ extern "C" { f_print_character(c, main->output.to.stream); if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } } @@ -879,21 +879,21 @@ extern "C" { if (width_utf > 1 && at + 1 < main->width) { if (main->parameters.array[byte_dump_parameter_placeholder_e].result == f_console_result_found_e) { if (invalid[i]) { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.error, byte_dump_character_placeholder_s, main->context.set.error); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.error, byte_dump_character_placeholder_s, main->context.set.error); } else if (main->parameters.array[byte_dump_parameter_classic_e].result == f_console_result_found_e) { - f_print_dynamic(f_string_ascii_period_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_period_s, main->output.to.stream); } else { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning); } } else { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } ++at; @@ -901,21 +901,21 @@ extern "C" { if (width_utf > 2 && at + 1 < main->width) { if (main->parameters.array[byte_dump_parameter_placeholder_e].result == f_console_result_found_e) { if (invalid[i]) { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.error, byte_dump_character_placeholder_s, main->context.set.error); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.error, byte_dump_character_placeholder_s, main->context.set.error); } else if (main->parameters.array[byte_dump_parameter_classic_e].result == f_console_result_found_e) { - f_print_dynamic(f_string_ascii_period_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_period_s, main->output.to.stream); } else { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning); } } else { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } ++at; @@ -923,21 +923,21 @@ extern "C" { if (width_utf > 3 && at + 1 < main->width) { if (main->parameters.array[byte_dump_parameter_placeholder_e].result == f_console_result_found_e) { if (invalid[i]) { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.error, byte_dump_character_placeholder_s, main->context.set.error); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.error, byte_dump_character_placeholder_s, main->context.set.error); } else if (main->parameters.array[byte_dump_parameter_classic_e].result == f_console_result_found_e) { - f_print_dynamic(f_string_ascii_period_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_period_s, main->output.to.stream); } else { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning); } } else { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } ++at; @@ -951,32 +951,32 @@ extern "C" { for (; at < main->width; ++at) { if (invalid[at]) { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.error, byte_dump_character_placeholder_s, main->context.set.error); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.error, byte_dump_character_placeholder_s, main->context.set.error); } else if (main->parameters.array[byte_dump_parameter_classic_e].result == f_console_result_found_e) { - f_print_dynamic(f_string_ascii_period_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_period_s, main->output.to.stream); } else { - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.warning, byte_dump_character_placeholder_s, main->context.set.warning); } if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_ascii_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_space_s, main->output.to.stream); } } // for } else { for (; at < main->width; ++at) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); if (main->options & byte_dump_option_wide_d) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } } // for } - fl_print_format(" %[%q%]%q", main->output.to.stream, main->context.set.notable, byte_dump_character_wall_s, main->context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%]%r", main->output.to.stream, main->context.set.notable, byte_dump_character_wall_s, main->context.set.notable, f_string_eol_s); } #endif // _di_byte_dump_print_text_ diff --git a/level_3/byte_dump/c/private-common.c b/level_3/byte_dump/c/private-common.c index c0c8449..b6cda39 100644 --- a/level_3/byte_dump/c/private-common.c +++ b/level_3/byte_dump/c/private-common.c @@ -15,9 +15,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/control/c/control.c b/level_3/control/c/control.c index b86787d..ce3bd6e 100644 --- a/level_3/control/c/control.c +++ b/level_3/control/c/control.c @@ -24,7 +24,7 @@ extern "C" { fll_program_print_help_option(main->output.to, main->context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(main->output.to, main->context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); fll_program_print_help_option(main->output.to, main->context, control_short_name_s, control_long_name_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Specify the name of the controller socket file."); fll_program_print_help_option(main->output.to, main->context, control_short_settings_s, control_long_settings_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Specify a directory path or a full path to the control settings file."); @@ -32,12 +32,12 @@ extern "C" { fll_program_print_help_usage(main->output.to, main->context, control_program_name_s, control_command_s); - fl_print_format(" When the %[%q%q%] parameter represents a directory path then the file name is generated from either the", main->output.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, control_long_socket_s, main->context.set.notable); - fl_print_format(" %[%q%q%] parameter or from the control settings file.%q%q", main->output.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, control_long_name_s, main->context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When the %[%r%r%] parameter represents a directory path then the file name is generated from either the", main->output.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, control_long_socket_s, main->context.set.notable); + fl_print_format(" %[%r%r%] parameter or from the control settings file.%r%r", main->output.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, control_long_name_s, main->context.set.notable, f_string_eol_s, f_string_eol_s); fl_print_format(" A rule action allows for either the full rule path, such as '%[boot/root%]'", main->output.to.stream, main->context.set.notable, main->context.set.notable); fl_print_format(" as a single parameter or two parameters with the first representing the rule directory path '%[boot%]'", main->output.to.stream, main->context.set.notable, main->context.set.notable); - fl_print_format(" and the second representing the rule base name '%[root%]'.%q%q", main->output.to.stream, main->context.set.notable, main->context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" and the second representing the rule base name '%[root%]'.%r%r", main->output.to.stream, main->context.set.notable, main->context.set.notable, f_string_eol_s, f_string_eol_s); fflush(main->output.to.stream); funlockfile(main->output.to.stream); @@ -84,7 +84,7 @@ extern "C" { if (F_status_is_error(status)) { if (main->error.verbosity != f_console_verbosity_quiet_e) { fll_error_print(main->error, F_status_set_fine(status), "fll_program_parameter_process", F_true); - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } control_main_delete(main); @@ -237,7 +237,7 @@ extern "C" { fflush(main->output.to.stream); fflush(main->error.to.stream); - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/control/c/private-control.c b/level_3/control/c/private-control.c index 29e8a8e..5d2846a 100644 --- a/level_3/control/c/private-control.c +++ b/level_3/control/c/private-control.c @@ -278,7 +278,7 @@ extern "C" { fll_error_file_print(main->error, F_status_set_fine(status), "f_file_exists", F_true, data->cache.buffer_small, f_file_operation_find_s, fll_error_file_type_directory_e); if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } } @@ -355,7 +355,7 @@ extern "C" { fll_error_file_print(main->error, F_status_set_fine(status), "f_file_exists", F_true, data->cache.buffer_small, f_file_operation_find_s, fll_error_file_type_directory_e); if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } } @@ -380,7 +380,7 @@ extern "C" { fll_error_print(main->error, F_status_set_fine(status), "f_socket_create", F_true); if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } control_print_error_socket_file_failed(main, data->cache.buffer_small); @@ -394,7 +394,7 @@ extern "C" { fll_error_print(main->error, F_status_set_fine(status), "f_socket_connect", F_true); if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } control_print_error_socket_file_failed(main, data->cache.buffer_small); diff --git a/level_3/control/c/private-print.c b/level_3/control/c/private-print.c index 70a2d44..69b7a9d 100644 --- a/level_3/control/c/private-print.c +++ b/level_3/control/c/private-print.c @@ -13,9 +13,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); fl_print_format("%[%Q%]", main->error.to.stream, main->context.set.notable, command, main->context.set.notable); - fl_print_format("%[' is not a known controller command.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[' is not a known controller command.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -28,9 +28,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe command parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); + fl_print_format("%r%[%QThe command parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); fl_print_format("%[%Q%]", main->error.to.stream, main->context.set.notable, command, main->context.set.notable); - fl_print_format("%[' a rule base name cannot be an empty string.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[' a rule base name cannot be an empty string.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -43,9 +43,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe command parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); + fl_print_format("%r%[%QThe command parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); fl_print_format("%[%Q%]", main->error.to.stream, main->context.set.notable, command, main->context.set.notable); - fl_print_format("%[' a rule directory path cannot be an empty string.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[' a rule directory path cannot be an empty string.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -58,9 +58,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe command parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); + fl_print_format("%r%[%QThe command parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); fl_print_format("%[%Q%]", main->error.to.stream, main->context.set.notable, command, main->context.set.notable); - fl_print_format("%[' a rule name cannot be an empty string.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[' a rule name cannot be an empty string.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -73,9 +73,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe command parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); + fl_print_format("%r%[%QThe command parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); fl_print_format("%[%Q%]", main->error.to.stream, main->context.set.notable, command, main->context.set.notable); - fl_print_format("%[' requires either a full rule name or a rule directory path along with the rule base name.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[' requires either a full rule name or a rule directory path along with the rule base name.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -88,9 +88,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe command parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); + fl_print_format("%r%[%QThe command parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); fl_print_format("%[%Q%]", main->error.to.stream, main->context.set.notable, command, main->context.set.notable); - fl_print_format("%[' has too many arguments.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[' has too many arguments.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -101,7 +101,7 @@ extern "C" { if (main->error.verbosity == f_console_verbosity_quiet_e) return; - fll_print_format("%q%[%QNo commands provided.%]%q", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error, f_string_eol_s); + fll_print_format("%r%[%QNo commands provided.%]%r", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error, f_string_eol_s); } #endif // _di_control_print_error_commands_none_ @@ -112,9 +112,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, parameter, main->context.set.notable); - fl_print_format("%[' must not be an empty string.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, parameter, main->context.set.notable); + fl_print_format("%[' must not be an empty string.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -127,9 +127,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, parameter, main->context.set.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, parameter, main->context.set.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -140,7 +140,7 @@ extern "C" { if (main->error.verbosity == f_console_verbosity_quiet_e) return; - fll_print_format("%q%[%QPipe input is not supported by this program.%]%q", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error, f_string_eol_s); + fll_print_format("%r%[%QPipe input is not supported by this program.%]%r", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error, f_string_eol_s); } #endif // _di_control_print_error_pipe_supported_not_ @@ -151,9 +151,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QFailed to connect to the socket file '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); + fl_print_format("%r%[%QFailed to connect to the socket file '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); fl_print_format("%[%Q%]", main->error.to.stream, main->context.set.notable, path_socket, main->context.set.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -166,9 +166,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe controller socket file '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); + fl_print_format("%r%[%QThe controller socket file '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); fl_print_format("%[%Q%]", main->error.to.stream, main->context.set.notable, path_socket, main->context.set.notable); - fl_print_format("%[' could not be found and is required.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[' could not be found and is required.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -181,9 +181,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe controller socket file '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); + fl_print_format("%r%[%QThe controller socket file '%]", main->error.to.stream, f_string_eol_s, main->context.set.error, main->error.prefix, main->context.set.error); fl_print_format("%[%Q%]", main->error.to.stream, main->context.set.notable, path_socket, main->context.set.notable); - fl_print_format("%[' is not a socket file.%]%q", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[' is not a socket file.%]%r", main->error.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -199,9 +199,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/controller/c/controller.c b/level_3/controller/c/controller.c index 117109e..aab5cb9 100644 --- a/level_3/controller/c/controller.c +++ b/level_3/controller/c/controller.c @@ -29,7 +29,7 @@ extern "C" { fll_program_print_help_option(main->output.to, main->context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, inceasing verbosity beyond normal main->output.to."); fll_program_print_help_option(main->output.to, main->context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); fll_program_print_help_option(main->output.to, main->context, controller_short_cgroup_s, controller_long_cgroup_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Specify a custom control group file path, such as '" F_control_group_path_system_prefix_s F_control_group_path_system_default_s "'."); fll_program_print_help_option(main->output.to, main->context, controller_short_daemon_s, controller_long_daemon_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Run in daemon only mode (do not process the entry)."); @@ -44,8 +44,8 @@ extern "C" { fll_program_print_help_usage(main->output.to, main->context, *main->program_name, controller_entry_s); - fl_print_format(" When both the %[%q%q%] parameter and the", main->output.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_simulate_s, main->context.set.notable); - fl_print_format(" %[%q%q%] parameter are specified, then additional information on each would be executed rule is printed but no simulation is performed.%q%q", main->output.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_validate_s, main->context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When both the %[%r%r%] parameter and the", main->output.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_simulate_s, main->context.set.notable); + fl_print_format(" %[%r%r%] parameter are specified, then additional information on each would be executed rule is printed but no simulation is performed.%r%r", main->output.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_validate_s, main->context.set.notable, f_string_eol_s, f_string_eol_s); #ifdef _controller_as_init_ const f_string_static_t interruptable = controller_long_uninterruptible_s; @@ -53,9 +53,9 @@ extern "C" { const f_string_static_t interruptable = controller_long_interruptible_s; #endif // _controller_as_init_ - fl_print_format(" The default interrupt behavior is to operate as if the %[%q%q%] parameter is passed.%q%q", main->output.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, interruptable, main->context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The default interrupt behavior is to operate as if the %[%r%r%] parameter is passed.%r%r", main->output.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, interruptable, main->context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" Specify an empty string for the %[%q%q%] parameter to disable pid file creation for this program.%q%q", main->output.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_pid_s, main->context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" Specify an empty string for the %[%r%r%] parameter to disable pid file creation for this program.%r%r", main->output.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_pid_s, main->context.set.notable, f_string_eol_s, f_string_eol_s); controller_unlock_print_flush(main->output.to, 0); @@ -101,7 +101,7 @@ extern "C" { if (F_status_is_error(status)) { if (main->error.verbosity != f_console_verbosity_quiet_e) { fll_error_print(main->error, F_status_set_fine(status), "fll_program_parameter_process", F_true); - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } controller_main_delete(main); @@ -217,9 +217,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(main->error.to, 0); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_settings_s, main->context.set.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_settings_s, main->context.set.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); controller_unlock_print_flush(main->error.to, 0); } @@ -258,9 +258,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(main->error.to, 0); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_pid_s, main->context.set.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_pid_s, main->context.set.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); controller_unlock_print_flush(main->error.to, 0); } @@ -317,9 +317,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(main->error.to, 0); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_cgroup_s, main->context.set.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_cgroup_s, main->context.set.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); controller_unlock_print_flush(main->error.to, 0); } @@ -354,9 +354,9 @@ extern "C" { if (main->warning.verbosity == f_console_verbosity_debug_e) { controller_lock_print(main->warning.to, 0); - fl_print_format("%q%[%QThe parameter '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); - fl_print_format("%[%q%q%]", main->warning.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_cgroup_s, main->context.set.notable); - fl_print_format("%[' must be a file directory path but instead is an empty string, falling back to the default.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%[%r%r%]", main->warning.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_cgroup_s, main->context.set.notable); + fl_print_format("%[' must be a file directory path but instead is an empty string, falling back to the default.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); controller_unlock_print_flush(main->warning.to, 0); } @@ -369,10 +369,10 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(main->error.to, 0); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[' must not be specified with the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_daemon_s, main->context.set.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->context.set.notable, f_console_symbol_long_enable_s, controller_long_daemon_s, main->context.set.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); controller_unlock_print_flush(main->error.to, 0); } @@ -455,7 +455,7 @@ extern "C" { fflush(main->output.to.stream); } - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } if (status != F_child && setting.pid_created) { @@ -465,11 +465,11 @@ extern "C" { if (F_status_set_fine(status_delete) == F_number_not) { controller_lock_print(main->warning.to, 0); - fl_print_format("%q%[%QThe pid file '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%r%[%QThe pid file '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); fl_print_format("%[%Q%]", main->warning.to.stream, main->warning.notable, setting.path_pid, main->warning.notable); fl_print_format("%[' must not be specified with the parameter '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%i%]", main->warning.to.stream, main->warning.notable, main->pid, main->warning.notable); - fl_print_format("%[' doesn't contain the expected number, not deleting file.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%[' doesn't contain the expected number, not deleting file.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); controller_unlock_print_flush(main->warning.to, 0); } diff --git a/level_3/controller/c/controller/private-controller.c b/level_3/controller/c/controller/private-controller.c index 791bf06..2df8b8d 100644 --- a/level_3/controller/c/controller/private-controller.c +++ b/level_3/controller/c/controller/private-controller.c @@ -198,7 +198,7 @@ extern "C" { status = f_file_stream_open(path.string, f_file_open_mode_truncate_s.string, &file); if (F_status_is_error(status)) return status; - fll_print_format("%i%q", file.stream, pid, f_string_eol_s); + fll_print_format("%i%r", file.stream, pid, f_string_eol_s); f_file_stream_close(F_true, &file); @@ -416,9 +416,9 @@ extern "C" { controller_lock_print(global->main->warning.to, global->thread); if (F_status_set_fine(status) == F_read_only) { - fl_print_format("%q%[%QThe pid file '%]", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context); + fl_print_format("%r%[%QThe pid file '%]", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context); fl_print_format("%[%Q%]", global->main->warning.to.stream, global->main->warning.notable, global->setting->path_pid, global->main->warning.notable); - fl_print_format("%[' could not be written because the destination is read only.%]%q", global->main->warning.to.stream, global->main->warning.context, global->main->warning.context, f_string_eol_s); + fl_print_format("%[' could not be written because the destination is read only.%]%r", global->main->warning.to.stream, global->main->warning.context, global->main->warning.context, f_string_eol_s); } else { controller_print_error_file(0, global->main->warning, F_status_set_fine(status), "controller_file_pid_create", F_true, global->setting->path_pid.string, "create", fll_error_file_type_file_e); @@ -437,14 +437,14 @@ extern "C" { if (global->main->output.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%qPID file '", global->main->output.to.stream, f_string_eol_s); + fl_print_format("%rPID file '", global->main->output.to.stream, f_string_eol_s); fl_print_format("%[%Q%]", global->main->output.to.stream, global->main->context.set.notable, global->setting->path_pid, global->main->context.set.notable); if (global->main->parameters.array[controller_parameter_validate_e].result == f_console_result_none_e) { - fl_print_format("' created.%q", global->main->output.to.stream, f_string_eol_s); + fl_print_format("' created.%r", global->main->output.to.stream, f_string_eol_s); } else { - fl_print_format("'.%q", global->main->output.to.stream, f_string_eol_s); + fl_print_format("'.%r", global->main->output.to.stream, f_string_eol_s); } controller_unlock_print_flush(global->main->output.to, global->thread); @@ -458,10 +458,10 @@ extern "C" { if (global->main->output.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%q%[%QControl socket '%]", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context); + fl_print_format("%r%[%QControl socket '%]", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context); fl_print_format("%[%Q%]", global->main->output.to.stream, global->main->context.set.notable, global->setting->path_control, global->main->context.set.notable); - fl_print_format("' .%q", global->main->output.to.stream, f_string_eol_s); - fl_print_format("%[' cannot be found while read only mode is enabled and so the Control socket is unavailable.%]%q", global->main->output.to.stream, global->main->warning.context, global->main->warning.context, f_string_eol_s); + fl_print_format("' .%r", global->main->output.to.stream, f_string_eol_s); + fl_print_format("%[' cannot be found while read only mode is enabled and so the Control socket is unavailable.%]%r", global->main->output.to.stream, global->main->warning.context, global->main->warning.context, f_string_eol_s); controller_unlock_print_flush(global->main->output.to, global->thread); } @@ -482,11 +482,11 @@ extern "C" { if (global->main->output.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%q%[%QControl socket '%]", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context); + fl_print_format("%r%[%QControl socket '%]", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context); fl_print_format("%[%Q%]", global->main->output.to.stream, global->main->context.set.notable, global->setting->path_control, global->main->context.set.notable); fl_print_format("%[' could not be created, code %]", global->main->output.to.stream, global->main->warning.context, global->main->warning.context); fl_print_format("%[%ui%]", global->main->output.to.stream, global->main->context.set.notable, F_status_set_fine(status), global->main->context.set.notable); - fl_print_format("%[.%]%q", global->main->output.to.stream, global->main->warning.context, global->main->warning.context, f_string_eol_s); + fl_print_format("%[.%]%r", global->main->output.to.stream, global->main->warning.context, global->main->warning.context, f_string_eol_s); controller_unlock_print_flush(global->main->output.to, global->thread); } @@ -516,11 +516,11 @@ extern "C" { if (global->main->output.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%q%[%QControl socket '%]", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context); + fl_print_format("%r%[%QControl socket '%]", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context); fl_print_format("%[%Q%]", global->main->output.to.stream, global->main->context.set.notable, global->setting->path_control, global->main->context.set.notable); fl_print_format("%[' could not be bound, code %]", global->main->output.to.stream, global->main->warning.context, global->main->warning.context); fl_print_format("%[%ui%]", global->main->output.to.stream, global->main->context.set.notable, F_status_set_fine(status), global->main->context.set.notable); - fl_print_format("%[.%]%q", global->main->output.to.stream, global->main->warning.context, global->main->warning.context, f_string_eol_s); + fl_print_format("%[.%]%r", global->main->output.to.stream, global->main->warning.context, global->main->warning.context, f_string_eol_s); controller_unlock_print_flush(global->main->output.to, global->thread); } @@ -540,11 +540,11 @@ extern "C" { if (global->main->output.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%q%[%QControl socket '%]", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context); + fl_print_format("%r%[%QControl socket '%]", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context); fl_print_format("%[%Q%]", global->main->output.to.stream, global->main->context.set.notable, global->setting->path_control, global->main->context.set.notable); fl_print_format("%[' failed to set file roles, code %]", global->main->output.to.stream, global->main->warning.context, global->main->warning.context); fl_print_format("%[%ui%]", global->main->output.to.stream, global->main->context.set.notable, F_status_set_fine(status), global->main->context.set.notable); - fl_print_format("%[.%]%q", global->main->output.to.stream, global->main->warning.context, global->main->warning.context, f_string_eol_s); + fl_print_format("%[.%]%r", global->main->output.to.stream, global->main->warning.context, global->main->warning.context, f_string_eol_s); controller_unlock_print_flush(global->main->output.to, global->thread); } @@ -564,11 +564,11 @@ extern "C" { if (global->main->output.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%q%[%QControl socket '%]", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context); + fl_print_format("%r%[%QControl socket '%]", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context); fl_print_format("%[%Q%]", global->main->output.to.stream, global->main->context.set.notable, global->setting->path_control, global->main->context.set.notable); fl_print_format("%[' failed to set file mode, code %]", global->main->output.to.stream, global->main->warning.context, global->main->warning.context); fl_print_format("%[%ui%]", global->main->output.to.stream, global->main->context.set.notable, F_status_set_fine(status), global->main->context.set.notable); - fl_print_format("%[.%]%q", global->main->output.to.stream, global->main->warning.context, global->main->warning.context, f_string_eol_s); + fl_print_format("%[.%]%r", global->main->output.to.stream, global->main->warning.context, global->main->warning.context, f_string_eol_s); controller_unlock_print_flush(global->main->output.to, global->thread); } @@ -577,14 +577,14 @@ extern "C" { if (global->main->output.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%qControl socket '", global->main->output.to.stream, f_string_eol_s); + fl_print_format("%rControl socket '", global->main->output.to.stream, f_string_eol_s); fl_print_format("%[%Q%]", global->main->output.to.stream, global->main->context.set.notable, global->setting->path_control, global->main->context.set.notable); if (global->main->parameters.array[controller_parameter_validate_e].result == f_console_result_none_e) { - fl_print_format("' created.%q", global->main->output.to.stream, f_string_eol_s); + fl_print_format("' created.%r", global->main->output.to.stream, f_string_eol_s); } else { - fl_print_format("'.%q", global->main->output.to.stream, f_string_eol_s); + fl_print_format("'.%r", global->main->output.to.stream, f_string_eol_s); } controller_unlock_print_flush(global->main->output.to, global->thread); diff --git a/level_3/controller/c/controller/private-controller_print.c b/level_3/controller/c/controller/private-controller_print.c index 078750f..fd5e6d6 100644 --- a/level_3/controller/c/controller/private-controller_print.c +++ b/level_3/controller/c/controller/private-controller_print.c @@ -55,9 +55,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/controller/c/entry/private-entry.c b/level_3/controller/c/entry/private-entry.c index 70f68de..d5c2ea3 100644 --- a/level_3/controller/c/entry/private-entry.c +++ b/level_3/controller/c/entry/private-entry.c @@ -285,9 +285,9 @@ extern "C" { if (global.main->warning.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global.main->warning.to, global.thread); - fl_print_format("%q%[%QUnknown %q item action '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->warning.context); + fl_print_format("%r%[%QUnknown %r item action '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->warning.context); fl_print_format("%[%Q%]", global.main->warning.to.stream, global.main->warning.notable, cache->action.name_action, global.main->warning.notable); - fl_print_format("%['.%]%q", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); + fl_print_format("%['.%]%r", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global.main->warning, cache->action); @@ -331,7 +331,7 @@ extern "C" { flockfile(global.main->error.to.stream); - fl_print_format("%q%[%QThe %q item action '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); + fl_print_format("%r%[%QThe %r item action '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, cache->action.name_action, global.main->error.notable); fl_print_format("%[' requires ", global.main->error.to.stream, global.main->error.context); @@ -342,16 +342,16 @@ extern "C" { fl_print_format("%]%[%un%]", global.main->error.to.stream, global.main->error.context, global.main->error.notable, at_least, global.main->error.notable); if (action->type == controller_entry_action_type_consider_e || controller_entry_action_type_is_rule(action->type)) { - fl_print_format("%[ or more parameters.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[ or more parameters.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); } else { if (at_least == at_most) { - fl_print_format("%[ parameters.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[ parameters.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); } else { fl_print_format("%[ to %]", global.main->error.to.stream, global.main->error.context, global.main->error.context); fl_print_format("%[%un%]", global.main->error.to.stream, global.main->error.notable, at_most, global.main->error.notable); - fl_print_format("%[ parameters.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[ parameters.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); } } @@ -440,7 +440,7 @@ extern "C" { } if (global.main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QThe %q item action must not have an empty string for a path (the first parameter).%]%q", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context, f_string_eol_s); + fll_print_format("%r%[%QThe %r item action must not have an empty string for a path (the first parameter).%]%r", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context, f_string_eol_s); } } @@ -483,7 +483,7 @@ extern "C" { flockfile(global.main->error.to.stream); - fl_print_format("%q%[%QThe %q item action second parameter '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); + fl_print_format("%r%[%QThe %r item action second parameter '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, action->parameters.array[1], global.main->error.notable); fl_print_format("%[' must be a base path name, such as '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, cache->buffer_path, global.main->error.notable); @@ -508,7 +508,7 @@ extern "C" { } if (global.main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QThe %q item action must not have an empty string for a rule name (the second parameter).%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context, f_string_eol_s); + fll_print_format("%r%[%QThe %r item action must not have an empty string for a rule name (the second parameter).%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context, f_string_eol_s); } } @@ -535,12 +535,12 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(global.main->error.to.stream); - fl_print_format("%q%[%QThe %q item action third parameter (and beyond) must be one of '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_asynchronous_s, global.main->error.notable); + fl_print_format("%r%[%QThe %r item action third parameter (and beyond) must be one of '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_asynchronous_s, global.main->error.notable); fl_print_format("%[', '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_require_s, global.main->error.notable); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_require_s, global.main->error.notable); fl_print_format("%[', or '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_wait_s, global.main->error.notable); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_wait_s, global.main->error.notable); fl_print_format("%[' but instead has '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, action->parameters.array[j], global.main->error.notable); fl_print_format("%['.%]", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); @@ -561,8 +561,8 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(global.main->error.to.stream); - fl_print_format("%q%[%QThe %q item action may not specify the reserved item '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_main_s, global.main->error.notable); + fl_print_format("%r%[%QThe %r item action may not specify the reserved item '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_main_s, global.main->error.notable); fl_print_format("%['.%]", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); funlockfile(global.main->error.to.stream); @@ -590,12 +590,12 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(global.main->error.to.stream); - fl_print_format("%q%[%QThe %q item action must have one of '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_kill_s, global.main->error.notable); + fl_print_format("%r%[%QThe %r item action must have one of '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_kill_s, global.main->error.notable); fl_print_format("%[', '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_start_s, global.main->error.notable); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_start_s, global.main->error.notable); fl_print_format("%[', or '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_stop_s, global.main->error.notable); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_stop_s, global.main->error.notable); fl_print_format("%[' but instead has '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, action->parameters.array[0], global.main->error.notable); fl_print_format("%['.%]", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); @@ -629,7 +629,7 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(global.main->error.to.stream); - fl_print_format("%q%[%QThe %q item action parameter '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); + fl_print_format("%r%[%QThe %r item action parameter '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, action->parameters.array[1], global.main->error.notable); fl_print_format("%[' is not a valid supported number.%]", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); @@ -649,8 +649,8 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(global.main->error.to.stream); - fl_print_format("%q%[%QThe %q item action may only have '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_wait_s, global.main->error.notable); + fl_print_format("%r%[%QThe %r item action may only have '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_wait_s, global.main->error.notable); fl_print_format("%[' but instead has '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, action->parameters.array[0], global.main->error.notable); fl_print_format("%['.%]", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); @@ -751,9 +751,9 @@ extern "C" { if (global.main->warning.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global.main->warning.to, global.thread); - fl_print_format("%q%[%QMultiple '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context); - fl_print_format("%[%q%]", global.main->warning.to.stream, global.main->warning.notable, controller_ready_s, global.main->warning.notable); - fl_print_format("%[' %q item actions detected; only the first will be used.%]%q", global.main->warning.to.stream, global.main->warning.context, is_entry ? controller_entry_s : controller_exit_s, global.main->warning.context, f_string_eol_s); + fl_print_format("%r%[%QMultiple '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context); + fl_print_format("%[%r%]", global.main->warning.to.stream, global.main->warning.notable, controller_ready_s, global.main->warning.notable); + fl_print_format("%[' %r item actions detected; only the first will be used.%]%r", global.main->warning.to.stream, global.main->warning.context, is_entry ? controller_entry_s : controller_exit_s, global.main->warning.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global.main->warning, cache->action); @@ -787,9 +787,9 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QThe %q item named '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, is_entry ? controller_entry_s : controller_exit_s, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QThe %r item named '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, is_entry ? controller_entry_s : controller_exit_s, global.main->error.prefix, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, entry->items.array[i].name, global.main->error.notable); - fl_print_format("%[' cannot be executed because recursion is not allowed.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[' cannot be executed because recursion is not allowed.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global.main->error, cache->action); @@ -849,9 +849,9 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QThe %q item named '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, is_entry ? controller_entry_s : controller_exit_s, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QThe %r item named '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, is_entry ? controller_entry_s : controller_exit_s, global.main->error.prefix, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, actions->array[cache->ats.array[at_j]].parameters.array[0], global.main->error.notable); - fl_print_format("%[' does not exist.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[' does not exist.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global.main->error, cache->action); @@ -969,8 +969,8 @@ extern "C" { if (global->main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%qProcessing %q%q item '", global->main->output.to.stream, f_string_eol_s, failsafe ? controller_entry_print_failsafe_s : f_string_empty_s, is_entry ? controller_entry_s : controller_exit_s); - fl_print_format("%[%Q%]'.%q", global->main->output.to.stream, global->main->context.set.notable, cache->action.name_item, global->main->context.set.notable, f_string_eol_s); + fl_print_format("%rProcessing %r%r item '", global->main->output.to.stream, f_string_eol_s, failsafe ? controller_entry_print_failsafe_s : f_string_empty_s, is_entry ? controller_entry_s : controller_exit_s); + fl_print_format("%[%Q%]'.%r", global->main->output.to.stream, global->main->context.set.notable, cache->action.name_item, global->main->context.set.notable, f_string_eol_s); controller_unlock_print_flush(global->main->output.to, global->thread); } @@ -1006,7 +1006,7 @@ extern "C" { if (global->main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%qThe %q item action '", global->main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); + fl_print_format("%rThe %r item action '", global->main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); fl_print_format("%[%Q%]", global->main->output.to.stream, global->main->context.set.title, cache->action.name_action, global->main->context.set.title); if (entry_action->parameters.used) { @@ -1017,9 +1017,9 @@ extern "C" { fl_print_format("%]", global->main->output.to.stream, global->main->context.set.notable); } - fl_print_format("' is %[%q%] and is in a ", global->main->output.to.stream, global->main->context.set.notable, entry_action->code & controller_entry_rule_code_require_d ? "required" : "optional", global->main->context.set.notable); + fl_print_format("' is %[%r%] and is in a ", global->main->output.to.stream, global->main->context.set.notable, entry_action->code & controller_entry_rule_code_require_d ? "required" : "optional", global->main->context.set.notable); - fl_print_format("%[failed%] state, skipping.%q", global->main->output.to.stream, global->main->context.set.notable, global->main->context.set.notable, global->main->context.set.notable, f_string_eol_s); + fl_print_format("%[failed%] state, skipping.%r", global->main->output.to.stream, global->main->context.set.notable, global->main->context.set.notable, global->main->context.set.notable, f_string_eol_s); controller_unlock_print_flush(global->main->output.to, global->thread); } @@ -1037,7 +1037,7 @@ extern "C" { controller_lock_print(output->to, global->thread); - fl_print_format("%q%[%QThe %q item action '%]", output->to.stream, f_string_eol_s, output->context, output->prefix, is_entry ? controller_entry_s : controller_exit_s, output->context); + fl_print_format("%r%[%QThe %r item action '%]", output->to.stream, f_string_eol_s, output->context, output->prefix, is_entry ? controller_entry_s : controller_exit_s, output->context); fl_print_format("%[%Q%]", output->to.stream, output->notable, cache->action.name_action, output->notable); @@ -1059,10 +1059,10 @@ extern "C" { fl_print_format(" %[and is in a%] %[failed%]", output->to.stream, output->context, output->context, output->notable, output->notable); if (entry_action->code & controller_entry_rule_code_require_d) { - fl_print_format(" %[state, aborting.%]%q", output->to.stream, output->context, output->context, f_string_eol_s); + fl_print_format(" %[state, aborting.%]%r", output->to.stream, output->context, output->context, f_string_eol_s); } else { - fl_print_format(" %[state, skipping.%]%q", output->to.stream, output->context, output->context, f_string_eol_s); + fl_print_format(" %[state, skipping.%]%r", output->to.stream, output->context, output->context, f_string_eol_s); } controller_entry_print_error_cache(is_entry, *output, cache->action); @@ -1084,9 +1084,9 @@ extern "C" { if (global->main->output.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%qWaiting before processing %q item action '", global->main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); - fl_print_format("%[%q%]", global->main->output.to.stream, global->main->context.set.title, controller_ready_s, global->main->context.set.title); - fl_print_format("'.%q", global->main->output.to.stream, f_string_eol_s); + fl_print_format("%rWaiting before processing %r item action '", global->main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); + fl_print_format("%[%r%]", global->main->output.to.stream, global->main->context.set.title, controller_ready_s, global->main->context.set.title); + fl_print_format("'.%r", global->main->output.to.stream, f_string_eol_s); controller_unlock_print_flush(global->main->output.to, global->thread); } @@ -1103,9 +1103,9 @@ extern "C" { if (global->main->output.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%qIgnoring %q item action '", global->main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); - fl_print_format("%[%q%]", global->main->output.to.stream, global->main->context.set.title, controller_ready_s, global->main->context.set.title); - fl_print_format("', state already is ready.%q", global->main->output.to.stream, f_string_eol_s); + fl_print_format("%rIgnoring %r item action '", global->main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); + fl_print_format("%[%r%]", global->main->output.to.stream, global->main->context.set.title, controller_ready_s, global->main->context.set.title); + fl_print_format("', state already is ready.%r", global->main->output.to.stream, f_string_eol_s); controller_unlock_print_flush(global->main->output.to, global->thread); } @@ -1113,7 +1113,7 @@ extern "C" { } else { if (!failsafe && (global->main->error.verbosity == f_console_verbosity_verbose_e || entry->show == controller_entry_show_init_e) && global->main->parameters.array[controller_parameter_simulate_e].result == f_console_result_none_e) { - fl_print_format("%qState is now '%[%q%]'.%q", global->main->output.to.stream, f_string_eol_s, global->main->context.set.notable, controller_ready_s, global->main->context.set.notable, f_string_eol_s); + fl_print_format("%rState is now '%[%r%]'.%r", global->main->output.to.stream, f_string_eol_s, global->main->context.set.notable, controller_ready_s, global->main->context.set.notable, f_string_eol_s); } status = controller_perform_ready(global, cache, is_entry); @@ -1127,9 +1127,9 @@ extern "C" { if (global->main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global->main->error.to, global->thread); - fl_print_format("%q%[Invalid %q item index '%]", global->main->error.to.stream, f_string_eol_s, global->main->error.context, is_entry ? controller_entry_s : controller_exit_s, global->main->error.context); + fl_print_format("%r%[Invalid %r item index '%]", global->main->error.to.stream, f_string_eol_s, global->main->error.context, is_entry ? controller_entry_s : controller_exit_s, global->main->error.context); fl_print_format("%[%un%]", global->main->error.to.stream, global->main->error.notable, entry_action->number, global->main->error.notable); - fl_print_format("%[' detected.%]%q", global->main->error.to.stream, global->main->error.context, global->main->error.context, f_string_eol_s); + fl_print_format("%[' detected.%]%r", global->main->error.to.stream, global->main->error.context, global->main->error.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global->main->error, cache->action); @@ -1174,9 +1174,9 @@ extern "C" { if (global->main->output.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%qProcessing %q item '", global->main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); + fl_print_format("%rProcessing %r item '", global->main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); fl_print_format("%[%Q%]", global->main->output.to.stream, global->main->context.set.title, cache->action.name_item, global->main->context.set.title); - fl_print_format("'.%q", global->main->output.to.stream, f_string_eol_s); + fl_print_format("'.%r", global->main->output.to.stream, f_string_eol_s); controller_unlock_print_flush(global->main->output.to, global->thread); } @@ -1230,22 +1230,22 @@ extern "C" { if (global->main->output.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%q%q %q item rule ", global->main->output.to.stream, f_string_eol_s, entry_action->type == controller_entry_action_type_consider_e ? controller_entry_print_considering_s : controller_entry_print_processing_s, is_entry ? controller_entry_s : controller_exit_s); + fl_print_format("%r%r %r item rule ", global->main->output.to.stream, f_string_eol_s, entry_action->type == controller_entry_action_type_consider_e ? controller_entry_print_considering_s : controller_entry_print_processing_s, is_entry ? controller_entry_s : controller_exit_s); fl_print_format("'%[%Q%]'", global->main->output.to.stream, global->main->context.set.title, alias_rule, global->main->context.set.title); if (entry->show == controller_entry_show_init_e && global->main->parameters.array[controller_parameter_simulate_e].result == f_console_result_none_e) { - fl_print_format(" [%[%q%]]", global->main->output.to.stream, global->main->context.set.notable, entry_action->code == controller_entry_rule_code_asynchronous_d ? controller_asynchronous_s : controller_synchronous_s, global->main->context.set.notable); + fl_print_format(" [%[%r%]]", global->main->output.to.stream, global->main->context.set.notable, entry_action->code == controller_entry_rule_code_asynchronous_d ? controller_asynchronous_s : controller_synchronous_s, global->main->context.set.notable); if (entry_action->code == controller_entry_rule_code_wait_d) { - fl_print_format(" [%[%q%]]", global->main->output.to.stream, global->main->context.set.notable, controller_wait_s, global->main->context.set.notable); + fl_print_format(" [%[%r%]]", global->main->output.to.stream, global->main->context.set.notable, controller_wait_s, global->main->context.set.notable); } if (entry_action->code == controller_entry_rule_code_require_d) { - fl_print_format(" [%[%q%]]", global->main->output.to.stream, global->main->context.set.notable, controller_required_s, global->main->context.set.notable); + fl_print_format(" [%[%r%]]", global->main->output.to.stream, global->main->context.set.notable, controller_required_s, global->main->context.set.notable); } } - fl_print_format(".%q", global->main->output.to.stream, f_string_eol_s); + fl_print_format(".%r", global->main->output.to.stream, f_string_eol_s); controller_unlock_print_flush(global->main->output.to, global->thread); } @@ -1380,18 +1380,18 @@ extern "C" { if (global->main->output.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%q%Q is executing '", global->main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); + fl_print_format("%r%Q is executing '", global->main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); for (f_array_length_t k = 0; k < entry_action->parameters.used; ++k) { fl_print_format("%[%Q%]", global->main->output.to.stream, global->main->context.set.title, entry_action->parameters.array[k], global->main->context.set.title); if (k + 1 < entry_action->parameters.used) { - f_print_dynamic(f_string_space_s, global->main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, global->main->output.to.stream); } } // for - fl_print_format("'.%q", global->main->output.to.stream, f_string_eol_s); + fl_print_format("'.%r", global->main->output.to.stream, f_string_eol_s); controller_unlock_print_flush(global->main->output.to, global->thread); } @@ -1417,9 +1417,9 @@ extern "C" { if (global->main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global->main->error.to, global->thread); - fl_print_format("%q%[%QExecution failed, unable to find program or script '%]", global->main->error.to.stream, f_string_eol_s, global->main->error.context, global->main->error.prefix, global->main->error.context); + fl_print_format("%r%[%QExecution failed, unable to find program or script '%]", global->main->error.to.stream, f_string_eol_s, global->main->error.context, global->main->error.prefix, global->main->error.context); fl_print_format("%[%Q%]", global->main->error.to.stream, global->main->error.notable, entry_action->parameters.array[0], global->main->error.notable); - fl_print_format("%['.%]%q", global->main->error.to.stream, global->main->error.context, global->main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", global->main->error.to.stream, global->main->error.context, global->main->error.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global->main->error, cache->action); @@ -1436,9 +1436,9 @@ extern "C" { if (global->main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global->main->error.to, global->thread); - fl_print_format("%q%[%QExecution failed with return value of '%]", global->main->error.to.stream, f_string_eol_s, global->main->error.context, global->main->error.prefix, global->main->error.context); + fl_print_format("%r%[%QExecution failed with return value of '%]", global->main->error.to.stream, f_string_eol_s, global->main->error.context, global->main->error.prefix, global->main->error.context); fl_print_format("%[%i%]", global->main->error.to.stream, global->main->error.notable, result, global->main->error.notable); - fl_print_format("$['.%]%q", global->main->error.to.stream, global->main->error.context, global->main->error.context, f_string_eol_s); + fl_print_format("$['.%]%r", global->main->error.to.stream, global->main->error.context, global->main->error.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global->main->error, cache->action); @@ -1473,7 +1473,7 @@ extern "C" { if (global->main->warning.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global->main->warning.to, global->thread); - fl_print_format("%q%[%QFailsafe may not be specified when running in failsafe, ignoring.%]%q", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context, f_string_eol_s); + fl_print_format("%r%[%QFailsafe may not be specified when running in failsafe, ignoring.%]%r", global->main->warning.to.stream, f_string_eol_s, global->main->warning.context, global->main->warning.prefix, global->main->warning.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global->main->warning, cache->action); @@ -1487,9 +1487,9 @@ extern "C" { if (global->main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global->main->error.to, global->thread); - fl_print_format("%q%[%QInvalid %q item index '%]", global->main->error.to.stream, f_string_eol_s, global->main->error.context, global->main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global->main->error.context); + fl_print_format("%r%[%QInvalid %r item index '%]", global->main->error.to.stream, f_string_eol_s, global->main->error.context, global->main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global->main->error.context); fl_print_format("%[%un%]", global->main->error.to.stream, global->main->error.notable, entry_action->number, global->main->error.notable); - fl_print_format("%[' detected.%]%q", global->main->error.to.stream, global->main->error.context, global->main->error.context, f_string_eol_s); + fl_print_format("%[' detected.%]%r", global->main->error.to.stream, global->main->error.context, global->main->error.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global->main->error, cache->action); @@ -1572,13 +1572,13 @@ extern "C" { if ((global->main->parameters.array[controller_parameter_simulate_e].result == f_console_result_found_e && global->main->error.verbosity != f_console_verbosity_quiet_e) || global->main->error.verbosity == f_console_verbosity_verbose_e) { controller_lock_print(global->main->output.to, global->thread); - fl_print_format("%qDone processing %q item '", global->main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); - fl_print_format("%[%q%]", global->main->output.to.stream, global->main->context.set.title, controller_main_s, global->main->context.set.title); - fl_print_format("'.%q", global->main->output.to.stream, f_string_eol_s); + fl_print_format("%rDone processing %r item '", global->main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); + fl_print_format("%[%r%]", global->main->output.to.stream, global->main->context.set.title, controller_main_s, global->main->context.set.title); + fl_print_format("'.%r", global->main->output.to.stream, f_string_eol_s); // failsafe should not print the extra newline because the failure exit from controller_main should handle this. if (!failsafe) { - f_print_dynamic(f_string_eol_s, global->main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, global->main->output.to.stream); } controller_unlock_print_flush(global->main->output.to, global->thread); @@ -1674,7 +1674,7 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fll_print_format("%q%[%QThe %q file is empty.%]%q", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : is_entry ? controller_entry_s : controller_exit_s, global.main->error.context, f_string_eol_s); + fll_print_format("%r%[%QThe %r file is empty.%]%r", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : is_entry ? controller_entry_s : controller_exit_s, global.main->error.context, f_string_eol_s); controller_unlock_print_flush(global.main->error.to, global.thread); } @@ -1754,9 +1754,9 @@ extern "C" { if (global.main->warning.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global.main->warning.to, global.thread); - fl_print_format("%q%[%QIgnoring duplicate %q item '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->warning.context); + fl_print_format("%r%[%QIgnoring duplicate %r item '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->warning.context); fl_print_format("%[%Q%]", global.main->warning.to.stream, global.main->warning.notable, cache->action.name_file, global.main->warning.notable); - fl_print_format("%['.%]%q", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); + fl_print_format("%['.%]%r", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global.main->warning, cache->action); @@ -1837,9 +1837,9 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QThe required %q item '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_main_s, global.main->error.notable); - fl_print_format("%[' was not found.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe required %r item '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_main_s, global.main->error.notable); + fl_print_format("%[' was not found.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_unlock_print_flush(global.main->error.to, global.thread); } @@ -1899,9 +1899,9 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QThe required %q item '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); + fl_print_format("%r%[%QThe required %r item '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, action->parameters.array[0], global.main->error.notable); - fl_print_format("%[' does not exist.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[' does not exist.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global.main->error, cache->action); diff --git a/level_3/controller/c/entry/private-entry_print.c b/level_3/controller/c/entry/private-entry_print.c index 4dc32ea..9a22a96 100644 --- a/level_3/controller/c/entry/private-entry_print.c +++ b/level_3/controller/c/entry/private-entry_print.c @@ -25,7 +25,7 @@ extern "C" { if (index == action.parameters.used) break; - f_print_dynamic(f_string_space_s, stream); + f_print_dynamic_raw(f_string_space_s, stream); } // for } #endif // _di_controller_entry_action_parameters_print_ @@ -39,7 +39,7 @@ extern "C" { controller_lock_print(global.main->output.to, global.thread); - fl_print_format("%qProcessing %q item action '", global.main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); + fl_print_format("%rProcessing %r item action '", global.main->output.to.stream, f_string_eol_s, is_entry ? controller_entry_s : controller_exit_s); fl_print_format("%[%Q%]' setting ", global.main->output.to.stream, global.main->context.set.title, name, global.main->context.set.title); @@ -52,7 +52,7 @@ extern "C" { fl_print_format(" to '%[%Q%]", global.main->output.to.stream, global.main->context.set.important, value, global.main->context.set.important); - fl_print_format("'%Q.%q", global.main->output.to.stream, suffix, f_string_eol_s); + fl_print_format("'%Q.%r", global.main->output.to.stream, suffix, f_string_eol_s); controller_unlock_print_flush(global.main->output.to, global.thread); } @@ -80,7 +80,7 @@ extern "C" { #ifndef _di_controller_entry_print_error_cache_ void controller_entry_print_error_cache(const bool is_entry, const fl_print_t output, const controller_cache_action_t cache) { - fl_print_format("%q%[%QWhile processing ", output.to.stream, f_string_eol_s, output.context, output.prefix); + fl_print_format("%r%[%QWhile processing ", output.to.stream, f_string_eol_s, output.context, output.prefix); if (cache.name_action.used) { fl_print_format("action '%]", output.to.stream, output.context); @@ -91,7 +91,7 @@ extern "C" { } if (cache.name_item.used) { - fl_print_format("%q item '%]", output.to.stream, is_entry ? controller_entry_s : controller_exit_s, output.context); + fl_print_format("%r item '%]", output.to.stream, is_entry ? controller_entry_s : controller_exit_s, output.context); fl_print_format("%[%Q%]", output.to.stream, output.notable, cache.name_item, output.notable); fl_print_format("%[' on line%] ", output.to.stream, output.context, output.context); fl_print_format("%[%un%]", output.to.stream, output.notable, cache.line_item, output.notable); @@ -99,11 +99,11 @@ extern "C" { } if (cache.name_file.used) { - fl_print_format("%q file '%]", output.to.stream, is_entry ? controller_entry_s : controller_exit_s, output.context); + fl_print_format("%r file '%]", output.to.stream, is_entry ? controller_entry_s : controller_exit_s, output.context); fl_print_format("%[%Q%]%['", output.to.stream, output.notable, cache.name_file, output.notable, output.context); } - fl_print_format(".%]%q", output.to.stream, output.context, f_string_eol_s); + fl_print_format(".%]%r", output.to.stream, output.context, f_string_eol_s); } #endif // _di_controller_entry_print_error_cache_ @@ -133,9 +133,9 @@ extern "C" { controller_lock_print(print.to, thread); - fl_print_format("%q%[%Q%s setting%S '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, is_entry ? "Entry" : "Exit", before, print.context); + fl_print_format("%r%[%Q%s setting%S '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, is_entry ? "Entry" : "Exit", before, print.context); fl_print_format("%[%/Q%]", print.to.stream, print.notable, cache->buffer_file, range, print.notable); - fl_print_format("%['%S.%]%q", print.to.stream, print.context, after, print.context, f_string_eol_s); + fl_print_format("%['%S.%]%r", print.to.stream, print.context, after, print.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, print, cache->action); @@ -150,11 +150,11 @@ extern "C" { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QThe %s item setting '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); + fl_print_format("%r%[%QThe %s item setting '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, cache.action.name_action, global.main->error.notable); fl_print_format("%[' requires exactly %]", global.main->error.to.stream, global.main->error.context, global.main->error.context); fl_print_format("%[%un%]", global.main->error.to.stream, global.main->error.notable, total, global.main->error.notable); - fl_print_format("%[' %s.%]%q", global.main->error.to.stream, global.main->error.context, total > 1 ? controller_parameters_s : controller_parameter_s, global.main->error.context, f_string_eol_s); + fl_print_format("%[' %s.%]%r", global.main->error.to.stream, global.main->error.context, total > 1 ? controller_parameters_s : controller_parameter_s, global.main->error.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global.main->error, cache.action); @@ -169,9 +169,9 @@ extern "C" { controller_lock_print(global.main->warning.to, global.thread); - fl_print_format("%q%[%QUnknown %q item setting '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->warning.context); + fl_print_format("%r%[%QUnknown %r item setting '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->warning.context); fl_print_format("%[%Q%]", global.main->warning.to.stream, global.main->warning.notable, cache.action.name_action, global.main->warning.notable); - fl_print_format("%['.%]%q", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); + fl_print_format("%['.%]%r", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global.main->warning, cache.action); @@ -186,11 +186,11 @@ extern "C" { controller_lock_print(global.main->warning.to, global.thread); - fl_print_format("%q%[%QThe %Q item setting '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->warning.context); + fl_print_format("%r%[%QThe %Q item setting '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, is_entry ? controller_entry_s : controller_exit_s, global.main->warning.context); fl_print_format("%[%Q%]", global.main->warning.to.stream, global.main->warning.notable, cache.action.name_action, global.main->warning.notable); fl_print_format("%[' has an unknown value '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.context); fl_print_format("%[%Q%]", global.main->warning.to.stream, global.main->warning.notable, cache.content_actions.array[index].array[0], global.main->warning.notable); - fl_print_format("%['.%]%q", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); + fl_print_format("%['.%]%r", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); controller_entry_print_error_cache(is_entry, global.main->warning, cache.action); diff --git a/level_3/controller/c/lock/private-lock_print.c b/level_3/controller/c/lock/private-lock_print.c index 639ef8c..4455e29 100644 --- a/level_3/controller/c/lock/private-lock_print.c +++ b/level_3/controller/c/lock/private-lock_print.c @@ -15,7 +15,7 @@ extern "C" { if (print.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(print.to, thread); - fl_print_format("%q%[%QThe pid file '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); + fl_print_format("%r%[%QThe pid file '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); fl_print_format("%['Critical failure while attempting to establish '%]", print.to.stream, print.context, print.context); fl_print_format("%[%s lock%]", print.to.stream, print.notable, read ? "read" : "write", print.notable); @@ -36,7 +36,7 @@ extern "C" { } } - fl_print_format("%['.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%['.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); controller_unlock_print_flush(print.to, thread); } diff --git a/level_3/controller/c/rule/private-rule.c b/level_3/controller/c/rule/private-rule.c index 8461e86..fe63b1f 100644 --- a/level_3/controller/c/rule/private-rule.c +++ b/level_3/controller/c/rule/private-rule.c @@ -502,21 +502,21 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QRule item action '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_rerun_s, global.main->error.notable); + fl_print_format("%r%[%QRule item action '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_rerun_s, global.main->error.notable); fl_print_format("%[' has '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); fl_print_format("%[%/Q%]", global.main->error.to.stream, global.main->error.notable, cache->buffer_item, cache->content_action.array[0], global.main->error.notable); fl_print_format("%[' as the first value, only the following are allowed: '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_freeze_s, global.main->error.notable, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_kill_s, global.main->error.notable, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_pause_s, global.main->error.notable, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_reload_s, global.main->error.notable, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_restart_s, global.main->error.notable, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_resume_s, global.main->error.notable, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_start_s, global.main->error.notable, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]%[', or '%]", global.main->error.to.stream, global.main->error.notable, controller_stop_s, global.main->error.notable, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_thaw_s, global.main->error.notable, global.main->error.context); - fl_print_format("%['.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[%r%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_freeze_s, global.main->error.notable, global.main->error.context, global.main->error.context); + fl_print_format("%[%r%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_kill_s, global.main->error.notable, global.main->error.context, global.main->error.context); + fl_print_format("%[%r%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_pause_s, global.main->error.notable, global.main->error.context, global.main->error.context); + fl_print_format("%[%r%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_reload_s, global.main->error.notable, global.main->error.context, global.main->error.context); + fl_print_format("%[%r%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_restart_s, global.main->error.notable, global.main->error.context, global.main->error.context); + fl_print_format("%[%r%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_resume_s, global.main->error.notable, global.main->error.context, global.main->error.context); + fl_print_format("%[%r%]%[', '%]", global.main->error.to.stream, global.main->error.notable, controller_start_s, global.main->error.notable, global.main->error.context, global.main->error.context); + fl_print_format("%[%r%]%[', or '%]", global.main->error.to.stream, global.main->error.notable, controller_stop_s, global.main->error.notable, global.main->error.context, global.main->error.context); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_thaw_s, global.main->error.notable, global.main->error.context); + fl_print_format("%['.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_true); @@ -542,14 +542,14 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QRule item action '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_rerun_s, global.main->error.notable); + fl_print_format("%r%[%QRule item action '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_rerun_s, global.main->error.notable); fl_print_format("%[' has '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); fl_print_format("%[%/Q%]", global.main->error.to.stream, global.main->error.notable, cache->buffer_item, cache->content_action.array[1], global.main->error.notable); fl_print_format("%[' as the second value, only the following are allowed: '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]%[' or '%]", global.main->error.to.stream, global.main->error.notable, controller_stop_s, global.main->error.notable, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_thaw_s, global.main->error.notable, global.main->error.context); - fl_print_format("%['.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[%r%]%[' or '%]", global.main->error.to.stream, global.main->error.notable, controller_stop_s, global.main->error.notable, global.main->error.context, global.main->error.context); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_thaw_s, global.main->error.notable, global.main->error.context); + fl_print_format("%['.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_true); @@ -574,11 +574,11 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QRule item action '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_rerun_s, global.main->error.notable); + fl_print_format("%r%[%QRule item action '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_rerun_s, global.main->error.notable); fl_print_format("%[' has an unknown value '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); fl_print_format("%[%/Q%]", global.main->error.to.stream, global.main->error.notable, cache->buffer_item, cache->content_action.array[i], global.main->error.notable); - fl_print_format("%['.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_true); @@ -616,10 +616,10 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QUnknown value '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QUnknown value '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%/Q%]", global.main->error.to.stream, global.main->error.notable, cache->buffer_item, cache->content_action.array[i], global.main->error.notable); - fl_print_format("%[' for rule item action '%]%[%q%]", global.main->error.to.stream, global.main->error.context, global.main->error.context, global.main->error.notable, controller_with_s, global.main->error.notable); - fl_print_format("%['.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[' for rule item action '%]%[%r%]", global.main->error.to.stream, global.main->error.context, global.main->error.context, global.main->error.notable, controller_with_s, global.main->error.notable); + fl_print_format("%['.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_true); @@ -700,7 +700,7 @@ extern "C" { if (global.main->warning.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global.main->warning.to, global.thread); - fl_print_format("%q%[%QAction is empty, nothing to do.%]%q", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context, f_string_eol_s); + fl_print_format("%r%[%QAction is empty, nothing to do.%]%r", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context, f_string_eol_s); controller_rule_print_error_cache(global.main->warning, cache->action, F_true); @@ -743,26 +743,26 @@ extern "C" { else { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QRule item action '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_rerun_s, global.main->error.notable); + fl_print_format("%r%[%QRule item action '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_rerun_s, global.main->error.notable); fl_print_format("%[' requires a positive whole number or 0 for the '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); fl_print_format("%[%S%]", global.main->error.to.stream, global.main->error.notable, name, global.main->error.notable); fl_print_format("%[' value", global.main->error.to.stream, global.main->error.context, global.main->error.context); if (*index + 1 == cache->content_action.used) { - fl_print_format(", but none were given.%]%q", global.main->error.to.stream, global.main->error.context, f_string_eol_s); + fl_print_format(", but none were given.%]%r", global.main->error.to.stream, global.main->error.context, f_string_eol_s); } else { fl_print_format(", but '%]%[%/Q%]", global.main->error.to.stream, global.main->error.context, global.main->error.notable, cache->buffer_item, cache->content_action.array[*index], global.main->error.notable); if (status == F_number || status == F_number_decimal) { - fl_print_format("%[' was given.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[' was given.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); } else if (status == F_number_overflow) { - fl_print_format("%[' is too large.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[' is too large.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); } else { - fl_print_format("%[' is negative.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[' is negative.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); } } @@ -1238,7 +1238,7 @@ extern "C" { if (global.main->warning.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global.main->warning.to, global.thread); - fl_print_format("%q%[%QAction type is unknown, ignoring.%]%q", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context, f_string_eol_s); + fl_print_format("%r%[%QAction type is unknown, ignoring.%]%r", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context, f_string_eol_s); controller_rule_print_error_cache(global.main->warning, process->cache.action, F_true); @@ -1330,7 +1330,7 @@ extern "C" { if (main->output.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(main->output.to, thread); - fl_print_format("%qSimulating execution of '%[", main->output.to.stream, f_string_eol_s, main->context.set.title); + fl_print_format("%rSimulating execution of '%[", main->output.to.stream, f_string_eol_s, main->context.set.title); if (program.used) { f_print_dynamic_safely(program, main->output.to.stream); @@ -1344,14 +1344,14 @@ extern "C" { for (f_array_length_t i = program.used ? 0 : 1; i < arguments.used; ++i) { if (program.used && i || !program.used && i > 1) { - f_print_dynamic(f_string_space_s, main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, main->output.to.stream); } f_print_dynamic_safely(arguments.array[i], main->output.to.stream); } // for fl_print_format("%]' from '", main->output.to.stream, main->context.set.important); - fl_print_format("%[%Q%]'.%q", main->output.to.stream, main->context.set.notable, process->rule.name, main->context.set.notable, f_string_eol_s); + fl_print_format("%[%Q%]'.%r", main->output.to.stream, main->context.set.notable, process->rule.name, main->context.set.notable, f_string_eol_s); controller_unlock_print_flush(main->output.to, thread); } @@ -1585,7 +1585,7 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(main->error.to, thread); - fl_print_format("%qSimulating execution of '%[", main->error.to.stream, f_string_eol_s, main->context.set.title); + fl_print_format("%rSimulating execution of '%[", main->error.to.stream, f_string_eol_s, main->context.set.title); if (program.used) { f_print_dynamic_safely(program, main->error.to.stream); @@ -1599,14 +1599,14 @@ extern "C" { for (f_array_length_t i = program.used ? 0 : 1; i < arguments.used; ++i) { if (program.used && i || !program.used && i > 1) { - f_print_dynamic(f_string_space_s, main->error.to.stream); + f_print_dynamic_raw(f_string_space_s, main->error.to.stream); } f_print_dynamic_safely(arguments.array[i], main->error.to.stream); } // for fl_print_format("%]' from '", main->error.to.stream, main->context.set.important); - fl_print_format("%[%Q%]'.%q", main->error.to.stream, main->context.set.notable, process->rule.name, main->context.set.notable, f_string_eol_s); + fl_print_format("%[%Q%]'.%r", main->error.to.stream, main->context.set.notable, process->rule.name, main->context.set.notable, f_string_eol_s); controller_unlock_print_flush(main->error.to, thread); } @@ -1776,12 +1776,12 @@ extern "C" { if (main->error.verbosity == f_console_verbosity_debug_e) { controller_lock_print(main->output.to, thread); - fl_print_format("%qRe-running '", main->output.to.stream, f_string_eol_s); - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.title, process->rule.alias, main->context.set.title); + fl_print_format("%rRe-running '", main->output.to.stream, f_string_eol_s); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.title, process->rule.alias, main->context.set.title); f_print_terminated("' '", main->output.to.stream); - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.notable, controller_rule_action_type_execute_name(action), main->context.set.notable); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.notable, controller_rule_action_type_execute_name(action), main->context.set.notable); f_print_terminated("' with a ", main->output.to.stream); - fl_print_format("%[%q%]", main->output.to.stream, main->context.set.notable, controller_delay_s, main->context.set.notable); + fl_print_format("%[%r%]", main->output.to.stream, main->context.set.notable, controller_delay_s, main->context.set.notable); f_print_terminated(" of ", main->output.to.stream); fl_print_format("%[%ul%] MegaTime", main->output.to.stream, main->context.set.notable, rerun_item->delay, main->context.set.notable); @@ -1789,12 +1789,12 @@ extern "C" { f_print_terminated(" for ", main->output.to.stream); fl_print_format("%[%ul%]", main->output.to.stream, main->context.set.notable, rerun_item->count, main->context.set.notable); f_print_terminated(" of ", main->output.to.stream); - fl_print_format("%[%q%] ", main->output.to.stream, main->context.set.notable, controller_max_s, main->context.set.notable); + fl_print_format("%[%r%] ", main->output.to.stream, main->context.set.notable, controller_max_s, main->context.set.notable); fl_print_format("%[%ul%]", main->output.to.stream, main->context.set.notable, rerun_item->max, main->context.set.notable); - fl_print_format(".%q", main->output.to.stream, f_string_eol_s); + fl_print_format(".%r", main->output.to.stream, f_string_eol_s); } else { - fl_print_format(" with no %[%q%].%q", main->output.to.stream, main->context.set.notable, controller_max_s, main->context.set.notable, f_string_eol_s); + fl_print_format(" with no %[%r%].%r", main->output.to.stream, main->context.set.notable, controller_max_s, main->context.set.notable, f_string_eol_s); } controller_unlock_print_flush(main->output.to, thread); @@ -2006,9 +2006,9 @@ extern "C" { if (global.main->warning.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global.main->warning.to, global.thread); - fl_print_format("%q%[%QUnknown rule item action '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context); + fl_print_format("%r%[%QUnknown rule item action '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context); fl_print_format("%[%Q%]", global.main->warning.to.stream, global.main->warning.notable, cache->action.name_action, global.main->warning.notable); - fl_print_format("%['.%]%q", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); + fl_print_format("%['.%]%r", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); controller_rule_print_error_cache(global.main->warning, cache->action, F_true); @@ -2024,9 +2024,9 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QFSS Extended List is not allowed for the rule item action '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QFSS Extended List is not allowed for the rule item action '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, cache->action.name_action, global.main->error.notable); - fl_print_format("%['.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_unlock_print_flush(global.main->error.to, global.thread); } @@ -2207,9 +2207,9 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QUnsupported action type '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_rule_action_type_name(process->action), global.main->error.notable); - fl_print_format("%[' while attempting to execute rule.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%r%[%QUnsupported action type '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_rule_action_type_name(process->action), global.main->error.notable); + fl_print_format("%[' while attempting to execute rule.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, process->cache.action, F_true); @@ -2635,26 +2635,26 @@ extern "C" { controller_lock_print(global.main->error.to, global.thread); if (process->rule.items.used) { - fl_print_format("%q%[%QThe rule '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QThe rule '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, process->rule.name, global.main->error.notable); fl_print_format("%[' has no '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_rule_action_type_name(process->action), global.main->error.notable); - fl_print_format("%[' action to execute.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_rule_action_type_name(process->action), global.main->error.notable); + fl_print_format("%[' action to execute.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); } else { - fl_print_format("%q%[%QThe rule '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QThe rule '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, process->rule.name, global.main->error.notable); fl_print_format("%[ has no known '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); - fl_print_format("%[%q %q%]", global.main->error.to.stream, global.main->error.notable, controller_rule_s, controller_type_s, global.main->error.notable); + fl_print_format("%[%r %r%]", global.main->error.to.stream, global.main->error.notable, controller_rule_s, controller_type_s, global.main->error.notable); fl_print_format("%[' (such as '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_command_s, global.main->error.notable); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_command_s, global.main->error.notable); fl_print_format("%[', '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_service_s, global.main->error.notable); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_service_s, global.main->error.notable); fl_print_format("%[', '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_script_s, global.main->error.notable); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_script_s, global.main->error.notable); fl_print_format("%[', or '%]", global.main->error.to.stream, global.main->error.context, global.main->error.context); - fl_print_format("%[%q%]", global.main->error.to.stream, global.main->error.notable, controller_utility_s, global.main->error.notable); - fl_print_format("%[') to execute.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[%r%]", global.main->error.to.stream, global.main->error.notable, controller_utility_s, global.main->error.notable); + fl_print_format("%[') to execute.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); } controller_rule_print_error_cache(global.main->error, process->cache.action, F_true); @@ -3091,9 +3091,9 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QThe rule '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QThe rule '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, process->rule.alias, global.main->error.notable); - fl_print_format("%[' is already on the execution dependency stack, this recursion is prohibited.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[' is already on the execution dependency stack, this recursion is prohibited.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, process->cache.action, F_true); @@ -3463,9 +3463,9 @@ extern "C" { if (global.main->warning.verbosity == f_console_verbosity_debug_e) { controller_lock_print(global.main->warning.to, global.thread); - fl_print_format("%q%[%QUnknown rule item '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context); + fl_print_format("%r%[%QUnknown rule item '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context); fl_print_format("%[%Q%]", global.main->warning.to.stream, global.main->warning.notable, cache->action.name_item, global.main->warning.notable); - fl_print_format("%['.%]%q", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); + fl_print_format("%['.%]%r", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); controller_rule_print_error_cache(global.main->warning, cache->action, F_true); @@ -3682,9 +3682,9 @@ extern "C" { controller_lock_print(global.main->warning.to, global.thread); - fl_print_format("%q%[%QUnknown rule setting '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context); + fl_print_format("%r%[%QUnknown rule setting '%]", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context); fl_print_format("%[%Q%]", global.main->warning.to.stream, global.main->warning.notable, cache->action.name_item, global.main->warning.notable); - fl_print_format("%['.%]%q", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); + fl_print_format("%['.%]%r", global.main->warning.to.stream, global.main->warning.context, global.main->warning.context, f_string_eol_s); controller_rule_print_error_cache(global.main->warning, cache->action, F_false); @@ -3746,7 +3746,7 @@ extern "C" { controller_lock_print(global.main->warning.to, global.thread); - fl_print_format("%q%[%QEmpty rule setting.%]%q", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context, f_string_eol_s); + fl_print_format("%r%[%QEmpty rule setting.%]%r", global.main->warning.to.stream, f_string_eol_s, global.main->warning.context, global.main->warning.prefix, global.main->warning.context, f_string_eol_s); controller_rule_print_error_cache(global.main->warning, cache->action, F_false); @@ -4126,9 +4126,9 @@ extern "C" { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QUnknown resource limit type '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QUnknown resource limit type '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, cache->action.name_action, global.main->error.notable); - fl_print_format("%['.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_true); @@ -4155,7 +4155,7 @@ extern "C" { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%SThe resource limit type is already specified%]%q", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%r%[%SThe resource limit type is already specified%]%r", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_false); @@ -4328,9 +4328,9 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QRule setting has an invalid name '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QRule setting has an invalid name '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, *setting_value, global.main->error.notable); - fl_print_format("%[', there must be at least 1 graph character.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%[', there must be at least 1 graph character.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_false); @@ -4480,7 +4480,7 @@ extern "C" { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QRule setting has an invalid number '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QRule setting has an invalid number '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%/Q%]", global.main->error.to.stream, global.main->error.notable, cache->buffer_item, cache->content_actions.array[i].array[1], global.main->error.notable); if (zero_only) { @@ -4493,7 +4493,7 @@ extern "C" { fl_print_format("%[99%] %[are", global.main->error.to.stream, global.main->error.notable, global.main->error.notable, global.main->error.context); } - fl_print_format(" allowed for the designated scheduler.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format(" allowed for the designated scheduler.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_false); @@ -4559,9 +4559,9 @@ extern "C" { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QRule setting's first value has '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QRule setting's first value has '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%/Q%]", global.main->error.to.stream, global.main->error.notable, cache->buffer_item, cache->content_actions.array[i].array[0], global.main->error.notable); - fl_print_format("%[' but only supports %q, %q, and %q.%]%q", global.main->error.to.stream, global.main->error.context, controller_kill_s, controller_start_s, controller_stop_s, global.main->error.context, f_string_eol_s); + fl_print_format("%[' but only supports %r, %r, and %r.%]%r", global.main->error.to.stream, global.main->error.context, controller_kill_s, controller_start_s, controller_stop_s, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_false); @@ -4785,13 +4785,13 @@ extern "C" { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QRule setting has an invalid number '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QRule setting has an invalid number '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%/Q%]", global.main->error.to.stream, global.main->error.notable, cache->buffer_item, cache->content_actions.array[i].array[0], global.main->error.notable); fl_print_format("%[', only the whole numbers inclusively between%] ", global.main->error.to.stream, global.main->error.context, global.main->error.context); fl_print_format("%[-20%]", global.main->error.to.stream, global.main->error.notable, global.main->error.notable); fl_print_format(" %[and%] ", global.main->error.to.stream, global.main->error.context, global.main->error.context); fl_print_format("%[19%]", global.main->error.to.stream, global.main->error.notable, global.main->error.notable); - fl_print_format(" %[are allowed.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format(" %[are allowed.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_false); @@ -5086,9 +5086,9 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QRule setting has an invalid environment variable name '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QRule setting has an invalid environment variable name '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, global.main->error.notable, setting_values->array[setting_values->used], global.main->error.notable); - fl_print_format("%['.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_false); @@ -5128,7 +5128,7 @@ extern "C" { if (global.main->error.verbosity == f_console_verbosity_debug_e || (global.main->error.verbosity == f_console_verbosity_verbose_e && global.main->parameters.array[controller_parameter_simulate_e].result == f_console_result_found_e)) { controller_lock_print(global.main->output.to, global.thread); - fl_print_format("%qProcessing rule item action '%[%q%]' setting value to an empty set.%q", global.main->output.to.stream, f_string_eol_s, global.main->context.set.title, controller_environment_s, global.main->context.set.title, f_string_eol_s); + fl_print_format("%rProcessing rule item action '%[%r%]' setting value to an empty set.%r", global.main->output.to.stream, f_string_eol_s, global.main->context.set.title, controller_environment_s, global.main->context.set.title, f_string_eol_s); controller_unlock_print_flush(global.main->output.to, global.thread); } @@ -5188,10 +5188,10 @@ extern "C" { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QRule setting's second value has '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QRule setting's second value has '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%/Q%]", global.main->error.to.stream, global.main->error.notable, cache->buffer_item, cache->content_actions.array[i].array[1], global.main->error.notable); - fl_print_format("%[' but only supports %q, %q, %q, %q, %q", global.main->error.to.stream, global.main->error.context, controller_freeze_s, controller_kill_s, controller_pause_s, controller_reload_s, controller_restart_s); - fl_print_format("%q, %q, %q, and %q.%]%q", global.main->error.to.stream, controller_resume_s, controller_start_s, controller_stop_s, controller_thaw_s, global.main->error.context, f_string_eol_s); + fl_print_format("%[' but only supports %r, %r, %r, %r, %r", global.main->error.to.stream, global.main->error.context, controller_freeze_s, controller_kill_s, controller_pause_s, controller_reload_s, controller_restart_s); + fl_print_format("%r, %r, %r, and %r.%]%r", global.main->error.to.stream, controller_resume_s, controller_start_s, controller_stop_s, controller_thaw_s, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_false); @@ -5237,9 +5237,9 @@ extern "C" { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QRule setting's second value has '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QRule setting's second value has '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%/Q%]", global.main->error.to.stream, global.main->error.notable, cache->buffer_item, cache->content_actions.array[i].array[1], global.main->error.notable); - fl_print_format("%[' but only supports %q, %q, and %q.%]%q", global.main->error.to.stream, global.main->error.context, controller_need_s, controller_want_s, controller_wish_s, global.main->error.context, f_string_eol_s); + fl_print_format("%[' but only supports %r, %r, and %r.%]%r", global.main->error.to.stream, global.main->error.context, controller_need_s, controller_want_s, controller_wish_s, global.main->error.context, f_string_eol_s); controller_rule_print_error_cache(global.main->error, cache->action, F_false); @@ -5332,11 +5332,11 @@ extern "C" { if (global.main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(global.main->error.to, global.thread); - fl_print_format("%q%[%QThe rule item action third parameter '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); + fl_print_format("%r%[%QThe rule item action third parameter '%]", global.main->error.to.stream, f_string_eol_s, global.main->error.context, global.main->error.prefix, global.main->error.context); fl_print_format("%[%/Q%]", global.main->error.to.stream, global.main->error.notable, cache->buffer_item, cache->content_actions.array[i].array[2], global.main->error.notable); fl_print_format("%[' must be a base path name, such as %un '.%]", global.main->error.to.stream, global.main->error.context, cache->buffer_path.used, global.main->error.context); fl_print_format("%[%Q%]", global.main->error.to.stream, cache->buffer_path, global.main->error.notable); - fl_print_format("%['.%]%q", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", global.main->error.to.stream, global.main->error.context, global.main->error.context, f_string_eol_s); controller_unlock_print_flush(global.main->error.to, global.thread); } @@ -5357,10 +5357,10 @@ extern "C" { if (global.main->error.verbosity == f_console_verbosity_debug_e || (global.main->error.verbosity == f_console_verbosity_verbose_e && global.main->parameters.array[controller_parameter_simulate_e].result == f_console_result_found_e)) { controller_lock_print(global.main->output.to, global.thread); - fl_print_format("%qProcessing rule item action '%[%S%]', adding ", global.main->output.to.stream, f_string_eol_s, global.main->context.set.title, controller_on_s, global.main->context.set.title); + fl_print_format("%rProcessing rule item action '%[%S%]', adding ", global.main->output.to.stream, f_string_eol_s, global.main->context.set.title, controller_on_s, global.main->context.set.title); fl_print_format("'%[%/Q%]' of ", global.main->output.to.stream, global.main->context.set.notable, cache->buffer_item, cache->content_actions.array[i].array[1], global.main->context.set.notable); fl_print_format("'%[%/Q%]/", global.main->output.to.stream, global.main->context.set.important, cache->buffer_item, cache->content_actions.array[i].array[2], global.main->context.set.important); - fl_print_format("%[%/Q%]'.%q", global.main->output.to.stream, global.main->context.set.important, cache->buffer_item, cache->content_actions.array[i].array[3], global.main->context.set.important, f_string_eol_s); + fl_print_format("%[%/Q%]'.%r", global.main->output.to.stream, global.main->context.set.important, cache->buffer_item, cache->content_actions.array[i].array[3], global.main->context.set.important, f_string_eol_s); controller_unlock_print_flush(global.main->output.to, global.thread); } @@ -5399,9 +5399,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(main->error.to, global.thread); - fl_print_format("%q%[%QUnsupported action type '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%]", main->error.to.stream, main->error.notable, controller_rule_action_type_name(action), main->error.notable); - fl_print_format("%[' while attempting to validate rule execution.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QUnsupported action type '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%]", main->error.to.stream, main->error.notable, controller_rule_action_type_name(action), main->error.notable); + fl_print_format("%[' while attempting to validate rule execution.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); controller_rule_print_error_cache(main->error, cache->action, F_true); @@ -5433,22 +5433,22 @@ extern "C" { controller_lock_print(main->output.to, global.thread); if (rule.items.used) { - fl_print_format("%qRule '", main->output.to.stream, f_string_eol_s); + fl_print_format("%rRule '", main->output.to.stream, f_string_eol_s); fl_print_format("%[%Q%]' has no '", main->output.to.stream, main->context.set.title, rule.name, main->context.set.title); - fl_print_format("%[%q%]' action to execute and would '", main->output.to.stream, main->context.set.title, controller_rule_action_type_name(action), main->context.set.title); - fl_print_format("%[%q%]' because it is '", main->output.to.stream, main->context.set.important, options & controller_process_option_require_d ? controller_fail_s : controller_succeed_s, main->context.set.important); - fl_print_format("%[%q%]'.%q", main->output.to.stream, main->context.set.important, options & controller_process_option_require_d ? controller_required_s : controller_optional_s, main->context.set.important, f_string_eol_s); + fl_print_format("%[%r%]' action to execute and would '", main->output.to.stream, main->context.set.title, controller_rule_action_type_name(action), main->context.set.title); + fl_print_format("%[%r%]' because it is '", main->output.to.stream, main->context.set.important, options & controller_process_option_require_d ? controller_fail_s : controller_succeed_s, main->context.set.important); + fl_print_format("%[%r%]'.%r", main->output.to.stream, main->context.set.important, options & controller_process_option_require_d ? controller_required_s : controller_optional_s, main->context.set.important, f_string_eol_s); } else { - fl_print_format("%qRule '", main->output.to.stream, f_string_eol_s); + fl_print_format("%rRule '", main->output.to.stream, f_string_eol_s); fl_print_format("%[%Q%]' has no known '", main->output.to.stream, main->context.set.title, rule.name, main->context.set.title); - fl_print_format("%[%q %q%]' (such as ", main->output.to.stream, main->context.set.title, controller_rule_s, controller_type_s, main->context.set.title); - fl_print_format("'%[%q%]', ", main->output.to.stream, main->context.set.title, controller_command_s, main->context.set.title); - fl_print_format("'%[%q%]', ", main->output.to.stream, main->context.set.title, controller_service_s, main->context.set.title); - fl_print_format("'%[%q%]', or ", main->output.to.stream, main->context.set.title, controller_script_s, main->context.set.title); - fl_print_format("'%[%q%]'", main->output.to.stream, main->context.set.title, controller_utility_s, main->context.set.title); - fl_print_format(") and would '%[%q%]' because it is '", main->output.to.stream, main->context.set.important, options & controller_process_option_require_d ? controller_fail_s : controller_succeed_s, main->context.set.important); - fl_print_format("%[%q%]'.%q", main->output.to.stream, main->context.set.important, options & controller_process_option_require_d ? controller_required_s : controller_optional_s, main->context.set.important, f_string_eol_s); + fl_print_format("%[%r %r%]' (such as ", main->output.to.stream, main->context.set.title, controller_rule_s, controller_type_s, main->context.set.title); + fl_print_format("'%[%r%]', ", main->output.to.stream, main->context.set.title, controller_command_s, main->context.set.title); + fl_print_format("'%[%r%]', ", main->output.to.stream, main->context.set.title, controller_service_s, main->context.set.title); + fl_print_format("'%[%r%]', or ", main->output.to.stream, main->context.set.title, controller_script_s, main->context.set.title); + fl_print_format("'%[%r%]'", main->output.to.stream, main->context.set.title, controller_utility_s, main->context.set.title); + fl_print_format(") and would '%[%r%]' because it is '", main->output.to.stream, main->context.set.important, options & controller_process_option_require_d ? controller_fail_s : controller_succeed_s, main->context.set.important); + fl_print_format("%[%r%]'.%r", main->output.to.stream, main->context.set.important, options & controller_process_option_require_d ? controller_required_s : controller_optional_s, main->context.set.important, f_string_eol_s); } controller_unlock_print_flush(main->output.to, global.thread); @@ -5457,13 +5457,13 @@ extern "C" { controller_lock_print(main->output.to, global.thread); - fl_print_format("%qRule %[%Q%] {%q", main->output.to.stream, f_string_eol_s, main->context.set.title, rule.alias, main->context.set.title, f_string_eol_s); + fl_print_format("%rRule %[%Q%] {%r", main->output.to.stream, f_string_eol_s, main->context.set.title, rule.alias, main->context.set.title, f_string_eol_s); // name. - fl_print_format(" %[%q%] %Q%q", main->output.to.stream, main->context.set.important, controller_name_s, main->context.set.important, rule.name, f_string_eol_s); + fl_print_format(" %[%r%] %Q%r", main->output.to.stream, main->context.set.important, controller_name_s, main->context.set.important, rule.name, f_string_eol_s); // capability. - fl_print_format(" %[%q%] ", main->output.to.stream, main->context.set.important, controller_capability_s, main->context.set.important); + fl_print_format(" %[%r%] ", main->output.to.stream, main->context.set.important, controller_capability_s, main->context.set.important); if (f_capability_supported()) { if (rule.capability) { @@ -5474,17 +5474,17 @@ extern "C" { } } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } else { - fl_print_format("%[(unsupported)%]%q", main->output.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[(unsupported)%]%r", main->output.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); } // control group. - fl_print_format(" %[%q%]", main->output.to.stream, main->context.set.important, controller_cgroup_s, main->context.set.important); + fl_print_format(" %[%r%]", main->output.to.stream, main->context.set.important, controller_cgroup_s, main->context.set.important); if (rule.has & controller_rule_has_cgroup_d) { - fl_print_format(" %q", main->output.to.stream, rule.cgroup.as_new ? controller_new_s : controller_existing_s); + fl_print_format(" %r", main->output.to.stream, rule.cgroup.as_new ? controller_new_s : controller_existing_s); for (i = 0; i < rule.cgroup.groups.used; ++i) { @@ -5494,22 +5494,22 @@ extern "C" { } // for } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); // How. - fl_print_format(" %[%q%] %q%q", main->output.to.stream, main->context.set.important, controller_how_s, main->context.set.important, options & controller_process_option_asynchronous_d ? controller_asynchronous_s : controller_synchronous_s, f_string_eol_s); + fl_print_format(" %[%r%] %r%r", main->output.to.stream, main->context.set.important, controller_how_s, main->context.set.important, options & controller_process_option_asynchronous_d ? controller_asynchronous_s : controller_synchronous_s, f_string_eol_s); // Nice. - fl_print_format(" %[%q%]", main->output.to.stream, main->context.set.important, controller_nice_s, main->context.set.important); + fl_print_format(" %[%r%]", main->output.to.stream, main->context.set.important, controller_nice_s, main->context.set.important); if (rule.has & controller_rule_has_nice_d) { fl_print_format(" %i", main->output.to.stream, rule.nice); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); // Scheduler. - fl_print_format(" %[%q%]", main->output.to.stream, main->context.set.important, controller_scheduler_s, main->context.set.important); + fl_print_format(" %[%r%]", main->output.to.stream, main->context.set.important, controller_scheduler_s, main->context.set.important); if (rule.has & controller_rule_has_scheduler_d) { f_string_static_t policy = f_string_static_t_initialize; @@ -5533,87 +5533,87 @@ extern "C" { policy = controller_round_robin_s; } - fl_print_format(" %q %i", main->output.to.stream, policy, rule.scheduler.priority); + fl_print_format(" %r %i", main->output.to.stream, policy, rule.scheduler.priority); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); // script. - fl_print_format(" %[%q%] %Q%q", main->output.to.stream, main->context.set.important, controller_script_s, main->context.set.important, rule.script, f_string_eol_s); + fl_print_format(" %[%r%] %Q%r", main->output.to.stream, main->context.set.important, controller_script_s, main->context.set.important, rule.script, f_string_eol_s); // user. - fl_print_format(" %[%q%]", main->output.to.stream, main->context.set.important, controller_user_s, main->context.set.important); + fl_print_format(" %[%r%]", main->output.to.stream, main->context.set.important, controller_user_s, main->context.set.important); if (rule.has & controller_rule_has_user_d) { fl_print_format(" %i", main->output.to.stream, rule.user); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); // wait. - fl_print_format(" %[%q%] %q%q", main->output.to.stream, main->context.set.important, controller_wait_s, main->context.set.important, options & controller_process_option_wait_d ? controller_yes_s : controller_no_s, f_string_eol_s); + fl_print_format(" %[%r%] %r%r", main->output.to.stream, main->context.set.important, controller_wait_s, main->context.set.important, options & controller_process_option_wait_d ? controller_yes_s : controller_no_s, f_string_eol_s); // affinity. - fl_print_format(" %[%q%] {%q", main->output.to.stream, main->context.set.important, controller_affinity_s, main->context.set.important, f_string_eol_s); + fl_print_format(" %[%r%] {%r", main->output.to.stream, main->context.set.important, controller_affinity_s, main->context.set.important, f_string_eol_s); for (i = 0; i < rule.affinity.used; ++i) { - fl_print_format(" %i%q", main->output.to.stream, rule.affinity.array[i], f_string_eol_s); + fl_print_format(" %i%r", main->output.to.stream, rule.affinity.array[i], f_string_eol_s); } // for // define. - fl_print_format(" }%q %[%q%] {%q", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_define_s, main->context.set.important, f_string_eol_s); + fl_print_format(" }%r %[%r%] {%r", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_define_s, main->context.set.important, f_string_eol_s); for (i = 0; i < rule.define.used; ++i) { if (rule.define.array[i].name.used && rule.define.array[i].value.used) { - fl_print_format(" %Q %[=%] %Q%q", main->output.to.stream, rule.define.array[i].name, main->context.set.important, main->context.set.important, rule.define.array[i].value, f_string_eol_s); + fl_print_format(" %Q %[=%] %Q%r", main->output.to.stream, rule.define.array[i].name, main->context.set.important, main->context.set.important, rule.define.array[i].value, f_string_eol_s); } } // for // environment. - fl_print_format(" }%q %[%q%] {%q", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_environment_s, main->context.set.important, f_string_eol_s); + fl_print_format(" }%r %[%r%] {%r", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_environment_s, main->context.set.important, f_string_eol_s); for (i = 0; i < rule.environment.used; ++i) { if (rule.environment.array[i].used) { - fl_print_format(" %Q%q", main->output.to.stream, rule.environment.array[i], f_string_eol_s); + fl_print_format(" %Q%r", main->output.to.stream, rule.environment.array[i], f_string_eol_s); } } // for - fl_print_format(" }%q %[%q%] {%q", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_parameter_s, main->context.set.important, f_string_eol_s); + fl_print_format(" }%r %[%r%] {%r", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_parameter_s, main->context.set.important, f_string_eol_s); // parameter. for (i = 0; i < rule.parameter.used; ++i) { if (rule.parameter.array[i].name.used && rule.parameter.array[i].value.used) { - fl_print_format(" %Q %[=%] %Q%q", main->output.to.stream, rule.parameter.array[i].name, main->context.set.important, main->context.set.important, rule.parameter.array[i].value, f_string_eol_s); + fl_print_format(" %Q %[=%] %Q%r", main->output.to.stream, rule.parameter.array[i].name, main->context.set.important, main->context.set.important, rule.parameter.array[i].value, f_string_eol_s); } } // for // group. - fl_print_format(" }%q %[%q%] {%q", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_group_s, main->context.set.important, f_string_eol_s); + fl_print_format(" }%r %[%r%] {%r", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_group_s, main->context.set.important, f_string_eol_s); if (rule.has & controller_rule_has_group_d) { - fl_print_format(" %i%q", main->output.to.stream, rule.group, f_string_eol_s); + fl_print_format(" %i%r", main->output.to.stream, rule.group, f_string_eol_s); for (i = 0; i < rule.groups.used; ++i) { - fl_print_format(" %i%q", main->output.to.stream, rule.groups.array[i], f_string_eol_s); + fl_print_format(" %i%r", main->output.to.stream, rule.groups.array[i], f_string_eol_s); } // for } // limit. - fl_print_format(" }%q %[%q%] {%q", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_limit_s, main->context.set.important, f_string_eol_s); + fl_print_format(" }%r %[%r%] {%r", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_limit_s, main->context.set.important, f_string_eol_s); for (i = 0; i < rule.limits.used; ++i) { - fl_print_format(" %Q %[=%] %un %un%q", main->output.to.stream, controller_rule_setting_limit_type_name(rule.limits.array[i].type), main->context.set.important, main->context.set.important, rule.limits.array[i].value.rlim_cur, rule.limits.array[i].value.rlim_max, f_string_eol_s); + fl_print_format(" %Q %[=%] %un %un%r", main->output.to.stream, controller_rule_setting_limit_type_name(rule.limits.array[i].type), main->context.set.important, main->context.set.important, rule.limits.array[i].value.rlim_cur, rule.limits.array[i].value.rlim_max, f_string_eol_s); } // for // on. - fl_print_format(" }%q %[%q%] {%q", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_on_s, main->context.set.important, f_string_eol_s); + fl_print_format(" }%r %[%r%] {%r", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_on_s, main->context.set.important, f_string_eol_s); for (i = 0; i < rule.ons.used; ++i) { - fl_print_format(" %[%q%] {%q", main->output.to.stream, main->context.set.important, controller_action_s, main->context.set.important, f_string_eol_s); + fl_print_format(" %[%r%] {%r", main->output.to.stream, main->context.set.important, controller_action_s, main->context.set.important, f_string_eol_s); { f_string_static_t action = f_string_static_t_initialize; @@ -5646,40 +5646,40 @@ extern "C" { action = controller_thaw_s; } - fl_print_format(" %[%q%] %q%q", main->output.to.stream, main->context.set.important, controller_type_s, main->context.set.important, action, f_string_eol_s); + fl_print_format(" %[%r%] %r%r", main->output.to.stream, main->context.set.important, controller_type_s, main->context.set.important, action, f_string_eol_s); } - fl_print_format(" %[%q%] {%q", main->output.to.stream, main->context.set.important, controller_need_s, main->context.set.important, f_string_eol_s); + fl_print_format(" %[%r%] {%r", main->output.to.stream, main->context.set.important, controller_need_s, main->context.set.important, f_string_eol_s); for (j = 0; j < rule.ons.array[i].need.used; ++j) { if (rule.ons.array[i].need.array[j].used) { - fl_print_format(" %Q%q", main->output.to.stream, rule.ons.array[i].need.array[j], f_string_eol_s); + fl_print_format(" %Q%r", main->output.to.stream, rule.ons.array[i].need.array[j], f_string_eol_s); } } // for - fl_print_format(" }%q %[%q%] {%q", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_want_s, main->context.set.important, f_string_eol_s); + fl_print_format(" }%r %[%r%] {%r", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_want_s, main->context.set.important, f_string_eol_s); for (j = 0; j < rule.ons.array[i].want.used; ++j) { if (rule.ons.array[i].want.array[j].used) { - fl_print_format(" %Q%q", main->output.to.stream, rule.ons.array[i].want.array[j], f_string_eol_s); + fl_print_format(" %Q%r", main->output.to.stream, rule.ons.array[i].want.array[j], f_string_eol_s); } } // for - fl_print_format(" }%q %[%q%] {%q", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_wish_s, main->context.set.important, f_string_eol_s); + fl_print_format(" }%r %[%r%] {%r", main->output.to.stream, f_string_eol_s, main->context.set.important, controller_wish_s, main->context.set.important, f_string_eol_s); for (j = 0; j < rule.ons.array[i].wish.used; ++j) { if (rule.ons.array[i].wish.array[j].used) { - fl_print_format(" %Q%q", main->output.to.stream, rule.ons.array[i].wish.array[j], f_string_eol_s); + fl_print_format(" %Q%r", main->output.to.stream, rule.ons.array[i].wish.array[j], f_string_eol_s); } } // for - fl_print_format(" }%q }%q", main->output.to.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" }%r }%r", main->output.to.stream, f_string_eol_s, f_string_eol_s); } // for - fl_print_format(" }%q", main->output.to.stream, f_string_eol_s); + fl_print_format(" }%r", main->output.to.stream, f_string_eol_s); // items. if (rule.items.used) { @@ -5695,41 +5695,41 @@ extern "C" { item = &rule.items.array[i]; - fl_print_format(" %[%q%] {%q", main->output.to.stream, main->context.set.important, controller_item_s, main->context.set.important, f_string_eol_s); + fl_print_format(" %[%r%] {%r", main->output.to.stream, main->context.set.important, controller_item_s, main->context.set.important, f_string_eol_s); // type. - fl_print_format(" %[%q%] %Q%q", main->output.to.stream, main->context.set.important, controller_type_s, main->context.set.important, controller_rule_item_type_name(item->type), f_string_eol_s); + fl_print_format(" %[%r%] %Q%r", main->output.to.stream, main->context.set.important, controller_type_s, main->context.set.important, controller_rule_item_type_name(item->type), f_string_eol_s); // pid_file. - fl_print_format(" %[%q%]", main->output.to.stream, main->context.set.important, controller_pid_file_s, main->context.set.important); + fl_print_format(" %[%r%]", main->output.to.stream, main->context.set.important, controller_pid_file_s, main->context.set.important); if (item->pid_file.used) { fl_print_format(" %Q", main->output.to.stream, item->pid_file); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); // with. - fl_print_format(" %[%q%]", main->output.to.stream, main->context.set.important, controller_with_s, main->context.set.important); + fl_print_format(" %[%r%]", main->output.to.stream, main->context.set.important, controller_with_s, main->context.set.important); if (item->with & controller_with_full_path_d) { - fl_print_format(" %q", main->output.to.stream, controller_full_path_s); + fl_print_format(" %r", main->output.to.stream, controller_full_path_s); } if (item->with & controller_with_session_new_d) { - fl_print_format(" %q", main->output.to.stream, controller_session_new_s); + fl_print_format(" %r", main->output.to.stream, controller_session_new_s); } if (item->with & controller_with_session_same_d) { - fl_print_format(" %q", main->output.to.stream, controller_session_same_s); + fl_print_format(" %r", main->output.to.stream, controller_session_same_s); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); // actions. for (j = 0; j < item->actions.used; ++j) { action = &item->actions.array[j]; - fl_print_format(" %[%q%] {%q", main->output.to.stream, main->context.set.important, controller_action_s, main->context.set.important, f_string_eol_s); - fl_print_format(" %[%q%] %q%q", main->output.to.stream, main->context.set.important, controller_type_s, main->context.set.important, controller_rule_action_type_name(action->type), f_string_eol_s); + fl_print_format(" %[%r%] {%r", main->output.to.stream, main->context.set.important, controller_action_s, main->context.set.important, f_string_eol_s); + fl_print_format(" %[%r%] %r%r", main->output.to.stream, main->context.set.important, controller_type_s, main->context.set.important, controller_rule_action_type_name(action->type), f_string_eol_s); if (item->type == controller_rule_item_type_script_e || item->type == controller_rule_item_type_utility_e) { - fl_print_format(" %[%q%] {%q", main->output.to.stream, main->context.set.important, controller_parameter_s, main->context.set.important, f_string_eol_s); + fl_print_format(" %[%r%] {%r", main->output.to.stream, main->context.set.important, controller_parameter_s, main->context.set.important, f_string_eol_s); parameter = &action->parameters.array[0]; @@ -5740,7 +5740,7 @@ extern "C" { if (parameter->string[k] == f_fss_eol_s.string[0]) { if (k + 1 < parameter->used) { - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); f_print_terminated(" ", main->output.to.stream); } } @@ -5750,22 +5750,22 @@ extern "C" { } } // for - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } - fl_print_format(" }%q", main->output.to.stream, f_string_eol_s); + fl_print_format(" }%r", main->output.to.stream, f_string_eol_s); } else { for (k = 0; k < action->parameters.used; ++k) { - fl_print_format(" %[%q%] %Q%q", main->output.to.stream, main->context.set.important, controller_parameter_s, main->context.set.important, action->parameters.array[k], f_string_eol_s); + fl_print_format(" %[%r%] %Q%r", main->output.to.stream, main->context.set.important, controller_parameter_s, main->context.set.important, action->parameters.array[k], f_string_eol_s); } // for } - fl_print_format(" }%q", main->output.to.stream, f_string_eol_s); + fl_print_format(" }%r", main->output.to.stream, f_string_eol_s); } // for // rerun. - fl_print_format(" %[%q%] {%q", main->output.to.stream, main->context.set.important, controller_rerun_s, main->context.set.important, f_string_eol_s); + fl_print_format(" %[%r%] {%r", main->output.to.stream, main->context.set.important, controller_rerun_s, main->context.set.important, f_string_eol_s); for (j = 0; j < controller_rule_action_type_execute__enum_size_e; ++j) { for (k = 0; k < 2; ++k) { @@ -5783,62 +5783,62 @@ extern "C" { fl_print_format(" %[", main->output.to.stream, main->context.set.important); switch (j) { case controller_rule_action_type_execute_freeze_e: - f_print_dynamic(controller_freeze_s, main->output.to.stream); + f_print_dynamic_raw(controller_freeze_s, main->output.to.stream); break; case controller_rule_action_type_execute_kill_e: - f_print_dynamic(controller_kill_s, main->output.to.stream); + f_print_dynamic_raw(controller_kill_s, main->output.to.stream); break; case controller_rule_action_type_execute_pause_e: - f_print_dynamic(controller_pause_s, main->output.to.stream); + f_print_dynamic_raw(controller_pause_s, main->output.to.stream); break; case controller_rule_action_type_execute_reload_e: - f_print_dynamic(controller_reload_s, main->output.to.stream); + f_print_dynamic_raw(controller_reload_s, main->output.to.stream); break; case controller_rule_action_type_execute_restart_e: - f_print_dynamic(controller_restart_s, main->output.to.stream); + f_print_dynamic_raw(controller_restart_s, main->output.to.stream); break; case controller_rule_action_type_execute_resume_e: - f_print_dynamic(controller_resume_s, main->output.to.stream); + f_print_dynamic_raw(controller_resume_s, main->output.to.stream); break; case controller_rule_action_type_execute_start_e: - f_print_dynamic(controller_start_s, main->output.to.stream); + f_print_dynamic_raw(controller_start_s, main->output.to.stream); break; case controller_rule_action_type_execute_stop_e: - f_print_dynamic(controller_stop_s, main->output.to.stream); + f_print_dynamic_raw(controller_stop_s, main->output.to.stream); break; case controller_rule_action_type_execute_thaw_e: - f_print_dynamic(controller_thaw_s, main->output.to.stream); + f_print_dynamic_raw(controller_thaw_s, main->output.to.stream); break; default: break; } - fl_print_format("%] %q", main->output.to.stream, main->context.set.important, k ? controller_success_s : controller_failure_s); - fl_print_format(" %q %ul %q %ul", main->output.to.stream, controller_delay_s, rerun_item->delay, controller_max_s, rerun_item->max); + fl_print_format("%] %r", main->output.to.stream, main->context.set.important, k ? controller_success_s : controller_failure_s); + fl_print_format(" %r %ul %r %ul", main->output.to.stream, controller_delay_s, rerun_item->delay, controller_max_s, rerun_item->max); if (!k && (item->reruns[j].is & controller_rule_rerun_is_failure_reset_d) || k && (item->reruns[j].is & controller_rule_rerun_is_success_reset_d)) { - fl_print_format(" %q", main->output.to.stream, controller_reset_s); + fl_print_format(" %r", main->output.to.stream, controller_reset_s); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } // for } // for - fl_print_format(" }%q", main->output.to.stream, f_string_eol_s); + fl_print_format(" }%r", main->output.to.stream, f_string_eol_s); - fl_print_format(" }%q", main->output.to.stream, f_string_eol_s); + fl_print_format(" }%r", main->output.to.stream, f_string_eol_s); } // for } - fl_print_format("}%q", main->output.to.stream, f_string_eol_s); + fl_print_format("}%r", main->output.to.stream, f_string_eol_s); controller_unlock_print_flush(main->output.to, global.thread); } diff --git a/level_3/controller/c/rule/private-rule_print.c b/level_3/controller/c/rule/private-rule_print.c index f598578..a33dbcd 100644 --- a/level_3/controller/c/rule/private-rule_print.c +++ b/level_3/controller/c/rule/private-rule_print.c @@ -31,10 +31,10 @@ extern "C" { if (print.verbosity == f_console_verbosity_quiet_e) return; - fl_print_format("%q%[%QWhile processing ", print.to.stream, f_string_eol_s, print.context, print.prefix); + fl_print_format("%r%[%QWhile processing ", print.to.stream, f_string_eol_s, print.context, print.prefix); if (cache.name_action.used) { - fl_print_format("%q '%]", print.to.stream, item ? controller_action_s : controller_value_s, print.context); + fl_print_format("%r '%]", print.to.stream, item ? controller_action_s : controller_value_s, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, cache.name_action, print.notable); fl_print_format("%[' on line%] ", print.to.stream, print.context, print.context); fl_print_format("%[%un%]", print.to.stream, print.notable, cache.line_action, print.notable); @@ -42,7 +42,7 @@ extern "C" { } if (cache.name_item.used) { - fl_print_format("rule %q '%]", print.to.stream, item ? controller_item_s : controller_setting_s, print.context); + fl_print_format("rule %r '%]", print.to.stream, item ? controller_item_s : controller_setting_s, print.context); fl_print_format("%[%Q%]", print.to.stream, print.notable, cache.name_item, print.notable); fl_print_format("%[' on line%] ", print.to.stream, print.context, print.context); fl_print_format("%[%un%]", print.to.stream, print.notable, cache.line_item, print.notable); @@ -53,7 +53,7 @@ extern "C" { fl_print_format("rule file '%]%[%Q%]%['", print.to.stream, print.context, print.notable, cache.name_file, print.notable, print.context); } - fl_print_format(".%]%q", print.to.stream, print.context, f_string_eol_s); + fl_print_format(".%]%r", print.to.stream, print.context, f_string_eol_s); } #endif // _di_controller_rule_print_error_cache_ @@ -82,140 +82,140 @@ extern "C" { controller_lock_print(print->to, (controller_thread_t *) process->main_thread); - fl_print_format("%q%[%SThe %s '%]", print->to.stream, f_string_eol_s, print->context, print->prefix, script_is ? controller_script_s : controller_program_s, print->context); + fl_print_format("%r%[%SThe %s '%]", print->to.stream, f_string_eol_s, print->context, print->prefix, script_is ? controller_script_s : controller_program_s, print->context); fl_print_format("%[%Q%]", print->to.stream, print->notable, name, print->notable); if (status == F_control_group || status == F_limit || status == F_processor || status == F_schedule) { fl_print_format("%[' failed due to a failure to setup the '%]%[", print->to.stream, print->context, print->context, print->notable); if (status == F_control_group) { - f_print_dynamic(controller_cgroup_s, print->to.stream); + f_print_dynamic_raw(controller_cgroup_s, print->to.stream); } else if (status == F_limit) { - f_print_dynamic(controller_limit_s, print->to.stream); + f_print_dynamic_raw(controller_limit_s, print->to.stream); } else if (status == F_processor) { - f_print_dynamic(controller_processor_s, print->to.stream); + f_print_dynamic_raw(controller_processor_s, print->to.stream); } else if (status == F_schedule) { - f_print_dynamic(controller_scheduler_s, print->to.stream); + f_print_dynamic_raw(controller_scheduler_s, print->to.stream); } - fl_print_format("%]%['.%]%q", print->to.stream, print->notable, print->context, print->context, f_string_eol_s); + fl_print_format("%]%['.%]%r", print->to.stream, print->notable, print->context, print->context, f_string_eol_s); } else if (WIFEXITED(process->result) ? WEXITSTATUS(process->result) : 0) { const uint8_t code = WIFEXITED(process->result) ? WEXITSTATUS(process->result) : 0; if (code == F_execute_access) { - fl_print_format("%[' access denied.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' access denied.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_bad) { - fl_print_format("%[' cannot execute, unsupported format.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' cannot execute, unsupported format.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_buffer) { - fl_print_format("%[' invalid memory access in arguments buffer.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' invalid memory access in arguments buffer.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_busy) { - fl_print_format("%[' required resources are unavailable, too busy.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' required resources are unavailable, too busy.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_capability) { - fl_print_format("%[' failed to setup capabilities.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' failed to setup capabilities.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_control_group) { - fl_print_format("%[' failed to setup control group.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' failed to setup control group.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_child) { - fl_print_format("%[' failed to setup child process.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' failed to setup child process.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_directory_not) { - fl_print_format("%[' invalid path, part of the path is not a valid directory.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' invalid path, part of the path is not a valid directory.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_failure) { - fl_print_format("%[' failed during execution.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' failed during execution.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_file_found_not) { - fl_print_format("%[' could not be executed, unable to find file.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' could not be executed, unable to find file.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_file_type_directory) { - fl_print_format("%[' ELF interpreter is a directory.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' ELF interpreter is a directory.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_fork_not) { - fl_print_format("%[' fork failure.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' fork failure.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_format_not) { - fl_print_format("%[' could not be executed because the program has an invalid ELF header.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' could not be executed because the program has an invalid ELF header.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_group) { - fl_print_format("%[' failed to setup group.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' failed to setup group.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_input_output) { - fl_print_format("%[' I/O failure.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' I/O failure.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_limit) { - fl_print_format("%[' failed to setup resource limits.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' failed to setup resource limits.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_loop) { - fl_print_format("%[' max recursion reached.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' max recursion reached.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_memory_not) { - fl_print_format("%[' out of memory.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' out of memory.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_name_not) { - fl_print_format("%[' file name or path is too long.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' file name or path is too long.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_nice) { - fl_print_format("%[' failed to setup niceness.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' failed to setup niceness.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_parameter) { - fl_print_format("%[' invalid parameter.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' invalid parameter.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_pipe) { - fl_print_format("%[' pipe failed.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' pipe failed.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_processor) { - fl_print_format("%[' failed to setup processor affinity.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' failed to setup processor affinity.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_prohibited) { - fl_print_format("%[' access prohibited.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' access prohibited.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_resource_not) { - fl_print_format("%[' resource limit reached.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' resource limit reached.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_schedule) { - fl_print_format("%[' failed to setup scheduler.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' failed to setup scheduler.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_terminal) { - fl_print_format("%[' failed while processing the terminal.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' failed while processing the terminal.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_terminal_known_not) { - fl_print_format("%[' cannot process terminal, unknown terminal control command.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' cannot process terminal, unknown terminal control command.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_terminal_not) { - fl_print_format("%[' cannot process terminal, not a known terminal.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' cannot process terminal, not a known terminal.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_terminal_prohibited) { - fl_print_format("%[' insufficient permissions to process the terminal.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' insufficient permissions to process the terminal.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_terminal_valid_not) { - fl_print_format("%[' invalid parameter while processing the terminal.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' invalid parameter while processing the terminal.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_too_large) { - fl_print_format("%[' too many arguments or arguments are too large.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' too many arguments or arguments are too large.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_user) { - fl_print_format("%[' failed to setup user.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' failed to setup user.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else if (code == F_execute_valid_not) { - fl_print_format("%[' unknown ELF interpreter format.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' unknown ELF interpreter format.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } else { fl_print_format("%[' failed with the execute error code %]", print->to.stream, print->context, print->context); fl_print_format("%[%i%]", print->to.stream, print->notable, code, print->notable); - fl_print_format("%[.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } } else { - fl_print_format("%[' failed.%]%q", print->to.stream, print->context, print->context, f_string_eol_s); + fl_print_format("%[' failed.%]%r", print->to.stream, print->context, print->context, f_string_eol_s); } controller_unlock_print_flush(print->to, (controller_thread_t *) process->main_thread); @@ -228,9 +228,9 @@ extern "C" { if (print.verbosity == f_console_verbosity_quiet_e) return; - fl_print_format("%q%[%QThe rule '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); + fl_print_format("%r%[%QThe rule '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); fl_print_format("%[%S%]", print.to.stream, print.notable, alias, print.notable); - fl_print_format("%[' is not designating a pid file.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[' is not designating a pid file.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); } #endif // _di_controller_rule_action_print_error_missing_pid_ @@ -239,9 +239,9 @@ extern "C" { if (print.verbosity == f_console_verbosity_quiet_e) return; - fl_print_format("%q%[%QThe %s rule '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, need_want_wish, print.context); + fl_print_format("%r%[%QThe %s rule '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, need_want_wish, print.context); fl_print_format("%[%S%]", print.to.stream, print.notable, value, print.notable); - fl_print_format("%[' %S.%]%q", print.to.stream, print.context, why, print.context, f_string_eol_s); + fl_print_format("%[' %S.%]%r", print.to.stream, print.context, why, print.context, f_string_eol_s); } #endif // _di_controller_rule_item_print_error_need_want_wish_ @@ -250,9 +250,9 @@ extern "C" { if (print.verbosity == f_console_verbosity_quiet_e) return; - fl_print_format("%q%[%QThe rule '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); + fl_print_format("%r%[%QThe rule '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, print.context); fl_print_format("%[%S%]", print.to.stream, print.notable, alias, print.notable); - fl_print_format("%[' is no longer loaded.%]%q", print.to.stream, print.context, print.context, f_string_eol_s); + fl_print_format("%[' is no longer loaded.%]%r", print.to.stream, print.context, print.context, f_string_eol_s); } #endif // _di_controller_rule_item_print_error_rule_not_loaded_ @@ -269,7 +269,7 @@ extern "C" { controller_lock_print(print.to, thread); - fl_print_format("%q%[%QRule setting %S.%]%q", print.to.stream, f_string_eol_s, print.context, print.prefix, message, print.context, f_string_eol_s); + fl_print_format("%r%[%QRule setting %S.%]%r", print.to.stream, f_string_eol_s, print.context, print.prefix, message, print.context, f_string_eol_s); controller_rule_print_error_cache(print, cache->action, F_false); @@ -290,9 +290,9 @@ extern "C" { controller_lock_print(print.to, thread); - fl_print_format("%q%[%QRule setting%S '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, before, print.context); + fl_print_format("%r%[%QRule setting%S '%]", print.to.stream, f_string_eol_s, print.context, print.prefix, before, print.context); fl_print_format("%[%/Q%]", print.to.stream, print.notable, cache->buffer_item, range, print.notable); - fl_print_format("%['%S.%]%q", print.to.stream, print.context, after, print.context, f_string_eol_s); + fl_print_format("%['%S.%]%r", print.to.stream, print.context, after, print.context, f_string_eol_s); controller_rule_print_error_cache(print, cache->action, F_false); @@ -309,7 +309,7 @@ extern "C" { controller_lock_print(global.main->output.to, global.thread); - fl_print_format("%qProcessing rule item action '%[%Q%]' setting ", global.main->output.to.stream, f_string_eol_s, global.main->context.set.title, name, global.main->context.set.title); + fl_print_format("%rProcessing rule item action '%[%Q%]' setting ", global.main->output.to.stream, f_string_eol_s, global.main->context.set.title, name, global.main->context.set.title); if (name_sub.used) { fl_print_format("'%[%S%]'", global.main->output.to.stream, global.main->context.set.notable, name_sub, global.main->context.set.notable); @@ -319,7 +319,7 @@ extern "C" { } fl_print_format(" to '%[%Q%]'", global.main->output.to.stream, global.main->context.set.important, value, global.main->context.set.important); - fl_print_format("%S.%q", global.main->output.to.stream, suffix, f_string_eol_s); + fl_print_format("%S.%r", global.main->output.to.stream, suffix, f_string_eol_s); controller_unlock_print_flush(global.main->output.to, global.thread); } @@ -334,7 +334,7 @@ extern "C" { controller_lock_print(global.main->output.to, global.thread); - fl_print_format("%qProcessing rule item action '%[%Q%]' setting value to", global.main->output.to.stream, f_string_eol_s, global.main->context.set.title, name, global.main->context.set.title); + fl_print_format("%rProcessing rule item action '%[%Q%]' setting value to", global.main->output.to.stream, f_string_eol_s, global.main->context.set.title, name, global.main->context.set.title); for (f_array_length_t j = 0; j < cache->content_actions.array[index].used; ++j) { @@ -352,7 +352,7 @@ extern "C" { } } // for - fl_print_format(".%q", global.main->output.to.stream, f_string_eol_s); + fl_print_format(".%r", global.main->output.to.stream, f_string_eol_s); controller_unlock_print_flush(global.main->output.to, global.thread); } diff --git a/level_3/controller/c/thread/private-thread.c b/level_3/controller/c/thread/private-thread.c index 033dc99..c5cd4b9 100644 --- a/level_3/controller/c/thread/private-thread.c +++ b/level_3/controller/c/thread/private-thread.c @@ -222,9 +222,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(main->error.to, &thread); - fl_print_format("%q%[%QThe pid file '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe pid file '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, setting->path_pid, main->error.notable); - fl_print_format("%[' must not already exist.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' must not already exist.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); controller_unlock_print_flush(main->error.to, &thread); } @@ -328,7 +328,7 @@ extern "C" { controller_print_signal_received(main, thread.signal); if (main->output.verbosity != f_console_verbosity_quiet_e) { - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } return F_status_set_error(F_interrupt); diff --git a/level_3/controller/c/thread/private-thread_entry.c b/level_3/controller/c/thread/private-thread_entry.c index ac148e7..d8f82ed 100644 --- a/level_3/controller/c/thread/private-thread_entry.c +++ b/level_3/controller/c/thread/private-thread_entry.c @@ -42,9 +42,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(main->error.to, entry->global->thread); - fl_print_format("%q%[%QThe pid file '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe pid file '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, entry->setting->path_pid, main->error.notable); - fl_print_format("%[' must not already exist.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' must not already exist.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); controller_unlock_print_flush(main->error.to, entry->global->thread); } @@ -81,9 +81,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(main->error.to, entry->global->thread); - fl_print_format("%q%[%QFailed while processing requested failsafe item '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QFailed while processing requested failsafe item '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, entry->global->setting->entry.items.array[entry->global->setting->failsafe_enabled].name, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); controller_unlock_print_flush(main->error.to, entry->global->thread); } @@ -196,9 +196,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { controller_lock_print(main->error.to, entry->global->thread); - fl_print_format("%q%[%QFailed while processing requested failsafe item '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QFailed while processing requested failsafe item '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, entry->global->setting->entry.items.array[entry->global->setting->failsafe_enabled].name, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); controller_unlock_print_flush(main->error.to, entry->global->thread); } diff --git a/level_3/fake/c/fake.c b/level_3/fake/c/fake.c index b74453e..812bbe1 100644 --- a/level_3/fake/c/fake.c +++ b/level_3/fake/c/fake.c @@ -30,7 +30,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fake_short_define_s, fake_long_define_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Append an additional define after defines from settings file."); fll_program_print_help_option(file, context, fake_short_fakefile_s, fake_long_fakefile_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Use this fakefile."); @@ -38,14 +38,14 @@ extern "C" { fll_program_print_help_option(file, context, fake_short_process_s, fake_long_process_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Process name for storing build states."); fll_program_print_help_option(file, context, fake_short_settings_s, fake_long_settings_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Use this settings file."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fake_short_path_build_s, fake_long_path_build_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Specify a custom build directory."); fll_program_print_help_option(file, context, fake_short_path_data_s, fake_long_path_data_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Specify a custom path to the data files."); fll_program_print_help_option(file, context, fake_short_path_sources_s, fake_long_path_sources_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Specify a custom path to the source files."); fll_program_print_help_option(file, context, fake_short_path_work_s, fake_long_path_work_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Use includes/libraries/programs from this directory instead of system."); - fl_print_format("%q%q %[Special Options:%] ", file.stream, f_string_eol_s, f_string_eol_s, context.set.important, context.set.important); + fl_print_format("%r%r %[Special Options:%] ", file.stream, f_string_eol_s, f_string_eol_s, context.set.important, context.set.important); fll_program_print_help_option_long(file, context, fake_long_documents_disabled_s, f_console_symbol_long_enable_s, " Forcibly do not build documents files."); fll_program_print_help_option_long(file, context, fake_long_documents_enabled_s, f_console_symbol_long_enable_s, " Forcibly do build documents files."); @@ -54,7 +54,7 @@ extern "C" { fll_program_print_help_option_long(file, context, fake_long_static_disabled_s, f_console_symbol_long_enable_s, "Forcibly do not build static files."); fll_program_print_help_option_long(file, context, fake_long_static_enabled_s, f_console_symbol_long_enable_s, " Forcibly do build static files."); - fl_print_format("%q%q %[Operations:%] ", file.stream, f_string_eol_s, f_string_eol_s, context.set.important, context.set.important); + fl_print_format("%r%r %[Operations:%] ", file.stream, f_string_eol_s, f_string_eol_s, context.set.important, context.set.important); fll_program_print_help_option_other(file, context, fake_other_operation_build_s, " Build or compile the code based on build settings file."); fll_program_print_help_option_other(file, context, fake_other_operation_clean_s, " Delete all build files."); @@ -63,19 +63,19 @@ extern "C" { fll_program_print_help_usage(file, context, fake_program_name_s, fake_program_help_parameters_s); - fl_print_format(" When performing the %[%q%] operation, the", file.stream, context.set.notable, fake_other_operation_build_s, context.set.notable); - fl_print_format(" %[%q%q%] parameter specifies a name (limited to alpha-numeric, underscore, and dash) to be used in addition to the global.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fake_long_mode_s, context.set.notable, f_string_eol_s); + fl_print_format(" When performing the %[%r%] operation, the", file.stream, context.set.notable, fake_other_operation_build_s, context.set.notable); + fl_print_format(" %[%r%r%] parameter specifies a name (limited to alpha-numeric, underscore, and dash) to be used in addition to the global.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fake_long_mode_s, context.set.notable, f_string_eol_s); - fl_print_format(" For example, when a %[%q%]", file.stream, context.set.notable, fake_make_parameter_variable_mode_s, context.set.notable); - fl_print_format(" of 'fll_monolithic' is specified, build libraries from both 'build_libraries' and 'build_libraries-fll_monolithic' are used (but not 'build_libraries-fll_level').%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" For example, when a %[%r%]", file.stream, context.set.notable, fake_make_parameter_variable_mode_s, context.set.notable); + fl_print_format(" of 'fll_monolithic' is specified, build libraries from both 'build_libraries' and 'build_libraries-fll_monolithic' are used (but not 'build_libraries-fll_level').%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When specifying the %[%q%] or the %[%q%]", file.stream, context.set.notable, fake_make_parameter_variable_fakefile_s, context.set.notable, context.set.notable, fake_make_parameter_variable_settings_s, context.set.notable); - fl_print_format(" parameters, the filenames are relative to the data build directory, unless a path is used.%q", file.stream, f_string_eol_s); + fl_print_format(" When specifying the %[%r%] or the %[%r%]", file.stream, context.set.notable, fake_make_parameter_variable_fakefile_s, context.set.notable, context.set.notable, fake_make_parameter_variable_settings_s, context.set.notable); + fl_print_format(" parameters, the filenames are relative to the data build directory, unless a path is used.%r", file.stream, f_string_eol_s); - fl_print_format(" For example, with '%[%q%q my_fakefile%]' the fakefile at", file.stream, context.set.notable, f_console_symbol_long_enable_s, fake_long_fakefile_s, context.set.notable); - fl_print_format(" '%[./%q%qmy_fakefile%]' would be used, however with", file.stream, context.set.notable, fake_default_path_data_s, fake_default_path_build_s, context.set.notable); - fl_print_format(" '%[%q%q ./my_fakefile%]' the fakefile at", file.stream, context.set.notable, f_console_symbol_long_enable_s, fake_long_fakefile_s, context.set.notable); - fl_print_format(" '%[./my_fakefile%]' would be used.%q%q", file.stream, context.set.notable, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" For example, with '%[%r%r my_fakefile%]' the fakefile at", file.stream, context.set.notable, f_console_symbol_long_enable_s, fake_long_fakefile_s, context.set.notable); + fl_print_format(" '%[./%r%rmy_fakefile%]' would be used, however with", file.stream, context.set.notable, fake_default_path_data_s, fake_default_path_build_s, context.set.notable); + fl_print_format(" '%[%r%r ./my_fakefile%]' the fakefile at", file.stream, context.set.notable, f_console_symbol_long_enable_s, fake_long_fakefile_s, context.set.notable); + fl_print_format(" '%[./my_fakefile%]' would be used.%r%r", file.stream, context.set.notable, context.set.notable, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -352,9 +352,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe operation '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%]", main->error.to.stream, main->error.notable, operations_name, main->error.notable); - fl_print_format("%[' failed.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe operation '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%]", main->error.to.stream, main->error.notable, operations_name, main->error.notable); + fl_print_format("%[' failed.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -369,16 +369,16 @@ extern "C" { fflush(main->output.to.stream); } - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } else if (status != F_child) { - fll_print_format("%qAll operations complete.%q%q", main->output.to.stream, f_string_eol_s, f_string_eol_s, f_string_eol_s); + fll_print_format("%rAll operations complete.%r%r", main->output.to.stream, f_string_eol_s, f_string_eol_s, f_string_eol_s); } } } else { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QYou failed to specify an operation.%]%q%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s, f_string_eol_s); + fll_print_format("%r%[%QYou failed to specify an operation.%]%r%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s, f_string_eol_s); } status = F_status_set_error(F_parameter); diff --git a/level_3/fake/c/private-build-library.c b/level_3/fake/c/private-build-library.c index 7f2b52d..8e84e56 100644 --- a/level_3/fake/c/private-build-library.c +++ b/level_3/fake/c/private-build-library.c @@ -28,7 +28,7 @@ extern "C" { if (!data_build.setting.build_sources_library.used) return 0; if (main->output.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[Compiling shared library.%]%q", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); + fll_print_format("%r%[Compiling shared library.%]%r", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); } f_string_dynamics_t arguments = f_string_dynamics_t_initialize; @@ -369,7 +369,7 @@ extern "C" { *status = f_file_link(parameter_file_name_major, parameter_file_path); if (F_status_is_error_not(*status) && main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("Linked file '%S' to '%S'.%q", main->output.to.stream, parameter_file_path, parameter_file_name_major, f_string_eol_s); + fll_print_format("Linked file '%S' to '%S'.%r", main->output.to.stream, parameter_file_path, parameter_file_name_major, f_string_eol_s); } else if (F_status_is_error(*status)) { if (F_status_set_fine(*status) == F_file_found) { @@ -398,7 +398,7 @@ extern "C" { *status = f_file_link(parameter_file_name_minor, parameter_file_path); if (F_status_is_error_not(*status) && main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("Linked file '%S' to '%S'.%q", main->output.to.stream, parameter_file_path, parameter_file_name_minor, f_string_eol_s); + fll_print_format("Linked file '%S' to '%S'.%r", main->output.to.stream, parameter_file_path, parameter_file_name_minor, f_string_eol_s); } else if (F_status_is_error(*status)) { if (F_status_set_fine(*status) == F_file_found) { @@ -426,7 +426,7 @@ extern "C" { *status = f_file_link(parameter_file_name_micro, parameter_file_path); if (F_status_is_error_not(*status) && main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("Linked file '%S' to '%S'.%q", main->output.to.stream, parameter_file_path, parameter_file_name_micro, f_string_eol_s); + fll_print_format("Linked file '%S' to '%S'.%r", main->output.to.stream, parameter_file_path, parameter_file_name_micro, f_string_eol_s); } else if (F_status_is_error(*status)) { if (F_status_set_fine(*status) == F_file_found) { @@ -454,7 +454,7 @@ extern "C" { *status = f_file_link(parameter_file_name_nano, parameter_file_path); if (F_status_is_error_not(*status) && main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("Linked file '%S' to '%S'.%q", main->output.to.stream, parameter_file_path, parameter_file_name_nano, f_string_eol_s); + fll_print_format("Linked file '%S' to '%S'.%r", main->output.to.stream, parameter_file_path, parameter_file_name_nano, f_string_eol_s); } else if (F_status_is_error(*status)) { if (F_status_set_fine(*status) == F_file_found) { @@ -484,7 +484,7 @@ extern "C" { if (!data_build.setting.build_sources_library.used) return 0; if (main->output.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[Compiling static library.%]%q", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); + fll_print_format("%r%[Compiling static library.%]%r", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); } f_string_dynamic_t file_name = f_string_dynamic_t_initialize; diff --git a/level_3/fake/c/private-build-load.c b/level_3/fake/c/private-build-load.c index eb00819..60a1da2 100644 --- a/level_3/fake/c/private-build-load.c +++ b/level_3/fake/c/private-build-load.c @@ -47,11 +47,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe values for the setting '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%]", main->error.to.stream, main->error.notable, fake_build_setting_name_environment_s, main->error.notable); + fl_print_format("%r%[%QThe values for the setting '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%]", main->error.to.stream, main->error.notable, fake_build_setting_name_environment_s, main->error.notable); fl_print_format("%[' of setting file '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%]", main->error.to.stream, main->error.notable, fake_build_setting_name_environment_s, main->error.notable); - fl_print_format("%[' is too large.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%]", main->error.to.stream, main->error.notable, fake_build_setting_name_environment_s, main->error.notable); + fl_print_format("%[' is too large.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); flockfile(main->error.to.stream); } @@ -155,11 +155,11 @@ extern "C" { if (!settings[i]->used) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe setting '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe setting '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, names[i], main->error.notable); fl_print_format("%[' is required but is not specified in the settings file '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, setting_file.used ? path_file : main->file_data_build_settings, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -478,11 +478,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe specified mode '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe specified mode '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, modes->array[i], main->error.notable); fl_print_format("%[' is not a valid mode, according to '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, path_file, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -564,9 +564,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { funlockfile(main->error.to.stream); - fl_print_format("%q%[%QA setting in the file '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QA setting in the file '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, path_file, main->error.notable); - fl_print_format("%[' is too long.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' is too long.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -868,13 +868,13 @@ extern "C" { if (main->warning.verbosity == f_console_verbosity_verbose_e) { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QThe setting '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, settings_single_name[i], main->warning.notable); + fl_print_format("%r%[%QThe setting '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, settings_single_name[i], main->warning.notable); fl_print_format("%[' in the file '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%S%]", main->warning.to.stream, main->warning.notable, path_file, main->warning.notable); fl_print_format("%[' may only have a single property, only using the first: '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%Q%]", main->warning.to.stream, main->warning.notable, settings_single_source[i]->array[0], main->warning.notable); - fl_print_format("%['.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } @@ -893,17 +893,17 @@ extern "C" { if (main->warning.verbosity == f_console_verbosity_verbose_e) { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QThe setting '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, settings_single_name[i], main->warning.notable); + fl_print_format("%r%[%QThe setting '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, settings_single_name[i], main->warning.notable); fl_print_format("%[' in the file '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%S%]", main->warning.to.stream, main->warning.notable, path_file, main->warning.notable); fl_print_format("%[' may be either '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_common_setting_bool_yes_s, main->warning.notable); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_common_setting_bool_yes_s, main->warning.notable); fl_print_format("%[' or '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_common_setting_bool_no_s, main->warning.notable); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_common_setting_bool_no_s, main->warning.notable); fl_print_format("%[', defaulting to '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_common_setting_bool_yes_s, main->warning.notable); - fl_print_format("%['.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_common_setting_bool_yes_s, main->warning.notable); + fl_print_format("%['.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } @@ -925,19 +925,19 @@ extern "C" { if (main->warning.verbosity == f_console_verbosity_verbose_e) { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QThe setting '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, settings_single_name[i], main->warning.notable); + fl_print_format("%r%[%QThe setting '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, settings_single_name[i], main->warning.notable); fl_print_format("%[' in the file '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%S%]", main->warning.to.stream, main->warning.notable, path_file, main->warning.notable); fl_print_format("%[' may only be one of '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_build_language_bash_s, main->warning.notable); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_build_language_bash_s, main->warning.notable); fl_print_format("%[', '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_build_language_c_s, main->warning.notable); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_build_language_c_s, main->warning.notable); fl_print_format("%[', or '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_build_language_cpp_s, main->warning.notable); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_build_language_cpp_s, main->warning.notable); fl_print_format("%[', defaulting to '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_build_language_c_s, main->warning.notable); - fl_print_format("%['.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_build_language_c_s, main->warning.notable); + fl_print_format("%['.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } @@ -962,21 +962,21 @@ extern "C" { if (main->warning.verbosity == f_console_verbosity_verbose_e) { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QThe setting '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, settings_single_name[i], main->warning.notable); + fl_print_format("%r%[%QThe setting '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, settings_single_name[i], main->warning.notable); fl_print_format("%[' in the file '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%S%]", main->warning.to.stream, main->warning.notable, path_file, main->warning.notable); fl_print_format("%[' may only be one of '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_build_version_major_s, main->warning.notable); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_build_version_major_s, main->warning.notable); fl_print_format("%[', '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_build_version_minor_s, main->warning.notable); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_build_version_minor_s, main->warning.notable); fl_print_format("%[', '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_build_version_micro_s, main->warning.notable); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_build_version_micro_s, main->warning.notable); fl_print_format("%[', or '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_build_version_nano_s, main->warning.notable); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_build_version_nano_s, main->warning.notable); fl_print_format("%[', defaulting to '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, settings_single_version_default_name[i], main->warning.notable); - fl_print_format("%['.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, settings_single_version_default_name[i], main->warning.notable); + fl_print_format("%['.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } @@ -1021,13 +1021,13 @@ extern "C" { if (main->warning.verbosity == f_console_verbosity_verbose_e) { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QThe setting '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_build_setting_name_version_file_s, main->warning.notable); + fl_print_format("%r%[%QThe setting '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_build_setting_name_version_file_s, main->warning.notable); fl_print_format("%[' in the file '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%S%]", main->warning.to.stream, main->warning.notable, path_file, main->warning.notable); fl_print_format("%[' is required, defaulting to '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_build_version_micro_s, main->warning.notable); - fl_print_format("%['.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_build_version_micro_s, main->warning.notable); + fl_print_format("%['.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } @@ -1039,13 +1039,13 @@ extern "C" { if (main->warning.verbosity == f_console_verbosity_verbose_e) { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QThe setting '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_build_setting_name_version_target_s, main->warning.notable); + fl_print_format("%r%[%QThe setting '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_build_setting_name_version_target_s, main->warning.notable); fl_print_format("%[' in the file '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%S%]", main->warning.to.stream, main->warning.notable, path_file, main->warning.notable); fl_print_format("%[' is required, defaulting to '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, fake_build_version_major_s, main->warning.notable); - fl_print_format("%['.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, fake_build_version_major_s, main->warning.notable); + fl_print_format("%['.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } @@ -1127,13 +1127,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhen the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QWhen the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, setting_name[j], main->error.notable); fl_print_format("%[' is set to '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, name_target[setting_target[j] - 1], main->error.notable); fl_print_format("%[' then the '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, name_object[i], main->error.notable); - fl_print_format("%[' Object must have Content.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' Object must have Content.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -1247,13 +1247,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameters '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_shared_disabled_s, main->error.notable); + fl_print_format("%r%[%QThe parameters '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_shared_disabled_s, main->error.notable); fl_print_format("%[' and '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_shared_enabled_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_shared_enabled_s, main->error.notable); fl_print_format("%[' contradict, defaulting to '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, setting->build_shared ? fake_long_shared_enabled_s : fake_long_shared_disabled_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, setting->build_shared ? fake_long_shared_enabled_s : fake_long_shared_disabled_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -1282,13 +1282,13 @@ extern "C" { if (main->error.verbosity == f_console_verbosity_verbose_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameters '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_static_disabled_s, main->error.notable); + fl_print_format("%r%[%QThe parameters '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_static_disabled_s, main->error.notable); fl_print_format("%[' and '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_static_enabled_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_static_enabled_s, main->error.notable); fl_print_format("%[' contradict, defaulting to '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, setting->build_static ? fake_long_static_enabled_s : fake_long_static_disabled_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, setting->build_static ? fake_long_static_enabled_s : fake_long_static_disabled_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -1308,13 +1308,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe build settings '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%]", main->error.to.stream, main->error.notable, fake_build_setting_name_build_shared_s, main->error.notable); + fl_print_format("%r%[%QThe build settings '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%]", main->error.to.stream, main->error.notable, fake_build_setting_name_build_shared_s, main->error.notable); fl_print_format("%[' and '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%]", main->error.to.stream, main->error.notable, fake_build_setting_name_build_static_s, main->error.notable); + fl_print_format("%[%r%]", main->error.to.stream, main->error.notable, fake_build_setting_name_build_static_s, main->error.notable); fl_print_format("%[' cannot both be false when using the language '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%]", main->error.to.stream, main->error.notable, setting->build_language == fake_build_language_type_c_e ? fake_build_language_c_s : fake_build_language_cpp_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%]", main->error.to.stream, main->error.notable, setting->build_language == fake_build_language_type_c_e ? fake_build_language_c_s : fake_build_language_cpp_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } diff --git a/level_3/fake/c/private-build-objects.c b/level_3/fake/c/private-build-objects.c index 4b5938d..94e7fbc 100644 --- a/level_3/fake/c/private-build-objects.c +++ b/level_3/fake/c/private-build-objects.c @@ -17,7 +17,7 @@ extern "C" { if (!data_build.setting.build_sources_library.used) return 0; if (main->output.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[Compiling static objects.%]%q", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); + fll_print_format("%r%[Compiling static objects.%]%r", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); } f_string_dynamic_t file_name = f_string_dynamic_t_initialize; @@ -111,9 +111,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe path '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe path '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, destination_path, main->error.notable); - fl_print_format("%[' exists but is not a directory.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' exists but is not a directory.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -129,9 +129,9 @@ extern "C" { if (F_status_set_fine(*status) == F_file_found_not) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe path '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe path '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, destination_path, main->error.notable); - fl_print_format("%[' could not be created, a parent directory does not exist.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' could not be created, a parent directory does not exist.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -143,7 +143,7 @@ extern "C" { } if (main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("Directory '%Q' created.%q", main->output.to.stream, destination_path, f_string_eol_s); + fll_print_format("Directory '%Q' created.%r", main->output.to.stream, destination_path, f_string_eol_s); } } else if (F_status_is_error(*status)) { diff --git a/level_3/fake/c/private-build-program.c b/level_3/fake/c/private-build-program.c index 3b2dfd8..c2f24b1 100644 --- a/level_3/fake/c/private-build-program.c +++ b/level_3/fake/c/private-build-program.c @@ -28,7 +28,7 @@ extern "C" { if (!data_build.setting.build_sources_program.used) return 0; if (main->output.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[Compiling shared program.%]%q", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); + fll_print_format("%r%[Compiling shared program.%]%r", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); } f_string_dynamics_t arguments = f_string_dynamics_t_initialize; @@ -144,7 +144,7 @@ extern "C" { if (!data_build.setting.build_sources_program.used) return 0; if (main->output.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[Compiling static program.%]%q", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); + fll_print_format("%r%[Compiling static program.%]%r", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); } f_string_dynamics_t arguments = f_string_dynamics_t_initialize; diff --git a/level_3/fake/c/private-build-skeleton.c b/level_3/fake/c/private-build-skeleton.c index ffc009e..428d655 100644 --- a/level_3/fake/c/private-build-skeleton.c +++ b/level_3/fake/c/private-build-skeleton.c @@ -57,7 +57,7 @@ extern "C" { }; if (main->output.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[Creating base build directories.%]%q", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); + fll_print_format("%r%[Creating base build directories.%]%r", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); } for (uint8_t i = 0; i < 15; ++i) { @@ -103,7 +103,7 @@ extern "C" { } if (main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("Created directory '%Q'.%q", main->output.to.stream, directorys[i], f_string_eol_s); + fll_print_format("Created directory '%Q'.%r", main->output.to.stream, directorys[i], f_string_eol_s); } } // for diff --git a/level_3/fake/c/private-build.c b/level_3/fake/c/private-build.c index 49058ec..9efdd5a 100644 --- a/level_3/fake/c/private-build.c +++ b/level_3/fake/c/private-build.c @@ -299,7 +299,7 @@ extern "C" { f_string_dynamic_t destination_directory = f_string_dynamic_t_initialize; if (main->output.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[Copying %S.%]%q", main->output.to.stream, f_string_eol_s, main->context.set.important, label, main->context.set.important, f_string_eol_s); + fll_print_format("%r%[Copying %S.%]%r", main->output.to.stream, f_string_eol_s, main->context.set.important, label, main->context.set.important, f_string_eol_s); } macro_f_string_dynamic_t_resize(*status, path_source, source.used); @@ -470,7 +470,7 @@ extern "C" { } if (main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("Copied file '%Q' to '%Q'.%q", main->output.to.stream, path_source, destination_file, f_string_eol_s); + fll_print_format("Copied file '%Q' to '%Q'.%r", main->output.to.stream, path_source, destination_file, f_string_eol_s); } } else if (F_status_is_error(*status)) { @@ -682,9 +682,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QFailed to execute script: '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QFailed to execute script: '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, path, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -762,9 +762,9 @@ extern "C" { if (main->output.verbosity != f_console_verbosity_quiet_e) { flockfile(main->output.to.stream); - fl_print_format("%q%[Building project%] ", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important); + fl_print_format("%r%[Building project%] ", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important); fl_print_format("%[%Q%]", main->output.to.stream, main->context.set.notable, data_build.setting.project_name, main->context.set.notable); - fl_print_format("%[.%]%q", main->output.to.stream, main->context.set.important, main->context.set.important, f_string_eol_s); + fl_print_format("%[.%]%r", main->output.to.stream, main->context.set.important, main->context.set.important, f_string_eol_s); funlockfile(main->output.to.stream); } diff --git a/level_3/fake/c/private-clean.c b/level_3/fake/c/private-clean.c index 39ddb69..e37a0a6 100644 --- a/level_3/fake/c/private-clean.c +++ b/level_3/fake/c/private-clean.c @@ -18,9 +18,9 @@ extern "C" { if (main->output.verbosity != f_console_verbosity_quiet_e) { flockfile(main->output.to.stream); - fl_print_format("%q%[Deleting all files within build directory '%]", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important); + fl_print_format("%r%[Deleting all files within build directory '%]", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important); fl_print_format("%[%Q%]", main->output.to.stream, main->context.set.notable, main->path_build, main->context.set.notable); - fl_print_format("%[.%]%q", main->output.to.stream, main->context.set.important, main->context.set.important, f_string_eol_s); + fl_print_format("%[.%]%r", main->output.to.stream, main->context.set.important, main->context.set.important, f_string_eol_s); funlockfile(main->output.to.stream); } @@ -42,7 +42,7 @@ extern "C" { f_print_terminated("The build directory '", main->output.to.stream); fl_print_format("%[%Q%]", main->output.to.stream, main->context.set.notable, main->path_build, main->context.set.notable); - fl_print_format("' does not exist.%q", main->output.to.stream, f_string_eol_s); + fl_print_format("' does not exist.%r", main->output.to.stream, f_string_eol_s); funlockfile(main->output.to.stream); } @@ -70,7 +70,7 @@ extern "C" { if (!result) { // @todo in order to get this working, the recursive function that calls this needs to be rewritten with more flexibility or provide a higher-level equivalent function. - fll_print_format("Removed '%S'.%q", stdout, path, f_string_eol_s); + fll_print_format("Removed '%S'.%r", stdout, path, f_string_eol_s); } return result; diff --git a/level_3/fake/c/private-fake.c b/level_3/fake/c/private-fake.c index 7baaa9b..84d8fa7 100644 --- a/level_3/fake/c/private-fake.c +++ b/level_3/fake/c/private-fake.c @@ -27,7 +27,7 @@ extern "C" { fl_print_format(" %Q", main->output.to.stream, arguments.array[i]); } // for - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); funlockfile(main->output.to.stream); @@ -72,9 +72,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QFailed to find program '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QFailed to find program '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, program, main->error.notable); - fl_print_format("%[' for executing.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' for executing.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -221,9 +221,9 @@ extern "C" { if (fll_error_print(main->error, F_status_set_fine(status), "f_utf_is_word_dash_plus", F_false) == F_known_not && main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QFailed to process the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_process_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QFailed to process the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_process_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -235,11 +235,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_process_s, main->error.notable); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_process_s, main->error.notable); fl_print_format("%[' parameters value '%]", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); fl_print_format("%[%S%]", main->error.to.stream, main->error.notable, arguments->argv[location], main->error.notable); - fl_print_format("%[' contains non-word, non-dash, and non-plus characters.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' contains non-word, non-dash, and non-plus characters.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -256,9 +256,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%Q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameters_name[i], main->error.notable); - fl_print_format("%[' is too long.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%Q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameters_name[i], main->error.notable); + fl_print_format("%[' is too long.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -278,9 +278,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameters_name[i], main->error.notable); - fl_print_format("%[' must not be empty and must not contain only whitespace.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameters_name[i], main->error.notable); + fl_print_format("%[' must not be empty and must not contain only whitespace.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -355,9 +355,9 @@ extern "C" { if (fll_error_print(main->error, F_status_set_fine(status), "fl_console_parameter_to_string_dynamic_directory", F_false) == F_known_not && main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QFailed to process parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameters_name[i], main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QFailed to process parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameters_name[i], main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -374,9 +374,9 @@ extern "C" { if (fll_error_print(main->error, F_status_set_fine(status), " f_string_dynamic_append", F_false) == F_known_not && main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QFailed to load default for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameters_name[i], main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QFailed to load default for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameters_name[i], main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -394,9 +394,9 @@ extern "C" { if (fll_error_print(main->error, F_status_set_fine(status), "fll_program_parameter_additional_rip", F_false) == F_known_not && main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QFailed to process the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_define_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QFailed to process the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_define_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -416,9 +416,9 @@ extern "C" { if (fll_error_print(main->error, F_status_set_fine(status), "fll_program_parameter_additional_rip", F_false) == F_known_not && main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%SFailed to process the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_mode_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%SFailed to process the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_mode_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -442,9 +442,9 @@ extern "C" { if (fll_error_print(main->error, F_status_set_fine(status), "f_utf_is_word_dash_plus", F_false) == F_known_not && main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QFailed to process the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_mode_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QFailed to process the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_mode_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -456,11 +456,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_mode_s, main->error.notable); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_mode_s, main->error.notable); fl_print_format("%[' parameters value '%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fake_long_mode_s, main->error.notable); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, main->mode.array[i], main->error.notable); - fl_print_format("%[' contains non-word, non-dash, and non-plus characters.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' contains non-word, non-dash, and non-plus characters.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -577,9 +577,9 @@ extern "C" { else if (parameters_required[i]) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QNo valid path for the (required) directory parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameters_name[i], main->error.notable); - fl_print_format("%[' was found.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QNo valid path for the (required) directory parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameters_name[i], main->error.notable); + fl_print_format("%[' was found.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -593,19 +593,19 @@ extern "C" { #ifndef _di_fake_verbose_print_clone_ void fake_verbose_print_clone(const f_file_t output, const f_string_t source, const f_string_t destination) { - fll_print_format("Cloned '%S' to '%S'.%q", output.stream, source, destination, f_string_eol_s); + fll_print_format("Cloned '%S' to '%S'.%r", output.stream, source, destination, f_string_eol_s); } #endif // _di_fake_verbose_print_clone_ #ifndef _di_fake_verbose_print_copy_ void fake_verbose_print_copy(const f_file_t output, const f_string_t source, const f_string_t destination) { - fll_print_format("Copied '%S' to '%S'.%q", output.stream, source, destination, f_string_eol_s); + fll_print_format("Copied '%S' to '%S'.%r", output.stream, source, destination, f_string_eol_s); } #endif // _di_fake_verbose_print_copy_ #ifndef _di_fake_verbose_print_move_ void fake_verbose_print_move(const f_file_t output, const f_string_t source, const f_string_t destination) { - fll_print_format("Moved '%S' to '%S'.%q", output.stream, source, destination, f_string_eol_s); + fll_print_format("Moved '%S' to '%S'.%r", output.stream, source, destination, f_string_eol_s); } #endif // _di_fake_verbose_print_move_ diff --git a/level_3/fake/c/private-make-load_fakefile.c b/level_3/fake/c/private-make-load_fakefile.c index 3adef5a..2f7b564 100644 --- a/level_3/fake/c/private-make-load_fakefile.c +++ b/level_3/fake/c/private-make-load_fakefile.c @@ -34,9 +34,9 @@ extern "C" { if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { flockfile(data_make->main->warning.to.stream); - fl_print_format("%q%[%QThe fakefile '%]", data_make->main->warning.to.stream, f_string_eol_s, data_make->main->warning.context, data_make->main->warning.prefix, data_make->main->warning.context); + fl_print_format("%r%[%QThe fakefile '%]", data_make->main->warning.to.stream, f_string_eol_s, data_make->main->warning.context, data_make->main->warning.prefix, data_make->main->warning.context); fl_print_format("%[%Q%]", data_make->main->warning.to.stream, data_make->main->warning.notable, data_make->main->file_data_build_fakefile, data_make->main->warning.notable); - fl_print_format("%[' is empty.%]%q", data_make->main->warning.to.stream, data_make->main->warning.context, data_make->main->warning.context, f_string_eol_s); + fl_print_format("%[' is empty.%]%r", data_make->main->warning.to.stream, data_make->main->warning.context, data_make->main->warning.context, f_string_eol_s); funlockfile(data_make->main->warning.to.stream); } @@ -195,11 +195,11 @@ extern "C" { if (data_make->main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(data_make->main->error.to.stream); - fl_print_format("%q%[%QThe fakefile '%]", data_make->main->error.to.stream, f_string_eol_s, data_make->main->error.context, data_make->main->error.prefix, data_make->main->error.context); + fl_print_format("%r%[%QThe fakefile '%]", data_make->main->error.to.stream, f_string_eol_s, data_make->main->error.context, data_make->main->error.prefix, data_make->main->error.context); fl_print_format("%[%Q%]", data_make->main->error.to.stream, data_make->main->error.notable, data_make->main->file_data_build_fakefile, data_make->main->error.notable); fl_print_format("%[' is missing the required '%]", data_make->main->error.to.stream, data_make->main->error.context, data_make->main->error.context); - fl_print_format("%[%q%]", data_make->main->error.to.stream, data_make->main->error.notable, fake_make_section_main_s, data_make->main->error.notable); - fl_print_format("%[' object.%]%q", data_make->main->error.to.stream, data_make->main->error.context, data_make->main->error.context, f_string_eol_s); + fl_print_format("%[%r%]", data_make->main->error.to.stream, data_make->main->error.notable, fake_make_section_main_s, data_make->main->error.notable); + fl_print_format("%[' object.%]%r", data_make->main->error.to.stream, data_make->main->error.context, data_make->main->error.context, f_string_eol_s); funlockfile(data_make->main->error.to.stream); } @@ -469,9 +469,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QInvalid characters in the define setting name '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QInvalid characters in the define setting name '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, define.array[i].name, main->error.notable); - fl_print_format("%[', only alpha-numeric ASCII characters and underscore (without a leading digit) are allowed.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[', only alpha-numeric ASCII characters and underscore (without a leading digit) are allowed.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -553,9 +553,9 @@ extern "C" { else if (data_make->main->warning.verbosity == f_console_verbosity_verbose_e) { flockfile(data_make->main->warning.to.stream); - fl_print_format("%q%[%QThe environment name '%]", data_make->main->warning.to.stream, f_string_eol_s, data_make->main->warning.context, data_make->main->warning.prefix, data_make->main->warning.context); + fl_print_format("%r%[%QThe environment name '%]", data_make->main->warning.to.stream, f_string_eol_s, data_make->main->warning.context, data_make->main->warning.prefix, data_make->main->warning.context); fl_print_format("%[%Q%]", data_make->main->warning.to.stream, data_make->main->warning.notable, name_define, data_make->main->warning.notable); - fl_print_format("%[' is already added.%]%q", data_make->main->warning.to.stream, data_make->main->warning.context, data_make->main->warning.context, f_string_eol_s); + fl_print_format("%[' is already added.%]%r", data_make->main->warning.to.stream, data_make->main->warning.context, data_make->main->warning.context, f_string_eol_s); funlockfile(data_make->main->warning.to.stream); } @@ -563,9 +563,9 @@ extern "C" { else if (data_make->main->warning.verbosity == f_console_verbosity_verbose_e) { flockfile(data_make->main->warning.to.stream); - fl_print_format("%q%[%QThe environment name '%]", data_make->main->warning.to.stream, f_string_eol_s, data_make->main->warning.context, data_make->main->warning.prefix, data_make->main->warning.context); + fl_print_format("%r%[%QThe environment name '%]", data_make->main->warning.to.stream, f_string_eol_s, data_make->main->warning.context, data_make->main->warning.prefix, data_make->main->warning.context); fl_print_format("%[%Q%]", data_make->main->warning.to.stream, data_make->main->warning.notable, name_define, data_make->main->warning.notable); - fl_print_format("%[' is invalid, ignoring.%]%q", data_make->main->warning.to.stream, data_make->main->warning.context, data_make->main->warning.context, f_string_eol_s); + fl_print_format("%[' is invalid, ignoring.%]%r", data_make->main->warning.to.stream, data_make->main->warning.context, data_make->main->warning.context, f_string_eol_s); funlockfile(data_make->main->warning.to.stream); } diff --git a/level_3/fake/c/private-make-operate.c b/level_3/fake/c/private-make-operate.c index b4f4a44..2fa7160 100644 --- a/level_3/fake/c/private-make-operate.c +++ b/level_3/fake/c/private-make-operate.c @@ -25,7 +25,7 @@ extern "C" { } if (main->output.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[Making project.%]%q", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); + fll_print_format("%r%[Making project.%]%r", main->output.to.stream, f_string_eol_s, main->context.set.important, main->context.set.important, f_string_eol_s); } f_status_t status = F_none; @@ -118,11 +118,11 @@ extern "C" { if (F_status_is_error(status_path) && main->warning.verbosity == f_console_verbosity_verbose_e) { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QFailed change back to orignal path '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%r%[%QFailed change back to orignal path '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); fl_print_format("%[%Q%]", main->warning.to.stream, main->warning.notable, data_make.path.stack.array[0], main->warning.notable); fl_print_format("%[', status code =%] ", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%ui%]", main->warning.to.stream, main->warning.notable, F_status_set_fine(status_path), main->warning.notable); - fl_print_format("%['.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } @@ -985,9 +985,9 @@ extern "C" { if (data_make->main->output.verbosity != f_console_verbosity_quiet_e) { flockfile(data_make->main->output.to.stream); - fl_print_format("%q%[Processing Section '%]", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.important, data_make->main->context.set.important); + fl_print_format("%r%[Processing Section '%]", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.important, data_make->main->context.set.important); fl_print_format("%[%/Q%]", data_make->main->output.to.stream, data_make->main->context.set.notable, data_make->buffer, section->name, data_make->main->context.set.notable); - fl_print_format("%['.%]%q", data_make->main->output.to.stream, data_make->main->context.set.important, data_make->main->context.set.important, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->main->output.to.stream, data_make->main->context.set.important, data_make->main->context.set.important, f_string_eol_s); funlockfile(data_make->main->output.to.stream); } @@ -1340,16 +1340,16 @@ extern "C" { if (data_make->main->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QIncomplete '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QIncomplete '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); if (state_process.block == fake_state_process_block_else_e) { - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_else_s, data_make->error.notable); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_else_s, data_make->error.notable); } else { - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_if_s, data_make->error.notable); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_if_s, data_make->error.notable); } - fl_print_format("%[' at end of section.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[' at end of section.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } diff --git a/level_3/fake/c/private-make-operate_process.c b/level_3/fake/c/private-make-operate_process.c index ca8b6a5..f2faad0 100644 --- a/level_3/fake/c/private-make-operate_process.c +++ b/level_3/fake/c/private-make-operate_process.c @@ -88,9 +88,9 @@ extern "C" { if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { flockfile(data_make->main->output.to.stream); - fl_print_format("%qBreaking as '", data_make->main->output.to.stream, f_string_eol_s); + fl_print_format("%rBreaking as '", data_make->main->output.to.stream, f_string_eol_s); fl_print_format("%[%Q%]", data_make->main->output.to.stream, data_make->main->context.set.notable, arguments.used ? arguments.array[0] : fake_make_operation_argument_success_s, data_make->main->context.set.notable); - fl_print_format("'.%q", data_make->main->output.to.stream, f_string_eol_s); + fl_print_format("'.%r", data_make->main->output.to.stream, f_string_eol_s); funlockfile(data_make->main->output.to.stream); } @@ -165,7 +165,7 @@ extern "C" { fll_error_print(data_make->error, F_status_set_fine(*status), "f_environment_set", F_true); } else if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("%qDefined environment variable '%[%Q%]'.%q", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, arguments.array[0], data_make->main->context.set.notable, f_string_eol_s); + fll_print_format("%rDefined environment variable '%[%Q%]'.%r", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, arguments.array[0], data_make->main->context.set.notable, f_string_eol_s); } return 0; @@ -211,7 +211,7 @@ extern "C" { } if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("%qExiting as '%[%Q%]'.%q", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, arguments.used ? arguments.array[0] : fake_make_operation_argument_success_s, data_make->main->context.set.notable, f_string_eol_s); + fll_print_format("%rExiting as '%[%Q%]'.%r", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, arguments.used ? arguments.array[0] : fake_make_operation_argument_success_s, data_make->main->context.set.notable, f_string_eol_s); } return 0; @@ -363,7 +363,7 @@ extern "C" { flockfile(data_make->main->output.to.stream); fl_print_format("Created symbolic link from '%[%Q%]", data_make->main->output.to.stream, data_make->main->context.set.notable, arguments.array[1], data_make->main->context.set.notable); - fl_print_format("' to %[%Q%].%q", data_make->main->output.to.stream, data_make->main->context.set.notable, arguments.array[0], data_make->main->context.set.notable, f_string_eol_s); + fl_print_format("' to %[%Q%].%r", data_make->main->output.to.stream, data_make->main->context.set.notable, arguments.array[0], data_make->main->context.set.notable, f_string_eol_s); funlockfile(data_make->main->output.to.stream); } @@ -448,12 +448,12 @@ extern "C" { f_print_dynamic(arguments.array[i], data_make->main->output.to.stream); if (i + 1 < arguments.used) { - f_print_dynamic(f_string_space_s, data_make->main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, data_make->main->output.to.stream); } } // for - f_print_dynamic(f_string_space_s, data_make->main->output.to.stream); - f_print_dynamic(f_string_eol_s, data_make->main->output.to.stream); + f_print_dynamic_raw(f_string_space_s, data_make->main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, data_make->main->output.to.stream); funlockfile(data_make->main->output.to.stream); @@ -542,7 +542,7 @@ extern "C" { } } // for - f_print_dynamic(f_string_eol_s, data_make->main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, data_make->main->output.to.stream); funlockfile(data_make->main->output.to.stream); @@ -574,9 +574,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QFailed to find program '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QFailed to find program '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, program, data_make->error.notable); - fl_print_format("%[' for executing.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[' for executing.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -650,9 +650,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QFailed with return code %]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QFailed with return code %]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%i%]", data_make->error.to.stream, data_make->error.notable, return_code, data_make->error.notable); - fl_print_format("%[.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } diff --git a/level_3/fake/c/private-make-operate_process_type.c b/level_3/fake/c/private-make-operate_process_type.c index 6bc7365..d309bf7 100644 --- a/level_3/fake/c/private-make-operate_process_type.c +++ b/level_3/fake/c/private-make-operate_process_type.c @@ -108,8 +108,8 @@ extern "C" { else if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { flockfile(data_make->main->output.to.stream); - fl_print_format("%q%q '%[%Q%]' to '", data_make->main->output.to.stream, f_string_eol_s, clone ? "Cloned" : "Copied", data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable); - fl_print_format("%[%S%]'.%q", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, destination, data_make->main->context.set.notable, f_string_eol_s); + fl_print_format("%r%r '%[%Q%]' to '", data_make->main->output.to.stream, f_string_eol_s, clone ? "Cloned" : "Copied", data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable); + fl_print_format("%[%S%]'.%r", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, destination, data_make->main->context.set.notable, f_string_eol_s); funlockfile(data_make->main->output.to.stream); } @@ -146,9 +146,9 @@ extern "C" { if (data_make->main->warning.verbosity == f_console_verbosity_verbose_e) { flockfile(data_make->main->warning.to.stream); - fl_print_format("%q%[%QThe file '%]", data_make->main->warning.to.stream, data_make->main->warning.prefix, f_string_eol_s); + fl_print_format("%r%[%QThe file '%]", data_make->main->warning.to.stream, data_make->main->warning.prefix, f_string_eol_s); fl_print_format("%[%Q%]", data_make->main->warning.to.stream, data_make->main->warning.notable, arguments.array[i], data_make->main->warning.notable); - fl_print_format("%[' cannot be found.%]%q", data_make->main->warning.to.stream, f_string_eol_s); + fl_print_format("%[' cannot be found.%]%r", data_make->main->warning.to.stream, f_string_eol_s); funlockfile(data_make->main->warning.to.stream); } @@ -171,7 +171,7 @@ extern "C" { if (F_status_set_fine(status) == F_file_found_not) { if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("%qThe directory '%[%Q%]' does not exist.%q", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable, f_string_eol_s); + fll_print_format("%rThe directory '%[%Q%]' does not exist.%r", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable, f_string_eol_s); } status = F_none; @@ -183,7 +183,7 @@ extern "C" { return status; } else if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("%qRemoved '%[%Q%]'.%q", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable, f_string_eol_s); + fll_print_format("%rRemoved '%[%Q%]'.%r", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable, f_string_eol_s); } } else { @@ -191,7 +191,7 @@ extern "C" { if (F_status_set_fine(status) == F_file_found_not) { if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("%qThe file '%[%Q%]' does not exist.%q", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable, f_string_eol_s); + fll_print_format("%rThe file '%[%Q%]' does not exist.%r", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable, f_string_eol_s); } status = F_none; @@ -204,7 +204,7 @@ extern "C" { } if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("%qRemoved '%[%Q%]'.%q", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable, f_string_eol_s); + fll_print_format("%rRemoved '%[%Q%]'.%r", data_make->main->output.to.stream, f_string_eol_s, data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable, f_string_eol_s); } } } // for @@ -248,16 +248,16 @@ extern "C" { f_print_terminated("Set failure state to '", data_make->main->output.to.stream); if (data_make->setting_make.fail == fake_make_operation_fail_type_exit_e) { - fl_print_format("%[%q%]", data_make->main->output.to.stream, data_make->main->context.set.notable, fake_make_operation_argument_exit_s, data_make->main->context.set.notable); + fl_print_format("%[%r%]", data_make->main->output.to.stream, data_make->main->context.set.notable, fake_make_operation_argument_exit_s, data_make->main->context.set.notable); } else if (data_make->setting_make.fail == fake_make_operation_fail_type_warn_e) { - fl_print_format("%[%q%]", data_make->main->output.to.stream, data_make->main->context.set.notable, fake_make_operation_argument_warn_s, data_make->main->context.set.notable); + fl_print_format("%[%r%]", data_make->main->output.to.stream, data_make->main->context.set.notable, fake_make_operation_argument_warn_s, data_make->main->context.set.notable); } else { - fl_print_format("%[%q%]", data_make->main->output.to.stream, data_make->main->context.set.notable, fake_make_operation_argument_ignore_s, data_make->main->context.set.notable); + fl_print_format("%[%r%]", data_make->main->output.to.stream, data_make->main->context.set.notable, fake_make_operation_argument_ignore_s, data_make->main->context.set.notable); } - fl_print_format("'.%q", data_make->main->output.to.stream, f_string_eol_s); + fl_print_format("'.%r", data_make->main->output.to.stream, f_string_eol_s); funlockfile(data_make->main->output.to.stream); } @@ -302,8 +302,8 @@ extern "C" { else if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { flockfile(data_make->main->output.to.stream); - fl_print_format("%q group of '%[%q%]", data_make->main->output.to.stream, all ? "Recursively changed" : "Changed", data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable); - fl_print_format("' to %[%ul%].%q", data_make->main->output.to.stream, data_make->main->context.set.notable, id, data_make->main->context.set.notable, f_string_eol_s); + fl_print_format("%r group of '%[%r%]", data_make->main->output.to.stream, all ? "Recursively changed" : "Changed", data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable); + fl_print_format("' to %[%ul%].%r", data_make->main->output.to.stream, data_make->main->context.set.notable, id, data_make->main->context.set.notable, f_string_eol_s); funlockfile(data_make->main->output.to.stream); } @@ -756,14 +756,14 @@ extern "C" { flockfile(data_make->error.to.stream); if ((i == 1 && number_left > F_number_t_size_unsigned_d) || (i > 1 && number_right > F_number_t_size_unsigned_d)) { - fl_print_format("%q%[%QThe number '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QThe number '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[i], data_make->error.notable); - fl_print_format("%[' may only be between the ranges -%un to %un.%]%q", data_make->error.to.stream, data_make->error.context, F_number_t_size_unsigned_d, F_number_t_size_unsigned_d, data_make->error.context, f_string_eol_s); + fl_print_format("%[' may only be between the ranges -%un to %un.%]%r", data_make->error.to.stream, data_make->error.context, F_number_t_size_unsigned_d, F_number_t_size_unsigned_d, data_make->error.context, f_string_eol_s); } else { - fl_print_format("%q%[%QInvalid or unsupported number provided '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QInvalid or unsupported number provided '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[i], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, F_number_t_size_unsigned_d, F_number_t_size_unsigned_d, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, F_number_t_size_unsigned_d, F_number_t_size_unsigned_d, data_make->error.context, f_string_eol_s); } funlockfile(data_make->error.to.stream); @@ -1004,7 +1004,7 @@ extern "C" { } if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("Changed mode of '%Q' to %#@u.%q", data_make->main->output.to.stream, arguments.array[i], mode, f_string_eol_s); + fll_print_format("Changed mode of '%Q' to %#@u.%r", data_make->main->output.to.stream, arguments.array[i], mode, f_string_eol_s); } } // for @@ -1118,7 +1118,7 @@ extern "C" { fll_error_file_print(data_make->error, F_status_set_fine(status), all ? "fll_file_role_change_all" : "f_file_role_change", F_true, arguments.array[i].string, "change owner of", fll_error_file_type_file_e); } else if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("%s owner of '%Q' to %u.%q", data_make->main->output.to.stream, all ? "Recursively changed" : "Changed", arguments.array[i], id, f_string_eol_s); + fll_print_format("%s owner of '%Q' to %u.%r", data_make->main->output.to.stream, all ? "Recursively changed" : "Changed", arguments.array[i], id, f_string_eol_s); } } // for @@ -1247,10 +1247,10 @@ extern "C" { // The created relative path is for verbosity purposes and as such its failure to be processed should not be treated as a failure of the function. if (F_status_is_error(status)) { fll_error_print(data_make->error, F_status_set_fine(status), "fake_make_path_relative", F_true); - fll_print_format("Changed to project path '%[%Q%]'.%q", data_make->main->output.to.stream, data_make->main->context.set.notable, data_make->path.stack.array[data_make->path.stack.used - 1], data_make->main->context.set.notable, f_string_eol_s); + fll_print_format("Changed to project path '%[%Q%]'.%r", data_make->main->output.to.stream, data_make->main->context.set.notable, data_make->path.stack.array[data_make->path.stack.used - 1], data_make->main->context.set.notable, f_string_eol_s); } else { - fll_print_format("Changed to project path '%[%Q%]'.%q", data_make->main->output.to.stream, data_make->main->context.set.notable, data_make->path_cache, data_make->main->context.set.notable, f_string_eol_s); + fll_print_format("Changed to project path '%[%Q%]'.%r", data_make->main->output.to.stream, data_make->main->context.set.notable, data_make->path_cache, data_make->main->context.set.notable, f_string_eol_s); } } @@ -1312,10 +1312,10 @@ extern "C" { // The created relative path is for verbosity purposes and as such its failure to be processed should not be treated as a failure of the function. if (F_status_is_error(status)) { fll_error_print(data_make->error, F_status_set_fine(status), "fake_make_path_relative", F_true); - fll_print_format("Changed to project path '%[%Q%]'.%q", data_make->main->output.to.stream, data_make->main->context.set.notable, data_make->path.stack.array[data_make->path.stack.used], data_make->main->context.set.notable, f_string_eol_s); + fll_print_format("Changed to project path '%[%Q%]'.%r", data_make->main->output.to.stream, data_make->main->context.set.notable, data_make->path.stack.array[data_make->path.stack.used], data_make->main->context.set.notable, f_string_eol_s); } else { - fll_print_format("Changed to project path '%[%Q%]'.%q", data_make->main->output.to.stream, data_make->main->context.set.notable, data_make->path_cache, data_make->main->context.set.notable, f_string_eol_s); + fll_print_format("Changed to project path '%[%Q%]'.%r", data_make->main->output.to.stream, data_make->main->context.set.notable, data_make->path_cache, data_make->main->context.set.notable, f_string_eol_s); } } @@ -1342,7 +1342,7 @@ extern "C" { } if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("Changed to project path ''.%q", data_make->main->output.to.stream, f_string_eol_s); + fll_print_format("Changed to project path ''.%r", data_make->main->output.to.stream, f_string_eol_s); } // Clear stack, except for the project root. @@ -1396,7 +1396,7 @@ extern "C" { } if (data_make->main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("Touched '%[%Q%]'.%q", data_make->main->output.to.stream, data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable, f_string_eol_s); + fll_print_format("Touched '%[%Q%]'.%r", data_make->main->output.to.stream, data_make->main->context.set.notable, arguments.array[i], data_make->main->context.set.notable, f_string_eol_s); } } // for diff --git a/level_3/fake/c/private-make-operate_validate.c b/level_3/fake/c/private-make-operate_validate.c index 21f655b..13c3743 100644 --- a/level_3/fake/c/private-make-operate_validate.c +++ b/level_3/fake/c/private-make-operate_validate.c @@ -29,9 +29,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QNo indexer has been specified, cannot perform '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_index_s, data_make->error.notable); - fl_print_format("%[' section operation.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%r%[%QNo indexer has been specified, cannot perform '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_index_s, data_make->error.notable); + fl_print_format("%[' section operation.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -56,9 +56,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QUnsupported break type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QUnsupported break type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[0], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -92,9 +92,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QFailed to find file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QFailed to find file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%S%]", data_make->error.to.stream, data_make->error.notable, path_file, data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -109,9 +109,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QThe file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QThe file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%S%]", data_make->error.to.stream, data_make->error.notable, path_file, data_make->error.notable); - fl_print_format("%[' must be a regular file.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[' must be a regular file.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -121,7 +121,7 @@ extern "C" { } else { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { - fll_print_format("%q%[QFilename argument must not be an empty string.%]%q", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context, f_string_eol_s); + fll_print_format("%r%[QFilename argument must not be an empty string.%]%r", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context, f_string_eol_s); } *status = F_status_set_error(F_failure); @@ -141,7 +141,7 @@ extern "C" { if (data_make->path.stack.used == 1) { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { - fll_print_format("%q%[%QMust not attempt to pop project root off of path stack.%]%q", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context, f_string_eol_s); + fll_print_format("%r%[%QMust not attempt to pop project root off of path stack.%]%r", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context, f_string_eol_s); } *status = F_status_set_error(F_failure); @@ -172,9 +172,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QFailed to find file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QFailed to find file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[i], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -192,9 +192,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QThe last file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QThe last file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[arguments.used - 1], data_make->error.notable); - fl_print_format("%[' must be a valid directory.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[' must be a valid directory.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -218,9 +218,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QThe last file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QThe last file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[1], data_make->error.notable); - fl_print_format("%[' must be a valid directory.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[' must be a valid directory.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -249,9 +249,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QNo compiler has been specified, cannot perform '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_compile_s, data_make->error.notable); - fl_print_format("%[' section operation.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%r%[%QNo compiler has been specified, cannot perform '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_compile_s, data_make->error.notable); + fl_print_format("%[' section operation.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -283,9 +283,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QFailed to find file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QFailed to find file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[i], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -303,9 +303,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QThe last file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QThe last file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[arguments.used - 1], data_make->error.notable); - fl_print_format("%[' must be a valid directory.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[' must be a valid directory.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -329,9 +329,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QThe last file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QThe last file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[1], data_make->error.notable); - fl_print_format("%[' must be a valid directory.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[' must be a valid directory.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -356,7 +356,7 @@ extern "C" { if (*status == F_none) { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { - fll_print_format("%q%[%QDefine name must not be an empty string.%]%q", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context, f_string_eol_s); + fll_print_format("%r%[%QDefine name must not be an empty string.%]%r", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context, f_string_eol_s); } *status = F_status_set_error(F_failure); @@ -365,9 +365,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QInvalid characters in the define setting name '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QInvalid characters in the define setting name '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[0], data_make->error.notable); - fl_print_format("%[', only alpha-numeric ASCII characters and underscore (without a leading digit) is allowed.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[', only alpha-numeric ASCII characters and underscore (without a leading digit) is allowed.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -413,9 +413,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QMust not be used immediately after another '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_else_s, data_make->error.notable); - fl_print_format("%[' section operation.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%r%[%QMust not be used immediately after another '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_else_s, data_make->error.notable); + fl_print_format("%[' section operation.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -429,13 +429,13 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QMust not be used immediately after an '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_if_s, data_make->error.notable); + fl_print_format("%r%[%QMust not be used immediately after an '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_if_s, data_make->error.notable); fl_print_format("%[', '%]", data_make->error.to.stream, data_make->error.context, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_and_s, data_make->error.notable); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_and_s, data_make->error.notable); fl_print_format("%[', or '%]", data_make->error.to.stream, data_make->error.context, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_or_s, data_make->error.notable); - fl_print_format("%[' section operation.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_or_s, data_make->error.notable); + fl_print_format("%[' section operation.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -447,13 +447,13 @@ extern "C" { if (!state_process->block) { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { - fl_print_format("%q%[%QHas no preceding '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_if_s, data_make->error.notable); + fl_print_format("%r%[%QHas no preceding '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_if_s, data_make->error.notable); fl_print_format("%[', '%]", data_make->error.to.stream, data_make->error.context, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_and_s, data_make->error.notable); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_and_s, data_make->error.notable); fl_print_format("%[', or '%]", data_make->error.to.stream, data_make->error.context, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_or_s, data_make->error.notable); - fl_print_format("%[' section operation.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_or_s, data_make->error.notable); + fl_print_format("%[' section operation.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); } *status = F_status_set_error(F_failure); @@ -482,9 +482,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QUnsupported exit type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QUnsupported exit type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[0], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -505,9 +505,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QUnsupported fail type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QUnsupported fail type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[0], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -538,9 +538,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QFailed to find file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QFailed to find file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[i], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -572,13 +572,13 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QMust not be used immediately after another '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_if_s, data_make->error.notable); + fl_print_format("%r%[%QMust not be used immediately after another '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_if_s, data_make->error.notable); fl_print_format("%[', '%]", data_make->error.to.stream, data_make->error.context, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_and_s, data_make->error.notable); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_and_s, data_make->error.notable); fl_print_format("%[', or '%]", data_make->error.to.stream, data_make->error.context, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_or_s, data_make->error.notable); - fl_print_format("%[' section operation.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_or_s, data_make->error.notable); + fl_print_format("%[' section operation.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -593,13 +593,13 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QMay only be used immediately after another '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_if_s, data_make->error.notable); + fl_print_format("%r%[%QMay only be used immediately after another '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_if_s, data_make->error.notable); fl_print_format("%[', '%]", data_make->error.to.stream, data_make->error.context, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_and_s, data_make->error.notable); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_and_s, data_make->error.notable); fl_print_format("%[', or '%]", data_make->error.to.stream, data_make->error.context, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_or_s, data_make->error.notable); - fl_print_format("%[' section operation.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, fake_make_operation_or_s, data_make->error.notable); + fl_print_format("%[' section operation.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -740,11 +740,11 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QUnsupported '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, if_and_or, data_make->error.notable); + fl_print_format("%r%[%QUnsupported '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, if_and_or, data_make->error.notable); fl_print_format("%[' type '%]", data_make->error.to.stream, data_make->error.context, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[0], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -777,11 +777,11 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QUnsupported '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); - fl_print_format("%[%q%]", data_make->error.to.stream, data_make->error.notable, if_and_or, data_make->error.notable); + fl_print_format("%r%[%QUnsupported '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%[%r%]", data_make->error.to.stream, data_make->error.notable, if_and_or, data_make->error.notable); fl_print_format("%[' not type '%]", data_make->error.to.stream, data_make->error.context, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[1], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -814,9 +814,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QUnsupported define type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QUnsupported define type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, j == 6 ? arguments.array[1] : arguments.array[2], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -847,9 +847,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QUnsupported %smode type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, j == 6 ? "" : "not ", data_make->error.context); + fl_print_format("%r%[%QUnsupported %smode type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, j == 6 ? "" : "not ", data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[1], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -917,9 +917,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QUnsupported file type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QUnsupported file type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[i], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -1027,14 +1027,14 @@ extern "C" { flockfile(data_make->error.to.stream); if (number > F_number_t_size_unsigned_d) { - fl_print_format("%q%[%QThe number '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QThe number '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[i], data_make->error.notable); - fl_print_format("%[' may only be between the ranges -%un to %un.%]%q", data_make->error.to.stream, data_make->error.context, F_number_t_size_unsigned_d, F_number_t_size_unsigned_d, data_make->error.context, f_string_eol_s); + fl_print_format("%[' may only be between the ranges -%un to %un.%]%r", data_make->error.to.stream, data_make->error.context, F_number_t_size_unsigned_d, F_number_t_size_unsigned_d, data_make->error.context, f_string_eol_s); } else { - fl_print_format("%q%[%QInvalid or unsupported number provided '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QInvalid or unsupported number provided '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[i], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); } funlockfile(data_make->error.to.stream); @@ -1111,9 +1111,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QFailed to find file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QFailed to find file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[i], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -1131,9 +1131,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QThe last file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QThe last file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[arguments.used - 1], data_make->error.notable); - fl_print_format("%[' must be a valid directory.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[' must be a valid directory.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -1157,9 +1157,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QThe last file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QThe last file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[arguments.used - 1], data_make->error.notable); - fl_print_format("%[' must be a valid directory.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[' must be a valid directory.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -1197,9 +1197,9 @@ extern "C" { if (id_section == data_make->fakefile.used) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QNo operation section named '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QNo operation section named '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[0], data_make->error.notable); - fl_print_format("%[' was found.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[' was found.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -1210,9 +1210,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QThe section operation '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QThe section operation '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, data_make->fakefile.array[id_section].name, data_make->error.notable); - fl_print_format("%[' is already in the operation stack, recursion is not allowed.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[' is already in the operation stack, recursion is not allowed.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -1273,7 +1273,7 @@ extern "C" { for (f_array_length_t i = 0; i < 33; ++i) { if (fl_string_dynamic_compare(reserved_name[i], arguments.array[0]) == F_equal_to) { - fll_print_format("%q%[%QCannot assign a value to the parameter name '%q' because it is a reserved parameter name.%]%q", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, reserved_name[i], data_make->error.context, f_string_eol_s); + fll_print_format("%r%[%QCannot assign a value to the parameter name '%r' because it is a reserved parameter name.%]%r", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, reserved_name[i], data_make->error.context, f_string_eol_s); *status = F_status_set_error(F_failure); @@ -1304,9 +1304,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QFailed to find file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QFailed to find file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[0], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -1324,9 +1324,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QThe file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QThe file '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[0], data_make->error.notable); - fl_print_format("%[' must be a directory file.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%[' must be a directory file.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } @@ -1336,7 +1336,7 @@ extern "C" { } else { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { - fll_print_format("%q%[%QFilename argument must not be an empty string.%]%q", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context, f_string_eol_s); + fll_print_format("%r%[%QFilename argument must not be an empty string.%]%r", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context, f_string_eol_s); } } } @@ -1357,9 +1357,9 @@ extern "C" { if (data_make->error.verbosity != f_console_verbosity_quiet_e && data_make->error.to.stream) { flockfile(data_make->error.to.stream); - fl_print_format("%q%[%QUnsupported file type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); + fl_print_format("%r%[%QUnsupported file type '%]", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context); fl_print_format("%[%Q%]", data_make->error.to.stream, data_make->error.notable, arguments.array[0], data_make->error.notable); - fl_print_format("%['.%]%q", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", data_make->error.to.stream, data_make->error.context, data_make->error.context, f_string_eol_s); funlockfile(data_make->error.to.stream); } diff --git a/level_3/fake/c/private-make.c b/level_3/fake/c/private-make.c index 3eadb13..46a637c 100644 --- a/level_3/fake/c/private-make.c +++ b/level_3/fake/c/private-make.c @@ -71,9 +71,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe group name '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe group name '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, buffer, main->error.notable); - fl_print_format("%[' was not found.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' was not found.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -91,9 +91,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe number '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe number '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%un%]", main->error.to.stream, main->error.notable, number, main->error.notable); - fl_print_format("%[' is too large.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' is too large.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -120,9 +120,9 @@ extern "C" { if (F_status_set_fine(status) == F_syntax) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe mode '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe mode '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, buffer, main->error.notable); - fl_print_format("%[' is invalid.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' is invalid.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -162,9 +162,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe user '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe user '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, buffer, main->error.notable); - fl_print_format("%[' was not found.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' was not found.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -182,9 +182,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe number '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe number '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%un%]", main->error.to.stream, main->error.notable, number, main->error.notable); - fl_print_format("%[' is too large.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' is too large.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } diff --git a/level_3/fake/c/private-print.c b/level_3/fake/c/private-print.c index 86a0b3f..86d5bd5 100644 --- a/level_3/fake/c/private-print.c +++ b/level_3/fake/c/private-print.c @@ -17,11 +17,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QFailed to find '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QFailed to find '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fake_print_error_build_operation_file_message(main, operation, source, destination, how); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -33,13 +33,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QInvalid parameter when calling '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QInvalid parameter when calling '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%S%]", main->error.to.stream, main->error.notable, function, main->error.notable); fl_print_format("%[() to %Q '%]", main->error.to.stream, main->error.context, operation, main->error.context); fake_print_error_build_operation_file_message(main, operation, source, destination, how); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -51,7 +51,7 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QInvalid name for '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QInvalid name for '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); if (source.used) { fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, source, main->error.notable); @@ -62,7 +62,7 @@ extern "C" { fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, destination, main->error.notable); } - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -74,11 +74,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QUnable to allocate memory, while trying to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); + fl_print_format("%r%[%QUnable to allocate memory, while trying to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); fake_print_error_build_operation_file_message(main, operation, source, destination, how); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -90,11 +90,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QOverflow while trying to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); + fl_print_format("%r%[%QOverflow while trying to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); fake_print_error_build_operation_file_message(main, operation, source, destination, how); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -106,11 +106,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QInvalid directory while trying to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); + fl_print_format("%r%[%QInvalid directory while trying to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); fake_print_error_build_operation_file_message(main, operation, source, destination, how); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -122,11 +122,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QAccess denied while trying to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); + fl_print_format("%r%[%QAccess denied while trying to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); fake_print_error_build_operation_file_message(main, operation, source, destination, how); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -138,11 +138,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QLoop while trying to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); + fl_print_format("%r%[%QLoop while trying to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); fake_print_error_build_operation_file_message(main, operation, source, destination, how); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -154,11 +154,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QProhibited by system while trying to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); + fl_print_format("%r%[%QProhibited by system while trying to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); fake_print_error_build_operation_file_message(main, operation, source, destination, how); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -170,11 +170,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QFailed to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); + fl_print_format("%r%[%QFailed to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); fake_print_error_build_operation_file_message(main, operation, source, destination, how); - fl_print_format("%[' due to an invalid directory in the path.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' due to an invalid directory in the path.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -186,11 +186,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QFailed to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); + fl_print_format("%r%[%QFailed to %Q '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, operation, main->error.context); fake_print_error_build_operation_file_message(main, operation, source, destination, how); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -201,13 +201,13 @@ extern "C" { if (fll_error_print(main->error, status, function, F_false) == F_known_not && fallback && main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[UNKNOWN %Q(%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[UNKNOWN %Q(%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%ui%]", main->error.to.stream, main->error.notable, status, main->error.notable); fl_print_format("%[) occurred while trying to %Q '%]", main->error.to.stream, main->error.context, operation, main->error.context); fake_print_error_build_operation_file_message(main, operation, source, destination, how); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -242,11 +242,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QOccurred on invalid UTF-8 character at stop position (at '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QOccurred on invalid UTF-8 character at stop position (at '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%un%]", main->error.to.stream, main->error.notable, range.start, main->error.notable); fl_print_format("%[ of setting file '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, path_file, main->error.notable); - fl_print_format("%[').%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[').%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -258,11 +258,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QOccurred on invalid UTF-8 character at %s (at '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, status == F_complete_not_utf_eos ? "end of string" : "stop point of string", main->error.context); + fl_print_format("%r%[%QOccurred on invalid UTF-8 character at %s (at '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, status == F_complete_not_utf_eos ? "end of string" : "stop point of string", main->error.context); fl_print_format("%[%un%]", main->error.to.stream, main->error.notable, range.start, main->error.notable); fl_print_format("%[ of setting file '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, path_file, main->error.notable); - fl_print_format("%[').%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[').%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -274,11 +274,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QOccurred on invalid UTF-8 character at stop point of string (at '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QOccurred on invalid UTF-8 character at stop point of string (at '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%un%]", main->error.to.stream, main->error.notable, range.start, main->error.notable); fl_print_format("%[ of setting file '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, path_file, main->error.notable); - fl_print_format("%[').%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[').%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -289,11 +289,11 @@ extern "C" { if (fll_error_print(main->error, status, function, F_false) == F_known_not && fallback && main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[UNKNOWN %Q(%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[UNKNOWN %Q(%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%ui%]", main->error.to.stream, main->error.notable, status, main->error.notable); fl_print_format("%[) in function '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, function, main->error.notable); - fl_print_format("%[().%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[().%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -309,9 +309,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -324,9 +324,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter, main->error.notable); - fl_print_format("%[' was specified too many times.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter, main->error.notable); + fl_print_format("%[' was specified too many times.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -338,7 +338,7 @@ extern "C" { if (data_make->error.verbosity == f_console_verbosity_quiet_e) return; if (!data_make->error.to.stream) return; - fll_print_format("%q%[%QRequires more arguments.%]%q", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context, f_string_eol_s); + fll_print_format("%r%[%QRequires more arguments.%]%r", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context, f_string_eol_s); } #endif // _di_fake_print_error_requires_more_arguments_ @@ -348,7 +348,7 @@ extern "C" { if (data_make->error.verbosity == f_console_verbosity_quiet_e) return; if (!data_make->error.to.stream) return; - fll_print_format("%q%[%QHas too many arguments.%]%q", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context, f_string_eol_s); + fll_print_format("%r%[%QHas too many arguments.%]%r", data_make->error.to.stream, f_string_eol_s, data_make->error.context, data_make->error.prefix, data_make->error.context, f_string_eol_s); } #endif // _di_fake_print_error_too_many_arguments_ @@ -363,13 +363,13 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe section operation '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe section operation '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%/Q%]", main->error.to.stream, main->error.notable, buffer, operation_name, main->error.notable); fl_print_format("%[' from section '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%/Q%]", main->error.to.stream, main->error.notable, buffer, section_name, main->error.notable); fl_print_format("%[' on line%] ", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%un%]", main->error.to.stream, main->error.notable, line, main->error.notable); - fl_print_format(" %[failed.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format(" %[failed.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -383,9 +383,9 @@ extern "C" { flockfile(main->error.to.stream); if (F_status_set_fine(status) == F_false) { - fl_print_format("%q%[%QThe path '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe path '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, path, main->error.notable); - fl_print_format("%[' is outside the project root.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' is outside the project root.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); } else { fll_error_file_print(main->error, F_status_set_fine(status), function, F_true, path, fake_common_file_path_determine_real_s, fll_error_file_type_file_e); @@ -403,7 +403,7 @@ extern "C" { if (status == F_array_too_large) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QMaximum stack size reached while processing path '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QMaximum stack size reached while processing path '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, path, main->error.notable); fl_print_format("%['", main->error.to.stream, main->error.context); @@ -412,7 +412,7 @@ extern "C" { fl_print_format("%[()", main->error.to.stream, main->error.context); } - fl_print_format(".%]%q", main->error.to.stream, main->error.context, f_string_eol_s); + fl_print_format(".%]%r", main->error.to.stream, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -433,7 +433,7 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe section operation '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe section operation '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%/Q%]", main->error.to.stream, main->error.notable, buffer, operation_name, main->error.notable); fl_print_format("%[' from section '%]", main->error.to.stream, main->error.context, buffer, main->error.context); fl_print_format("%[%/Q%]", main->error.to.stream, main->error.notable, buffer, section_name, main->error.notable); @@ -441,7 +441,7 @@ extern "C" { fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, line, main->error.notable); fl_print_format("%[' cannot be processed because the max stack depth of%] ", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, stack_max, main->error.notable); - fl_print_format(" %[has been reached.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format(" %[has been reached.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -458,13 +458,13 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe section operation '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe section operation '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%/Q%]", main->error.to.stream, main->error.notable, buffer, operation_name, main->error.notable); fl_print_format("%[' from section '%]", main->error.to.stream, main->error.context, buffer, main->error.context); fl_print_format("%[%/Q%]", main->error.to.stream, main->error.notable, buffer, section_name, main->error.notable); fl_print_format("%[' on line%] ", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, line, main->error.notable); - fl_print_format(" %[is not a known operation name.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format(" %[is not a known operation name.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -480,9 +480,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } @@ -495,13 +495,13 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QThe fakefile '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%r%[%QThe fakefile '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); fl_print_format("%[%Q%]", main->warning.to.stream, main->warning.notable, path_file, main->warning.notable); fl_print_format("%[' has empty content for the '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, settings_name, main->warning.notable); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, settings_name, main->warning.notable); fl_print_format("%[' object '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%/Q%]", main->warning.to.stream, main->warning.notable, buffer, range_object, main->warning.notable); - fl_print_format("%['.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } @@ -514,15 +514,15 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QThe fakefile '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%r%[%QThe fakefile '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); fl_print_format("%[%Q%]", main->warning.to.stream, main->warning.notable, path_file, main->warning.notable); fl_print_format("%[' has invalid content '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%/Q%]", main->warning.to.stream, main->warning.notable, buffer, range_content, main->warning.notable); fl_print_format("%[' for the '%]", main->warning.to.stream, main->warning.context, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, settings_name, main->warning.notable); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, settings_name, main->warning.notable); fl_print_format("%[' object '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%/Q%]", main->warning.to.stream, main->warning.notable, buffer, range_object, main->warning.notable); - fl_print_format("%['.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } @@ -535,11 +535,11 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QThe fakefile '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, name_object, main->warning.notable); + fl_print_format("%r%[%QThe fakefile '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, name_object, main->warning.notable); fl_print_format("%[' in the file '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%Q%]", main->warning.to.stream, main->warning.notable, path_file, main->warning.notable); - fl_print_format("%[' may only have a single property, only using the first.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%[' may only have a single property, only using the first.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } @@ -552,11 +552,11 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QThe object '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); - fl_print_format("%[%q%]", main->warning.to.stream, main->warning.notable, name_object, main->warning.notable); + fl_print_format("%r%[%QThe object '%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%[%r%]", main->warning.to.stream, main->warning.notable, name_object, main->warning.notable); fl_print_format("%[' in the file '%]", main->warning.to.stream, main->warning.context, main->warning.context); fl_print_format("%[%Q%]", main->warning.to.stream, main->warning.notable, path_file, main->warning.notable); - fl_print_format("%[' may only be specified once, only using the first.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%[' may only be specified once, only using the first.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fake/c/private-skeleton.c b/level_3/fake/c/private-skeleton.c index 8c1f68a..7e8b10b 100644 --- a/level_3/fake/c/private-skeleton.c +++ b/level_3/fake/c/private-skeleton.c @@ -16,7 +16,7 @@ extern "C" { f_status_t status = F_none; if (main->output.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%qGenerating skeleton structure.%q", main->output.to.stream, f_string_eol_s, f_string_eol_s); + fll_print_format("%rGenerating skeleton structure.%r", main->output.to.stream, f_string_eol_s, f_string_eol_s); } { @@ -103,7 +103,7 @@ extern "C" { if (status == F_true) { if (main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("Directory '%Q' already exists.%q", main->output.to.stream, path, f_string_eol_s); + fll_print_format("Directory '%Q' already exists.%r", main->output.to.stream, path, f_string_eol_s); } return F_none; @@ -113,9 +113,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe path '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe path '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, path, main->error.notable); - fl_print_format("%[' exists but is not a directory.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' exists but is not a directory.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -129,9 +129,9 @@ extern "C" { if (F_status_set_fine(status) == F_file_found_not) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe path '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe path '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, path, main->error.notable); - fl_print_format("%[' could not be created, a parent directory does not exist.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' could not be created, a parent directory does not exist.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -143,7 +143,7 @@ extern "C" { } if (main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("Directory '%Q' created.%q", main->output.to.stream, path, f_string_eol_s); + fll_print_format("Directory '%Q' created.%r", main->output.to.stream, path, f_string_eol_s); } } else if (F_status_is_error(status)) { @@ -167,7 +167,7 @@ extern "C" { if (status == F_true) { if (main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("File '%Q' already exists.%q", main->output.to.stream, path, f_string_eol_s); + fll_print_format("File '%Q' already exists.%r", main->output.to.stream, path, f_string_eol_s); } return F_none; @@ -179,7 +179,7 @@ extern "C" { if (status == F_true) { if (main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("File '%Q' already exists (as a symbolic link).%q", main->output.to.stream, path, f_string_eol_s); + fll_print_format("File '%Q' already exists (as a symbolic link).%r", main->output.to.stream, path, f_string_eol_s); } return F_none; @@ -188,7 +188,7 @@ extern "C" { if (status == F_false) { if (main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("File '%Q' already exists but is not a regular file (or symbolic link).%q", main->output.to.stream, path, f_string_eol_s); + fll_print_format("File '%Q' already exists but is not a regular file (or symbolic link).%r", main->output.to.stream, path, f_string_eol_s); } return F_status_set_warning(F_none); @@ -206,9 +206,9 @@ extern "C" { if (F_status_set_fine(status) == F_file_found_not) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe file '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe file '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, path, main->error.notable); - fl_print_format("%[' could not be created, a parent directory does not exist.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' could not be created, a parent directory does not exist.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -220,7 +220,7 @@ extern "C" { } if (main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("File '%Q' created.%q", main->output.to.stream, path, f_string_eol_s); + fll_print_format("File '%Q' created.%r", main->output.to.stream, path, f_string_eol_s); } if (content.used) { @@ -247,7 +247,7 @@ extern "C" { } if (main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_format("File '%Q' pre-populated.%q", main->output.to.stream, path, f_string_eol_s); + fll_print_format("File '%Q' pre-populated.%r", main->output.to.stream, path, f_string_eol_s); } f_file_stream_close(F_true, &file); diff --git a/level_3/firewall/c/firewall.c b/level_3/firewall/c/firewall.c index 5a73b8c..0a077b7 100644 --- a/level_3/firewall/c/firewall.c +++ b/level_3/firewall/c/firewall.c @@ -38,12 +38,12 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - fl_print_format("%q%q %[Available Commands:%] ", file.stream, f_string_eol_s, f_string_eol_s, context.set.important, context.set.important); - fl_print_format("%q %[%s%] Turn on the firewall.", file.stream, f_string_eol_s, context.set.standout, firewall_command_start_s, context.set.standout); - fl_print_format("%q %[%s%] Turn off the firewall.", file.stream, f_string_eol_s, context.set.standout, firewall_command_stop_s, context.set.standout); - fl_print_format("%q %[%s%] Turn off and then turn on the firewall.", file.stream, f_string_eol_s, context.set.standout, firewall_command_restart_s, context.set.standout); - fl_print_format("%q %[%s%] Prevent all communication.", file.stream, f_string_eol_s, context.set.standout, firewall_command_lock_s, context.set.standout); - fl_print_format("%q %[%s%] Show active firewall settings.", file.stream, f_string_eol_s, context.set.standout, firewall_command_show_s, context.set.standout); + fl_print_format("%r%r %[Available Commands:%] ", file.stream, f_string_eol_s, f_string_eol_s, context.set.important, context.set.important); + fl_print_format("%r %[%s%] Turn on the firewall.", file.stream, f_string_eol_s, context.set.standout, firewall_command_start_s, context.set.standout); + fl_print_format("%r %[%s%] Turn off the firewall.", file.stream, f_string_eol_s, context.set.standout, firewall_command_stop_s, context.set.standout); + fl_print_format("%r %[%s%] Turn off and then turn on the firewall.", file.stream, f_string_eol_s, context.set.standout, firewall_command_restart_s, context.set.standout); + fl_print_format("%r %[%s%] Prevent all communication.", file.stream, f_string_eol_s, context.set.standout, firewall_command_lock_s, context.set.standout); + fl_print_format("%r %[%s%] Show active firewall settings.", file.stream, f_string_eol_s, context.set.standout, firewall_command_show_s, context.set.standout); fll_program_print_help_usage(file, context, firewall_program_name_s, "command"); @@ -237,9 +237,9 @@ extern "C" { if (strncmp("ports", arguments->argv[main->remaining.array[counter]], 6) != 0) { flockfile(main->warning.to.stream); - fl_print_format("%q%[%Q'%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); + fl_print_format("%r%[%Q'%]", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, main->warning.context); fl_print_format("%[%S%]", main->warning.to.stream, main->warning.notable, arguments->argv[main->remaining.array[counter]], main->warning.notable); - fl_print_format("%[' is not a valid show option.%]%q", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%[' is not a valid show option.%]%r", main->warning.to.stream, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); fflush(main->warning.to.stream); @@ -270,7 +270,7 @@ extern "C" { } if (show_nat) { - fll_print_format("%[===========================%] %[NAT%] %[============================%]%q", main->output.to.stream, main->context.set.standout, main->context.set.standout, main->context.set.title, main->context.set.title, main->context.set.standout, main->context.set.standout, f_string_eol_s); + fll_print_format("%[===========================%] %[NAT%] %[============================%]%r", main->output.to.stream, main->context.set.standout, main->context.set.standout, main->context.set.title, main->context.set.title, main->context.set.standout, main->context.set.standout, f_string_eol_s); fflush(main->output.to.stream); parameters.used = 6; @@ -296,12 +296,12 @@ extern "C" { exit(return_code); } - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); fflush(main->output.to.stream); } if (F_status_is_error_not(status) && show_mangle) { - fll_print_format("%[==========================%] %[MANGLE%] %[==========================%]%q", main->output.to.stream, main->context.set.standout, main->context.set.standout, main->context.set.title, main->context.set.title, main->context.set.standout, main->context.set.standout, f_string_eol_s); + fll_print_format("%[==========================%] %[MANGLE%] %[==========================%]%r", main->output.to.stream, main->context.set.standout, main->context.set.standout, main->context.set.title, main->context.set.title, main->context.set.standout, main->context.set.standout, f_string_eol_s); fflush(main->output.to.stream); parameters.used = 6; @@ -327,12 +327,12 @@ extern "C" { exit(return_code); } - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); fflush(main->output.to.stream); } if (F_status_is_error_not(status) && show_ports) { - fll_print_format("%[==========================%] %[FILTER%] %[==========================%]%q", main->output.to.stream, main->context.set.standout, main->context.set.standout, main->context.set.title, main->context.set.title, main->context.set.standout, main->context.set.standout, f_string_eol_s); + fll_print_format("%[==========================%] %[FILTER%] %[==========================%]%r", main->output.to.stream, main->context.set.standout, main->context.set.standout, main->context.set.title, main->context.set.title, main->context.set.standout, main->context.set.standout, f_string_eol_s); fflush(main->output.to.stream); parameters.used = 4; @@ -354,7 +354,7 @@ extern "C" { exit(return_code); } - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); fflush(main->output.to.stream); } @@ -404,10 +404,10 @@ extern "C" { firewall_print_error_on_allocation_failure(main->error); } else if (status == F_data_not) { - fll_print_format("%q%[%QCould not find any network devices.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QCould not find any network devices.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); } else if (status == F_failure) { - fll_print_format("%q%[%QFailed to read the device directory '%s'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, network_devices_s, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QFailed to read the device directory '%s'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, network_devices_s, main->error.context, f_string_eol_s); } } @@ -497,7 +497,7 @@ extern "C" { } else { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QFailed to perform lock request because the lock instructions are missing from: %s.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, network_path_s firewall_file_other_s, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QFailed to perform lock request because the lock instructions are missing from: %s.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, network_path_s firewall_file_other_s, main->error.context, f_string_eol_s); } firewall_delete_local_data(&local); @@ -542,7 +542,7 @@ extern "C" { } else { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QFailed to perform stop request because the lock instructions are missing from: %s.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, network_path_s firewall_file_other_s, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QFailed to perform stop request because the lock instructions are missing from: %s.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, network_path_s firewall_file_other_s, main->error.context, f_string_eol_s); } firewall_delete_local_data(&local); @@ -749,7 +749,7 @@ extern "C" { } else { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QYou did not pass a command.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QYou did not pass a command.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); } status = F_status_set_error(F_parameter); @@ -759,7 +759,7 @@ extern "C" { if (F_status_set_fine(status) == F_interrupt) { fflush(main->output.to.stream); - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/firewall/c/private-common.c b/level_3/firewall/c/private-common.c index f28536d..efd7280 100644 --- a/level_3/firewall/c/private-common.c +++ b/level_3/firewall/c/private-common.c @@ -17,7 +17,7 @@ void firewall_print_debug_tool(const fl_print_t output, const f_string_t tool, c fl_print_format(" %Q", output.to.stream, arguments.array[i]); } // for - fl_print_format("%]%q", output.to.stream, output.context, f_string_eol_s); + fl_print_format("%]%r", output.to.stream, output.context, f_string_eol_s); funlockfile(output.to.stream); } @@ -26,21 +26,21 @@ void firewall_print_error_on_allocation_failure(const fl_print_t output) { if (output.verbosity == f_console_verbosity_quiet_e) return; - fll_print_format("%q%[%sUnable to allocate memory.%]%q", output.to.stream, f_string_eol_s, output.context, output.prefix, output.context, f_string_eol_s); + fll_print_format("%r%[%sUnable to allocate memory.%]%r", output.to.stream, f_string_eol_s, output.context, output.prefix, output.context, f_string_eol_s); } void firewall_print_error_on_invalid_parameter(const fl_print_t output, const f_string_t function) { if (output.verbosity == f_console_verbosity_quiet_e) return; - fll_print_format("%q%[%sInvalid parameter when calling %S().%]%q", output.to.stream, f_string_eol_s, output.context, output.prefix, function, output.context, f_string_eol_s); + fll_print_format("%r%[%sInvalid parameter when calling %S().%]%r", output.to.stream, f_string_eol_s, output.context, output.prefix, function, output.context, f_string_eol_s); } void firewall_print_error_on_invalid_parameter_for_file(const fl_print_t output, const f_string_t function, const f_string_t filename) { if (output.verbosity == f_console_verbosity_quiet_e) return; - fll_print_format("%q%[%sInvalid parameter when calling %S() for the file '%S'.%]%q", output.to.stream, f_string_eol_s, output.context, output.prefix, function, filename, output.context, f_string_eol_s); + fll_print_format("%r%[%sInvalid parameter when calling %S() for the file '%S'.%]%r", output.to.stream, f_string_eol_s, output.context, output.prefix, function, filename, output.context, f_string_eol_s); } void firewall_print_error_on_operation(const fl_print_t output, const f_string_t tool, const f_string_dynamics_t arguments) { @@ -49,14 +49,14 @@ void firewall_print_error_on_operation(const fl_print_t output, const f_string_t flockfile(output.to.stream); - fl_print_format("%q%[%sFailed to perform requested %s operation:%]", output.to.stream, f_string_eol_s, output.context, output.prefix, tool, output.context); - fl_print_format("%q %[%s", output.to.stream, f_string_eol_s, output.context, tool); + fl_print_format("%r%[%sFailed to perform requested %s operation:%]", output.to.stream, f_string_eol_s, output.context, output.prefix, tool, output.context); + fl_print_format("%r %[%s", output.to.stream, f_string_eol_s, output.context, tool); for (f_array_length_t i = 0; i < arguments.used; ++i) { fl_print_format(" %Q", output.to.stream, arguments.array[i]); } // for - fl_print_format("%]%q", output.to.stream, output.context, f_string_eol_s); + fl_print_format("%]%r", output.to.stream, output.context, f_string_eol_s); funlockfile(output.to.stream); } @@ -65,14 +65,14 @@ void firewall_print_error_on_unhandled(const fl_print_t output, const f_string_t if (output.verbosity == f_console_verbosity_quiet_e) return; - fll_print_format("%q%[%sAn unhandled error (%ui) has occurred while calling %S().%]%q", output.to.stream, f_string_eol_s, output.context, output.prefix, status, function, output.context, f_string_eol_s); + fll_print_format("%r%[%sAn unhandled error (%ui) has occurred while calling %S().%]%r", output.to.stream, f_string_eol_s, output.context, output.prefix, status, function, output.context, f_string_eol_s); } void firewall_print_error_on_unhandled_for_file(const fl_print_t output, const f_string_t function, const f_status_t status, const f_string_t filename) { if (output.verbosity == f_console_verbosity_quiet_e) return; - fll_print_format("%q%[%sAn unhandled error (%ui) has occurred while calling %S() for the file '%S'.%]%q", output.to.stream, f_string_eol_s, output.context, output.prefix, status, function, filename, output.context, f_string_eol_s); + fll_print_format("%r%[%sAn unhandled error (%ui) has occurred while calling %S() for the file '%S'.%]%r", output.to.stream, f_string_eol_s, output.context, output.prefix, status, function, filename, output.context, f_string_eol_s); } #ifndef _di_firewall_print_signal_received_ @@ -85,9 +85,9 @@ void firewall_print_error_on_unhandled_for_file(const fl_print_t output, const f flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/firewall/c/private-firewall.c b/level_3/firewall/c/private-firewall.c index fc93b82..2296d28 100644 --- a/level_3/firewall/c/private-firewall.c +++ b/level_3/firewall/c/private-firewall.c @@ -90,7 +90,7 @@ f_status_t firewall_perform_commands(firewall_main_t * const main, const firewal if (chain == firewall_chain_custom_id_e) { // custom chains can only apply to themselves, so silently ignore chain commands specified within a custom chain. - fll_print_format("%q%[%QAt line %ul, the chain option is meaningless inside of a custom chain.%]%q", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, i, main->warning.context, f_string_eol_s); + fll_print_format("%r%[%QAt line %ul, the chain option is meaningless inside of a custom chain.%]%r", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, i, main->warning.context, f_string_eol_s); continue; } @@ -304,14 +304,14 @@ f_status_t firewall_perform_commands(firewall_main_t * const main, const firewal if (length) { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QAt line %ul, the object '%]%[", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, i, main->warning.context, main->warning.notable); + fl_print_format("%r%[%QAt line %ul, the object '%]%[", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, i, main->warning.context, main->warning.notable); f_print(local.buffer.string + local.rule_objects.array[i].start, length, main->warning.to.stream); - fl_print_format("%]%[' is invalid.%]%q", main->warning.to.stream, main->warning.notable, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%]%[' is invalid.%]%r", main->warning.to.stream, main->warning.notable, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } else { - fll_print_format("%q%[%QAt line %ul, the object is missing.%]%q", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, i, main->warning.context, f_string_eol_s); + fll_print_format("%r%[%QAt line %ul, the object is missing.%]%r", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, i, main->warning.context, f_string_eol_s); } continue; @@ -323,16 +323,16 @@ f_status_t firewall_perform_commands(firewall_main_t * const main, const firewal if (length) { flockfile(main->warning.to.stream); - fl_print_format("%q%[%QAt line %ul, the object '%]%[", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, i, main->warning.context, main->warning.notable); + fl_print_format("%r%[%QAt line %ul, the object '%]%[", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, i, main->warning.context, main->warning.notable); f_print(local.buffer.string + local.rule_objects.array[i].start, length, main->warning.to.stream); fl_print_format("%]%[' has invalid content '%]%[", main->warning.to.stream, main->warning.notable, main->warning.context, main->warning.context, main->warning.notable); f_print(local.buffer.string + local.rule_contents.array[i].array[0].start, macro_firewall_structure_size(local.rule_contents.array[i], 0), main->warning.to.stream); - fl_print_format("%]%['.%]%q", main->warning.to.stream, main->warning.notable, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%]%['.%]%r", main->warning.to.stream, main->warning.notable, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); } else { - fll_print_format("%q%[%QAt line %ul, the object has no content.%]%q", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, i, main->warning.context, f_string_eol_s); + fll_print_format("%r%[%QAt line %ul, the object has no content.%]%r", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, i, main->warning.context, f_string_eol_s); } continue; @@ -578,9 +578,9 @@ f_status_t firewall_perform_commands(firewall_main_t * const main, const firewal flockfile(main->warning.to.stream); - fl_print_format("%q%[%QAt line %ul, the object '%]%[", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, i, main->warning.context, main->warning.notable); + fl_print_format("%r%[%QAt line %ul, the object '%]%[", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, i, main->warning.context, main->warning.notable); f_print(local.buffer.string + local.rule_objects.array[i].start, length, main->warning.to.stream); - fl_print_format("%]%[' has no content.%]%q", main->warning.to.stream, main->warning.notable, main->warning.context, main->warning.context, f_string_eol_s); + fl_print_format("%]%[' has no content.%]%r", main->warning.to.stream, main->warning.notable, main->warning.context, main->warning.context, f_string_eol_s); funlockfile(main->warning.to.stream); @@ -620,19 +620,19 @@ f_status_t firewall_perform_commands(firewall_main_t * const main, const firewal // the file does not have to exist if (main->error.verbosity != f_console_verbosity_verbose_e || main->error.verbosity == f_console_verbosity_debug_e) { - fll_print_format("%q%[%QCannot find the file '%Q'.%]%q", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, file_path, main->warning.context, f_string_eol_s); + fll_print_format("%r%[%QCannot find the file '%Q'.%]%r", main->warning.to.stream, f_string_eol_s, main->warning.context, main->warning.prefix, file_path, main->warning.context, f_string_eol_s); } status = F_none; } else if (status == F_file_open) { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QUnable to open the file '%Q'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, file_path, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QUnable to open the file '%Q'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, file_path, main->error.context, f_string_eol_s); } } else if (status == F_file_descriptor) { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QFile descriptor error while trying to open the file '%Q'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, file_path, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QFile descriptor error while trying to open the file '%Q'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, file_path, main->error.context, f_string_eol_s); } } else if (status == F_memory_not) { @@ -661,16 +661,16 @@ f_status_t firewall_perform_commands(firewall_main_t * const main, const firewal firewall_print_error_on_invalid_parameter(main->error, "f_file_read"); } else if (status == F_number_overflow) { - fll_print_format("%q%[%QInteger overflow while trying to buffer the file '%Q'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, file_path, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QInteger overflow while trying to buffer the file '%Q'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, file_path, main->error.context, f_string_eol_s); } else if (status == F_file_closed) { - fll_print_format("%q%[%QThe file '%Q' is no longer open.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, file_path, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QThe file '%Q' is no longer open.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, file_path, main->error.context, f_string_eol_s); } else if (status == F_file_seek) { - fll_print_format("%q%[%QA seek error occurred while accessing the file '%Q'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, file_path, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QA seek error occurred while accessing the file '%Q'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, file_path, main->error.context, f_string_eol_s); } else if (status == F_file_read) { - fll_print_format("%q%[%QA read error occurred while accessing the file '%Q'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, file_path, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QA read error occurred while accessing the file '%Q'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, file_path, main->error.context, f_string_eol_s); } else if (status == F_memory_not) { firewall_print_error_on_allocation_failure(main->error); @@ -1328,13 +1328,13 @@ f_status_t firewall_buffer_rules(firewall_main_t * const main, const f_string_t firewall_print_error_on_invalid_parameter(main->error, "f_file_open"); } else if (status == F_file_found_not) { - fll_print_format("%q%[%QUnable to find the file '%S'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QUnable to find the file '%S'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); } else if (status == F_file_open) { - fll_print_format("%q%[%QUnable to open the file '%S'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QUnable to open the file '%S'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); } else if (status == F_file_descriptor) { - fll_print_format("%q%[%QFile descriptor error while trying to open the file '%S'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QFile descriptor error while trying to open the file '%S'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); } else { firewall_print_error_on_unhandled(main->error, "f_file_open", status); @@ -1357,16 +1357,16 @@ f_status_t firewall_buffer_rules(firewall_main_t * const main, const f_string_t firewall_print_error_on_invalid_parameter(main->error, "f_file_read"); } else if (status == F_number_overflow) { - fll_print_format("%q%[%QInteger overflow while trying to buffer the file '%S'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QInteger overflow while trying to buffer the file '%S'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); } else if (status == F_file_closed) { - fll_print_format("%q%[%QThe file '%S' is no longer open.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QThe file '%S' is no longer open.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); } else if (status == F_file_seek) { - fll_print_format("%q%[%QA seek error occurred while accessing the file '%S'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QA seek error occurred while accessing the file '%S'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); } else if (status == F_file_read) { - fll_print_format("%q%[%QA read error occurred while accessing the file '%S'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QA read error occurred while accessing the file '%S'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); } else if (status == F_memory_not) { firewall_print_error_on_allocation_failure(main->error); @@ -1397,7 +1397,7 @@ f_status_t firewall_buffer_rules(firewall_main_t * const main, const f_string_t firewall_print_error_on_invalid_parameter_for_file(main->error, "fll_fss_basic_list_read", filename); } else if (status == F_data_not_eos || status == F_data_not || status == F_data_not_stop) { - fll_print_format("%q%[%QNo relevant main was found within the file '%s'.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QNo relevant main was found within the file '%s'.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, filename, main->error.context, f_string_eol_s); } else if (status == F_memory_not) { firewall_print_error_on_allocation_failure(main->error); diff --git a/level_3/fss_basic_list_read/c/fss_basic_list_read.c b/level_3/fss_basic_list_read/c/fss_basic_list_read.c index 8411abe..4b4ed37 100644 --- a/level_3/fss_basic_list_read/c/fss_basic_list_read.c +++ b/level_3/fss_basic_list_read/c/fss_basic_list_read.c @@ -33,7 +33,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_basic_list_read_short_at_s, fss_basic_list_read_long_at_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Select Object at this numeric index."); fll_program_print_help_option(file, context, fss_basic_list_read_short_content_s, fss_basic_list_read_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print the Content (default)."); @@ -52,73 +52,73 @@ extern "C" { fll_program_print_help_usage(file, context, fss_basic_list_program_name_s, "filename(s)"); - fl_print_format(" %[Notes:%]%q", file.stream, context.set.important, context.set.important, f_string_eol_s); + fl_print_format(" %[Notes:%]%r", file.stream, context.set.important, context.set.important, f_string_eol_s); - fl_print_format(" This program will print the Content associated with the given Object and Content main based on the FSS-0002 Basic List standard.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program will print the Content associated with the given Object and Content main based on the FSS-0002 Basic List standard.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" All numeric positions (indexes) start at 0 instead of 1.%q", file.stream, f_string_eol_s); - fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" All numeric positions (indexes) start at 0 instead of 1.%r", file.stream, f_string_eol_s); + fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When using the %[%q%s%] option, an order of operations is enforced on the parameters.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" When using the %[%r%s%] option, an order of operations is enforced on the parameters.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%q", file.stream, f_string_eol_s); + fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%r", file.stream, f_string_eol_s); - fl_print_format(" %[%q%s%]: An Object index at the specified depth.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_at_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%q%s%]: A new depth within the specified depth, indexed from the root.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%q%s%]: An Object name at the specified depth.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" %[%r%s%]: An Object index at the specified depth.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_at_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%s%]: A new depth within the specified depth, indexed from the root.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%s%]: An Object name at the specified depth.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] must be in numeric order, but values in between may be skipped.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%q", file.stream, f_string_eol_s); - fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] must be in numeric order, but values in between may be skipped.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%r", file.stream, f_string_eol_s); + fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] selects a Content column.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_select_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] selects a Content column.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_select_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" Specify both %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_object_s, context.set.notable); - fl_print_format(" and the %[%q%s%] parameters to get the total objects.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_total_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" Specify both %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_object_s, context.set.notable); + fl_print_format(" and the %[%r%s%] parameters to get the total objects.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_total_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" When both %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_at_s, context.set.notable); - fl_print_format(" and %[%q%s%] parameters are specified (at the same depth),", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_name_s, context.set.notable); - fl_print_format(" the %[%q%s%] parameter value will be treated as a position relative to the specified", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_at_s, context.set.notable); - fl_print_format(" %[%s%s%] parameter value.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When both %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_at_s, context.set.notable); + fl_print_format(" and %[%r%s%] parameters are specified (at the same depth),", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_name_s, context.set.notable); + fl_print_format(" the %[%r%s%] parameter value will be treated as a position relative to the specified", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_at_s, context.set.notable); + fl_print_format(" %[%s%s%] parameter value.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" This program may support parameters, such as %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, context.set.notable); - fl_print_format(" or %[%q%s%], even if not supported by the standard.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_select_s, context.set.notable, f_string_eol_s); - fl_print_format(" This is done to help ensure consistency for scripting.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program may support parameters, such as %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, context.set.notable); + fl_print_format(" or %[%r%s%], even if not supported by the standard.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_select_s, context.set.notable, f_string_eol_s); + fl_print_format(" This is done to help ensure consistency for scripting.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" For parameters like %[%q%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, context.set.notable); - fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%q", file.stream, f_string_eol_s); + fl_print_format(" For parameters like %[%r%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, context.set.notable); + fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%r", file.stream, f_string_eol_s); - fl_print_format(" For parameters like %[%q%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_select_s, context.set.notable); - fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" For parameters like %[%r%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_select_s, context.set.notable); + fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_trim_s, context.set.notable); - fl_print_format(" will remove leading and trailing whitespaces when selecting objects or when printing objects.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_trim_s, context.set.notable); + fl_print_format(" will remove leading and trailing whitespaces when selecting objects or when printing objects.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When specifying both the %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_object_s, context.set.notable); - fl_print_format(" parameter and the %[%q%s%] parameter, the entire Object and Content are printed, including the formatting.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_content_s, context.set.notable, f_string_eol_s); - fl_print_format(" Both the Object and Content printed are already escaped.%q", file.stream, f_string_eol_s); - fl_print_format(" Both the Object and Content are separated by an EOL.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" When specifying both the %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_object_s, context.set.notable); + fl_print_format(" parameter and the %[%r%s%] parameter, the entire Object and Content are printed, including the formatting.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_content_s, context.set.notable, f_string_eol_s); + fl_print_format(" Both the Object and Content printed are already escaped.%r", file.stream, f_string_eol_s); + fl_print_format(" Both the Object and Content are separated by an EOL.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] accepts the following:%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_delimit_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: Do not apply delimits.%q", file.stream, context.set.notable, fss_basic_list_read_delimit_mode_name_none_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: (default) Apply all delimits.%q", file.stream, context.set.notable, fss_basic_list_read_delimit_mode_name_all_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: Apply delimits for Objects.%q", file.stream, context.set.notable, fss_basic_list_read_delimit_mode_name_object_s, context.set.notable, f_string_eol_s); - fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%q", file.stream, f_string_eol_s); - fl_print_format(" - A number, 0 or greater, followed by a %[%s%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%q", file.stream, context.set.notable, fss_basic_list_read_delimit_mode_name_greater_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" - A number, 0 or lesser, followed by a %[%s%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%q%q", file.stream, context.set.notable, fss_basic_list_read_delimit_mode_name_lesser_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] accepts the following:%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_delimit_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: Do not apply delimits.%r", file.stream, context.set.notable, fss_basic_list_read_delimit_mode_name_none_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: (default) Apply all delimits.%r", file.stream, context.set.notable, fss_basic_list_read_delimit_mode_name_all_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: Apply delimits for Objects.%r", file.stream, context.set.notable, fss_basic_list_read_delimit_mode_name_object_s, context.set.notable, f_string_eol_s); + fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%r", file.stream, f_string_eol_s); + fl_print_format(" - A number, 0 or greater, followed by a %[%s%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%r", file.stream, context.set.notable, fss_basic_list_read_delimit_mode_name_greater_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" - A number, 0 or lesser, followed by a %[%s%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%r%r", file.stream, context.set.notable, fss_basic_list_read_delimit_mode_name_lesser_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The %[%q%s%] parameter may be specified multiple times to customize the delimit behavior.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_delimit_s, context.set.notable, f_string_eol_s); + fl_print_format(" The %[%r%s%] parameter may be specified multiple times to customize the delimit behavior.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_delimit_s, context.set.notable, f_string_eol_s); - fl_print_format(" The %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_delimit_s, context.set.notable); + fl_print_format(" The %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_delimit_s, context.set.notable); fl_print_format(" values %[%s%]", file.stream, context.set.notable, fss_basic_list_read_delimit_mode_name_none_s, context.set.notable); fl_print_format(" and %[%s%],", file.stream, context.set.notable, fss_basic_list_read_delimit_mode_name_all_s, context.set.notable); - fl_print_format(" overrule all other delimit values.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" overrule all other delimit values.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameters %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_columns_s, context.set.notable); - fl_print_format(" and %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_select_s, context.set.notable); - fl_print_format(" refer to a Content column.%q", file.stream, f_string_eol_s); - fl_print_format(" The word \"column\" is being loosely defined to refer to a specific Content.%q", file.stream, f_string_eol_s); - fl_print_format(" This is not to be confused with a depth.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameters %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_columns_s, context.set.notable); + fl_print_format(" and %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_select_s, context.set.notable); + fl_print_format(" refer to a Content column.%r", file.stream, f_string_eol_s); + fl_print_format(" The word \"column\" is being loosely defined to refer to a specific Content.%r", file.stream, f_string_eol_s); + fl_print_format(" This is not to be confused with a depth.%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -273,9 +273,9 @@ extern "C" { if (main->parameters.array[parameter_code[i]].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); - fl_print_format("%[' requires a %s.%]%q", main->error.to.stream, main->error.context, parameter_message[i], main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); + fl_print_format("%[' requires a %s.%]%r", main->error.to.stream, main->error.context, parameter_message[i], main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -316,11 +316,11 @@ extern "C" { if (main->parameters.array[parameter_code[i]].result == parameter_match[i]) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_columns_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_columns_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -335,11 +335,11 @@ extern "C" { if (main->parameters.array[fss_basic_list_read_parameter_total_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_pipe_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_pipe_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -348,11 +348,11 @@ extern "C" { else if (main->parameters.array[fss_basic_list_read_parameter_line_e].result == f_console_result_additional_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_pipe_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_pipe_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_line_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_line_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -386,9 +386,9 @@ extern "C" { if (!length) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_delimit_s, main->error.notable); - fl_print_format("%[' must not be empty.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_delimit_s, main->error.notable); + fl_print_format("%[' must not be empty.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -520,9 +520,9 @@ extern "C" { if (F_status_is_error_not(status) && main->parameters.array[fss_basic_list_read_parameter_select_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_select_s, main->error.notable); - fl_print_format("%[' parameter requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_select_s, main->error.notable); + fl_print_format("%[' parameter requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -650,7 +650,7 @@ extern "C" { fss_basic_list_read_data_delete_simple(&data); } else { - fll_print_format("%q%[%QYou failed to specify one or more files.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QYou failed to specify one or more files.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); status = F_status_set_error(F_parameter); } @@ -658,7 +658,7 @@ extern "C" { if (F_status_set_fine(status) == F_interrupt) { fflush(main->output.to.stream); - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/fss_basic_list_read/c/private-common.c b/level_3/fss_basic_list_read/c/private-common.c index ccc6eb4..2d3ffd2 100644 --- a/level_3/fss_basic_list_read/c/private-common.c +++ b/level_3/fss_basic_list_read/c/private-common.c @@ -67,9 +67,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_basic_list_read/c/private-print.c b/level_3/fss_basic_list_read/c/private-print.c index 3a9b2b9..ca8c918 100644 --- a/level_3/fss_basic_list_read/c/private-print.c +++ b/level_3/fss_basic_list_read/c/private-print.c @@ -102,7 +102,7 @@ extern "C" { void fss_basic_list_read_print_one(fss_basic_list_read_main_t * const main) { f_print_character(f_string_ascii_1_s.string[0], main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } #endif // _di_fss_basic_list_read_print_one_ @@ -110,7 +110,7 @@ extern "C" { void fss_basic_list_read_print_zero(fss_basic_list_read_main_t * const main) { f_print_character(f_string_ascii_0_s.string[0], main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } #endif // _di_fss_basic_list_read_print_zero_ diff --git a/level_3/fss_basic_list_read/c/private-read.c b/level_3/fss_basic_list_read/c/private-read.c index 4b10d51..eb4b3fe 100644 --- a/level_3/fss_basic_list_read/c/private-read.c +++ b/level_3/fss_basic_list_read/c/private-read.c @@ -189,11 +189,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[i].depth, main->error.notable); fl_print_format("%[' may only be specified once for the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -204,13 +204,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, main->error.notable); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_read_long_depth_s, main->error.notable); fl_print_format("%[' may not have the value '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[i].depth, main->error.notable); fl_print_format("%[' before the value '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[j].depth, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -422,7 +422,7 @@ extern "C" { if (status == F_success) return F_none; } else if (data->option & fss_basic_list_read_data_option_columns_d) { - fll_print_format("%ul%q", main->output.to.stream, data->contents.array[i].used, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, data->contents.array[i].used, f_string_eol_s); } else if (data->option & fss_basic_list_read_data_option_total_d) { flockfile(main->output.to.stream); @@ -548,7 +548,7 @@ extern "C" { range.stop = data->contents.array[at].array[0].stop; f_print_except_in_dynamic_partial(data->buffer, range, delimits_content, data->comments, main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } funlockfile(main->output.to.stream); @@ -595,7 +595,7 @@ extern "C" { } } // for - fll_print_format("%ul%q", main->output.to.stream, max, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, max, f_string_eol_s); return F_none; } @@ -793,7 +793,7 @@ extern "C" { } } else { - fl_print_format("%ul%q", main->output.to.stream, total, f_string_eol_s); + fl_print_format("%ul%r", main->output.to.stream, total, f_string_eol_s); } funlockfile(main->output.to.stream); diff --git a/level_3/fss_basic_list_write/c/fss_basic_list_write.c b/level_3/fss_basic_list_write/c/fss_basic_list_write.c index c17adf0..a8ec3e3 100644 --- a/level_3/fss_basic_list_write/c/fss_basic_list_write.c +++ b/level_3/fss_basic_list_write/c/fss_basic_list_write.c @@ -32,7 +32,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_basic_list_write_short_file_s, fss_basic_list_write_long_file_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Specify a file to send data to."); fll_program_print_help_option(file, context, fss_basic_list_write_short_content_s, fss_basic_list_write_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "The Content to file."); @@ -46,18 +46,18 @@ extern "C" { fll_program_print_help_usage(file, context, fss_basic_list_write_program_name_s, f_string_empty_s); - fl_print_format(" The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range, which does nothing in this program.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range, which does nothing in this program.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); fl_print_format(" For the pipe, an Object is terminated by either a Backspace character '%[\\b%]' (%[U+0008%])", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable); - fl_print_format(" or a Form Feed character '%[\\f%]' (%[U+000C%]).%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The end of the pipe represents the end of any Object or Content.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" or a Form Feed character '%[\\f%]' (%[U+000C%]).%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The end of the pipe represents the end of any Object or Content.%r%r", file.stream, f_string_eol_s, f_string_eol_s); fl_print_format(" The FSS-0002 (Basic List) specification does not support quoted names, therefore the parameters '%[%s%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_single_s, context.set.notable); - fl_print_format(" and '%[%q%s%]' do nothing.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_double_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" and '%[%r%s%]' do nothing.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_double_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" This program does not use the parameter '%[%q%s%]', which therefore does nothing.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_ignore_s, context.set.notable, f_string_eol_s); - fl_print_format(" This parameter requires two values.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program does not use the parameter '%[%r%s%]', which therefore does nothing.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_ignore_s, context.set.notable, f_string_eol_s); + fl_print_format(" This parameter requires two values.%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -177,9 +177,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_file_s, main->error.notable); - fl_print_format("%[' may only be specified once.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_file_s, main->error.notable); + fl_print_format("%[' may only be specified once.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -224,13 +224,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_partial_s, main->error.notable); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_partial_s, main->error.notable); fl_print_format("%[' parameter only allows either the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_object_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_object_s, main->error.notable); fl_print_format("%[' parameter or the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter, but not both.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter, but not both.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -256,11 +256,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_object_s, main->error.notable); fl_print_format("%[' parameter must be specified before a '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -288,11 +288,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis requires either piped data or the use of the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QThis requires either piped data or the use of the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_object_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -305,9 +305,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_partial_s, main->error.notable); - fl_print_format("%[' parameter cannot be used when processing a pipe.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThis '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_partial_s, main->error.notable); + fl_print_format("%[' parameter cannot be used when processing a pipe.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -322,9 +322,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_prepend_s, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_prepend_s, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -351,9 +351,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_prepend_s, main->error.notable); - fl_print_format("%[' must only contain whitespace.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_prepend_s, main->error.notable); + fl_print_format("%[' must only contain whitespace.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -368,9 +368,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_prepend_s, main->error.notable); - fl_print_format("%[' must not be an empty string.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_prepend_s, main->error.notable); + fl_print_format("%[' must not be an empty string.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -385,9 +385,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_ignore_s, main->error.notable); - fl_print_format("%[' was specified, but no values were given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_ignore_s, main->error.notable); + fl_print_format("%[' was specified, but no values were given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -401,9 +401,9 @@ extern "C" { if (total_locations * 2 > total_arguments) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_ignore_s, main->error.notable); - fl_print_format("%[' requires two values.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_ignore_s, main->error.notable); + fl_print_format("%[' requires two values.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -441,8 +441,8 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhile processing the '%]%[input pipe%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QWhile processing the '%]%[input pipe%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -513,8 +513,8 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhile processing the '%]%[input arguments%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QWhile processing the '%]%[input arguments%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -522,7 +522,7 @@ extern "C" { else if (main->error.verbosity != f_console_verbosity_quiet_e && main->parameters.array[fss_basic_list_write_parameter_file_e].result == f_console_result_none_e) { // Ensure there is always a newline at the end, unless in quiet mode. - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } @@ -547,7 +547,7 @@ extern "C" { // Ensure a newline is always put at the end of the program execution, unless in quiet mode. if (main->error.verbosity != f_console_verbosity_quiet_e) { if (F_status_is_error(status)) { - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } } diff --git a/level_3/fss_basic_list_write/c/private-common.c b/level_3/fss_basic_list_write/c/private-common.c index e6c0e41..94f07d7 100644 --- a/level_3/fss_basic_list_write/c/private-common.c +++ b/level_3/fss_basic_list_write/c/private-common.c @@ -15,9 +15,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_basic_list_write/c/private-write.c b/level_3/fss_basic_list_write/c/private-write.c index 1b60879..e8fe783 100644 --- a/level_3/fss_basic_list_write/c/private-write.c +++ b/level_3/fss_basic_list_write/c/private-write.c @@ -15,13 +15,13 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QMust specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QMust specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_object_s, main->error.notable); fl_print_format("%[' parameter and the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_content_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_content_s, main->error.notable); fl_print_format("%[' parameter the same number of times when not specifying the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_partial_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_list_write_long_partial_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -36,9 +36,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis standard does not support end of line character '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThis standard does not support end of line character '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[\\n%]", main->error.to.stream, main->error.notable, main->error.notable); - fl_print_format("%[' in objects.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' in objects.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -53,9 +53,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, symbol, parameter, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, symbol, parameter, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -257,7 +257,7 @@ extern "C" { if (block.string[range.start] == fss_basic_list_write_pipe_content_start_s) { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%sThis standard only supports one content per object.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%sThis standard only supports one content per object.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); } status = F_status_set_error(F_supported_not); diff --git a/level_3/fss_basic_read/c/fss_basic_read.c b/level_3/fss_basic_read/c/fss_basic_read.c index d36eba2..da37c0e 100644 --- a/level_3/fss_basic_read/c/fss_basic_read.c +++ b/level_3/fss_basic_read/c/fss_basic_read.c @@ -33,7 +33,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_basic_read_short_at_s, fss_basic_read_long_at_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Select Object at this numeric index."); fll_program_print_help_option(file, context, fss_basic_read_short_content_s, fss_basic_read_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print the Content (default)."); @@ -52,73 +52,73 @@ extern "C" { fll_program_print_help_usage(file, context, fss_basic_read_program_name_s, "filename(s)"); - fl_print_format(" %[Notes:%]%q", file.stream, context.set.important, context.set.important, f_string_eol_s); + fl_print_format(" %[Notes:%]%r", file.stream, context.set.important, context.set.important, f_string_eol_s); - fl_print_format(" This program will print the Content associated with the given Object and Content main based on the FSS-0000 Basic standard.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program will print the Content associated with the given Object and Content main based on the FSS-0000 Basic standard.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" All numeric positions (indexes) start at 0 instead of 1.%q", file.stream, f_string_eol_s); - fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" All numeric positions (indexes) start at 0 instead of 1.%r", file.stream, f_string_eol_s); + fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When using the %[%q%s%] option, an order of operations is enforced on the parameters.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" When using the %[%r%s%] option, an order of operations is enforced on the parameters.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%q", file.stream, f_string_eol_s); + fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%r", file.stream, f_string_eol_s); - fl_print_format(" %[%q%s%]: An Object index at the specified depth.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_at_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%q%s%]: A new depth within the specified depth, indexed from the root.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%q%s%]: An Object name at the specified depth.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" %[%r%s%]: An Object index at the specified depth.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_at_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%s%]: A new depth within the specified depth, indexed from the root.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%s%]: An Object name at the specified depth.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] must be in numeric order, but values in between may be skipped.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%q", file.stream, f_string_eol_s); - fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] must be in numeric order, but values in between may be skipped.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%r", file.stream, f_string_eol_s); + fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] selects a Content column.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_select_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] selects a Content column.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_select_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" Specify both %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_object_s, context.set.notable); - fl_print_format(" and the %[%q%s%] parameters to get the total objects.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_total_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" Specify both %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_object_s, context.set.notable); + fl_print_format(" and the %[%r%s%] parameters to get the total objects.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_total_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" When both %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_at_s, context.set.notable); - fl_print_format(" and %[%q%s%] parameters are specified (at the same depth),", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_name_s, context.set.notable); - fl_print_format(" the %[%q%s%] parameter value will be treated as a position relative to the specified", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_at_s, context.set.notable); - fl_print_format(" %[%q%s%] parameter value.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When both %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_at_s, context.set.notable); + fl_print_format(" and %[%r%s%] parameters are specified (at the same depth),", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_name_s, context.set.notable); + fl_print_format(" the %[%r%s%] parameter value will be treated as a position relative to the specified", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_at_s, context.set.notable); + fl_print_format(" %[%r%s%] parameter value.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" This program may support parameters, such as %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, context.set.notable); - fl_print_format(" or %[%q%s%], even if not supported by the standard.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_select_s, context.set.notable, f_string_eol_s); - fl_print_format(" This is done to help ensure consistency for scripting.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program may support parameters, such as %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, context.set.notable); + fl_print_format(" or %[%r%s%], even if not supported by the standard.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_select_s, context.set.notable, f_string_eol_s); + fl_print_format(" This is done to help ensure consistency for scripting.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" For parameters like %[%q%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, context.set.notable); - fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%q", file.stream, f_string_eol_s); + fl_print_format(" For parameters like %[%r%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, context.set.notable); + fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%r", file.stream, f_string_eol_s); - fl_print_format(" For parameters like %[%q%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_select_s, context.set.notable); - fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" For parameters like %[%r%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_select_s, context.set.notable); + fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_trim_s, context.set.notable); - fl_print_format(" will remove leading and trailing whitespaces when selecting objects or when printing objects.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_trim_s, context.set.notable); + fl_print_format(" will remove leading and trailing whitespaces when selecting objects or when printing objects.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When specifying both the %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_object_s, context.set.notable); - fl_print_format(" parameter and the %[%q%s%] parameter, the entire Object and Content are printed, including the formatting.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_content_s, context.set.notable, f_string_eol_s); - fl_print_format(" Both the Object and Content printed are already escaped.%q", file.stream, f_string_eol_s); - fl_print_format(" Both the Object and Content are separated by a space.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" When specifying both the %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_object_s, context.set.notable); + fl_print_format(" parameter and the %[%r%s%] parameter, the entire Object and Content are printed, including the formatting.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_content_s, context.set.notable, f_string_eol_s); + fl_print_format(" Both the Object and Content printed are already escaped.%r", file.stream, f_string_eol_s); + fl_print_format(" Both the Object and Content are separated by a space.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] accepts the following:%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_delimit_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: Do not apply delimits.%q", file.stream, context.set.notable, fss_basic_read_delimit_mode_name_none_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: (default) Apply all delimits.%q", file.stream, context.set.notable, fss_basic_read_delimit_mode_name_all_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: Apply delimits for Objects.%q", file.stream, context.set.notable, fss_basic_read_delimit_mode_name_object_s, context.set.notable, f_string_eol_s); - fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%q", file.stream, f_string_eol_s); - fl_print_format(" - A number, 0 or greater, followed by a %[%s%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%q", file.stream, context.set.notable, fss_basic_read_delimit_mode_name_greater_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" - A number, 0 or lesser, followed by a %[%s%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%q%q", file.stream, context.set.notable, fss_basic_read_delimit_mode_name_lesser_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] accepts the following:%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_delimit_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: Do not apply delimits.%r", file.stream, context.set.notable, fss_basic_read_delimit_mode_name_none_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: (default) Apply all delimits.%r", file.stream, context.set.notable, fss_basic_read_delimit_mode_name_all_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: Apply delimits for Objects.%r", file.stream, context.set.notable, fss_basic_read_delimit_mode_name_object_s, context.set.notable, f_string_eol_s); + fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%r", file.stream, f_string_eol_s); + fl_print_format(" - A number, 0 or greater, followed by a %[%s%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%r", file.stream, context.set.notable, fss_basic_read_delimit_mode_name_greater_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" - A number, 0 or lesser, followed by a %[%s%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%r%r", file.stream, context.set.notable, fss_basic_read_delimit_mode_name_lesser_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The %[%q%s%] parameter may be specified multiple times to customize the delimit behavior.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_delimit_s, context.set.notable, f_string_eol_s); + fl_print_format(" The %[%r%s%] parameter may be specified multiple times to customize the delimit behavior.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_delimit_s, context.set.notable, f_string_eol_s); - fl_print_format(" The %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_delimit_s, context.set.notable); + fl_print_format(" The %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_delimit_s, context.set.notable); fl_print_format(" values %[%s%]", file.stream, context.set.notable, fss_basic_read_delimit_mode_name_none_s, context.set.notable); fl_print_format(" and %[%s%],", file.stream, context.set.notable, fss_basic_read_delimit_mode_name_all_s, context.set.notable); - fl_print_format(" overrule all other delimit values.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" overrule all other delimit values.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameters %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_columns_s, context.set.notable); - fl_print_format(" and %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_select_s, context.set.notable); - fl_print_format(" refer to a Content column.%q", file.stream, f_string_eol_s); - fl_print_format(" The word \"column\" is being loosely defined to refer to a specific Content.%q", file.stream, f_string_eol_s); - fl_print_format(" This is not to be confused with a depth.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameters %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_columns_s, context.set.notable); + fl_print_format(" and %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_read_long_select_s, context.set.notable); + fl_print_format(" refer to a Content column.%r", file.stream, f_string_eol_s); + fl_print_format(" The word \"column\" is being loosely defined to refer to a specific Content.%r", file.stream, f_string_eol_s); + fl_print_format(" This is not to be confused with a depth.%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -273,9 +273,9 @@ extern "C" { if (main->parameters.array[parameter_code[i]].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); - fl_print_format("%[' requires a %q.%]%q", main->error.to.stream, main->error.context, parameter_message[i], main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); + fl_print_format("%[' requires a %r.%]%r", main->error.to.stream, main->error.context, parameter_message[i], main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -316,11 +316,11 @@ extern "C" { if (main->parameters.array[parameter_code[i]].result == parameter_match[i]) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_columns_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_columns_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -335,11 +335,11 @@ extern "C" { if (main->parameters.array[fss_basic_read_parameter_total_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_pipe_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_pipe_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -348,11 +348,11 @@ extern "C" { else if (main->parameters.array[fss_basic_read_parameter_line_e].result == f_console_result_additional_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_pipe_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_pipe_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_line_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_line_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -381,9 +381,9 @@ extern "C" { if (!length) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_delimit_s, main->error.notable); - fl_print_format("%[' must not be empty.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_delimit_s, main->error.notable); + fl_print_format("%[' must not be empty.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -515,9 +515,9 @@ extern "C" { if (F_status_is_error_not(status) && main->parameters.array[fss_basic_read_parameter_select_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_select_s, main->error.notable); - fl_print_format("%[' parameter requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_select_s, main->error.notable); + fl_print_format("%[' parameter requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -640,7 +640,7 @@ extern "C" { fss_basic_read_data_delete_simple(&data); } else { - fll_print_format("%q%[%QYou failed to specify one or more files.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QYou failed to specify one or more files.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); status = F_status_set_error(F_parameter); } @@ -648,7 +648,7 @@ extern "C" { if (F_status_set_fine(status) == F_interrupt) { fflush(main->output.to.stream); - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/fss_basic_read/c/private-common.c b/level_3/fss_basic_read/c/private-common.c index ee87a79..0dcd5e2 100644 --- a/level_3/fss_basic_read/c/private-common.c +++ b/level_3/fss_basic_read/c/private-common.c @@ -66,9 +66,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_basic_read/c/private-print.c b/level_3/fss_basic_read/c/private-print.c index 51d7f2a..1f74fcb 100644 --- a/level_3/fss_basic_read/c/private-print.c +++ b/level_3/fss_basic_read/c/private-print.c @@ -87,7 +87,7 @@ extern "C" { void fss_basic_read_print_one(fss_basic_read_main_t * const main) { f_print_character(f_string_ascii_1_s.string[0], main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } #endif // _di_fss_basic_read_print_one_ @@ -98,7 +98,7 @@ extern "C" { f_print_character(fss_basic_read_pipe_content_end_s, main->output.to.stream); } else { - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } #endif // _di_fss_basic_read_print_set_end_ @@ -107,7 +107,7 @@ extern "C" { void fss_basic_read_print_zero(fss_basic_read_main_t * const main) { f_print_character(f_string_ascii_0_s.string[0], main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } #endif // _di_fss_basic_read_print_zero_ diff --git a/level_3/fss_basic_read/c/private-read.c b/level_3/fss_basic_read/c/private-read.c index 625415e..d69cdc4 100644 --- a/level_3/fss_basic_read/c/private-read.c +++ b/level_3/fss_basic_read/c/private-read.c @@ -157,11 +157,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[i].depth, main->error.notable); fl_print_format("%[' may only be specified once for the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -173,13 +173,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, main->error.notable); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_read_long_depth_s, main->error.notable); fl_print_format("%[' may not have the value '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[i].depth, main->error.notable); fl_print_format("%[' before the value '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[j].depth, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -385,7 +385,7 @@ extern "C" { } } else if (data->option & fss_basic_read_data_option_columns_d) { - fll_print_format("%ul%q", main->output.to.stream, data->contents.array[i].used, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, data->contents.array[i].used, f_string_eol_s); } else if (data->option & fss_basic_read_data_option_total_d) { flockfile(main->output.to.stream); @@ -449,7 +449,7 @@ extern "C" { } } // for - fll_print_format("%ul%q", main->output.to.stream, max, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, max, f_string_eol_s); return F_none; } @@ -636,7 +636,7 @@ extern "C" { } } else { - fl_print_format("%ul%q", main->output.to.stream, total, f_string_eol_s); + fl_print_format("%ul%r", main->output.to.stream, total, f_string_eol_s); } funlockfile(main->output.to.stream); diff --git a/level_3/fss_basic_write/c/fss_basic_write.c b/level_3/fss_basic_write/c/fss_basic_write.c index e54aa8c..b17246d 100644 --- a/level_3/fss_basic_write/c/fss_basic_write.c +++ b/level_3/fss_basic_write/c/fss_basic_write.c @@ -32,7 +32,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_basic_write_short_file_s, fss_basic_write_long_file_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Specify a file to send data to."); fll_program_print_help_option(file, context, fss_basic_write_short_content_s, fss_basic_write_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "The Content to file."); @@ -46,18 +46,18 @@ extern "C" { fll_program_print_help_usage(file, context, fss_basic_write_program_name_s, f_string_empty_s); - fl_print_format(" The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range, which does nothing in this program.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range, which does nothing in this program.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); fl_print_format(" For the pipe, an Object is terminated by either a Backspace character '%[\\b%]' (%[U+0008%])", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable); - fl_print_format(" or a Form Feed character '%[\\f%]' (%[U+000C%]).%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The end of the pipe represents the end of any Object or Content.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" or a Form Feed character '%[\\f%]' (%[U+000C%]).%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The end of the pipe represents the end of any Object or Content.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The FSS-0000 (Basic) specification does not support multi-line Content, therefore the parameter '%[%q%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_write_long_prepend_s, context.set.notable); - fl_print_format(" does nothing.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The FSS-0000 (Basic) specification does not support multi-line Content, therefore the parameter '%[%r%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_write_long_prepend_s, context.set.notable); + fl_print_format(" does nothing.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" This program does not use the parameter '%[%q%s%]', which therefore does nothing.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_write_long_ignore_s, context.set.notable, f_string_eol_s); - fl_print_format(" This parameter requires two values.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program does not use the parameter '%[%r%s%]', which therefore does nothing.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_basic_write_long_ignore_s, context.set.notable, f_string_eol_s); + fl_print_format(" This parameter requires two values.%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -175,9 +175,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_file_s, main->error.notable); - fl_print_format("%[' may only be specified once.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_file_s, main->error.notable); + fl_print_format("%[' may only be specified once.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -222,13 +222,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_partial_s, main->error.notable); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_partial_s, main->error.notable); fl_print_format("%[' parameter only allows either the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_object_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_object_s, main->error.notable); fl_print_format("%[' parameter or the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter, but not both.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter, but not both.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -254,11 +254,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_object_s, main->error.notable); fl_print_format("%[' parameter must be specified before a '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -286,11 +286,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis requires either piped data or the use of the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QThis requires either piped data or the use of the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_object_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -303,9 +303,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_partial_s, main->error.notable); - fl_print_format("%[' parameter cannot be used when processing a pipe.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThis '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_partial_s, main->error.notable); + fl_print_format("%[' parameter cannot be used when processing a pipe.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -320,9 +320,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_prepend_s, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_prepend_s, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -347,9 +347,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_prepend_s, main->error.notable); - fl_print_format("%[' must only contain whitespace.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_prepend_s, main->error.notable); + fl_print_format("%[' must only contain whitespace.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -364,9 +364,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_prepend_s, main->error.notable); - fl_print_format("%[' must not be an empty string.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_prepend_s, main->error.notable); + fl_print_format("%[' must not be an empty string.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -381,9 +381,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_ignore_s, main->error.notable); - fl_print_format("%[' was specified, but no values were given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_ignore_s, main->error.notable); + fl_print_format("%[' was specified, but no values were given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -397,9 +397,9 @@ extern "C" { if (total_locations * 2 > total_arguments) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_ignore_s, main->error.notable); - fl_print_format("%[' requires two values.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_ignore_s, main->error.notable); + fl_print_format("%[' requires two values.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -437,8 +437,8 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhile processing the '%]%[input pipe%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QWhile processing the '%]%[input pipe%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -511,8 +511,8 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhile processing the '%]%[input arguments%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QWhile processing the '%]%[input arguments%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -520,7 +520,7 @@ extern "C" { else if (main->error.verbosity != f_console_verbosity_quiet_e && main->parameters.array[fss_basic_write_parameter_file_e].result == f_console_result_none_e) { // Ensure there is always a newline at the end, unless in quiet mode. - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } @@ -545,7 +545,7 @@ extern "C" { // Ensure a newline is always put at the end of the program execution, unless in quiet mode. if (main->error.verbosity != f_console_verbosity_quiet_e) { if (F_status_is_error(status)) { - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } } diff --git a/level_3/fss_basic_write/c/private-common.c b/level_3/fss_basic_write/c/private-common.c index 92f508b..1fd1fad 100644 --- a/level_3/fss_basic_write/c/private-common.c +++ b/level_3/fss_basic_write/c/private-common.c @@ -15,9 +15,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_basic_write/c/private-write.c b/level_3/fss_basic_write/c/private-write.c index 1c350cd..33c49ec 100644 --- a/level_3/fss_basic_write/c/private-write.c +++ b/level_3/fss_basic_write/c/private-write.c @@ -15,13 +15,13 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QMust specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QMust specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_object_s, main->error.notable); fl_print_format("%[' parameter and the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_content_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_content_s, main->error.notable); fl_print_format("%[' parameter the same number of times when not specifying the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_partial_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_basic_write_long_partial_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -36,9 +36,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, symbol, parameter, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, symbol, parameter, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -53,9 +53,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis standard does not support end of line character '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThis standard does not support end of line character '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[\\n%]", main->error.to.stream, main->error.notable, main->error.notable); - fl_print_format("%[' in objects.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' in objects.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -269,7 +269,7 @@ extern "C" { if (block.string[range.start] == fss_basic_write_pipe_content_start_s) { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QThis standard only supports one content per object.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QThis standard only supports one content per object.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); } status = F_status_set_error(F_supported_not); diff --git a/level_3/fss_embedded_list_read/c/fss_embedded_list_read.c b/level_3/fss_embedded_list_read/c/fss_embedded_list_read.c index 7f375e6..d6e3062 100644 --- a/level_3/fss_embedded_list_read/c/fss_embedded_list_read.c +++ b/level_3/fss_embedded_list_read/c/fss_embedded_list_read.c @@ -33,7 +33,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_embedded_list_read_short_at_s, fss_embedded_list_read_long_at_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Select Object at this numeric index."); fll_program_print_help_option(file, context, fss_embedded_list_read_short_content_s, fss_embedded_list_read_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print the Content (default)."); @@ -52,74 +52,74 @@ extern "C" { fll_program_print_help_usage(file, context, fss_embedded_list_read_program_name_s, "filename(s)"); - fl_print_format(" %[Notes:%]%q", file.stream, context.set.important, context.set.important, f_string_eol_s); + fl_print_format(" %[Notes:%]%r", file.stream, context.set.important, context.set.important, f_string_eol_s); - fl_print_format(" This program will print the Content associated with the given Object and Content main based on the FSS-0008 Embedded List standard.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program will print the Content associated with the given Object and Content main based on the FSS-0008 Embedded List standard.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" All numeric positions (indexes) start at 0 instead of 1.%q", file.stream, f_string_eol_s); - fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" All numeric positions (indexes) start at 0 instead of 1.%r", file.stream, f_string_eol_s); + fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When using the %[%q%s%] option, an order of operations is enforced on the parameters.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" When using the %[%r%s%] option, an order of operations is enforced on the parameters.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%q", file.stream, f_string_eol_s); + fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%r", file.stream, f_string_eol_s); - fl_print_format(" %[%q%s%]: An Object index at the specified depth.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_at_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%q%s%]: A new depth within the specified depth, indexed from the root.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%q%s%]: An Object name at the specified depth.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" %[%r%s%]: An Object index at the specified depth.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_at_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%s%]: A new depth within the specified depth, indexed from the root.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%s%]: An Object name at the specified depth.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] must be in numeric order, but values in between may be skipped.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%q", file.stream, f_string_eol_s); - fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] must be in numeric order, but values in between may be skipped.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%r", file.stream, f_string_eol_s); + fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] selects a Content column.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_select_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] selects a Content column.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_select_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" Specify both %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_object_s, context.set.notable); - fl_print_format(" and the %[%q%s%] parameters to get the total objects.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_total_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" Specify both %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_object_s, context.set.notable); + fl_print_format(" and the %[%r%s%] parameters to get the total objects.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_total_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" When both %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_at_s, context.set.notable); - fl_print_format(" and %[%q%s%] parameters are specified (at the same depth),", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_name_s, context.set.notable); - fl_print_format(" the %[%q%s%] parameter value will be treated as a position relative to the specified", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_at_s, context.set.notable); - fl_print_format(" %[%q%s%] parameter value.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When both %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_at_s, context.set.notable); + fl_print_format(" and %[%r%s%] parameters are specified (at the same depth),", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_name_s, context.set.notable); + fl_print_format(" the %[%r%s%] parameter value will be treated as a position relative to the specified", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_at_s, context.set.notable); + fl_print_format(" %[%r%s%] parameter value.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" This program may support parameters, such as %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, context.set.notable); - fl_print_format(" or %[%q%s%], even if not supported by the standard.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_select_s, context.set.notable, f_string_eol_s); - fl_print_format(" This is done to help ensure consistency for scripting.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program may support parameters, such as %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, context.set.notable); + fl_print_format(" or %[%r%s%], even if not supported by the standard.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_select_s, context.set.notable, f_string_eol_s); + fl_print_format(" This is done to help ensure consistency for scripting.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" For parameters like %[%q%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, context.set.notable); - fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%q", file.stream, f_string_eol_s); + fl_print_format(" For parameters like %[%r%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, context.set.notable); + fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%r", file.stream, f_string_eol_s); - fl_print_format(" For parameters like %[%q%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_select_s, context.set.notable); - fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" For parameters like %[%r%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_select_s, context.set.notable); + fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_trim_s, context.set.notable); - fl_print_format(" will remove leading and trailing whitespaces when selecting objects or when printing objects.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_trim_s, context.set.notable); + fl_print_format(" will remove leading and trailing whitespaces when selecting objects or when printing objects.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When specifying both the %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_object_s, context.set.notable); - fl_print_format(" parameter and the %[%q%s%] parameter, the entire Object and Content are printed, including the formatting.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_content_s, context.set.notable, f_string_eol_s); - fl_print_format(" Both the Object and Content printed are already escaped.%q", file.stream, f_string_eol_s); - fl_print_format(" Both the Object and Content are separated by an EOL.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" When specifying both the %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_object_s, context.set.notable); + fl_print_format(" parameter and the %[%r%s%] parameter, the entire Object and Content are printed, including the formatting.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_content_s, context.set.notable, f_string_eol_s); + fl_print_format(" Both the Object and Content printed are already escaped.%r", file.stream, f_string_eol_s); + fl_print_format(" Both the Object and Content are separated by an EOL.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] accepts the following:%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_delimit_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: Do not apply delimits.%q", file.stream, context.set.notable, fss_embedded_list_read_delimit_mode_name_none_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: (default) Apply all delimits.%q", file.stream, context.set.notable, fss_embedded_list_read_delimit_mode_name_all_s, context.set.notable, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] accepts the following:%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_delimit_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: Do not apply delimits.%r", file.stream, context.set.notable, fss_embedded_list_read_delimit_mode_name_none_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: (default) Apply all delimits.%r", file.stream, context.set.notable, fss_embedded_list_read_delimit_mode_name_all_s, context.set.notable, f_string_eol_s); // @todo - //fl_print_format(" - %[%s%]: Apply delimits for Objects.%q", file.stream, context.set.notable, fss_embedded_list_read_delimit_mode_name_object, context.set.notable, f_string_eol_s); - fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%q", file.stream, f_string_eol_s); - fl_print_format(" - A number, 0 or greater, followed by a %[%s%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%q", file.stream, context.set.notable, fss_embedded_list_read_delimit_mode_name_greater_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" - A number, 0 or lesser, followed by a %[%s%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%q%q", file.stream, context.set.notable, fss_embedded_list_read_delimit_mode_name_lesser_s, context.set.notable, f_string_eol_s, f_string_eol_s); + //fl_print_format(" - %[%s%]: Apply delimits for Objects.%r", file.stream, context.set.notable, fss_embedded_list_read_delimit_mode_name_object, context.set.notable, f_string_eol_s); + fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%r", file.stream, f_string_eol_s); + fl_print_format(" - A number, 0 or greater, followed by a %[%s%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%r", file.stream, context.set.notable, fss_embedded_list_read_delimit_mode_name_greater_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" - A number, 0 or lesser, followed by a %[%s%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%r%r", file.stream, context.set.notable, fss_embedded_list_read_delimit_mode_name_lesser_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The %[%q%s%] parameter may be specified multiple times to customize the delimit behavior.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_delimit_s, context.set.notable, f_string_eol_s); + fl_print_format(" The %[%r%s%] parameter may be specified multiple times to customize the delimit behavior.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_delimit_s, context.set.notable, f_string_eol_s); - fl_print_format(" The %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_delimit_s, context.set.notable); + fl_print_format(" The %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_delimit_s, context.set.notable); fl_print_format(" values %[%s%]", file.stream, context.set.notable, fss_embedded_list_read_delimit_mode_name_none_s, context.set.notable); fl_print_format(" and %[%s%],", file.stream, context.set.notable, fss_embedded_list_read_delimit_mode_name_all_s, context.set.notable); - fl_print_format(" overrule all other delimit values.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" overrule all other delimit values.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameters %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_columns_s, context.set.notable); - fl_print_format(" and %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_select_s, context.set.notable); - fl_print_format(" refer to a Content column.%q", file.stream, f_string_eol_s); - fl_print_format(" The word \"column\" is being loosely defined to refer to a specific Content.%q", file.stream, f_string_eol_s); - fl_print_format(" This is not to be confused with a depth.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameters %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_columns_s, context.set.notable); + fl_print_format(" and %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_select_s, context.set.notable); + fl_print_format(" refer to a Content column.%r", file.stream, f_string_eol_s); + fl_print_format(" The word \"column\" is being loosely defined to refer to a specific Content.%r", file.stream, f_string_eol_s); + fl_print_format(" This is not to be confused with a depth.%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -228,11 +228,11 @@ extern "C" { if (main->parameters.array[fss_embedded_list_read_parameter_columns_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_total_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_total_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_columns_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_columns_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -244,9 +244,9 @@ extern "C" { if (main->parameters.array[fss_embedded_list_read_parameter_at_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_at_s, main->error.notable); - fl_print_format("%[' requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_at_s, main->error.notable); + fl_print_format("%[' requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -256,9 +256,9 @@ extern "C" { if (F_status_is_error_not(status) && main->parameters.array[fss_embedded_list_read_parameter_depth_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, main->error.notable); - fl_print_format("%[' requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, main->error.notable); + fl_print_format("%[' requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -268,9 +268,9 @@ extern "C" { if (F_status_is_error_not(status) && main->parameters.array[fss_embedded_list_read_parameter_line_e].result == f_console_result_additional_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_line_s, main->error.notable); - fl_print_format("%[' requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_line_s, main->error.notable); + fl_print_format("%[' requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -280,9 +280,9 @@ extern "C" { if (F_status_is_error_not(status) && main->parameters.array[fss_embedded_list_read_parameter_name_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_name_s, main->error.notable); - fl_print_format("%[' requires a string.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_name_s, main->error.notable); + fl_print_format("%[' requires a string.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -292,9 +292,9 @@ extern "C" { if (F_status_is_error_not(status) && main->parameters.array[fss_embedded_list_read_parameter_select_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_select_s, main->error.notable); - fl_print_format("%[' requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_select_s, main->error.notable); + fl_print_format("%[' requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -305,11 +305,11 @@ extern "C" { if (F_status_is_error_not(status) && main->parameters.array[fss_embedded_list_read_parameter_total_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_line_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_line_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -321,11 +321,11 @@ extern "C" { if (F_status_is_error_not(status) && main->parameters.array[fss_embedded_list_read_parameter_total_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_pipe_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_pipe_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -337,9 +337,9 @@ extern "C" { if (main->parameters.array[fss_embedded_list_read_parameter_delimit_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_delimit_s, main->error.notable); - fl_print_format("%[' requires a value.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_delimit_s, main->error.notable); + fl_print_format("%[' requires a value.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -352,9 +352,9 @@ extern "C" { if (length == 0) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_delimit_s, main->error.notable); - fl_print_format("%[' must not be empty.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_delimit_s, main->error.notable); + fl_print_format("%[' must not be empty.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -417,9 +417,9 @@ extern "C" { if (F_status_is_error_not(status) && main->parameters.array[fss_embedded_list_read_parameter_select_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_select_s, main->error.notable); - fl_print_format("%[' parameter requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_select_s, main->error.notable); + fl_print_format("%[' parameter requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -482,7 +482,7 @@ extern "C" { // Skip past empty files. if (!main->quantity.total) { if (main->parameters.array[fss_embedded_list_read_parameter_total_e].result == f_console_result_found_e) { - fll_print_format("0%q", main->output.to.stream, f_string_eol_s); + fll_print_format("0%r", main->output.to.stream, f_string_eol_s); } f_file_stream_close(F_true, &file); @@ -526,7 +526,7 @@ extern "C" { macro_f_fss_comments_t_delete_simple(comments); } else { - fll_print_format("%q%[%QYou failed to specify one or more files.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QYou failed to specify one or more files.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); status = F_status_set_error(F_parameter); } @@ -534,7 +534,7 @@ extern "C" { if (F_status_set_fine(status) == F_interrupt) { fflush(main->output.to.stream); - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/fss_embedded_list_read/c/private-common.c b/level_3/fss_embedded_list_read/c/private-common.c index c067b9f..25b950c 100644 --- a/level_3/fss_embedded_list_read/c/private-common.c +++ b/level_3/fss_embedded_list_read/c/private-common.c @@ -15,9 +15,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_embedded_list_read/c/private-read.c b/level_3/fss_embedded_list_read/c/private-read.c index 7098b84..10c1bcc 100644 --- a/level_3/fss_embedded_list_read/c/private-read.c +++ b/level_3/fss_embedded_list_read/c/private-read.c @@ -202,11 +202,11 @@ extern "C" { if (depths->array[i].depth == depths->array[j].depth) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, depths->array[i].depth, main->error.notable); fl_print_format("%[' may only be specified once for the parameter '%]", main->error.to.stream, main->error.notable, main->error.notable); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -215,13 +215,13 @@ extern "C" { else if (depths->array[i].depth > depths->array[j].depth) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, main->error.notable); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_read_long_depth_s, main->error.notable); fl_print_format("%[' may not have the value '%]", main->error.to.stream, main->error.notable, main->error.notable); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, depths->array[i].depth, main->error.notable); fl_print_format("%[' before the value '%]", main->error.to.stream, main->error.notable, main->error.notable); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, depths->array[j].depth, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -258,7 +258,7 @@ extern "C" { f_string_dynamic_resize(0, &main->buffer); if (main->parameters.array[fss_embedded_list_read_parameter_total_e].result == f_console_result_found_e) { - fll_print_format("0%q", main->output.to.stream, f_string_eol_s); + fll_print_format("0%r", main->output.to.stream, f_string_eol_s); return F_none; } @@ -288,7 +288,7 @@ extern "C" { // Requested depths cannot be greater than contents depth. if (depths.used > main->nest.used) { if (main->parameters.array[fss_embedded_list_read_parameter_total_e].result == f_console_result_found_e) { - fll_print_format("0%q", main->output.to.stream, f_string_eol_s); + fll_print_format("0%r", main->output.to.stream, f_string_eol_s); return F_none; } @@ -508,7 +508,7 @@ extern "C" { ++total; } // for - fll_print_format("%lu%q", main->output.to.stream, total, f_string_eol_s); + fll_print_format("%lu%r", main->output.to.stream, total, f_string_eol_s); return F_none; } @@ -579,7 +579,7 @@ extern "C" { } // for } // for - fll_print_format("%lu%q", main->output.to.stream, total, f_string_eol_s); + fll_print_format("%lu%r", main->output.to.stream, total, f_string_eol_s); return F_none; } @@ -632,7 +632,7 @@ extern "C" { if (!main->buffer.string[j]) continue; if (main->buffer.string[j] == f_string_eol_s.string[0]) { - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); break; } diff --git a/level_3/fss_embedded_list_write/c/fss_embedded_list_write.c b/level_3/fss_embedded_list_write/c/fss_embedded_list_write.c index 18df544..33beebe 100644 --- a/level_3/fss_embedded_list_write/c/fss_embedded_list_write.c +++ b/level_3/fss_embedded_list_write/c/fss_embedded_list_write.c @@ -32,7 +32,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_embedded_list_write_short_file_s, fss_embedded_list_write_long_file_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Specify a file to send data to."); fll_program_print_help_option(file, context, fss_embedded_list_write_short_content_s, fss_embedded_list_write_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "The Content to file."); @@ -46,21 +46,21 @@ extern "C" { fll_program_print_help_usage(file, context, fss_embedded_list_write_program_name_s, f_string_empty_s); - fl_print_format(" The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range (use this both before and after the range).%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range (use this both before and after the range).%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); fl_print_format(" For the pipe, an Object is terminated by either a Backspace character '%[\\b%]' (%[U+0008%])", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable); - fl_print_format(" or a Form Feed character '%[\\f%]' (%[U+000C%]).%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The end of the pipe represents the end of any Object or Content.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" or a Form Feed character '%[\\f%]' (%[U+000C%]).%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The end of the pipe represents the end of any Object or Content.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The FSS-0008 (Embedded List) specification does not support quoted names, therefore the parameters '%[%q%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_single_s, context.set.notable); - fl_print_format(" and '%[%q%s%]' do nothing.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_double_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The FSS-0008 (Embedded List) specification does not support quoted names, therefore the parameters '%[%r%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_single_s, context.set.notable); + fl_print_format(" and '%[%r%s%]' do nothing.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_double_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter '%[%q%s%]' designates to not escape any valid nested Object or Content within some Content.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_ignore_s, context.set.notable, f_string_eol_s); - fl_print_format(" This parameter requires two values.%q", file.stream, f_string_eol_s); - fl_print_format(" This parameter is not used for ignoring anything from the input pipe.%q", file.stream, f_string_eol_s); - fl_print_format(" This parameter must be specified after a '%[%q%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_content_s, context.set.notable); - fl_print_format(" parameter and this applies only to the Content represented by that specific '%[%q%s%]' parameter.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_content_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter '%[%r%s%]' designates to not escape any valid nested Object or Content within some Content.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_ignore_s, context.set.notable, f_string_eol_s); + fl_print_format(" This parameter requires two values.%r", file.stream, f_string_eol_s); + fl_print_format(" This parameter is not used for ignoring anything from the input pipe.%r", file.stream, f_string_eol_s); + fl_print_format(" This parameter must be specified after a '%[%r%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_content_s, context.set.notable); + fl_print_format(" parameter and this applies only to the Content represented by that specific '%[%r%s%]' parameter.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_content_s, context.set.notable, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -178,9 +178,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_file_s, main->error.notable); - fl_print_format("%[' may only be specified once.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_file_s, main->error.notable); + fl_print_format("%[' may only be specified once.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -225,13 +225,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_partial_s, main->error.notable); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_partial_s, main->error.notable); fl_print_format("%[' parameter only allows either the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_object_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_object_s, main->error.notable); fl_print_format("%[' parameter or the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter, but not both.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter, but not both.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -257,11 +257,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_object_s, main->error.notable); fl_print_format("%[' parameter must be specified before a '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -289,11 +289,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis requires either piped data or the use of the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QThis requires either piped data or the use of the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_object_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -306,9 +306,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_partial_s, main->error.notable); - fl_print_format("%[' parameter cannot be used when processing a pipe.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThis '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_partial_s, main->error.notable); + fl_print_format("%[' parameter cannot be used when processing a pipe.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -323,9 +323,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_prepend_s, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_prepend_s, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -352,9 +352,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_prepend_s, main->error.notable); - fl_print_format("%[' must only contain whitespace.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_prepend_s, main->error.notable); + fl_print_format("%[' must only contain whitespace.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -369,9 +369,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_prepend_s, main->error.notable); - fl_print_format("%[' must not be an empty string.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_prepend_s, main->error.notable); + fl_print_format("%[' must not be an empty string.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -386,9 +386,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_ignore_s, main->error.notable); - fl_print_format("%[' was specified, but no values were given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_ignore_s, main->error.notable); + fl_print_format("%[' was specified, but no values were given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -402,9 +402,9 @@ extern "C" { if (total_locations * 2 > total_arguments) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_ignore_s, main->error.notable); - fl_print_format("%[' requires two values.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_ignore_s, main->error.notable); + fl_print_format("%[' requires two values.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -443,8 +443,8 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhile processing the '%]%[input pipe%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QWhile processing the '%]%[input pipe%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -523,8 +523,8 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhile processing the '%]%[input arguments%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QWhile processing the '%]%[input arguments%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -532,7 +532,7 @@ extern "C" { else if (main->error.verbosity != f_console_verbosity_quiet_e && main->parameters.array[fss_embedded_list_write_parameter_file_e].result == f_console_result_none_e) { // Ensure there is always a newline at the end, unless in quiet mode. - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } @@ -558,7 +558,7 @@ extern "C" { // Ensure a newline is always put at the end of the program execution, unless in quiet mode. if (main->error.verbosity != f_console_verbosity_quiet_e) { if (F_status_is_error(status)) { - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } } diff --git a/level_3/fss_embedded_list_write/c/private-common.c b/level_3/fss_embedded_list_write/c/private-common.c index 35f7fc9..ca865e5 100644 --- a/level_3/fss_embedded_list_write/c/private-common.c +++ b/level_3/fss_embedded_list_write/c/private-common.c @@ -15,9 +15,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_embedded_list_write/c/private-write.c b/level_3/fss_embedded_list_write/c/private-write.c index d3fb686..5c3c7c7 100644 --- a/level_3/fss_embedded_list_write/c/private-write.c +++ b/level_3/fss_embedded_list_write/c/private-write.c @@ -15,13 +15,13 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QMust specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QMust specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_object_s, main->error.notable); fl_print_format("%[' parameter and the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_content_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_content_s, main->error.notable); fl_print_format("%[' parameter the same number of times when not specifying the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_partial_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_embedded_list_write_long_partial_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -36,9 +36,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis standard does not support end of line character '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThis standard does not support end of line character '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[\\n%]", main->error.to.stream, main->error.notable, main->error.notable); - fl_print_format("%[' in objects.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' in objects.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -53,9 +53,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, symbol, parameter, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, symbol, parameter, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -265,7 +265,7 @@ extern "C" { if (block.string[range.start] == fss_embedded_list_write_pipe_content_start_s) { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QThis standard only supports one content per object.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QThis standard only supports one content per object.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); } status = F_status_set_error(F_supported_not); diff --git a/level_3/fss_extended_list_read/c/fss_extended_list_read.c b/level_3/fss_extended_list_read/c/fss_extended_list_read.c index 9d72c8c..e3e1a52 100644 --- a/level_3/fss_extended_list_read/c/fss_extended_list_read.c +++ b/level_3/fss_extended_list_read/c/fss_extended_list_read.c @@ -33,7 +33,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_extended_list_read_short_at_s, fss_extended_list_read_long_at_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Select Object at this numeric index."); fll_program_print_help_option(file, context, fss_extended_list_read_short_content_s, fss_extended_list_read_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print the Content (default)."); @@ -52,73 +52,73 @@ extern "C" { fll_program_print_help_usage(file, context, fss_extended_list_read_program_name_s, "filename(s)"); - fl_print_format(" %[Notes:%]%q", file.stream, context.set.important, context.set.important, f_string_eol_s); + fl_print_format(" %[Notes:%]%r", file.stream, context.set.important, context.set.important, f_string_eol_s); - fl_print_format(" This program will print the Content associated with the given Object and Content main based on the FSS-0003 Extended List standard.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program will print the Content associated with the given Object and Content main based on the FSS-0003 Extended List standard.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" All numeric positions (indexes) start at 0 instead of 1.%q", file.stream, f_string_eol_s); - fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" All numeric positions (indexes) start at 0 instead of 1.%r", file.stream, f_string_eol_s); + fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When using the %[%q%s%] option, an order of operations is enforced on the parameters.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" When using the %[%r%s%] option, an order of operations is enforced on the parameters.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%q", file.stream, f_string_eol_s); + fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%r", file.stream, f_string_eol_s); - fl_print_format(" %[%q%s%]: An Object index at the specified depth.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_at_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%q%s%]: A new depth within the specified depth, indexed from the root.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%q%s%]: An Object name at the specified depth.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" %[%r%s%]: An Object index at the specified depth.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_at_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%s%]: A new depth within the specified depth, indexed from the root.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%s%]: An Object name at the specified depth.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] must be in numeric order, but values in between may be skipped.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%q", file.stream, f_string_eol_s); - fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] must be in numeric order, but values in between may be skipped.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%r", file.stream, f_string_eol_s); + fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] selects a Content column.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_select_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] selects a Content column.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_select_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" Specify both %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_object_s, context.set.notable); - fl_print_format(" and the %[%q%s%] parameters to get the total objects.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_total_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" Specify both %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_object_s, context.set.notable); + fl_print_format(" and the %[%r%s%] parameters to get the total objects.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_total_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" When both %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_at_s, context.set.notable); - fl_print_format(" and %[%q%s%] parameters are specified (at the same depth),", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_name_s, context.set.notable); - fl_print_format(" the %[%q%s%] parameter value will be treated as a position relative to the specified", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_at_s, context.set.notable); - fl_print_format(" %[%q%s%] parameter value.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When both %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_at_s, context.set.notable); + fl_print_format(" and %[%r%s%] parameters are specified (at the same depth),", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_name_s, context.set.notable); + fl_print_format(" the %[%r%s%] parameter value will be treated as a position relative to the specified", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_at_s, context.set.notable); + fl_print_format(" %[%r%s%] parameter value.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" This program may support parameters, such as %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, context.set.notable); - fl_print_format(" or %[%q%s%], even if not supported by the standard.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_select_s, context.set.notable, f_string_eol_s); - fl_print_format(" This is done to help ensure consistency for scripting.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program may support parameters, such as %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, context.set.notable); + fl_print_format(" or %[%r%s%], even if not supported by the standard.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_select_s, context.set.notable, f_string_eol_s); + fl_print_format(" This is done to help ensure consistency for scripting.%r%r", file.stream, f_string_eol_s, f_string_eol_s); fl_print_format(" For parameters like %[%s%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, context.set.notable); - fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%q", file.stream, f_string_eol_s); + fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%r", file.stream, f_string_eol_s); - fl_print_format(" For parameters like %[%q%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_select_s, context.set.notable); - fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" For parameters like %[%r%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_select_s, context.set.notable); + fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_trim_s, context.set.notable); - fl_print_format(" will remove leading and trailing whitespaces when selecting objects or when printing objects.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_trim_s, context.set.notable); + fl_print_format(" will remove leading and trailing whitespaces when selecting objects or when printing objects.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When specifying both the %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_object_s, context.set.notable); - fl_print_format(" parameter and the %[%q%s%] parameter, the entire Object and Content are printed, including the formatting.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_content_s, context.set.notable, f_string_eol_s); - fl_print_format(" Both the Object and Content printed are already escaped.%q", file.stream, f_string_eol_s); - fl_print_format(" Both the Object and Content are separated by an EOL.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" When specifying both the %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_object_s, context.set.notable); + fl_print_format(" parameter and the %[%r%s%] parameter, the entire Object and Content are printed, including the formatting.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_content_s, context.set.notable, f_string_eol_s); + fl_print_format(" Both the Object and Content printed are already escaped.%r", file.stream, f_string_eol_s); + fl_print_format(" Both the Object and Content are separated by an EOL.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] accepts the following:%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_delimit_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: Do not apply delimits.%q", file.stream, context.set.notable, fss_extended_list_read_delimit_mode_name_none_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: (default) Apply all delimits.%q", file.stream, context.set.notable, fss_extended_list_read_delimit_mode_name_all_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: Apply delimits for Objects.%q", file.stream, context.set.notable, fss_extended_list_read_delimit_mode_name_object_s, context.set.notable, f_string_eol_s); - fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%q", file.stream, f_string_eol_s); - fl_print_format(" - A number, 0 or greater, followed by a %[%s%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%q", file.stream, context.set.notable, fss_extended_list_read_delimit_mode_name_greater_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" - A number, 0 or lesser, followed by a %[%s%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%q%q", file.stream, context.set.notable, fss_extended_list_read_delimit_mode_name_lesser_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] accepts the following:%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_delimit_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: Do not apply delimits.%r", file.stream, context.set.notable, fss_extended_list_read_delimit_mode_name_none_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: (default) Apply all delimits.%r", file.stream, context.set.notable, fss_extended_list_read_delimit_mode_name_all_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: Apply delimits for Objects.%r", file.stream, context.set.notable, fss_extended_list_read_delimit_mode_name_object_s, context.set.notable, f_string_eol_s); + fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%r", file.stream, f_string_eol_s); + fl_print_format(" - A number, 0 or greater, followed by a %[%s%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%r", file.stream, context.set.notable, fss_extended_list_read_delimit_mode_name_greater_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" - A number, 0 or lesser, followed by a %[%s%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%r%r", file.stream, context.set.notable, fss_extended_list_read_delimit_mode_name_lesser_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The %[%s%s%] parameter may be specified multiple times to customize the delimit behavior.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_delimit_s, context.set.notable, f_string_eol_s); + fl_print_format(" The %[%s%s%] parameter may be specified multiple times to customize the delimit behavior.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_delimit_s, context.set.notable, f_string_eol_s); - fl_print_format(" The %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_delimit_s, context.set.notable); + fl_print_format(" The %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_delimit_s, context.set.notable); fl_print_format(" values %[%s%]", file.stream, context.set.notable, fss_extended_list_read_delimit_mode_name_none_s, context.set.notable); fl_print_format(" and %[%s%],", file.stream, context.set.notable, fss_extended_list_read_delimit_mode_name_all_s, context.set.notable); - fl_print_format(" overrule all other delimit values.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" overrule all other delimit values.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameters %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_columns_s, context.set.notable); - fl_print_format(" and %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_select_s, context.set.notable); - fl_print_format(" refer to a Content column.%q", file.stream, f_string_eol_s); - fl_print_format(" The word \"column\" is being loosely defined to refer to a specific Content.%q", file.stream, f_string_eol_s); - fl_print_format(" This is not to be confused with a depth.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameters %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_columns_s, context.set.notable); + fl_print_format(" and %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_select_s, context.set.notable); + fl_print_format(" refer to a Content column.%r", file.stream, f_string_eol_s); + fl_print_format(" The word \"column\" is being loosely defined to refer to a specific Content.%r", file.stream, f_string_eol_s); + fl_print_format(" This is not to be confused with a depth.%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -273,9 +273,9 @@ extern "C" { if (main->parameters.array[parameter_code[i]].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); - fl_print_format("%[' requires a %s.%]%q", main->error.to.stream, main->error.context, parameter_message[i], main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); + fl_print_format("%[' requires a %s.%]%r", main->error.to.stream, main->error.context, parameter_message[i], main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -316,11 +316,11 @@ extern "C" { if (main->parameters.array[parameter_code[i]].result == parameter_match[i]) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_columns_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_columns_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -335,11 +335,11 @@ extern "C" { if (main->parameters.array[fss_extended_list_read_parameter_total_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_pipe_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_pipe_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -348,11 +348,11 @@ extern "C" { else if (main->parameters.array[fss_extended_list_read_parameter_line_e].result == f_console_result_additional_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_pipe_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_pipe_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_line_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_line_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -381,9 +381,9 @@ extern "C" { if (!length) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_delimit_s, main->error.notable); - fl_print_format("%[' must not be empty.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_delimit_s, main->error.notable); + fl_print_format("%[' must not be empty.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -515,9 +515,9 @@ extern "C" { if (F_status_is_error_not(status) && main->parameters.array[fss_extended_list_read_parameter_select_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_select_s, main->error.notable); - fl_print_format("%[' parameter requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_select_s, main->error.notable); + fl_print_format("%[' parameter requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -640,7 +640,7 @@ extern "C" { fss_extended_list_read_data_delete_simple(&data); } else { - fll_print_format("%q%[%QYou failed to specify one or more files.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QYou failed to specify one or more files.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); status = F_status_set_error(F_parameter); } @@ -648,7 +648,7 @@ extern "C" { if (F_status_set_fine(status) == F_interrupt) { fflush(main->output.to.stream); - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/fss_extended_list_read/c/private-common.c b/level_3/fss_extended_list_read/c/private-common.c index ed5a0e9..9491846 100644 --- a/level_3/fss_extended_list_read/c/private-common.c +++ b/level_3/fss_extended_list_read/c/private-common.c @@ -67,9 +67,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_extended_list_read/c/private-print.c b/level_3/fss_extended_list_read/c/private-print.c index fef2792..e55ccc0 100644 --- a/level_3/fss_extended_list_read/c/private-print.c +++ b/level_3/fss_extended_list_read/c/private-print.c @@ -112,7 +112,7 @@ extern "C" { void fss_extended_list_read_print_one(fss_extended_list_read_main_t * const main) { f_print_character(f_string_ascii_1_s.string[0], main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } #endif // _di_fss_extended_list_read_print_one_ @@ -120,7 +120,7 @@ extern "C" { void fss_extended_list_read_print_zero(fss_extended_list_read_main_t * const main) { f_print_character(f_string_ascii_0_s.string[0], main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } #endif // _di_fss_extended_list_read_print_zero_ diff --git a/level_3/fss_extended_list_read/c/private-read.c b/level_3/fss_extended_list_read/c/private-read.c index b3eaed9..a26a33c 100644 --- a/level_3/fss_extended_list_read/c/private-read.c +++ b/level_3/fss_extended_list_read/c/private-read.c @@ -180,11 +180,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[i].depth, main->error.notable); fl_print_format("%[' may only be specified once for the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -195,13 +195,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, main->error.notable); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_read_long_depth_s, main->error.notable); fl_print_format("%[' may not have the value '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[i].depth, main->error.notable); fl_print_format("%[' before the value '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[j].depth, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -387,7 +387,7 @@ extern "C" { if (status == F_success) return F_none; } else if (data->option & fss_extended_list_read_data_option_columns_d) { - fll_print_format("%ul%q", main->output.to.stream, data->contents.array[i].used, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, data->contents.array[i].used, f_string_eol_s); } else if (data->option & fss_extended_list_read_data_option_total_d) { if ((data->option & fss_extended_list_read_data_option_object_d) && !(data->option & fss_extended_list_read_data_option_content_d)) { @@ -442,7 +442,7 @@ extern "C" { } } // for - fll_print_format("%ul%q", main->output.to.stream, total, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, total, f_string_eol_s); } } else { @@ -549,7 +549,7 @@ extern "C" { range.stop = data->contents.array[at].array[0].stop; f_print_except_in_dynamic_partial(data->buffer, range, delimits_content, data->comments, main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } funlockfile(main->output.to.stream); @@ -587,7 +587,7 @@ extern "C" { } } // for - fll_print_format("%ul%q", main->output.to.stream, max, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, max, f_string_eol_s); return F_none; } @@ -770,7 +770,7 @@ extern "C" { } } else { - fl_print_format("%ul%q", main->output.to.stream, total, f_string_eol_s); + fl_print_format("%ul%r", main->output.to.stream, total, f_string_eol_s); } funlockfile(main->output.to.stream); diff --git a/level_3/fss_extended_list_write/c/fss_extended_list_write.c b/level_3/fss_extended_list_write/c/fss_extended_list_write.c index 0a03ae6..f08d312 100644 --- a/level_3/fss_extended_list_write/c/fss_extended_list_write.c +++ b/level_3/fss_extended_list_write/c/fss_extended_list_write.c @@ -32,7 +32,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_extended_list_write_short_file_s, fss_extended_list_write_long_file_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Specify a file to send data to."); fll_program_print_help_option(file, context, fss_extended_list_write_short_content_s, fss_extended_list_write_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "The Content to file."); @@ -46,21 +46,21 @@ extern "C" { fll_program_print_help_usage(file, context, fss_extended_list_write_program_name_s, f_string_empty_s); - fl_print_format(" The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range (use this both before and after the range).%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range (use this both before and after the range).%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); fl_print_format(" For the pipe, an Object is terminated by either a Backspace character '%[\\b%]' (%[U+0008%])", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable); - fl_print_format(" or a Form Feed character '%[\\f%]' (%[U+000C%]).%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The end of the pipe represents the end of any Object or Content.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" or a Form Feed character '%[\\f%]' (%[U+000C%]).%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The end of the pipe represents the end of any Object or Content.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The FSS-0003 (Extended List) specification does not support quoted names, therefore the parameters '%[%q%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_single_s, context.set.notable); - fl_print_format(" and '%[%q%s%]' do nothing.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_double_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The FSS-0003 (Extended List) specification does not support quoted names, therefore the parameters '%[%r%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_single_s, context.set.notable); + fl_print_format(" and '%[%r%s%]' do nothing.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_double_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter '%[%q%s%]' designates to not escape any valid nested Object or Content within some Content.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_ignore_s, context.set.notable, f_string_eol_s); - fl_print_format(" This parameter requires two values.%q", file.stream, f_string_eol_s); - fl_print_format(" This parameter is not used for ignoring anything from the input pipe.%q", file.stream, f_string_eol_s); - fl_print_format(" This parameter must be specified after a '%[%q%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_content_s, context.set.notable); - fl_print_format(" parameter and this applies only to the Content represented by that specific '%[%q%s%]' parameter.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_content_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter '%[%r%s%]' designates to not escape any valid nested Object or Content within some Content.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_ignore_s, context.set.notable, f_string_eol_s); + fl_print_format(" This parameter requires two values.%r", file.stream, f_string_eol_s); + fl_print_format(" This parameter is not used for ignoring anything from the input pipe.%r", file.stream, f_string_eol_s); + fl_print_format(" This parameter must be specified after a '%[%r%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_content_s, context.set.notable); + fl_print_format(" parameter and this applies only to the Content represented by that specific '%[%r%s%]' parameter.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_content_s, context.set.notable, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -178,9 +178,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_file_s, main->error.notable); - fl_print_format("%[' may only be specified once.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_file_s, main->error.notable); + fl_print_format("%[' may only be specified once.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -225,13 +225,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_partial_s, main->error.notable); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_partial_s, main->error.notable); fl_print_format("%[' parameter only allows either the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_object_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_object_s, main->error.notable); fl_print_format("%[' parameter or the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter, but not both.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter, but not both.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -257,11 +257,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_object_s, main->error.notable); fl_print_format("%[' parameter must be specified before a '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -288,11 +288,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis requires either piped data or the use of the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QThis requires either piped data or the use of the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_object_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -305,9 +305,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_partial_s, main->error.notable); - fl_print_format("%[' parameter cannot be used when processing a pipe.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThis '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_partial_s, main->error.notable); + fl_print_format("%[' parameter cannot be used when processing a pipe.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -322,9 +322,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_prepend_s, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_prepend_s, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -351,9 +351,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_prepend_s, main->error.notable); - fl_print_format("%[' must only contain whitespace.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_prepend_s, main->error.notable); + fl_print_format("%[' must only contain whitespace.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -368,9 +368,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_prepend_s, main->error.notable); - fl_print_format("%[' must not be an empty string.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_prepend_s, main->error.notable); + fl_print_format("%[' must not be an empty string.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -385,9 +385,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_ignore_s, main->error.notable); - fl_print_format("%[' was specified, but no values were given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_ignore_s, main->error.notable); + fl_print_format("%[' was specified, but no values were given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -401,9 +401,9 @@ extern "C" { if (total_locations * 2 > total_arguments) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_ignore_s, main->error.notable); - fl_print_format("%[' requires two values.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_ignore_s, main->error.notable); + fl_print_format("%[' requires two values.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -442,8 +442,8 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhile processing the '%]%[input pipe%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QWhile processing the '%]%[input pipe%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -522,8 +522,8 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhile processing the '%]%[input arguments%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QWhile processing the '%]%[input arguments%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -531,7 +531,7 @@ extern "C" { else if (main->error.verbosity != f_console_verbosity_quiet_e && main->parameters.array[fss_extended_list_write_parameter_file_e].result == f_console_result_none_e) { // Ensure there is always a newline at the end, unless in quiet mode. - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } @@ -557,7 +557,7 @@ extern "C" { // Ensure a newline is always put at the end of the program execution, unless in quiet mode. if (main->error.verbosity != f_console_verbosity_quiet_e) { if (F_status_is_error(status)) { - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } } diff --git a/level_3/fss_extended_list_write/c/private-common.c b/level_3/fss_extended_list_write/c/private-common.c index 7d670ff..2241196 100644 --- a/level_3/fss_extended_list_write/c/private-common.c +++ b/level_3/fss_extended_list_write/c/private-common.c @@ -15,9 +15,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_extended_list_write/c/private-write.c b/level_3/fss_extended_list_write/c/private-write.c index 46252ee..685f569 100644 --- a/level_3/fss_extended_list_write/c/private-write.c +++ b/level_3/fss_extended_list_write/c/private-write.c @@ -15,13 +15,13 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QMust specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QMust specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_object_s, main->error.notable); fl_print_format("%[' parameter and the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_content_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_content_s, main->error.notable); fl_print_format("%[' parameter the same number of times when not specifying the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_partial_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_list_write_long_partial_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -36,9 +36,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis standard does not support end of line character '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThis standard does not support end of line character '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[\\n%]", main->error.to.stream, main->error.notable, main->error.notable); - fl_print_format("%[' in objects.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' in objects.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -53,9 +53,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, symbol, parameter, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, symbol, parameter, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -262,7 +262,7 @@ extern "C" { if (block.string[range.start] == fss_extended_list_write_pipe_content_start_s) { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QThis standard only supports one content per object.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QThis standard only supports one content per object.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); } status = F_status_set_error(F_supported_not); diff --git a/level_3/fss_extended_read/c/fss_extended_read.c b/level_3/fss_extended_read/c/fss_extended_read.c index 546e9fe..e936f5a 100644 --- a/level_3/fss_extended_read/c/fss_extended_read.c +++ b/level_3/fss_extended_read/c/fss_extended_read.c @@ -33,7 +33,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_extended_read_short_at_s, fss_extended_read_long_at_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Select Object at this numeric index."); fll_program_print_help_option(file, context, fss_extended_read_short_content_s, fss_extended_read_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print the Content (default)."); @@ -52,73 +52,73 @@ extern "C" { fll_program_print_help_usage(file, context, fss_extended_read_program_name_s, "filename(s)"); - fl_print_format(" %[Notes:%]%q", file.stream, context.set.important, context.set.important, f_string_eol_s); + fl_print_format(" %[Notes:%]%r", file.stream, context.set.important, context.set.important, f_string_eol_s); - fl_print_format(" This program will print the Content associated with the given Object and Content main based on the FSS-0001 Extended standard.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program will print the Content associated with the given Object and Content main based on the FSS-0001 Extended standard.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" All numeric positions (indexes) start at 0 instead of 1.%q", file.stream, f_string_eol_s); - fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" All numeric positions (indexes) start at 0 instead of 1.%r", file.stream, f_string_eol_s); + fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When using the %[%q%s%] option, an order of operations is enforced on the parameters.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" When using the %[%r%s%] option, an order of operations is enforced on the parameters.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%q", file.stream, f_string_eol_s); + fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%r", file.stream, f_string_eol_s); - fl_print_format(" %[%q%s%]: An Object index at the specified depth.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_at_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%q%s%]: A new depth within the specified depth, indexed from the root.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%q%s%]: An Object name at the specified depth.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" %[%r%s%]: An Object index at the specified depth.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_at_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%s%]: A new depth within the specified depth, indexed from the root.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%s%]: An Object name at the specified depth.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] must be in numeric order, but values in between may be skipped.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%q", file.stream, f_string_eol_s); - fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] must be in numeric order, but values in between may be skipped.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%r", file.stream, f_string_eol_s); + fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] selects a Content column.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_select_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] selects a Content column.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_select_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" Specify both %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_object_s, context.set.notable); - fl_print_format(" and the %[%q%s%] parameters to get the total objects.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_total_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" Specify both %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_object_s, context.set.notable); + fl_print_format(" and the %[%r%s%] parameters to get the total objects.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_total_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" When both %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_at_s, context.set.notable); - fl_print_format(" and %[%q%s%] parameters are specified (at the same depth),", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_name_s, context.set.notable); - fl_print_format(" the %[%q%s%] parameter value will be treated as a position relative to the specified", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_at_s, context.set.notable); - fl_print_format(" %[%q%s%] parameter value.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When both %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_at_s, context.set.notable); + fl_print_format(" and %[%r%s%] parameters are specified (at the same depth),", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_name_s, context.set.notable); + fl_print_format(" the %[%r%s%] parameter value will be treated as a position relative to the specified", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_at_s, context.set.notable); + fl_print_format(" %[%r%s%] parameter value.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" This program may support parameters, such as %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, context.set.notable); - fl_print_format(" or %[%q%s%], even if not supported by the standard.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_select_s, context.set.notable, f_string_eol_s); - fl_print_format(" This is done to help ensure consistency for scripting.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program may support parameters, such as %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, context.set.notable); + fl_print_format(" or %[%r%s%], even if not supported by the standard.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_select_s, context.set.notable, f_string_eol_s); + fl_print_format(" This is done to help ensure consistency for scripting.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" For parameters like %[%q%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, context.set.notable); - fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%q", file.stream, f_string_eol_s); + fl_print_format(" For parameters like %[%r%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, context.set.notable); + fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%r", file.stream, f_string_eol_s); - fl_print_format(" For parameters like %[%q%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_select_s, context.set.notable); - fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" For parameters like %[%r%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_select_s, context.set.notable); + fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_trim_s, context.set.notable); - fl_print_format(" will remove leading and trailing whitespaces when selecting objects or when printing objects.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_trim_s, context.set.notable); + fl_print_format(" will remove leading and trailing whitespaces when selecting objects or when printing objects.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When specifying both the %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_object_s, context.set.notable); - fl_print_format(" parameter and the %[%q%s%] parameter, the entire Object and Content are printed, including the formatting.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_content_s, context.set.notable, f_string_eol_s); - fl_print_format(" Both the Object and Content printed are already escaped.%q", file.stream, f_string_eol_s); - fl_print_format(" Both the Object and Content are separated by a space.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" When specifying both the %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_object_s, context.set.notable); + fl_print_format(" parameter and the %[%r%s%] parameter, the entire Object and Content are printed, including the formatting.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_content_s, context.set.notable, f_string_eol_s); + fl_print_format(" Both the Object and Content printed are already escaped.%r", file.stream, f_string_eol_s); + fl_print_format(" Both the Object and Content are separated by a space.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] accepts the following:%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_delimit_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: Do not apply delimits.%q", file.stream, context.set.notable, fss_extended_read_delimit_mode_name_none, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: (default) Apply all delimits.%q", file.stream, context.set.notable, fss_extended_read_delimit_mode_name_all, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: Apply delimits for Objects.%q", file.stream, context.set.notable, fss_extended_read_delimit_mode_name_object, context.set.notable, f_string_eol_s); - fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%q", file.stream, f_string_eol_s); - fl_print_format(" - A number, 0 or greater, followed by a %[%s%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%q", file.stream, context.set.notable, fss_extended_read_delimit_mode_name_greater, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" - A number, 0 or lesser, followed by a %[%s%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%q%q", file.stream, context.set.notable, fss_extended_read_delimit_mode_name_lesser, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] accepts the following:%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_delimit_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: Do not apply delimits.%r", file.stream, context.set.notable, fss_extended_read_delimit_mode_name_none, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: (default) Apply all delimits.%r", file.stream, context.set.notable, fss_extended_read_delimit_mode_name_all, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: Apply delimits for Objects.%r", file.stream, context.set.notable, fss_extended_read_delimit_mode_name_object, context.set.notable, f_string_eol_s); + fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%r", file.stream, f_string_eol_s); + fl_print_format(" - A number, 0 or greater, followed by a %[%s%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%r", file.stream, context.set.notable, fss_extended_read_delimit_mode_name_greater, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" - A number, 0 or lesser, followed by a %[%s%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%r%r", file.stream, context.set.notable, fss_extended_read_delimit_mode_name_lesser, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The %[%q%s%] parameter may be specified multiple times to customize the delimit behavior.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_delimit_s, context.set.notable, f_string_eol_s); + fl_print_format(" The %[%r%s%] parameter may be specified multiple times to customize the delimit behavior.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_delimit_s, context.set.notable, f_string_eol_s); - fl_print_format(" The %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_delimit_s, context.set.notable); + fl_print_format(" The %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_delimit_s, context.set.notable); fl_print_format(" values %[%s%]", file.stream, context.set.notable, fss_extended_read_delimit_mode_name_none, context.set.notable); fl_print_format(" and %[%s%],", file.stream, context.set.notable, fss_extended_read_delimit_mode_name_all, context.set.notable); - fl_print_format(" overrule all other delimit values.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" overrule all other delimit values.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameters %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_columns_s, context.set.notable); - fl_print_format(" and %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_select_s, context.set.notable); - fl_print_format(" refer to a Content column.%q", file.stream, f_string_eol_s); - fl_print_format(" The word \"column\" is being loosely defined to refer to a specific Content.%q", file.stream, f_string_eol_s); - fl_print_format(" This is not to be confused with a depth.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameters %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_columns_s, context.set.notable); + fl_print_format(" and %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_read_long_select_s, context.set.notable); + fl_print_format(" refer to a Content column.%r", file.stream, f_string_eol_s); + fl_print_format(" The word \"column\" is being loosely defined to refer to a specific Content.%r", file.stream, f_string_eol_s); + fl_print_format(" This is not to be confused with a depth.%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -273,9 +273,9 @@ extern "C" { if (main->parameters.array[parameter_code[i]].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); - fl_print_format("%[' requires a %s.%]%q", main->error.to.stream, main->error.context, parameter_message[i], main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); + fl_print_format("%[' requires a %s.%]%r", main->error.to.stream, main->error.context, parameter_message[i], main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -315,11 +315,11 @@ extern "C" { if (main->parameters.array[parameter_code[i]].result == parameter_match[i]) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_columns_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_columns_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -333,11 +333,11 @@ extern "C" { if (main->parameters.array[fss_extended_read_parameter_total_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_pipe_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_pipe_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -346,11 +346,11 @@ extern "C" { else if (main->parameters.array[fss_extended_read_parameter_line_e].result == f_console_result_additional_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_pipe_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_pipe_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_line_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_line_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -383,9 +383,9 @@ extern "C" { if (!length) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_delimit_s, main->error.notable); - fl_print_format("%[' must not be empty.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_delimit_s, main->error.notable); + fl_print_format("%[' must not be empty.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -517,9 +517,9 @@ extern "C" { if (F_status_is_error_not(status) && main->parameters.array[fss_extended_read_parameter_select_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_select_s, main->error.notable); - fl_print_format("%[' parameter requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_select_s, main->error.notable); + fl_print_format("%[' parameter requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -647,7 +647,7 @@ extern "C" { fss_extended_read_data_delete_simple(&data); } else { - fll_print_format("%q%[%QYou failed to specify one or more files.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QYou failed to specify one or more files.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); status = F_status_set_error(F_parameter); } @@ -655,7 +655,7 @@ extern "C" { if (F_status_set_fine(status) == F_interrupt) { fflush(main->output.to.stream); - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/fss_extended_read/c/private-common.c b/level_3/fss_extended_read/c/private-common.c index 916cc2f..c12242e 100644 --- a/level_3/fss_extended_read/c/private-common.c +++ b/level_3/fss_extended_read/c/private-common.c @@ -68,9 +68,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_extended_read/c/private-print.c b/level_3/fss_extended_read/c/private-print.c index 5fef7be..84c2403 100644 --- a/level_3/fss_extended_read/c/private-print.c +++ b/level_3/fss_extended_read/c/private-print.c @@ -181,7 +181,7 @@ extern "C" { void fss_extended_read_print_one(fss_extended_read_main_t * const main) { f_print_character(f_string_ascii_1_s.string[0], main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } #endif // _di_fss_extended_read_print_one_ @@ -201,7 +201,7 @@ extern "C" { void fss_extended_read_print_zero(fss_extended_read_main_t * const main) { f_print_character(f_string_ascii_0_s.string[0], main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } #endif // _di_fss_extended_read_print_zero_ diff --git a/level_3/fss_extended_read/c/private-read.c b/level_3/fss_extended_read/c/private-read.c index f19c9dc..c220574 100644 --- a/level_3/fss_extended_read/c/private-read.c +++ b/level_3/fss_extended_read/c/private-read.c @@ -193,11 +193,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[i].depth, main->error.notable); fl_print_format("%[' may only be specified once for the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -208,13 +208,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, main->error.notable); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_read_long_depth_s, main->error.notable); fl_print_format("%[' may not have the value '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[i].depth, main->error.notable); fl_print_format("%[' before the value '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[j].depth, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -423,7 +423,7 @@ extern "C" { } } else if (data->option & fss_extended_read_data_option_columns_d) { - fll_print_format("%ul%q", main->output.to.stream, data->contents.array[i].used, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, data->contents.array[i].used, f_string_eol_s); } else if (data->option & fss_extended_read_data_option_total_d) { if (fss_extended_read_print_at_total(main, i, data) == F_none) { @@ -484,7 +484,7 @@ extern "C" { } } // for - fll_print_format("%ul%q", main->output.to.stream, max, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, max, f_string_eol_s); return F_none; } @@ -698,7 +698,7 @@ extern "C" { } } else { - fl_print_format("%ul%q", main->output.to.stream, total, f_string_eol_s); + fl_print_format("%ul%r", main->output.to.stream, total, f_string_eol_s); } funlockfile(main->output.to.stream); diff --git a/level_3/fss_extended_write/c/fss_extended_write.c b/level_3/fss_extended_write/c/fss_extended_write.c index f5c0f7c..9ddb4be 100644 --- a/level_3/fss_extended_write/c/fss_extended_write.c +++ b/level_3/fss_extended_write/c/fss_extended_write.c @@ -32,7 +32,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_extended_write_short_file_s, fss_extended_write_long_file_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Specify a file to send data to."); fll_program_print_help_option(file, context, fss_extended_write_short_content_s, fss_extended_write_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "The Content to file."); @@ -46,18 +46,18 @@ extern "C" { fll_program_print_help_usage(file, context, fss_extended_write_program_name_s, f_string_empty_s); - fl_print_format(" The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range, which does nothing in this program.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range, which does nothing in this program.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); fl_print_format(" For the pipe, an Object is terminated by either a Backspace character '%[\\b%]' (%[U+0008%])", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable); - fl_print_format(" or a Form Feed character '%[\\f%]' (%[U+000C%]).%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The end of the pipe represents the end of any Object or Content.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" or a Form Feed character '%[\\f%]' (%[U+000C%]).%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The end of the pipe represents the end of any Object or Content.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The FSS-0001 (Extended) specification does not support multi-line Content, therefore the parameter '%[%q%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_write_long_prepend_s, context.set.notable); - fl_print_format(" does nothing.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The FSS-0001 (Extended) specification does not support multi-line Content, therefore the parameter '%[%r%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_write_long_prepend_s, context.set.notable); + fl_print_format(" does nothing.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" This program does not use the parameter '%[%q%s%]', which therefore does nothing.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_write_long_ignore_s, context.set.notable, f_string_eol_s); - fl_print_format(" This parameter requires two values.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program does not use the parameter '%[%r%s%]', which therefore does nothing.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_extended_write_long_ignore_s, context.set.notable, f_string_eol_s); + fl_print_format(" This parameter requires two values.%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -174,9 +174,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_file_s, main->error.notable); - fl_print_format("%[' may only be specified once.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_file_s, main->error.notable); + fl_print_format("%[' may only be specified once.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -221,13 +221,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_partial_s, main->error.notable); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_partial_s, main->error.notable); fl_print_format("%[' parameter only allows either the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_object_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_object_s, main->error.notable); fl_print_format("%[' parameter or the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter, but not both.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter, but not both.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -247,11 +247,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_object_s, main->error.notable); fl_print_format("%[' parameter must be specified before a '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -268,11 +268,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_object_s, main->error.notable); fl_print_format("%[' parameter must have at least one '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -298,11 +298,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis requires either piped data or the use of the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QThis requires either piped data or the use of the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_object_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -315,9 +315,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_partial_s, main->error.notable); - fl_print_format("%[' parameter cannot be used when processing a pipe.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThis '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_partial_s, main->error.notable); + fl_print_format("%[' parameter cannot be used when processing a pipe.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -332,9 +332,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_prepend_s, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_prepend_s, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -359,9 +359,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_prepend_s, main->error.notable); - fl_print_format("%[' must only contain whitespace.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_prepend_s, main->error.notable); + fl_print_format("%[' must only contain whitespace.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -376,9 +376,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_prepend_s, main->error.notable); - fl_print_format("%[' must not be an empty string.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_prepend_s, main->error.notable); + fl_print_format("%[' must not be an empty string.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -393,9 +393,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_ignore_s, main->error.notable); - fl_print_format("%[' was specified, but no values were given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_ignore_s, main->error.notable); + fl_print_format("%[' was specified, but no values were given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -409,9 +409,9 @@ extern "C" { if (total_locations * 2 > total_arguments) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_ignore_s, main->error.notable); - fl_print_format("%[' requires two values.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_ignore_s, main->error.notable); + fl_print_format("%[' requires two values.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -449,8 +449,8 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhile processing the '%]%[input pipe%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QWhile processing the '%]%[input pipe%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -592,8 +592,8 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhile processing the '%]%[input arguments%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QWhile processing the '%]%[input arguments%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -601,7 +601,7 @@ extern "C" { else if (main->error.verbosity != f_console_verbosity_quiet_e && main->parameters.array[fss_extended_write_parameter_file_e].result == f_console_result_none_e) { // Ensure there is always a newline at the end, unless in quiet mode. - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } @@ -629,7 +629,7 @@ extern "C" { fflush(main->output.to.stream); } - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/fss_extended_write/c/private-common.c b/level_3/fss_extended_write/c/private-common.c index 3f0137f..5fd86f5 100644 --- a/level_3/fss_extended_write/c/private-common.c +++ b/level_3/fss_extended_write/c/private-common.c @@ -15,9 +15,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_extended_write/c/private-write.c b/level_3/fss_extended_write/c/private-write.c index 7bc4a6f..af48d10 100644 --- a/level_3/fss_extended_write/c/private-write.c +++ b/level_3/fss_extended_write/c/private-write.c @@ -15,13 +15,13 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QMust specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QMust specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_object_s, main->error.notable); fl_print_format("%[' parameter and the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_content_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_content_s, main->error.notable); fl_print_format("%[' parameter the same number of times when not specifying the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_partial_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_extended_write_long_partial_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -36,9 +36,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, symbol, parameter, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, symbol, parameter, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -53,9 +53,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis standard does not support end of line character '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThis standard does not support end of line character '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[\\n%]", main->error.to.stream, main->error.notable, main->error.notable); - fl_print_format("%[' in objects.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' in objects.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } diff --git a/level_3/fss_identify/c/fss_identify.c b/level_3/fss_identify/c/fss_identify.c index 3dd3326..a2a078f 100644 --- a/level_3/fss_identify/c/fss_identify.c +++ b/level_3/fss_identify/c/fss_identify.c @@ -32,12 +32,12 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_identify_short_content_s, fss_identify_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Print the Identifier content (the 4-digit hexidecimal type code)."); fll_program_print_help_option(file, context, fss_identify_short_object_s, fss_identify_long_object_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print the Identifier object (the name)."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_identify_short_line_s, fss_identify_long_line_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print only the Identifier at the given line."); fll_program_print_help_option(file, context, fss_identify_short_name_s, fss_identify_long_name_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Select Object with this name."); @@ -45,20 +45,20 @@ extern "C" { fll_program_print_help_usage(file, context, fss_identify_program_name_s, "filename(s)"); - fl_print_format(" The %[%q%s%] parameter refers to the file lines and not the lines in a given file.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_identify_long_line_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The %[%r%s%] parameter refers to the file lines and not the lines in a given file.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_identify_long_line_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" If neither the %[%q%s%] nor", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_identify_long_object_s, context.set.notable); - fl_print_format(" %[%q%s%] are specified, then the default behavior is to print both.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_identify_long_content_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" If neither the %[%r%s%] nor", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_identify_long_object_s, context.set.notable); + fl_print_format(" %[%r%s%] are specified, then the default behavior is to print both.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_identify_long_content_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" When specifying the %[%q%s%] parameter, neither the", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_identify_long_total_s, context.set.notable); - fl_print_format(" %[%q%s%] nor the", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_identify_long_object_s, context.set.notable); - fl_print_format(" %[%q%s%] parameter may be specified.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_identify_long_content_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When specifying the %[%r%s%] parameter, neither the", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_identify_long_total_s, context.set.notable); + fl_print_format(" %[%r%s%] nor the", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_identify_long_object_s, context.set.notable); + fl_print_format(" %[%r%s%] parameter may be specified.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_identify_long_content_s, context.set.notable, f_string_eol_s, f_string_eol_s); fl_print_format(" An FSS file is identified by the following format: '%[# Object-Content%]'", file.stream, context.set.notable, context.set.notable); - fl_print_format(" where the Object, is a machine-name representing the name and may only consist of \"word\" characters and the Content is a 4-digit hexidecimal number representing a particular variant of the Object.%q", file.stream, f_string_eol_s); - fl_print_format(" This identifier, if provided, must exist on the first line in a file and must begin with the pound character: '#'.%q", file.stream, f_string_eol_s); - fl_print_format(" Whitespace must follow this pound character.%q", file.stream, f_string_eol_s); - fl_print_format(" There may be multiple Object and Content pairs, separated by whitspace, such as: \"# fss-0002 fss-0000 iki-0002\".%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" where the Object, is a machine-name representing the name and may only consist of \"word\" characters and the Content is a 4-digit hexidecimal number representing a particular variant of the Object.%r", file.stream, f_string_eol_s); + fl_print_format(" This identifier, if provided, must exist on the first line in a file and must begin with the pound character: '#'.%r", file.stream, f_string_eol_s); + fl_print_format(" Whitespace must follow this pound character.%r", file.stream, f_string_eol_s); + fl_print_format(" There may be multiple Object and Content pairs, separated by whitspace, such as: \"# fss-0002 fss-0000 iki-0002\".%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -104,7 +104,7 @@ extern "C" { if (F_status_is_error(status)) { if (main->error.verbosity != f_console_verbosity_quiet_e) { fll_error_print(main->error, F_status_set_fine(status), "fll_program_parameter_process", F_true); - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } fss_identify_main_delete(main); @@ -175,9 +175,9 @@ extern "C" { if (main->parameters.array[fss_identify_parameter_line_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_line_s, main->error.notable); - fl_print_format("%[' requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_line_s, main->error.notable); + fl_print_format("%[' requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -199,11 +199,11 @@ extern "C" { if (main->parameters.array[fss_identify_parameter_object_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_object_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_object_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -212,11 +212,11 @@ extern "C" { else if (main->parameters.array[fss_identify_parameter_content_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_content_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_content_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -228,9 +228,9 @@ extern "C" { if (main->parameters.array[fss_identify_parameter_name_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_name_s, main->error.notable); - fl_print_format("%[' requires a string.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_name_s, main->error.notable); + fl_print_format("%[' requires a string.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -244,9 +244,9 @@ extern "C" { if (length == 0) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_name_s, main->error.notable); - fl_print_format("%[' does not allow zero length strings.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_name_s, main->error.notable); + fl_print_format("%[' does not allow zero length strings.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -274,11 +274,11 @@ extern "C" { else if (status == F_false) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%S%]", main->error.to.stream, main->error.notable, arguments->argv[index], main->error.notable); fl_print_format("%[' for the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_name_s, main->error.notable); - fl_print_format("%[' may only contain word characters.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_identify_long_name_s, main->error.notable); + fl_print_format("%[' may only contain word characters.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -354,7 +354,7 @@ extern "C" { if (F_status_is_error_not(status)) { if (main->parameters.array[fss_identify_parameter_total_e].result == f_console_result_found_e) { - fll_print_format("%ul%q", main->output.to.stream, data.total, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, data.total, f_string_eol_s); } } @@ -365,7 +365,7 @@ extern "C" { fflush(main->output.to.stream); } - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/fss_identify/c/private-common.c b/level_3/fss_identify/c/private-common.c index aae594d..c7ee2c3 100644 --- a/level_3/fss_identify/c/private-common.c +++ b/level_3/fss_identify/c/private-common.c @@ -24,9 +24,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_identify/c/private-print.c b/level_3/fss_identify/c/private-print.c index 321e11d..b8bc971 100644 --- a/level_3/fss_identify/c/private-print.c +++ b/level_3/fss_identify/c/private-print.c @@ -23,7 +23,7 @@ extern "C" { fl_print_format("%04_ui", main->output.to.stream, id.type); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); funlockfile(main->output.to.stream); } diff --git a/level_3/fss_payload_read/c/fss_payload_read.c b/level_3/fss_payload_read/c/fss_payload_read.c index 5f30e43..944786b 100644 --- a/level_3/fss_payload_read/c/fss_payload_read.c +++ b/level_3/fss_payload_read/c/fss_payload_read.c @@ -33,7 +33,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_payload_read_short_at_s, fss_payload_read_long_at_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Select Object at this numeric index."); fll_program_print_help_option(file, context, fss_payload_read_short_content_s, fss_payload_read_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print the Content (default)."); @@ -52,83 +52,83 @@ extern "C" { fll_program_print_help_usage(file, context, fss_payload_program_name_s, "filename(s)"); - fl_print_format(" %[Notes:%]%q", file.stream, context.set.important, context.set.important, f_string_eol_s); + fl_print_format(" %[Notes:%]%r", file.stream, context.set.important, context.set.important, f_string_eol_s); - fl_print_format(" This program will print the Content associated with the given Object and Content main based on the FSS-000E Payload standard.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program will print the Content associated with the given Object and Content main based on the FSS-000E Payload standard.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" All numeric positions (indexes) start at 0 instead of 1.%q", file.stream, f_string_eol_s); - fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" All numeric positions (indexes) start at 0 instead of 1.%r", file.stream, f_string_eol_s); + fl_print_format(" For example, a file of 17 lines would range from 0 to 16.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When using the %[%q%s%] option, an order of operations is enforced on the parameters.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" When using the %[%r%s%] option, an order of operations is enforced on the parameters.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%q", file.stream, f_string_eol_s); + fl_print_format(" When this order of operations is in effect, parameters to the right of a depth parameter are influenced by that depth parameter:%r", file.stream, f_string_eol_s); - fl_print_format(" %[%q%s%]: An Object index at the specified depth.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_at_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%q%s%]: A new depth within the specified depth, indexed from the root.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%q%s%]: An Object name at the specified depth.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" %[%r%s%]: An Object index at the specified depth.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_at_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%s%]: A new depth within the specified depth, indexed from the root.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%r%s%]: An Object name at the specified depth.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] must be in numeric order, but values in between may be skipped.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, context.set.notable, f_string_eol_s); - fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%q", file.stream, f_string_eol_s); - fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] must be in numeric order, but values in between may be skipped.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, context.set.notable, f_string_eol_s); + fl_print_format(" ('-d 0 -a 1 -d 2 -a 2' would specify index 1 at depth 0, any index at depth 1, and index 2 at depth 2.)%r", file.stream, f_string_eol_s); + fl_print_format(" ('-d 2 -a 1 -d 0 -a 2' would be invalid because depth 2 is before depth 1.)%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] selects a Content column.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_select_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] selects a Content column.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_select_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" Specify both %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_object_s, context.set.notable); - fl_print_format(" and the %[%q%s%] parameters to get the total objects.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_total_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" Specify both %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_object_s, context.set.notable); + fl_print_format(" and the %[%r%s%] parameters to get the total objects.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_total_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" When both %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_at_s, context.set.notable); - fl_print_format(" and %[%q%s%] parameters are specified (at the same depth),", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_name_s, context.set.notable); - fl_print_format(" the %[%q%s%] parameter value will be treated as a position relative to the specified", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_at_s, context.set.notable); - fl_print_format(" %[%q%s%] parameter value.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When both %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_at_s, context.set.notable); + fl_print_format(" and %[%r%s%] parameters are specified (at the same depth),", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_name_s, context.set.notable); + fl_print_format(" the %[%r%s%] parameter value will be treated as a position relative to the specified", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_at_s, context.set.notable); + fl_print_format(" %[%r%s%] parameter value.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_name_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" This program may support parameters, such as %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, context.set.notable); - fl_print_format(" or %[%q%s%], even if not supported by the standard.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_select_s, context.set.notable, f_string_eol_s); - fl_print_format(" This is done to help ensure consistency for scripting.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program may support parameters, such as %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, context.set.notable); + fl_print_format(" or %[%r%s%], even if not supported by the standard.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_select_s, context.set.notable, f_string_eol_s); + fl_print_format(" This is done to help ensure consistency for scripting.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" For parameters like %[%q%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, context.set.notable); - fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%q", file.stream, f_string_eol_s); + fl_print_format(" For parameters like %[%r%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, context.set.notable); + fl_print_format(" if the standard doesn't support nested Content, then only a depth of 0 would be valid.%r", file.stream, f_string_eol_s); - fl_print_format(" For parameters like %[%q%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_select_s, context.set.notable); - fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" For parameters like %[%r%s%],", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_select_s, context.set.notable); + fl_print_format(" if the standard doesn't support multiple Content groups, then only a select of 0 would be valid.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_trim_s, context.set.notable); - fl_print_format(" will remove leading and trailing whitespaces when selecting objects or when printing objects.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_trim_s, context.set.notable); + fl_print_format(" will remove leading and trailing whitespaces when selecting objects or when printing objects.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When specifying both the %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_object_s, context.set.notable); - fl_print_format(" parameter and the %[%q%s%] parameter, the entire Object and Content are printed, including the formatting.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_content_s, context.set.notable, f_string_eol_s); - fl_print_format(" Both the Object and Content printed are already escaped.%q", file.stream, f_string_eol_s); - fl_print_format(" Both the Object and Content are separated by an EOL.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" When specifying both the %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_object_s, context.set.notable); + fl_print_format(" parameter and the %[%r%s%] parameter, the entire Object and Content are printed, including the formatting.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_content_s, context.set.notable, f_string_eol_s); + fl_print_format(" Both the Object and Content printed are already escaped.%r", file.stream, f_string_eol_s); + fl_print_format(" Both the Object and Content are separated by an EOL.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameter %[%q%s%] accepts the following:%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_delimit_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: Do not apply delimits.%q", file.stream, context.set.notable, fss_payload_read_delimit_mode_name_none_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: (default) Apply all delimits.%q", file.stream, context.set.notable, fss_payload_read_delimit_mode_name_all_s, context.set.notable, f_string_eol_s); - fl_print_format(" - %[%s%]: Apply delimits for Objects.%q", file.stream, context.set.notable, fss_payload_read_delimit_mode_name_object_s, context.set.notable, f_string_eol_s); - fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%q", file.stream, f_string_eol_s); - fl_print_format(" - A number, 0 or greater, followed by a %[%s%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%q", file.stream, context.set.notable, fss_payload_read_delimit_mode_name_greater_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" - A number, 0 or lesser, followed by a %[%s%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%q%q", file.stream, context.set.notable, fss_payload_read_delimit_mode_name_lesser_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameter %[%r%s%] accepts the following:%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_delimit_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: Do not apply delimits.%r", file.stream, context.set.notable, fss_payload_read_delimit_mode_name_none_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: (default) Apply all delimits.%r", file.stream, context.set.notable, fss_payload_read_delimit_mode_name_all_s, context.set.notable, f_string_eol_s); + fl_print_format(" - %[%s%]: Apply delimits for Objects.%r", file.stream, context.set.notable, fss_payload_read_delimit_mode_name_object_s, context.set.notable, f_string_eol_s); + fl_print_format(" - A number, 0 or greater: apply delimits for Content at the specified depth.%r", file.stream, f_string_eol_s); + fl_print_format(" - A number, 0 or greater, followed by a %[%s%]: (such as '1+') apply delimits for Content at the specified depth and any greater depth (numerically).%r", file.stream, context.set.notable, fss_payload_read_delimit_mode_name_greater_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" - A number, 0 or lesser, followed by a %[%s%]: (such as '1-') apply delimits for Content at the specified depth and any lesser depth (numerically).%r%r", file.stream, context.set.notable, fss_payload_read_delimit_mode_name_lesser_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The %[%q%s%] parameter may be specified multiple times to customize the delimit behavior.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_delimit_s, context.set.notable, f_string_eol_s); + fl_print_format(" The %[%r%s%] parameter may be specified multiple times to customize the delimit behavior.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_delimit_s, context.set.notable, f_string_eol_s); - fl_print_format(" The %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_delimit_s, context.set.notable); + fl_print_format(" The %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_delimit_s, context.set.notable); fl_print_format(" values %[%s%]", file.stream, context.set.notable, fss_payload_read_delimit_mode_name_none_s, context.set.notable); fl_print_format(" and %[%s%],", file.stream, context.set.notable, fss_payload_read_delimit_mode_name_all_s, context.set.notable); - fl_print_format(" overrule all other delimit values.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" overrule all other delimit values.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The parameters %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_columns_s, context.set.notable); - fl_print_format(" and %[%q%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_select_s, context.set.notable); - fl_print_format(" refer to a Content column.%q", file.stream, f_string_eol_s); - fl_print_format(" The word \"column\" is being loosely defined to refer to a specific Content.%q", file.stream, f_string_eol_s); - fl_print_format(" This is not to be confused with a depth.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The parameters %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_columns_s, context.set.notable); + fl_print_format(" and %[%r%s%]", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_select_s, context.set.notable); + fl_print_format(" refer to a Content column.%r", file.stream, f_string_eol_s); + fl_print_format(" The word \"column\" is being loosely defined to refer to a specific Content.%r", file.stream, f_string_eol_s); + fl_print_format(" This is not to be confused with a depth.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" As an exceptional case, a %[%q%s%] of", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, context.set.notable); + fl_print_format(" As an exceptional case, a %[%r%s%] of", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, context.set.notable); fl_print_format(" %[1%] applies only to the explicit Object of", file.stream, context.set.notable, context.set.notable); - fl_print_format(" '%[%q%]'.%q", file.stream, context.set.notable, f_fss_string_header_s, context.set.notable, f_string_eol_s); - fl_print_format(" Content at this depth is processed as FSS-0001 Extended.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" '%[%r%]'.%r", file.stream, context.set.notable, f_fss_string_header_s, context.set.notable, f_string_eol_s); + fl_print_format(" Content at this depth is processed as FSS-0001 Extended.%r%r", file.stream, f_string_eol_s, f_string_eol_s); fl_print_format(" The Content of the explicit Object of", file.stream); - fl_print_format(" '%[%q%]'", file.stream, context.set.notable, f_fss_string_payload_s, context.set.notable, f_string_eol_s); + fl_print_format(" '%[%r%]'", file.stream, context.set.notable, f_fss_string_payload_s, context.set.notable, f_string_eol_s); fl_print_format(" will not contain any Content close pipe control codes when using", file.stream); - fl_print_format(" %[%q%s%].%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_pipe_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" %[%r%s%].%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_read_long_pipe_s, context.set.notable, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -281,9 +281,9 @@ extern "C" { if (main->parameters.array[parameter_code[i]].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); - fl_print_format("%[' requires a %s.%]%q", main->error.to.stream, main->error.context, parameter_message[i], main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); + fl_print_format("%[' requires a %s.%]%r", main->error.to.stream, main->error.context, parameter_message[i], main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -323,11 +323,11 @@ extern "C" { if (main->parameters.array[parameter_code[i]].result == parameter_match[i]) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_columns_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_columns_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, parameter_name[i], main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -341,11 +341,11 @@ extern "C" { if (main->parameters.array[fss_payload_read_parameter_total_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_pipe_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_pipe_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -354,11 +354,11 @@ extern "C" { else if (main->parameters.array[fss_payload_read_parameter_line_e].result == f_console_result_additional_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_pipe_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_pipe_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_line_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_line_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -391,9 +391,9 @@ extern "C" { if (!length) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_delimit_s, main->error.notable); - fl_print_format("%[' must not be empty.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_delimit_s, main->error.notable); + fl_print_format("%[' must not be empty.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -537,9 +537,9 @@ extern "C" { if (F_status_is_error_not(status) && main->parameters.array[fss_payload_read_parameter_select_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_select_s, main->error.notable); - fl_print_format("%[' parameter requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_select_s, main->error.notable); + fl_print_format("%[' parameter requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -672,7 +672,7 @@ extern "C" { fss_payload_read_data_delete_simple(&data); } else { - fll_print_format("%q%[%QYou failed to specify one or more files.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QYou failed to specify one or more files.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); status = F_status_set_error(F_parameter); } @@ -680,7 +680,7 @@ extern "C" { if (F_status_set_fine(status) == F_interrupt) { fflush(main->output.to.stream); - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/fss_payload_read/c/private-common.c b/level_3/fss_payload_read/c/private-common.c index fe0d085..75c7b77 100644 --- a/level_3/fss_payload_read/c/private-common.c +++ b/level_3/fss_payload_read/c/private-common.c @@ -73,9 +73,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_payload_read/c/private-print.c b/level_3/fss_payload_read/c/private-print.c index 00e9121..889c46e 100644 --- a/level_3/fss_payload_read/c/private-print.c +++ b/level_3/fss_payload_read/c/private-print.c @@ -226,7 +226,7 @@ extern "C" { f_print_character(fss_payload_read_pipe_content_start_s, main->output.to.stream); } else { - f_print_dynamic(f_fss_space_s, main->output.to.stream); + f_print_dynamic_raw(f_fss_space_s, main->output.to.stream); } } #endif // _di_fss_payload_read_print_content_end_extended_ @@ -248,11 +248,11 @@ extern "C" { } else { if (main->parameters.array[fss_payload_read_parameter_content_e].result == f_console_result_found_e) { - f_print_dynamic(f_fss_basic_list_open_s, main->output.to.stream); - f_print_dynamic(f_fss_basic_list_open_end_s, main->output.to.stream); + f_print_dynamic_raw(f_fss_basic_list_open_s, main->output.to.stream); + f_print_dynamic_raw(f_fss_basic_list_open_end_s, main->output.to.stream); } else { - f_print_dynamic(f_fss_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_fss_eol_s, main->output.to.stream); } } } @@ -265,7 +265,7 @@ extern "C" { f_print_character(fss_payload_read_pipe_content_end_s, main->output.to.stream); } else { - f_print_dynamic(f_fss_space_s, main->output.to.stream); + f_print_dynamic_raw(f_fss_space_s, main->output.to.stream); } } #endif // _di_fss_payload_read_print_object_end_extended_ @@ -286,7 +286,7 @@ extern "C" { f_print_character(fss_payload_read_pipe_content_end_s, main->output.to.stream); } else { - f_print_dynamic(f_fss_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_fss_eol_s, main->output.to.stream); } } #endif // _di_fss_payload_read_print_set_end_extended_ @@ -294,16 +294,16 @@ extern "C" { #ifndef _di_fss_payload_read_print_one_ void fss_payload_read_print_one(fss_payload_read_main_t * const main) { - f_print_dynamic(f_string_ascii_1_s, main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_1_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } #endif // _di_fss_payload_read_print_one_ #ifndef _di_fss_payload_read_print_zero_ void fss_payload_read_print_zero(fss_payload_read_main_t * const main) { - f_print_dynamic(f_string_ascii_0_s, main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_ascii_0_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } #endif // _di_fss_payload_read_print_zero_ diff --git a/level_3/fss_payload_read/c/private-read.c b/level_3/fss_payload_read/c/private-read.c index 6cc4ecd..c6ee4e8 100644 --- a/level_3/fss_payload_read/c/private-read.c +++ b/level_3/fss_payload_read/c/private-read.c @@ -189,11 +189,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe value '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[i].depth, main->error.notable); fl_print_format("%[' may only be specified once for the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -204,13 +204,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, main->error.notable); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_read_long_depth_s, main->error.notable); fl_print_format("%[' may not have the value '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[i].depth, main->error.notable); fl_print_format("%[' before the value '%]", main->error.to.stream, main->error.context, main->error.context); fl_print_format("%[%ul%]", main->error.to.stream, main->error.notable, data->depths.array[j].depth, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -261,11 +261,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe file '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%]", main->error.to.stream, main->error.notable, file_name, main->error.notable); + fl_print_format("%r%[%QThe file '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%]", main->error.to.stream, main->error.notable, file_name, main->error.notable); fl_print_format("%[' does not have the required Object '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%]", main->error.to.stream, main->error.notable, f_fss_string_payload_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%]", main->error.to.stream, main->error.notable, f_fss_string_payload_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -521,7 +521,7 @@ extern "C" { if (status == F_success) return F_none; } else if (data->option & fss_payload_read_data_option_columns_d) { - fll_print_format("%ul%q", main->output.to.stream, data->contents.array[i].used, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, data->contents.array[i].used, f_string_eol_s); } else if (data->option & fss_payload_read_data_option_total_d) { flockfile(main->output.to.stream); @@ -628,7 +628,7 @@ extern "C" { } } else if (data->option & fss_payload_read_data_option_columns_d) { - fll_print_format("%ul%q", main->output.to.stream, data->contents_header.array[i].used, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, data->contents_header.array[i].used, f_string_eol_s); } else if (data->option & fss_payload_read_data_option_total_d) { if (fss_payload_read_print_at_total_extended(main, i, data) == F_none) { @@ -755,7 +755,7 @@ extern "C" { range.stop = data->contents.array[at].array[0].stop; f_print_except_in_dynamic_partial(data->buffer, range, delimits_content, data->comments, main->output.to.stream); - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } funlockfile(main->output.to.stream); @@ -802,7 +802,7 @@ extern "C" { } } // for - fll_print_format("%ul%q", main->output.to.stream, max, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, max, f_string_eol_s); return F_none; } @@ -832,7 +832,7 @@ extern "C" { } } // for - fll_print_format("%ul%q", main->output.to.stream, max, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, max, f_string_eol_s); return F_none; } @@ -1116,7 +1116,7 @@ extern "C" { } } else { - fl_print_format("%ul%q", main->output.to.stream, total, f_string_eol_s); + fl_print_format("%ul%r", main->output.to.stream, total, f_string_eol_s); } funlockfile(main->output.to.stream); @@ -1183,7 +1183,7 @@ extern "C" { } } else { - fl_print_format("%ul%q", main->output.to.stream, total, f_string_eol_s); + fl_print_format("%ul%r", main->output.to.stream, total, f_string_eol_s); } funlockfile(main->output.to.stream); diff --git a/level_3/fss_payload_write/c/fss_payload_write.c b/level_3/fss_payload_write/c/fss_payload_write.c index 739952c..ce78e78 100644 --- a/level_3/fss_payload_write/c/fss_payload_write.c +++ b/level_3/fss_payload_write/c/fss_payload_write.c @@ -32,7 +32,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_payload_write_short_file_s, fss_payload_write_long_file_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Specify a file to send data to."); fll_program_print_help_option(file, context, fss_payload_write_short_content_s, fss_payload_write_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "The Content to file."); @@ -46,18 +46,18 @@ extern "C" { fll_program_print_help_usage(file, context, fss_payload_write_program_name_s, f_string_empty_s); - fl_print_format(" The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range, which does nothing in this program.%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Backspace character '%[\\b%]' (%[U+0008%]) to designate the start of a Content.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Form Feed character '%[\\f%]' (%[U+000C%]) to designate the end of the last Content.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The pipe uses the Vertical Line character '%[\\v%]' (%[U+000B%]) is used to ignore a Content range, which does nothing in this program.%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); fl_print_format(" For the pipe, an Object is terminated by either a Backspace character '%[\\b%]' (%[U+0008%])", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable); - fl_print_format(" or a Form Feed character '%[\\f%]' (%[U+000C%]).%q", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" The end of the pipe represents the end of any Object or Content.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" or a Form Feed character '%[\\f%]' (%[U+000C%]).%r", file.stream, context.set.notable, context.set.notable, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" The end of the pipe represents the end of any Object or Content.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The FSS-000E (Payload) specification does not support quoted names, therefore the parameters '%[%q%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_write_long_single_s, context.set.notable); - fl_print_format(" and '%[%q%s%]' do nothing.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_write_long_double_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" The FSS-000E (Payload) specification does not support quoted names, therefore the parameters '%[%r%s%]'", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_write_long_single_s, context.set.notable); + fl_print_format(" and '%[%r%s%]' do nothing.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_write_long_double_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" This program does not use the parameter '%[%q%s%]', which therefore does nothing.%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_write_long_ignore_s, context.set.notable, f_string_eol_s); - fl_print_format(" This parameter requires two values.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" This program does not use the parameter '%[%r%s%]', which therefore does nothing.%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, fss_payload_write_long_ignore_s, context.set.notable, f_string_eol_s); + fl_print_format(" This parameter requires two values.%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -173,9 +173,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_file_s, main->error.notable); - fl_print_format("%[' may only be specified once.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_file_s, main->error.notable); + fl_print_format("%[' may only be specified once.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -220,13 +220,13 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_partial_s, main->error.notable); + fl_print_format("%r%[%QThe '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_partial_s, main->error.notable); fl_print_format("%[' parameter only allows either the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_object_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_object_s, main->error.notable); fl_print_format("%[' parameter or the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter, but not both.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter, but not both.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -252,11 +252,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QEach '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_object_s, main->error.notable); fl_print_format("%[' parameter must be specified before a '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -283,11 +283,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis requires either piped data or the use of the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QThis requires either piped data or the use of the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_object_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -300,9 +300,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_partial_s, main->error.notable); - fl_print_format("%[' parameter cannot be used when processing a pipe.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThis '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_partial_s, main->error.notable); + fl_print_format("%[' parameter cannot be used when processing a pipe.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -317,9 +317,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_prepend_s, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_prepend_s, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -346,9 +346,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_prepend_s, main->error.notable); - fl_print_format("%[' must only contain whitespace.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_prepend_s, main->error.notable); + fl_print_format("%[' must only contain whitespace.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -362,9 +362,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_prepend_s, main->error.notable); - fl_print_format("%[' must not be an empty string.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe value for the parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_prepend_s, main->error.notable); + fl_print_format("%[' must not be an empty string.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -379,9 +379,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_ignore_s, main->error.notable); - fl_print_format("%[' was specified, but no values were given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_ignore_s, main->error.notable); + fl_print_format("%[' was specified, but no values were given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -395,9 +395,9 @@ extern "C" { if (total_locations * 2 > total_arguments) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_ignore_s, main->error.notable); - fl_print_format("%[' requires two values.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_ignore_s, main->error.notable); + fl_print_format("%[' requires two values.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -438,8 +438,8 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhile processing the '%]%[input pipe%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QWhile processing the '%]%[input pipe%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -507,8 +507,8 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QWhile processing the '%]%[input arguments%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QWhile processing the '%]%[input arguments%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, main->error.notable, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -516,7 +516,7 @@ extern "C" { else if (main->error.verbosity != f_console_verbosity_quiet_e && main->parameters.array[fss_payload_write_parameter_file_e].result == f_console_result_none_e) { // Ensure there is always a newline at the end, unless in quiet mode. - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } @@ -541,7 +541,7 @@ extern "C" { // Ensure a newline is always put at the end of the program execution, unless in quiet mode. if (main->error.verbosity != f_console_verbosity_quiet_e) { if (F_status_is_error(status)) { - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } } diff --git a/level_3/fss_payload_write/c/private-common.c b/level_3/fss_payload_write/c/private-common.c index 1e40ae7..e331b5f 100644 --- a/level_3/fss_payload_write/c/private-common.c +++ b/level_3/fss_payload_write/c/private-common.c @@ -15,9 +15,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_payload_write/c/private-write.c b/level_3/fss_payload_write/c/private-write.c index fb1f07b..166b7d1 100644 --- a/level_3/fss_payload_write/c/private-write.c +++ b/level_3/fss_payload_write/c/private-write.c @@ -15,13 +15,13 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QMust specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QMust specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_object_s, main->error.notable); fl_print_format("%[' parameter and the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_content_s, main->error.notable); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_content_s, main->error.notable); fl_print_format("%[' parameter the same number of times when not specifying the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_partial_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_payload_write_long_partial_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -36,9 +36,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThis standard does not support end of line character '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThis standard does not support end of line character '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[\\n%]", main->error.to.stream, main->error.notable, main->error.notable); - fl_print_format("%[' in objects.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' in objects.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -53,9 +53,9 @@ extern "C" { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, symbol, parameter, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, symbol, parameter, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -322,7 +322,7 @@ extern "C" { if (block.string[range.start] == fss_payload_write_pipe_content_start_s) { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QThis standard only supports one content per object.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QThis standard only supports one content per object.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); } status = F_status_set_error(F_supported_not); diff --git a/level_3/fss_status_code/c/fss_status_code.c b/level_3/fss_status_code/c/fss_status_code.c index db5a848..e1384f4 100644 --- a/level_3/fss_status_code/c/fss_status_code.c +++ b/level_3/fss_status_code/c/fss_status_code.c @@ -32,7 +32,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, fss_status_code_short_is_fine_s, fss_status_code_long_is_fine_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print F_true if the error code is not an error, F_false otherwise."); fll_program_print_help_option(file, context, fss_status_code_short_is_warning_s, fss_status_code_long_is_warning_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Print F_true if the error code is a warning, F_false otherwise."); @@ -145,11 +145,11 @@ extern "C" { if (main->parameters.array[fss_status_code_parameter_is_warning_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_status_code_long_is_error_s, main->error.notable); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_status_code_long_is_error_s, main->error.notable); fl_print_format("%[' cannot be used with the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_status_code_long_is_warning_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_status_code_long_is_warning_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -159,11 +159,11 @@ extern "C" { else if (main->parameters.array[fss_status_code_parameter_is_fine_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_status_code_long_is_error_s, main->error.notable); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_status_code_long_is_error_s, main->error.notable); fl_print_format("%[' cannot be used with the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_status_code_long_is_fine_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_status_code_long_is_fine_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -174,11 +174,11 @@ extern "C" { else if (main->parameters.array[fss_status_code_parameter_is_warning_e].result == f_console_result_found_e && main->parameters.array[fss_status_code_parameter_is_fine_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_status_code_long_is_warning_s, main->error.notable); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_status_code_long_is_warning_s, main->error.notable); fl_print_format("%[' cannot be used with the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_status_code_long_is_fine_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, fss_status_code_long_is_fine_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -187,7 +187,7 @@ extern "C" { } if (main->remaining.used == 0 && !main->process_pipe) { - fll_print_format("%[You failed to specify an error code.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fll_print_format("%[You failed to specify an error code.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); fss_status_code_main_delete(main); return F_status_set_error(F_parameter); @@ -293,7 +293,7 @@ extern "C" { if (F_status_set_fine(status) == F_interrupt) { fflush(main->output.to.stream); - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/fss_status_code/c/private-common.c b/level_3/fss_status_code/c/private-common.c index 3553be8..1e848a2 100644 --- a/level_3/fss_status_code/c/private-common.c +++ b/level_3/fss_status_code/c/private-common.c @@ -15,9 +15,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/fss_status_code/c/private-fss_status_code.c b/level_3/fss_status_code/c/private-fss_status_code.c index 0583039..30bec61 100644 --- a/level_3/fss_status_code/c/private-fss_status_code.c +++ b/level_3/fss_status_code/c/private-fss_status_code.c @@ -24,7 +24,7 @@ extern "C" { f_print_terminated(f_status_false_s, main->output.to.stream); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } else if (main->parameters.array[fss_status_code_parameter_is_warning_e].result == f_console_result_found_e) { if (F_status_is_warning(number)) { @@ -34,7 +34,7 @@ extern "C" { f_print_terminated(f_status_false_s, main->output.to.stream); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } else if (main->parameters.array[fss_status_code_parameter_is_fine_e].result == f_console_result_found_e) { if (F_status_is_fine(number)) { @@ -44,7 +44,7 @@ extern "C" { f_print_terminated(f_status_false_s, main->output.to.stream); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } return F_none; @@ -64,13 +64,13 @@ extern "C" { status = fl_conversion_string_to_number_unsigned(value, range, &number); if (status == F_none) { - fl_print_format("%[invalid name%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[invalid name%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); return F_status_set_error(F_parameter); } if (status == F_data_not || F_status_set_fine(status) == F_parameter) { - fl_print_format("%[invalid main%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[invalid main%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); return status; } @@ -87,10 +87,10 @@ extern "C" { if (F_status_is_error(status)) { if (F_status_set_fine(status) == F_data) { - fl_print_format("%[unknown name%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[unknown name%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); } else { - fl_print_format("%[failed to convert%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[failed to convert%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); } return status; @@ -98,12 +98,12 @@ extern "C" { } if (status == F_data) { - fl_print_format("%[unknown code%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[unknown code%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); return F_none; } - fl_print_format("%ui%q", main->output.to.stream, code, f_string_eol_s); + fl_print_format("%ui%r", main->output.to.stream, code, f_string_eol_s); return F_none; } @@ -124,16 +124,16 @@ extern "C" { if (F_status_is_error(status)) { if (F_status_set_fine(status) == F_data) { - fl_print_format("%[unknown code%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[unknown code%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); } else { - fl_print_format("%[failed to convert%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[failed to convert%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); } return status; } - fl_print_format("%S%q", main->output.to.stream, string, f_string_eol_s); + fl_print_format("%S%r", main->output.to.stream, string, f_string_eol_s); return F_none; } @@ -147,17 +147,17 @@ extern "C" { f_status_t status = fl_conversion_string_to_number_unsigned(value, range, number); if (*number > F_status_size_max_with_signal) { - fl_print_format("%[out of range%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[out of range%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); return status; } if (F_status_is_error(status)) { if (F_status_set_fine(status) == F_number_negative) { - fl_print_format("%[out of range%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[out of range%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); } else { - fl_print_format("%[invalid number%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[invalid number%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); } return status; diff --git a/level_3/iki_read/c/iki_read.c b/level_3/iki_read/c/iki_read.c index e34682d..a3e8c77 100644 --- a/level_3/iki_read/c/iki_read.c +++ b/level_3/iki_read/c/iki_read.c @@ -32,41 +32,41 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, iki_read_short_at_s, iki_read_long_at_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Select variable at this numeric index."); fll_program_print_help_option(file, context, iki_read_short_line_s, iki_read_long_line_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print only the variables at the given line within the file."); fll_program_print_help_option(file, context, iki_read_short_name_s, iki_read_long_name_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Select variables with this name."); fll_program_print_help_option(file, context, iki_read_short_whole_s, iki_read_long_whole_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Print all of the data instead of just the IKI variable data."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, iki_read_short_content_s, iki_read_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Print the variable content (default)."); fll_program_print_help_option(file, context, iki_read_short_literal_s, iki_read_long_literal_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Print the entire variable (aka: object, content, and syntax)."); fll_program_print_help_option(file, context, iki_read_short_object_s, iki_read_long_object_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print the variable name (aka: object)."); fll_program_print_help_option(file, context, iki_read_short_total_s, iki_read_long_total_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print the total number of variables."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, iki_read_short_substitute_s, iki_read_long_substitute_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Substitute the entire variable for the given name and content value with the given string."); fll_program_print_help_usage(file, context, iki_read_program_name_s, "filename(s)"); - fl_print_format(" %[Notes:%]%q", file.stream, context.set.important, context.set.important, f_string_eol_s); - fl_print_format(" This program will find and print variables, vocabularies, or content following the IKI standard, without focusing on any particular vocabulary specification.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" %[Notes:%]%r", file.stream, context.set.important, context.set.important, f_string_eol_s); + fl_print_format(" This program will find and print variables, vocabularies, or content following the IKI standard, without focusing on any particular vocabulary specification.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" This %[%q%s%] option, requires 3 additional parameters:", file.stream, context.set.notable, f_console_symbol_long_enable_s, iki_read_long_substitute_s, context.set.notable); + fl_print_format(" This %[%r%s%] option, requires 3 additional parameters:", file.stream, context.set.notable, f_console_symbol_long_enable_s, iki_read_long_substitute_s, context.set.notable); fl_print_format(" %[<%]%s%[>%]", file.stream, context.set.notable, context.set.notable, iki_read_substitution_vocabulary_s, context.set.notable, context.set.notable); fl_print_format(" %[<%]%s%[>%]", file.stream, context.set.notable, context.set.notable, iki_read_substitution_replace_s, context.set.notable, context.set.notable); - fl_print_format(" %[<%]%s%[>%].%q", file.stream, context.set.notable, context.set.notable, iki_read_substitution_with_s, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" %[<%]%s%[>%].%r", file.stream, context.set.notable, context.set.notable, iki_read_substitution_with_s, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" %[%s%]: The name of the vocabulary whose content is to be substituted.%q", file.stream, context.set.notable, iki_read_substitution_vocabulary_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%s%]: The content matching this exact string will be substituted.%q", file.stream, context.set.notable, iki_read_substitution_replace_s, context.set.notable, f_string_eol_s); - fl_print_format(" %[%s%]: The new string to use as the substitute.%q%q", file.stream, context.set.notable, iki_read_substitution_with_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" %[%s%]: The name of the vocabulary whose content is to be substituted.%r", file.stream, context.set.notable, iki_read_substitution_vocabulary_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%s%]: The content matching this exact string will be substituted.%r", file.stream, context.set.notable, iki_read_substitution_replace_s, context.set.notable, f_string_eol_s); + fl_print_format(" %[%s%]: The new string to use as the substitute.%r%r", file.stream, context.set.notable, iki_read_substitution_with_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" The vocabulary and replacement are case-sensitive and must exactly match.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The vocabulary and replacement are case-sensitive and must exactly match.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" The default behavior is to only display content portion of the IKI variable.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The default behavior is to only display content portion of the IKI variable.%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -113,7 +113,7 @@ extern "C" { fll_error_print(main->error, F_status_set_fine(status), "fll_program_parameter_process", F_true); if (main->error.verbosity == f_console_verbosity_verbose_e) { - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } iki_read_main_delete(main); @@ -185,9 +185,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_at_s, main->error.notable); - fl_print_format("%[' requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_at_s, main->error.notable); + fl_print_format("%[' requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -214,11 +214,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_at_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_at_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_whole_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_whole_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -231,9 +231,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_line_s, main->error.notable); - fl_print_format("%[' requires a positive number.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_line_s, main->error.notable); + fl_print_format("%[' requires a positive number.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -261,9 +261,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_name_s, main->error.notable); - fl_print_format("%[' requires a string.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_name_s, main->error.notable); + fl_print_format("%[' requires a string.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -276,9 +276,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_substitute_s, main->error.notable); - fl_print_format("%[' requires 3 strings.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_substitute_s, main->error.notable); + fl_print_format("%[' requires 3 strings.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -290,11 +290,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_substitute_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_substitute_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -308,11 +308,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_literal_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_literal_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_object_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_object_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -324,11 +324,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_literal_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_literal_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -340,11 +340,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_literal_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_literal_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -359,11 +359,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_object_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_object_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_content_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_content_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -375,11 +375,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_object_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_object_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -402,11 +402,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_whole_s, main->error.notable); + fl_print_format("%r%[%QCannot specify the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_whole_s, main->error.notable); fl_print_format("%[' parameter with the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_total_s, main->error.notable); - fl_print_format("%[' parameter.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_read_long_total_s, main->error.notable); + fl_print_format("%[' parameter.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -417,7 +417,7 @@ extern "C" { if (F_status_is_error(status)) { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_dynamic(f_string_eol_s, main->error.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } iki_read_main_delete(main); @@ -503,7 +503,7 @@ extern "C" { } else { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QYou failed to specify one or more files.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QYou failed to specify one or more files.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); } status = F_status_set_error(F_parameter); @@ -516,7 +516,7 @@ extern "C" { fflush(main->output.to.stream); } - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/iki_read/c/private-common.c b/level_3/iki_read/c/private-common.c index b2b3583..efc1243 100644 --- a/level_3/iki_read/c/private-common.c +++ b/level_3/iki_read/c/private-common.c @@ -15,9 +15,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/iki_read/c/private-read.c b/level_3/iki_read/c/private-read.c index 1cf0279..e9416ee 100644 --- a/level_3/iki_read/c/private-read.c +++ b/level_3/iki_read/c/private-read.c @@ -188,7 +188,7 @@ extern "C" { f_print_dynamic_partial(main->buffer, ranges->array[j], main->output.to.stream); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } // for @@ -212,7 +212,7 @@ extern "C" { f_print_dynamic_partial(main->buffer, ranges->array[main->at], main->output.to.stream); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); funlockfile(main->output.to.stream); @@ -234,7 +234,7 @@ extern "C" { f_print_dynamic_partial(main->buffer, ranges->array[i], main->output.to.stream); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } // for funlockfile(main->output.to.stream); @@ -460,13 +460,13 @@ extern "C" { if (status == F_true) { if (range.start > main->buffer.used) { - fll_print_format("0%q", main->output.to.stream, f_string_eol_s); + fll_print_format("0%r", main->output.to.stream, f_string_eol_s); return F_none; } } else if (status == F_data_not) { - fll_print_format("0%q", main->output.to.stream, f_string_eol_s); + fll_print_format("0%r", main->output.to.stream, f_string_eol_s); return F_none; } @@ -548,7 +548,7 @@ extern "C" { } } - fll_print_format("%ul%q", main->output.to.stream, total, f_string_eol_s); + fll_print_format("%ul%r", main->output.to.stream, total, f_string_eol_s); return F_none; } diff --git a/level_3/iki_write/c/iki_write.c b/level_3/iki_write/c/iki_write.c index 14153bd..433452f 100644 --- a/level_3/iki_write/c/iki_write.c +++ b/level_3/iki_write/c/iki_write.c @@ -32,7 +32,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, iki_write_short_file_s, iki_write_long_file_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Specify a file to send data to."); fll_program_print_help_option(file, context, iki_write_short_content_s, iki_write_long_content_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "The content to file."); @@ -42,13 +42,13 @@ extern "C" { fll_program_print_help_usage(file, context, iki_write_program_name_s, f_string_empty_s); - fl_print_format(" %[Notes:%]%q", file.stream, context.set.important, context.set.important, f_string_eol_s); - fl_print_format(" This program will accept object and content strings to generate an IKI string, such as %[object:\"content\"%].%q", file.stream, context.set.notable, context.set.notable, f_string_eol_s); + fl_print_format(" %[Notes:%]%r", file.stream, context.set.important, context.set.important, f_string_eol_s); + fl_print_format(" This program will accept object and content strings to generate an IKI string, such as %[object:\"content\"%].%r", file.stream, context.set.notable, context.set.notable, f_string_eol_s); - fl_print_format(" Each object must have a content (and each content must have an object).%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" Each object must have a content (and each content must have an object).%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When piping main to this program, a single end of line (\\n) must be used to separate each object from each content.%q", file.stream, f_string_eol_s); - fl_print_format(" Furthermore, each object must be followed by a content.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" When piping main to this program, a single end of line (\\n) must be used to separate each object from each content.%r", file.stream, f_string_eol_s); + fl_print_format(" Furthermore, each object must be followed by a content.%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -94,7 +94,7 @@ extern "C" { if (F_status_is_error(status)) { if (main->error.verbosity != f_console_verbosity_quiet_e) { fll_error_print(main->error, F_status_set_fine(status), "fll_program_parameter_process", F_true); - f_print_dynamic(f_string_eol_s, main->error.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->error.to.stream); } iki_write_main_delete(main); @@ -171,9 +171,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_file_s, main->error.notable); - fl_print_format("%[' may only be specified once.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_file_s, main->error.notable); + fl_print_format("%[' may only be specified once.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -197,9 +197,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_file_s, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_file_s, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -212,9 +212,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_object_s, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_object_s, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -226,9 +226,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_content_s, main->error.notable); - fl_print_format("%[' is specified, but no value is given.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_content_s, main->error.notable); + fl_print_format("%[' is specified, but no value is given.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -241,11 +241,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QNo main provided, either pipe the main or use the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_object_s, main->error.notable); + fl_print_format("%r%[%QNo main provided, either pipe the main or use the '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_object_s, main->error.notable); fl_print_format("%[' and the '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_content_s, main->error.notable); - fl_print_format("%[' parameters.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_content_s, main->error.notable); + fl_print_format("%[' parameters.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -259,11 +259,11 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameters '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_content_s, main->error.notable); + fl_print_format("%r%[%QThe parameters '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_content_s, main->error.notable); fl_print_format("%[' and '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_object_s, main->error.notable); - fl_print_format("%[' must be specified the same number of times.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, iki_write_long_object_s, main->error.notable); + fl_print_format("%[' must be specified the same number of times.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -333,7 +333,7 @@ extern "C" { if (!buffer.used) { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QThe pipe has no main.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QThe pipe has no main.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); } status = F_status_set_error(F_parameter); @@ -363,7 +363,7 @@ extern "C" { if (object_ended && previous == range.start) { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QThe pipe has incorrectly placed newlines.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QThe pipe has incorrectly placed newlines.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); } status = F_status_set_error(F_parameter); @@ -390,7 +390,7 @@ extern "C" { status = iki_write_process(main, file, object, content, &escaped); if (F_status_is_error(status)) break; - fll_print_dynamic(f_string_eol_s, file.stream); + fll_print_dynamic_raw(f_string_eol_s, file.stream); object_ended = F_false; } @@ -423,7 +423,7 @@ extern "C" { if (F_status_is_error_not(status) && object_ended) { if (main->error.verbosity != f_console_verbosity_quiet_e) { - fll_print_format("%q%[%QThe pipe has an object without content.%]%q", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); + fll_print_format("%r%[%QThe pipe has an object without content.%]%r", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context, f_string_eol_s); } status = F_status_set_error(F_parameter); @@ -461,12 +461,12 @@ extern "C" { status = iki_write_process(main, file, object, content, &escaped); if (F_status_is_error(status)) break; - fll_print_dynamic(f_string_eol_s, file.stream); + fll_print_dynamic_raw(f_string_eol_s, file.stream); } // for // Ensure there is always a newline at the end, unless in quiet mode. if (F_status_is_error_not(status) && main->error.verbosity != f_console_verbosity_quiet_e && main->parameters.array[iki_write_parameter_file_e].result == f_console_result_none_e) { - fll_print_dynamic(f_string_eol_s, file.stream); + fll_print_dynamic_raw(f_string_eol_s, file.stream); } } @@ -486,7 +486,7 @@ extern "C" { fflush(main->output.to.stream); } - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/iki_write/c/private-common.c b/level_3/iki_write/c/private-common.c index 9092618..21f91d3 100644 --- a/level_3/iki_write/c/private-common.c +++ b/level_3/iki_write/c/private-common.c @@ -15,9 +15,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/iki_write/c/private-write.c b/level_3/iki_write/c/private-write.c index 2150c93..300ea41 100644 --- a/level_3/iki_write/c/private-write.c +++ b/level_3/iki_write/c/private-write.c @@ -13,9 +13,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe object is missing, it must not have a length of %]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe object is missing, it must not have a length of %]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[0%]", main->error.to.stream, main->error.notable, main->error.notable); - fl_print_format("%[.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -29,9 +29,9 @@ extern "C" { if (main->error.verbosity != f_console_verbosity_quiet_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe object '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%r%[%QThe object '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); fl_print_format("%[%Q%]", main->error.to.stream, main->error.notable, object, main->error.notable); - fl_print_format("%[' is not a valid IKI object.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[' is not a valid IKI object.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); } @@ -56,7 +56,7 @@ extern "C" { return F_status_set_error(F_failure); } - fl_print_format("%Q%q%q%Q%q", output.stream, object, f_iki_syntax_separator_s, main->quote, *escaped, main->quote); + fl_print_format("%Q%r%r%Q%r", output.stream, object, f_iki_syntax_separator_s, main->quote, *escaped, main->quote); return F_none; } diff --git a/level_3/status_code/c/private-common.c b/level_3/status_code/c/private-common.c index 7e775c0..b1cd010 100644 --- a/level_3/status_code/c/private-common.c +++ b/level_3/status_code/c/private-common.c @@ -15,9 +15,9 @@ extern "C" { flockfile(main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", main->warning.to.stream, main->context.set.reset, f_string_eol_s, f_string_eol_s, main->context.set.warning, main->context.set.warning); fl_print_format("%[%i%]", main->warning.to.stream, main->context.set.notable, signal, main->context.set.notable); - fl_print_format("%[.%]%q", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", main->warning.to.stream, main->context.set.warning, main->context.set.warning, f_string_eol_s); funlockfile(main->warning.to.stream); } diff --git a/level_3/status_code/c/private-status_code.c b/level_3/status_code/c/private-status_code.c index b9880f0..95dca9d 100644 --- a/level_3/status_code/c/private-status_code.c +++ b/level_3/status_code/c/private-status_code.c @@ -24,7 +24,7 @@ extern "C" { f_print_terminated(f_status_false_s, main->output.to.stream); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } else if (main->parameters.array[status_code_parameter_is_warning_e].result == f_console_result_found_e) { if (F_status_is_warning(number)) { @@ -34,7 +34,7 @@ extern "C" { f_print_terminated(f_status_false_s, main->output.to.stream); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } else if (main->parameters.array[status_code_parameter_is_fine_e].result == f_console_result_found_e) { if (F_status_is_fine(number)) { @@ -44,7 +44,7 @@ extern "C" { f_print_terminated(f_status_false_s, main->output.to.stream); } - f_print_dynamic(f_string_eol_s, main->output.to.stream); + f_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } return F_none; @@ -64,13 +64,13 @@ extern "C" { status = fl_conversion_string_to_number_unsigned(value, range, &number); if (status == F_none) { - fl_print_format("%[invalid name%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[invalid name%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); return F_status_set_error(F_parameter); } if (status == F_data_not || F_status_set_fine(status) == F_parameter) { - fl_print_format("%[invalid main%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[invalid main%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); return status; } @@ -82,22 +82,22 @@ extern "C" { if (F_status_is_error(status)) { if (F_status_set_fine(status) == F_data) { - fl_print_format("%[unknown name%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[unknown name%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); } else { - fl_print_format("%[failed to convert%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[failed to convert%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); } return status; } if (status == F_data) { - fl_print_format("%[unknown code%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[unknown code%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); return F_none; } - fl_print_format("%ui%q", main->output.to.stream, code, f_string_eol_s); + fl_print_format("%ui%r", main->output.to.stream, code, f_string_eol_s); return F_none; } @@ -120,16 +120,16 @@ extern "C" { if (F_status_is_error(status)) { if (F_status_set_fine(status) == F_data) { - fl_print_format("%[unknown code%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[unknown code%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); } else { - fl_print_format("%[failed to convert%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[failed to convert%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); } return status; } - fl_print_format("%S%q", main->output.to.stream, name, f_string_eol_s); + fl_print_format("%S%r", main->output.to.stream, name, f_string_eol_s); return F_none; } @@ -143,17 +143,17 @@ extern "C" { f_status_t status = fl_conversion_string_to_number_unsigned(value, range, number); if (*number > F_status_size_max_with_signal) { - fl_print_format("%[out of range%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[out of range%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); return status; } if (F_status_is_error(status)) { if (F_status_set_fine(status) == F_number_negative) { - fl_print_format("%[out of range%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[out of range%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); } else { - fl_print_format("%[invalid number%]%q", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); + fl_print_format("%[invalid number%]%r", main->output.to.stream, main->context.set.error, main->context.set.error, f_string_eol_s); } return status; diff --git a/level_3/status_code/c/status_code.c b/level_3/status_code/c/status_code.c index 32d532d..f64092c 100644 --- a/level_3/status_code/c/status_code.c +++ b/level_3/status_code/c/status_code.c @@ -32,7 +32,7 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, status_code_short_is_fine_s, status_code_long_is_fine_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print F_true if the error code is not an error, F_false otherwise."); fll_program_print_help_option(file, context, status_code_short_is_warning_s, status_code_long_is_warning_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "Print F_true if the error code is a warning, F_false otherwise."); @@ -148,11 +148,11 @@ extern "C" { if (main->parameters.array[status_code_parameter_is_warning_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, status_code_long_is_error_s, main->error.notable); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, status_code_long_is_error_s, main->error.notable); fl_print_format("%[' cannot be used with the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, status_code_long_is_warning_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, status_code_long_is_warning_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -163,11 +163,11 @@ extern "C" { else if (main->parameters.array[status_code_parameter_is_fine_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, status_code_long_is_error_s, main->error.notable); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, status_code_long_is_error_s, main->error.notable); fl_print_format("%[' cannot be used with the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, status_code_long_is_fine_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, status_code_long_is_fine_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -179,11 +179,11 @@ extern "C" { else if (main->parameters.array[status_code_parameter_is_warning_e].result == f_console_result_found_e && main->parameters.array[status_code_parameter_is_fine_e].result == f_console_result_found_e) { flockfile(main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, status_code_long_is_warning_s, main->error.notable); + fl_print_format("%r%[%QThe parameter '%]", main->error.to.stream, f_string_eol_s, main->error.context, main->error.prefix, main->error.context); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, status_code_long_is_warning_s, main->error.notable); fl_print_format("%[' cannot be used with the parameter '%]", main->error.to.stream, main->error.context, main->error.context); - fl_print_format("%[%q%q%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, status_code_long_is_fine_s, main->error.notable); - fl_print_format("%['.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fl_print_format("%[%r%r%]", main->error.to.stream, main->error.notable, f_console_symbol_long_enable_s, status_code_long_is_fine_s, main->error.notable); + fl_print_format("%['.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); funlockfile(main->error.to.stream); @@ -193,7 +193,7 @@ extern "C" { } if (main->remaining.used == 0 && !main->process_pipe) { - fll_print_format("%[You failed to specify a status code.%]%q", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); + fll_print_format("%[You failed to specify a status code.%]%r", main->error.to.stream, main->error.context, main->error.context, f_string_eol_s); status_code_main_delete(main); @@ -300,7 +300,7 @@ extern "C" { if (F_status_set_fine(status) == F_interrupt) { fflush(main->output.to.stream); - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } } diff --git a/level_3/utf8/c/private-print.c b/level_3/utf8/c/private-print.c index 7631246..01cae10 100644 --- a/level_3/utf8/c/private-print.c +++ b/level_3/utf8/c/private-print.c @@ -98,7 +98,7 @@ extern "C" { if (data->main->parameters.array[utf8_parameter_strip_invalid_e].result == f_console_result_found_e) return; if (data->main->parameters.array[utf8_parameter_verify_e].result == f_console_result_found_e) return; - fl_print_format("%q%[%QFailed to decode character code '%]", data->main->error.to.stream, f_string_eol_s, data->main->context.set.error, data->main->error.prefix, data->main->context.set.error); + fl_print_format("%r%[%QFailed to decode character code '%]", data->main->error.to.stream, f_string_eol_s, data->main->context.set.error, data->main->error.prefix, data->main->context.set.error); if (character.used) { fl_print_format("%[0x", data->main->error.to.stream, data->main->context.set.notable); @@ -111,15 +111,15 @@ extern "C" { } if (F_status_set_fine(status) == F_utf) { - fl_print_format("%[', not a valid UTF-8 character sequence.%]%q", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); + fl_print_format("%[', not a valid UTF-8 character sequence.%]%r", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); } else if (F_status_set_fine(status) == F_utf_fragment) { - fl_print_format("%[', invalid UTF-8 fragment.%]%q", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); + fl_print_format("%[', invalid UTF-8 fragment.%]%r", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); } else { fl_print_format("%[', error status code%] ", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); fl_print_format("%[%ui%]", data->main->error.to.stream, data->main->context.set.notable, F_status_set_fine(status), data->main->context.set.notable); - fl_print_format("%[.%]%q", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); + fl_print_format("%[.%]%r", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); } } #endif // _di_utf8_print_error_decode_ @@ -129,16 +129,16 @@ extern "C" { if (data->main->error.verbosity == f_console_verbosity_quiet_e) return; - fl_print_format("%q%[%QFailed to encode Unicode codepoint '%]", data->main->error.to.stream, f_string_eol_s, data->main->context.set.error, data->main->error.prefix, data->main->context.set.error); + fl_print_format("%r%[%QFailed to encode Unicode codepoint '%]", data->main->error.to.stream, f_string_eol_s, data->main->context.set.error, data->main->error.prefix, data->main->context.set.error); fl_print_format("%[U+%_U%]", data->main->error.to.stream, data->main->context.set.notable, codepoint, data->main->context.set.notable); if (F_status_set_fine(status) == F_utf) { - fl_print_format("%[', not a valid Unicode codepoint.%]%q", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); + fl_print_format("%[', not a valid Unicode codepoint.%]%r", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); } else { fl_print_format("%[', error status code%] ", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); fl_print_format("%[%ui%]", data->main->error.to.stream, data->main->context.set.notable, F_status_set_fine(status), data->main->context.set.notable); - fl_print_format("%[.%]%q", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); + fl_print_format("%[.%]%r", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); } } #endif // _di_utf8_print_error_encode_ @@ -148,7 +148,7 @@ extern "C" { if (data->main->error.verbosity == f_console_verbosity_quiet_e) return; - fll_print_format("%q%[%QNo from sources are specified, please pipe data, designate a file, or add parameters.%]%q", data->main->error.to.stream, f_string_eol_s, data->main->error.context, data->main->error.prefix, data->main->error.context, f_string_eol_s); + fll_print_format("%r%[%QNo from sources are specified, please pipe data, designate a file, or add parameters.%]%r", data->main->error.to.stream, f_string_eol_s, data->main->error.context, data->main->error.prefix, data->main->error.context, f_string_eol_s); } #endif // _di_utf8_print_error_no_from_ @@ -159,9 +159,9 @@ extern "C" { flockfile(data->main->error.to.stream); - fl_print_format("%q%[%QThe parameter '%]", data->main->error.to.stream, f_string_eol_s, data->main->context.set.error, data->main->error.prefix, data->main->context.set.error); - fl_print_format("%[%q%q%]", data->main->error.to.stream, data->main->context.set.notable, f_console_symbol_long_enable_s, parameter, data->main->context.set.notable); - fl_print_format("%[' is specified, but no value was given.%]%q", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); + fl_print_format("%r%[%QThe parameter '%]", data->main->error.to.stream, f_string_eol_s, data->main->context.set.error, data->main->error.prefix, data->main->context.set.error); + fl_print_format("%[%r%r%]", data->main->error.to.stream, data->main->context.set.notable, f_console_symbol_long_enable_s, parameter, data->main->context.set.notable); + fl_print_format("%[' is specified, but no value was given.%]%r", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); funlockfile(data->main->error.to.stream); } @@ -174,9 +174,9 @@ extern "C" { flockfile(data->main->error.to.stream); - fl_print_format("%q%[%QNo file specified at parameter index %]", data->main->error.to.stream, f_string_eol_s, data->main->context.set.error, data->main->error.prefix, data->main->context.set.error); + fl_print_format("%r%[%QNo file specified at parameter index %]", data->main->error.to.stream, f_string_eol_s, data->main->context.set.error, data->main->error.prefix, data->main->context.set.error); fl_print_format("%[%ul%]", data->main->error.to.stream, data->main->context.set.notable, index, data->main->context.set.notable); - fl_print_format("%[.%]%q", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); + fl_print_format("%[.%]%r", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); funlockfile(data->main->error.to.stream); } @@ -189,9 +189,9 @@ extern "C" { flockfile(data->main->error.to.stream); - fl_print_format("%q%[%QFailed to find the %s file '%]", data->main->error.to.stream, f_string_eol_s, data->main->context.set.error, data->main->error.prefix, from ? utf8_string_from_s : utf8_string_to_s, data->main->context.set.error); + fl_print_format("%r%[%QFailed to find the %s file '%]", data->main->error.to.stream, f_string_eol_s, data->main->context.set.error, data->main->error.prefix, from ? utf8_string_from_s : utf8_string_to_s, data->main->context.set.error); fl_print_format("%[%S%]", data->main->error.to.stream, data->main->context.set.notable, name, data->main->context.set.notable); - fl_print_format("%['.%]%q", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); + fl_print_format("%['.%]%r", data->main->error.to.stream, data->main->context.set.error, data->main->context.set.error, f_string_eol_s); funlockfile(data->main->error.to.stream); } @@ -202,7 +202,7 @@ extern "C" { if (data->main->error.verbosity == f_console_verbosity_quiet_e) return; - fll_print_format("%q%[%QToo many %q files specified, there may only be one to file.%]%q", data->main->error.to.stream, f_string_eol_s, data->main->context.set.error, data->main->error.prefix, utf8_string_to_s, data->main->context.set.error, f_string_eol_s); + fll_print_format("%r%[%QToo many %r files specified, there may only be one to file.%]%r", data->main->error.to.stream, f_string_eol_s, data->main->context.set.error, data->main->error.prefix, utf8_string_to_s, data->main->context.set.error, f_string_eol_s); } #endif // _di_utf8_print_error_parameter_file_to_too_many_ @@ -214,13 +214,13 @@ extern "C" { flockfile(data->main->output.to.stream); - fl_print_format("%q%[File%] ", data->main->output.to.stream, f_string_eol_s, data->main->output.set->title, data->main->output.set->title); + fl_print_format("%r%[File%] ", data->main->output.to.stream, f_string_eol_s, data->main->output.set->title, data->main->output.set->title); if (data->file.stream == data->main->output.to.stream) { - fl_print_format("%[%S%]:%q", data->main->output.to.stream, data->main->output.set->notable, name, data->main->output.set->notable, f_string_eol_s); + fl_print_format("%[%S%]:%r", data->main->output.to.stream, data->main->output.set->notable, name, data->main->output.set->notable, f_string_eol_s); } else { - fl_print_format("%[%S%]: %S.%q", data->main->output.to.stream, data->main->output.set->notable, name, data->main->output.set->notable, data->file_name, f_string_eol_s); + fl_print_format("%[%S%]: %S.%r", data->main->output.to.stream, data->main->output.set->notable, name, data->main->output.set->notable, data->file_name, f_string_eol_s); } funlockfile(data->main->output.to.stream); @@ -235,8 +235,8 @@ extern "C" { flockfile(data->main->output.to.stream); - fl_print_format("%q%[Parameter%] ", data->main->output.to.stream, f_string_eol_s, data->main->output.set->title, data->main->output.set->title); - fl_print_format("%[%ul%]:%q", data->main->output.to.stream, data->main->output.set->notable, index, data->main->output.set->notable, f_string_eol_s); + fl_print_format("%r%[Parameter%] ", data->main->output.to.stream, f_string_eol_s, data->main->output.set->title, data->main->output.set->title); + fl_print_format("%[%ul%]:%r", data->main->output.to.stream, data->main->output.set->notable, index, data->main->output.set->notable, f_string_eol_s); funlockfile(data->main->output.to.stream); } @@ -248,7 +248,7 @@ extern "C" { if (data->main->parameters.array[utf8_parameter_headers_e].result == f_console_result_none_e) return; if (data->main->parameters.array[utf8_parameter_verify_e].result == f_console_result_found_e) return; - fll_print_format("%q%[Pipe%]:%q", data->main->output.to.stream, f_string_eol_s, data->main->output.set->title, data->main->output.set->title, f_string_eol_s); + fll_print_format("%r%[Pipe%]:%r", data->main->output.to.stream, f_string_eol_s, data->main->output.set->title, data->main->output.set->title, f_string_eol_s); } #endif // _di_utf8_print_section_header_pipe_ @@ -262,9 +262,9 @@ extern "C" { flockfile(data->main->warning.to.stream); - fl_print_format("%]%q%q%[Received signal code %]", data->main->warning.to.stream, data->main->context.set.reset, f_string_eol_s, f_string_eol_s, data->main->context.set.warning, data->main->context.set.warning); + fl_print_format("%]%r%r%[Received signal code %]", data->main->warning.to.stream, data->main->context.set.reset, f_string_eol_s, f_string_eol_s, data->main->context.set.warning, data->main->context.set.warning); fl_print_format("%[%i%]", data->main->warning.to.stream, data->main->context.set.notable, signal, data->main->context.set.notable); - fl_print_format("%[.%]%q", data->main->warning.to.stream, data->main->context.set.warning, data->main->context.set.warning, f_string_eol_s); + fl_print_format("%[.%]%r", data->main->warning.to.stream, data->main->context.set.warning, data->main->context.set.warning, f_string_eol_s); funlockfile(data->main->warning.to.stream); } diff --git a/level_3/utf8/c/private-utf8.c b/level_3/utf8/c/private-utf8.c index 3e90dc3..d99723e 100644 --- a/level_3/utf8/c/private-utf8.c +++ b/level_3/utf8/c/private-utf8.c @@ -102,7 +102,7 @@ extern "C" { // When headers are printed, they are printed with a newline so only print this newline when separate is used without headers being printed. if (data->main->parameters.array[utf8_parameter_headers_e].result == f_console_result_none_e && data->main->parameters.array[utf8_parameter_separate_e].result == f_console_result_found_e) { - f_print_dynamic(f_string_eol_s, data->file.stream); + f_print_dynamic_raw(f_string_eol_s, data->file.stream); } } diff --git a/level_3/utf8/c/utf8.c b/level_3/utf8/c/utf8.c index b9bfb2c..26736e3 100644 --- a/level_3/utf8/c/utf8.c +++ b/level_3/utf8/c/utf8.c @@ -35,13 +35,13 @@ extern "C" { fll_program_print_help_option(file, context, f_console_standard_short_debug_s, f_console_standard_long_debug_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Enable debugging, significantly increasing verbosity beyond normal output."); fll_program_print_help_option(file, context, f_console_standard_short_version_s, f_console_standard_long_version_s, f_console_symbol_short_disable_s, f_console_symbol_long_disable_s, " Print only the version number."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, utf8_short_from_binary_s, utf8_long_from_binary_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " The expected input format is binary (character data)."); fll_program_print_help_option(file, context, utf8_short_from_codepoint_s, utf8_long_from_codepoint_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "The expected input format is codepoint (such as U+0000)."); fll_program_print_help_option(file, context, utf8_short_from_file_s, utf8_long_from_file_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Use the given file as the input source."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, utf8_short_to_binary_s, utf8_long_to_binary_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " The output format is binary (character data)."); fll_program_print_help_option(file, context, utf8_short_to_codepoint_s, utf8_long_to_codepoint_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, "The output format is codepoint (such as U+0000)."); @@ -49,7 +49,7 @@ extern "C" { fll_program_print_help_option(file, context, utf8_short_to_file_s, utf8_long_to_file_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Use the given file as the output destination."); fll_program_print_help_option(file, context, utf8_short_to_width_s, utf8_long_to_width_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " The output format is to print the width of a character (either 0, 1, or 2)."); - f_print_dynamic(f_string_eol_s, file.stream); + f_print_dynamic_raw(f_string_eol_s, file.stream); fll_program_print_help_option(file, context, utf8_short_headers_s, utf8_long_headers_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Print headers for each section (pipe, file, or parameter)."); fll_program_print_help_option(file, context, utf8_short_separate_s, utf8_long_separate_s, f_console_symbol_short_enable_s, f_console_symbol_long_enable_s, " Separate characters by newlines (implied when printing headers)."); @@ -58,16 +58,16 @@ extern "C" { fll_program_print_help_usage(file, context, utf8_program_name_s, "filename(s)"); - fl_print_format(" The default behavior is to assume the expected input is binary from the command line to be output to the screen as codepoints.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" The default behavior is to assume the expected input is binary from the command line to be output to the screen as codepoints.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" Multiple input sources are allowed but only a single output destination is allowed.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" Multiple input sources are allowed but only a single output destination is allowed.%r%r", file.stream, f_string_eol_s, f_string_eol_s); - fl_print_format(" When using the parameter '%[%q%s%]', no data is printed and 0 is returned if valid or 1 is returned if invalid.%q%q", file.stream, context.set.notable, f_console_symbol_long_enable_s, utf8_long_verify_s, context.set.notable, f_string_eol_s, f_string_eol_s); + fl_print_format(" When using the parameter '%[%r%s%]', no data is printed and 0 is returned if valid or 1 is returned if invalid.%r%r", file.stream, context.set.notable, f_console_symbol_long_enable_s, utf8_long_verify_s, context.set.notable, f_string_eol_s, f_string_eol_s); - fl_print_format(" When using the parameter '%[%q%s%]' with the parameter ", file.stream, context.set.notable, f_console_symbol_long_enable_s, utf8_long_to_combining_s, context.set.notable); - fl_print_format("'%[%q%s%]', the ", file.stream, context.set.notable, f_console_symbol_long_enable_s, utf8_long_to_width_s, context.set.notable); - fl_print_format("'%[%s%]' character is printed to represent the combining and the digits are used to represent widths.%q", file.stream, context.set.notable, utf8_string_combining_is_s, context.set.notable, f_string_eol_s); - fl_print_format(" The combining characters should be considered 1-width by themselves or 0-width when combined.%q%q", file.stream, f_string_eol_s, f_string_eol_s); + fl_print_format(" When using the parameter '%[%r%s%]' with the parameter ", file.stream, context.set.notable, f_console_symbol_long_enable_s, utf8_long_to_combining_s, context.set.notable); + fl_print_format("'%[%r%s%]', the ", file.stream, context.set.notable, f_console_symbol_long_enable_s, utf8_long_to_width_s, context.set.notable); + fl_print_format("'%[%s%]' character is printed to represent the combining and the digits are used to represent widths.%r", file.stream, context.set.notable, utf8_string_combining_is_s, context.set.notable, f_string_eol_s); + fl_print_format(" The combining characters should be considered 1-width by themselves or 0-width when combined.%r%r", file.stream, f_string_eol_s, f_string_eol_s); funlockfile(file.stream); @@ -503,7 +503,7 @@ extern "C" { } } - fll_print_dynamic(f_string_eol_s, main->output.to.stream); + fll_print_dynamic_raw(f_string_eol_s, main->output.to.stream); } utf8_data_delete(&data); -- 1.8.3.1