serenity/Userland/Shell
Ali Mohammad Pur 417910fd28 Shell: Make escaping more intelligent
Instead of the previous only-escape-with-backslashes, extend the
escaping to one of:
- No escape
- Escape with backslash
- Escape with "\xhh" if control character that isn't easily represented
  as \X
- Escape with "\uhhhhhhhh" if unicode character that is too big to
  represent as "\xhh".

Fixes #6986.
2021-05-10 10:43:23 +02:00
..
Tests Shell: Add some tests for heredocs 2021-04-29 20:25:56 +02:00
AST.cpp Shell: Add support for heredocs 2021-04-29 20:25:56 +02:00
AST.h Shell: Make set_is_syntax_error() also copy the error location 2021-05-01 15:58:31 +02:00
Builtin.cpp Shell: Convert StringBuilder::appendf() => AK::Format 2021-05-07 21:12:09 +02:00
CMakeLists.txt
Execution.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Formatter.cpp Shell: Convert StringBuilder::appendf() => AK::Format 2021-05-07 21:12:09 +02:00
Formatter.h Shell: Implement formatting for Heredocs 2021-04-29 20:25:56 +02:00
Forward.h Shell: Add support for heredocs 2021-04-29 20:25:56 +02:00
ImmediateFunctions.cpp Everywhere: Use "the SerenityOS developers." in copyright headers 2021-04-29 00:59:26 +02:00
Job.cpp Everywhere: Use "the SerenityOS developers." in copyright headers 2021-04-29 00:59:26 +02:00
Job.h Everywhere: Use "the SerenityOS developers." in copyright headers 2021-04-29 00:59:26 +02:00
main.cpp Shell: Replace fprintf(stderr) => warnln() 2021-05-02 19:46:33 +02:00
NodeVisitor.cpp Shell: Add support for heredocs 2021-04-29 20:25:56 +02:00
NodeVisitor.h Shell: Add support for heredocs 2021-04-29 20:25:56 +02:00
Parser.cpp Shell: Add support for \uhhhhhhhh escapes in strings 2021-05-10 10:43:23 +02:00
Parser.h Shell: Add support for \uhhhhhhhh escapes in strings 2021-05-10 10:43:23 +02:00
Shell.cpp Shell: Make escaping more intelligent 2021-05-10 10:43:23 +02:00
Shell.h Shell: Make escaping more intelligent 2021-05-10 10:43:23 +02:00
SyntaxHighlighter.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
SyntaxHighlighter.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00