diff --git a/Libraries/LibJS/Print.cpp b/Libraries/LibJS/Print.cpp index 236f2d91c46..581a79495b6 100644 --- a/Libraries/LibJS/Print.cpp +++ b/Libraries/LibJS/Print.cpp @@ -1038,18 +1038,18 @@ ErrorOr print_value(JS::PrintContext& print_context, JS::Value value, Hash else if (value.is_undefined()) TRY(js_out(print_context, "\033[34;1m")); - if (value.is_string() && !print_context.disable_string_quotes) + if (value.is_string() && !print_context.raw_strings) TRY(js_out(print_context, "\"")); else if (value.is_negative_zero()) TRY(js_out(print_context, "-")); auto contents = value.to_string_without_side_effects(); - if (value.is_string() && !print_context.disable_string_quotes) + if (value.is_string() && !print_context.raw_strings) TRY(js_out(print_context, "{}", TRY(escape_for_string_literal(contents)))); else TRY(js_out(print_context, "{}", contents)); - if (value.is_string() && !print_context.disable_string_quotes) + if (value.is_string() && !print_context.raw_strings) TRY(js_out(print_context, "\"")); TRY(js_out(print_context, "\033[0m")); return {}; diff --git a/Libraries/LibJS/Print.h b/Libraries/LibJS/Print.h index 63f51d354ac..09a4c7e384a 100644 --- a/Libraries/LibJS/Print.h +++ b/Libraries/LibJS/Print.h @@ -17,7 +17,7 @@ struct PrintContext { JS::VM& vm; Stream& stream; bool strip_ansi { false }; - bool disable_string_quotes { false }; + bool raw_strings { false }; }; JS_API ErrorOr print(JS::Value value, PrintContext&); diff --git a/Utilities/js.cpp b/Utilities/js.cpp index 09e5965aa24..b6f3c82b2e4 100644 --- a/Utilities/js.cpp +++ b/Utilities/js.cpp @@ -85,7 +85,7 @@ static bool s_dump_ast = false; static bool s_as_module = false; static bool s_print_last_result = false; static bool s_strip_ansi = false; -static bool s_disable_string_quotes = false; +static bool s_raw_strings = false; static bool s_disable_source_location_hints = false; #if !defined(AK_OS_WINDOWS) static RefPtr s_editor; @@ -97,7 +97,7 @@ static int s_exit_code = 0; static ErrorOr print_inline(JS::Value value, Stream& stream) { - JS::PrintContext print_context { .vm = *g_vm, .stream = stream, .strip_ansi = s_strip_ansi, .disable_string_quotes = s_disable_string_quotes }; + JS::PrintContext print_context { .vm = *g_vm, .stream = stream, .strip_ansi = s_strip_ansi, .raw_strings = s_raw_strings }; return JS::print(value, print_context); } @@ -822,8 +822,8 @@ ErrorOr ladybird_main(Main::Arguments arguments) args_parser.add_option(s_strip_ansi, "Disable ANSI colors", "disable-ansi-colors", 'i'); args_parser.add_option(s_disable_source_location_hints, "Disable source location hints", "disable-source-location-hints", 'h'); args_parser.add_option(gc_on_every_allocation, "GC on every allocation", "gc-on-every-allocation", 'g'); + args_parser.add_option(s_raw_strings, "Display strings without quotes or escape sequences", "--raw-strings", 'r'); args_parser.add_option(disable_syntax_highlight, "Disable live syntax highlighting", "no-syntax-highlight", 's'); - args_parser.add_option(s_disable_string_quotes, "Disable quotes around strings", "disable-string-quotes", {}); args_parser.add_option(disable_debug_printing, "Disable debug output", "disable-debug-output", {}); args_parser.add_option(evaluate_script, "Evaluate argument as a script", "evaluate", 'c', "script"); args_parser.add_option(use_test262_global, "Use test262 global ($262)", "use-test262-global", {});