1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-18 02:42:05 +03:00

add useless mux server mode

This commit is contained in:
Wez Furlong 2019-03-06 23:06:38 +00:00
parent e3fa12ee41
commit 4c322e1c69
2 changed files with 33 additions and 9 deletions

View File

@ -101,17 +101,14 @@ struct Opt {
/// as if it were a login shell.
#[structopt(parse(from_os_str))]
prog: Vec<OsString>,
/// Rather than running the terminal, run as the
/// multiplexer server.
#[structopt(long = "start-mux-server")]
start_mux_server: bool,
}
fn main() -> Result<(), Error> {
let opts = Opt::from_args();
let config = Arc::new(if opts.skip_config {
config::Config::default_config()
} else {
config::Config::load()?
});
println!("Using configuration: {:#?}\nopts: {:#?}", config, opts);
fn run_terminal_gui(config: Arc<config::Config>, opts: Opt) -> Result<(), Error> {
let font_system = opts.font_system.unwrap_or(config.font_system);
font_system.set_default();
@ -133,6 +130,22 @@ fn main() -> Result<(), Error> {
gui.run_forever()
}
fn main() -> Result<(), Error> {
let opts = Opt::from_args();
let config = Arc::new(if opts.skip_config {
config::Config::default_config()
} else {
config::Config::load()?
});
println!("Using configuration: {:#?}\nopts: {:#?}", config, opts);
if opts.start_mux_server {
server::listener::run_mux_server(config)
} else {
run_terminal_gui(config, opts)
}
}
fn spawn_tab(
config: &Arc<config::Config>,
cmd: Option<Vec<&std::ffi::OsStr>>,

View File

@ -1,6 +1,10 @@
use crate::config::Config;
use crate::mux::Mux;
use crate::server::{UnixListener, UnixStream};
use failure::Error;
use std::io::{Read, Write};
use std::rc::Rc;
use std::sync::Arc;
pub trait SocketLike: Read + Write + Send {}
@ -31,3 +35,10 @@ impl Listener {
}
pub struct ClientSession {}
pub fn run_mux_server(config: Arc<Config>) -> Result<(), Error> {
let mux = Rc::new(Mux::default());
Mux::set_mux(&mux);
Ok(())
}