pub use ipc_channel::ipc;use serde::{Deserialize, Serialize}; #[derive(Serialize, Deserialize)]pub struct IpcHandshake { pub requests: ipc::IpcSender<CliRequest>, pub responses: ipc::IpcReceiver<CliResponse>,} #[derive(Debug, Serialize, Deserialize)]pub enum CliRequest { Open { paths: Vec<String>, wait: bool, open_new_workspace: Option<bool>, },} #[derive(Debug, Serialize, Deserialize)]pub enum CliResponse { Ping, Stdout { message: String }, Stderr { message: String }, Exit { status: i32 },} /// When Zed started not as an *.app but as a binary (e.g. local development),/// there's a possibility to tell it to behave "regularly".pub const FORCE_CLI_MODE_ENV_VAR_NAME: &str = "ZED_FORCE_CLI_MODE";
pub use ipc_channel::ipc;
use serde::{Deserialize, Serialize};
#[derive(Serialize, Deserialize)]
pub struct IpcHandshake {
pub requests: ipc::IpcSender<CliRequest>,
pub responses: ipc::IpcReceiver<CliResponse>,
}
#[derive(Debug, Serialize, Deserialize)]
pub enum CliRequest {
Open {
paths: Vec<String>,
wait: bool,
open_new_workspace: Option<bool>,
},
}
#[derive(Debug, Serialize, Deserialize)]
pub enum CliResponse {
Ping,
Stdout { message: String },
Stderr { message: String },
Exit { status: i32 },
}
/// When Zed started not as an *.app but as a binary (e.g. local development),
/// there's a possibility to tell it to behave "regularly".
pub const FORCE_CLI_MODE_ENV_VAR_NAME: &str = "ZED_FORCE_CLI_MODE";