@@ -15,6 +15,7 @@ pub enum BaseKeymap {
SublimeText,
Atom,
TextMate,
+ None,
}
impl Display for BaseKeymap {
@@ -25,6 +26,7 @@ impl Display for BaseKeymap {
BaseKeymap::SublimeText => write!(f, "Sublime Text"),
BaseKeymap::Atom => write!(f, "Atom"),
BaseKeymap::TextMate => write!(f, "TextMate"),
+ BaseKeymap::None => write!(f, "None"),
}
}
}
@@ -45,6 +47,7 @@ impl BaseKeymap {
BaseKeymap::Atom => Some("keymaps/atom.json"),
BaseKeymap::TextMate => Some("keymaps/textmate.json"),
BaseKeymap::VSCode => None,
+ BaseKeymap::None => None,
}
}
@@ -641,12 +641,17 @@ fn reload_keymaps(cx: &mut AppContext, keymap_content: &KeymapFile) {
}
pub fn load_default_keymap(cx: &mut AppContext) {
+ let base_keymap = *BaseKeymap::get_global(cx);
+ if base_keymap == BaseKeymap::None {
+ return;
+ }
+
KeymapFile::load_asset(DEFAULT_KEYMAP_PATH, cx).unwrap();
if VimModeSetting::get_global(cx).0 {
KeymapFile::load_asset("keymaps/vim.json", cx).unwrap();
}
- if let Some(asset_path) = BaseKeymap::get_global(cx).asset_path() {
+ if let Some(asset_path) = base_keymap.asset_path() {
KeymapFile::load_asset(asset_path, cx).unwrap();
}
}