Skip to content

shellIntegration-bash.sh: escape values in "E" (executed command) and "P" (property KV) codes#165632

Merged
Tyriar merged 4 commits intomicrosoft:mainfrom
rwe:serialize-message-bash
Nov 23, 2022
Merged

shellIntegration-bash.sh: escape values in "E" (executed command) and "P" (property KV) codes#165632
Tyriar merged 4 commits intomicrosoft:mainfrom
rwe:serialize-message-bash

Conversation

@rwe
Copy link
Contributor

@rwe rwe commented Nov 6, 2022

This implements the string escaping scheme documented for the "E" (executed) and "P" (property KV) codes. This is "pure" bash and relies on no external utilities.

Although currently the only "required" escapes are backslash, semicolon, \a, and perhaps newlines, this conservatively escapes all non-alphanumeric characters.

Backslashes are doubled, non-alphanumerics are hex-escaped.

Sibling to:

Relates to or resolves parts of:

@rwe rwe force-pushed the serialize-message-bash branch from 00bc33e to b05120f Compare November 15, 2022 23:16
@Tyriar Tyriar self-requested a review November 23, 2022 19:32
@Tyriar Tyriar added this to the November 2022 milestone Nov 23, 2022
Copy link
Contributor

@Tyriar Tyriar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also works great 🎉

@Tyriar Tyriar enabled auto-merge November 23, 2022 19:38
@Tyriar Tyriar merged commit d0564ea into microsoft:main Nov 23, 2022
@github-actions github-actions bot locked and limited conversation to collaborators Jan 7, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants