vtcode_core/terminal_setup/terminals/
warp.rs1use anyhow::Result;
6
7pub fn generate_config(features: &[crate::terminal_setup::detector::TerminalFeature]) -> Result<String> {
9 let mut info = r#"# Warp Terminal Configuration
10
11Warp has built-in support for most features:
12
13✓ Multiline Input: Already supported (Shift+Enter works by default)
14✓ Copy/Paste: Built-in with smart selection
15✓ Shell Integration: Built-in with command history and navigation
16✓ Themes: Use Warp's built-in theme system
17
18"#
19 .to_string();
20
21 if features.contains(&crate::terminal_setup::detector::TerminalFeature::Notifications) {
23 info.push_str("\n## System Notifications\n");
24 info.push_str("✓ Notifications: Warp supports system notifications through:\n");
25 info.push_str(" - Built-in notification system\n");
26 info.push_str(" - Terminal bell (\\a) for task completion alerts\n");
27 info.push_str(" - No additional configuration needed\n");
28 }
29
30 info.push_str("\nNo additional configuration needed for VT Code!\n");
31
32 Ok(info)
33}
34
35#[cfg(test)]
36mod tests {
37 use super::*;
38 use crate::terminal_setup::detector::TerminalFeature;
39
40 #[test]
41 fn test_generate_config() {
42 let features = vec![TerminalFeature::Multiline];
43 let config = generate_config(&features).unwrap();
44 assert!(config.contains("Warp"));
45 assert!(config.contains("built-in"));
46 }
47}