From 7d0ac0a9306085d02f7df655d3c2f6ebe78f2598 Mon Sep 17 00:00:00 2001 From: Jan De Dobbeleer Date: Fri, 29 Jul 2022 08:40:46 +0200 Subject: [PATCH] fix(ansi): correct osc7 format relates to #2515 --- src/color/ansi.go | 6 +++--- src/engine/engine_test.go | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/color/ansi.go b/src/color/ansi.go index 60ee21d9..932ac132 100644 --- a/src/color/ansi.go +++ b/src/color/ansi.go @@ -67,7 +67,7 @@ func (a *Ansi) Init(shellName string) { a.hyperlink = "%%{\x1b]8;;%s\x1b\\%%}%s%%{\x1b]8;;\x1b\\%%}" a.hyperlinkRegex = `(?P%{\x1b]8;;(.+)\x1b\\%}(?P.+)%{\x1b]8;;\x1b\\%})` a.osc99 = "%%{\x1b]9;9;\"%s\"\x1b\\%%}" - a.osc7 = "%%{\x1b]7;file://%s/%s\x1b\\%%}" + a.osc7 = "%%{\x1b]7;file:\"//%s/%s\"\x1b\\\\%%}" a.bold = "%%{\x1b[1m%%}%s%%{\x1b[22m%%}" a.italic = "%%{\x1b[3m%%}%s%%{\x1b[23m%%}" a.underline = "%%{\x1b[4m%%}%s%%{\x1b[24m%%}" @@ -95,7 +95,7 @@ func (a *Ansi) Init(shellName string) { a.hyperlink = "\\[\x1b]8;;%s\x1b\\\\\\]%s\\[\x1b]8;;\x1b\\\\\\]" a.hyperlinkRegex = `(?P\\\[\x1b\]8;;(.+)\x1b\\\\\\\](?P.+)\\\[\x1b\]8;;\x1b\\\\\\\])` a.osc99 = "\\[\x1b]9;9;\"%s\"\x1b\\\\\\]" - a.osc7 = "\\[\x1b]7;file://%s/%s\x1b\\\\]" + a.osc7 = "\\[\x1b]7;\"file://%s/%s\"\x1b\\\\\\]" a.bold = "\\[\x1b[1m\\]%s\\[\x1b[22m\\]" a.italic = "\\[\x1b[3m\\]%s\\[\x1b[23m\\]" a.underline = "\\[\x1b[4m\\]%s\\[\x1b[24m\\]" @@ -123,7 +123,7 @@ func (a *Ansi) Init(shellName string) { a.hyperlink = "\x1b]8;;%s\x1b\\%s\x1b]8;;\x1b\\" a.hyperlinkRegex = "(?P\x1b]8;;(.+)\x1b\\\\\\\\?(?P.+)\x1b]8;;\x1b\\\\)" a.osc99 = "\x1b]9;9;\"%s\"\x1b\\" - a.osc7 = "\x1b]7;file://%s/%s\x1b\\" + a.osc7 = "\x1b]7;\"file://%s/%s\"\x1b\\\\" a.bold = "\x1b[1m%s\x1b[22m" a.italic = "\x1b[3m%s\x1b[23m" a.underline = "\x1b[4m%s\x1b[24m" diff --git a/src/engine/engine_test.go b/src/engine/engine_test.go index d3f79892..e079836e 100644 --- a/src/engine/engine_test.go +++ b/src/engine/engine_test.go @@ -53,10 +53,10 @@ func TestPrintPWD(t *testing.T) { }{ {Case: "Empty PWD"}, {Case: "OSC99", PWD: color.OSC99, Expected: "\x1b]9;9;\"pwd\"\x1b\\"}, - {Case: "OSC7", PWD: color.OSC7, Expected: "\x1b]7;file://host/pwd\x1b\\"}, + {Case: "OSC7", PWD: color.OSC7, Expected: "\x1b]7;\"file://host/pwd\"\x1b\\\\"}, {Case: "Deprecated OSC99", OSC99: true, Expected: "\x1b]9;9;\"pwd\"\x1b\\"}, {Case: "Template (empty)", PWD: "{{ if eq .Shell \"pwsh\" }}osc7{{ end }}"}, - {Case: "Template (non empty)", PWD: "{{ if eq .Shell \"shell\" }}osc7{{ end }}", Expected: "\x1b]7;file://host/pwd\x1b\\"}, + {Case: "Template (non empty)", PWD: "{{ if eq .Shell \"shell\" }}osc7{{ end }}", Expected: "\x1b]7;\"file://host/pwd\"\x1b\\\\"}, } for _, tc := range cases {