@@ -5,13 +5,20 @@ use serde::{de::Error as SerdeError, Deserialize, Serialize};
55
66use crate::keymap::{parse_keymaps, Keymaps};
77
8+#[derive(Default)]
9+pub struct GlobalConfig {
10+ pub lsp_progress: bool,
11+}
12+
813#[derive(Default)]
914pub struct Config {
15+ pub global: GlobalConfig,
1016 pub keymaps: Keymaps,
1117}
1218
1319#[derive(Serialize, Deserialize)]
1420struct TomlConfig {
21+ lsp_progress: Option<bool>,
1522 keys: Option<HashMap<String, HashMap<String, String>>>,
1623}
1724
@@ -22,6 +29,9 @@ impl<'de> Deserialize<'de> for Config {
2229 {
2330 let config = TomlConfig::deserialize(deserializer)?;
2431 Ok(Self {
32+ global: GlobalConfig {
33+ lsp_progress: config.lsp_progress.unwrap_or(true),
34+ },
2535 keymaps: config
2636 .keys
2737 .map(|r| parse_keymaps(&r))