on master help sign in
lldb: use stdio transport by default
413e477Dmitry Sharshakov
helix-core/src/syntax.rs+1
@@ -98,6 +98,7 @@ pub struct DebugAdapterConfig {
98 pub name: String,
98 pub name: String,
99 pub transport: String,
99 pub transport: String,
100 pub command: String,
100 pub command: String,
101+ #[serde(default)]
101 pub args: Vec<String>,
102 pub args: Vec<String>,
102 pub port_arg: Option<String>,
103 pub port_arg: Option<String>,
103 pub templates: Vec<DebugTemplate>,
104 pub templates: Vec<DebugTemplate>,
helix-dap/src/client.rs+6−2
@@ -116,12 +116,16 @@ impl Client {
116 // TODO: do we need bufreader/writer here? or do we use async wrappers on unblock?
116 // TODO: do we need bufreader/writer here? or do we use async wrappers on unblock?
117 let writer = BufWriter::new(process.stdin.take().expect("Failed to open stdin"));
117 let writer = BufWriter::new(process.stdin.take().expect("Failed to open stdin"));
118 let reader = BufReader::new(process.stdout.take().expect("Failed to open stdout"));
118 let reader = BufReader::new(process.stdout.take().expect("Failed to open stdout"));
119− let errors = BufReader::new(process.stderr.take().expect("Failed to open stderr"));
119+ let errors = process.stderr.take().map(BufReader::new);
120
120
121 Self::streams(
121 Self::streams(
122 Box::new(BufReader::new(reader)),
122 Box::new(BufReader::new(reader)),
123 Box::new(writer),
123 Box::new(writer),
124+ // errors.map(|errors| Box::new(BufReader::new(errors))),
125+ match errors {
124− Some(Box::new(BufReader::new(errors))),
126+ Some(errors) => Some(Box::new(BufReader::new(errors))),
127+ None => None,
128+ },
125 id,
129 id,
126 Some(process),
130 Some(process),
127 )
131 )
languages.toml+3−9
@@ -22,10 +22,8 @@ indent = { tab-width = 4, unit = " " }
22
22
23[language.debugger]
23[language.debugger]
24name = "lldb-vscode"
24name = "lldb-vscode"
25−transport = "tcp"
25+transport = "stdio"
26command = "lldb-vscode"
26command = "lldb-vscode"
27−args = []
28−port-arg = "-p {}"
29
27
30[[language.debugger.templates]]
28[[language.debugger.templates]]
31name = "binary"
29name = "binary"
@@ -91,10 +89,8 @@ indent = { tab-width = 2, unit = " " }
91
89
92[language.debugger]
90[language.debugger]
93name = "lldb-vscode"
91name = "lldb-vscode"
94−transport = "tcp"
92+transport = "stdio"
95command = "lldb-vscode"
93command = "lldb-vscode"
96−args = []
97−port-arg = "-p {}"
98
94
99[[language.debugger.templates]]
95[[language.debugger.templates]]
100name = "binary"
96name = "binary"
@@ -121,10 +117,8 @@ indent = { tab-width = 2, unit = " " }
121
117
122[language.debugger]
118[language.debugger]
123name = "lldb-vscode"
119name = "lldb-vscode"
124−transport = "tcp"
120+transport = "stdio"
125command = "lldb-vscode"
121command = "lldb-vscode"
126−args = []
127−port-arg = "-p {}"
128
122
129[[language.debugger.templates]]
123[[language.debugger.templates]]
130name = "binary"
124name = "binary"