From 3be0a0c9a5e411098775ae04fc1e8a2c85cc02ba Mon Sep 17 00:00:00 2001 From: Vincent Ollivier Date: Mon, 28 Nov 2022 23:21:05 +0100 Subject: [PATCH] Add path to prompt (#444) * Add path to prompt * Change tilde position in font * Update moros.png --- doc/moros.png | Bin 14769 -> 4124 bytes dsk/ini/fonts/zap-light-8x16.psf | Bin 5312 -> 5312 bytes src/usr/shell.rs | 15 +++++++++++++-- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/doc/moros.png b/doc/moros.png index e4bc5ea664b9cef10bf2e06dcf0c396142ed4339..fc32b7b382e906d29452cd996bc9107539329aa8 100644 GIT binary patch literal 4124 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 literal 14769 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 MMJ Vec { } pub fn prompt_string(success: bool) -> String { - let csi_color = Style::color("Magenta"); + let csi_line1 = Style::color("Blue"); + let csi_line2 = Style::color("Magenta"); let csi_error = Style::color("Red"); let csi_reset = Style::reset(); - format!("{}>{} ", if success { csi_color } else { csi_error }, csi_reset) + + let mut current_dir = sys::process::dir(); + if let Some(home) = sys::process::env("HOME") { + if current_dir.starts_with(&home) { + let n = home.len(); + current_dir.replace_range(..n, "~"); + } + } + let line1 = format!("{}{}{}", csi_line1, current_dir, csi_reset); + let line2 = format!("{}>{} ", if success { csi_line2 } else { csi_error }, csi_reset); + format!("{}\n{}", line1, line2) } fn is_globbing(arg: &str) -> bool {