helix-mods/helix-term/src/main.rs

37 lines
656 B
Rust
Raw Normal View History

2020-06-02 03:57:01 +02:00
#![allow(unused)]
#[macro_use]
mod macros;
2020-06-04 01:05:01 +02:00
mod editor;
2020-06-07 17:28:17 +02:00
mod keymap;
mod theme;
2020-05-20 11:14:51 +02:00
2020-06-04 01:05:01 +02:00
use editor::Editor;
2020-05-20 11:14:51 +02:00
use argh::FromArgs;
2020-06-02 03:57:01 +02:00
use std::path::PathBuf;
2020-05-20 11:14:51 +02:00
use anyhow::Error;
2020-05-20 11:14:51 +02:00
#[derive(FromArgs)]
/// A post-modern text editor.
pub struct Args {
#[argh(positional)]
files: Vec<PathBuf>,
2020-05-20 11:14:51 +02:00
}
static EX: smol::Executor = smol::Executor::new();
2020-05-20 11:14:51 +02:00
fn main() -> Result<(), Error> {
let args: Args = argh::from_env();
2020-05-20 11:14:51 +02:00
for _ in 0..num_cpus::get() {
std::thread::spawn(move || smol::block_on(EX.run(smol::future::pending::<()>())));
}
smol::block_on(EX.run(async {
editor::Editor::new(args).unwrap().run().await;
}));
2020-05-20 11:14:51 +02:00
Ok(())
}