我偶然发现了这个页面https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda,其中列出了一个打印字符串的示例,该字符串将在终端模拟器中被解释为超链接
printf '\e]8;;http://example.com\e\\This is a link\e]8;;\e\\\n'
这导致终端上的输出This is a link
,并且可点击以到达网站。
我试图通过我的Kotlin应用程序复制相同的东西,同时使用这两个
println("""\e]8;;http://example.com\e\\This is a link\e]8;;\e\\\n'""")
System.out.println("\\e]8;;http://example.com\\e\\\\This is a link\\e]8;;\\e\\\\\\n'")
但我得到的只有
\e]8;;http://example.com\e\\This is a link\e]8;;\e\\\n'
\e]8;;http://example.com\e\\This is a link\e]8;;\e\\\n'
作为输出。
有人知道如何在Kotlin中实现同样的功能吗?
1条答案
按热度按时间vxf3dgd41#
Kotlin不解释常规字符串或三重引号字符串中的转义序列(如\e)。
应该使用实际的转义字符,表示为\u001B。
试试这样的东西