mirror of
https://github.com/rust-lang/rustlings.git
synced 2025-12-28 06:49:19 +00:00
replace space to proper url encoding
This commit is contained in:
parent
7c0d269279
commit
d787bb7d0f
@ -247,12 +247,14 @@ pub fn terminal_file_link<'a>(
|
|||||||
canonical_path: &str,
|
canonical_path: &str,
|
||||||
color: Color,
|
color: Color,
|
||||||
) -> io::Result<()> {
|
) -> io::Result<()> {
|
||||||
|
let encoded_spaces_canonical_path = encode_spaces(canonical_path);
|
||||||
|
|
||||||
writer
|
writer
|
||||||
.stdout()
|
.stdout()
|
||||||
.queue(SetForegroundColor(color))?
|
.queue(SetForegroundColor(color))?
|
||||||
.queue(SetAttribute(Attribute::Underlined))?;
|
.queue(SetAttribute(Attribute::Underlined))?;
|
||||||
writer.stdout().write_all(b"\x1b]8;;file://")?;
|
writer.stdout().write_all(b"\x1b]8;;file://")?;
|
||||||
writer.stdout().write_all(canonical_path.as_bytes())?;
|
writer.stdout().write_all(encoded_spaces_canonical_path.as_bytes())?;
|
||||||
writer.stdout().write_all(b"\x1b\\")?;
|
writer.stdout().write_all(b"\x1b\\")?;
|
||||||
// Only this part is visible.
|
// Only this part is visible.
|
||||||
writer.write_str(path)?;
|
writer.write_str(path)?;
|
||||||
@ -265,6 +267,11 @@ pub fn terminal_file_link<'a>(
|
|||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn encode_spaces(path: &str) -> String {
|
||||||
|
path.replace(" ", "%20")
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
pub fn write_ansi(output: &mut Vec<u8>, command: impl Command) {
|
pub fn write_ansi(output: &mut Vec<u8>, command: impl Command) {
|
||||||
struct FmtWriter<'a>(&'a mut Vec<u8>);
|
struct FmtWriter<'a>(&'a mut Vec<u8>);
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user