🎁 Support other terminals CWD escape sequence#157783
Conversation
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
…lass Signed-off-by: Babak K. Shandiz <[email protected]>
Signed-off-by: Babak K. Shandiz <[email protected]>
…r=<Cwd> ST` Signed-off-by: Babak K. Shandiz <[email protected]>
|
@Tyriar I applied the reviews. Also, updated the tests (which I hadn't found them earlier because they were under Sequence
|
Seeing how
|
Tyriar
left a comment
There was a problem hiding this comment.
I haven't tested this yet but it looks solid! Love the tests 👏
Signed-off-by: Babak K. Shandiz <[email protected]>
Fixes #157567
Fixes #157568
Fixes #157569
Unfortunately, I couldn't test the terminals/emulators myself. So, take it as an initial implementation. There are some questions, but I decided to submit the PR first and then update it based on the answers.
The questions are regarding the sequence
OSC 7 ; scheme://cwd ST:scheme://a literal string or is a placeholder for actual scheme identifier? Naturally it should be the latter.I've put
// TODOmarkers to update the code based on the answers:I also added a new helper method
_parseKeyValueAssignmentfor parsing key-value assignments. In the existing implementation, we hadn't noticed multiple equal signs (=) in the command arguments so just splitting and taking the first value would result in a truncated string. This is handled in the_parseKeyValueAssignmentmethod.