Always show full command on terminal tab hover

This commit is contained in:
Kirill Bulatov 2024-01-07 13:46:44 +02:00
parent e5fbc532cc
commit d566a0df5a
2 changed files with 25 additions and 27 deletions

View file

@ -1311,34 +1311,33 @@ impl Terminal {
})
}
pub fn title(&self) -> String {
pub fn title(&self, truncate: bool) -> String {
self.foreground_process_info
.as_ref()
.map(|fpi| {
format!(
"{} — {}",
truncate_and_trailoff(
&fpi.cwd
.file_name()
.map(|name| name.to_string_lossy().to_string())
.unwrap_or_default(),
25
),
truncate_and_trailoff(
&{
format!(
"{}{}",
fpi.name,
if fpi.argv.len() >= 1 {
format!(" {}", (&fpi.argv[1..]).join(" "))
} else {
"".to_string()
}
)
},
25
let process_file = fpi
.cwd
.file_name()
.map(|name| name.to_string_lossy().to_string())
.unwrap_or_default();
let process_name = format!(
"{}{}",
fpi.name,
if fpi.argv.len() >= 1 {
format!(" {}", (&fpi.argv[1..]).join(" "))
} else {
"".to_string()
}
);
let (process_file, process_name) = if truncate {
(
truncate_and_trailoff(&process_file, 25),
truncate_and_trailoff(&process_name, 25),
)
)
} else {
(process_file, process_name)
};
format!("{process_file}{process_name}")
})
.unwrap_or_else(|| "Terminal".to_string())
}

View file

@ -665,7 +665,7 @@ impl Item for TerminalView {
type Event = ItemEvent;
fn tab_tooltip_text(&self, cx: &AppContext) -> Option<SharedString> {
Some(self.terminal().read(cx).title().into())
Some(self.terminal().read(cx).title(false).into())
}
fn tab_content(
@ -674,8 +674,7 @@ impl Item for TerminalView {
selected: bool,
cx: &WindowContext,
) -> AnyElement {
let title = self.terminal().read(cx).title();
let title = self.terminal().read(cx).title(true);
h_stack()
.gap_2()
.child(IconElement::new(Icon::Terminal))