task.proto

 1syntax = "proto3";
 2package zed.messages;
 3
 4import "buffer.proto";
 5
 6message TaskContextForLocation {
 7  uint64 project_id = 1;
 8  Location location = 2;
 9  map<string, string> task_variables = 3;
10}
11
12message TaskContext {
13  optional string cwd = 1;
14  map<string, string> task_variables = 2;
15  map<string, string> project_env = 3;
16}
17
18message Shell {
19  message WithArguments {
20    string program = 1;
21    repeated string args = 2;
22  }
23
24  oneof shell_type {
25    System system = 1;
26    string program = 2;
27    WithArguments with_arguments = 3;
28  }
29}
30
31message System {}
32
33enum RevealStrategy {
34  RevealAlways = 0;
35  RevealNever = 1;
36}
37
38enum HideStrategy {
39  HideAlways = 0;
40  HideNever = 1;
41  HideOnSuccess = 2;
42}
43
44message SpawnInTerminal {
45  string label = 1;
46  optional string command = 2;
47  repeated string args = 3;
48  map<string, string> env = 4;
49  optional string cwd = 5;
50}
51
52message GetDirectoryEnvironment {
53  uint64 project_id = 1;
54  Shell shell = 2;
55  string directory = 3;
56}
57
58message DirectoryEnvironment {
59  map<string, string> environment = 1;
60}