summaryrefslogtreecommitdiffstats
path: root/src/config
diff options
context:
space:
mode:
authorJiayi Zhao <jeff.no.zhao@gmail.com>2020-04-18 19:10:57 -0400
committerJiayi Zhao <jeff.no.zhao@gmail.com>2020-04-18 19:10:57 -0400
commit3fa40b654a96df76f445da7da3a35bce69730ca8 (patch)
treefa80a7c2b8d622f3adcd5bbb1585ab99d0bccebd /src/config
parent06b9a79c02717463ed360077a837534b362784b3 (diff)
update to tui-rs 0.9
Diffstat (limited to 'src/config')
-rw-r--r--src/config/keymap.rs98
-rw-r--r--src/config/mimetype.rs2
2 files changed, 54 insertions, 46 deletions
diff --git a/src/config/keymap.rs b/src/config/keymap.rs
index c1199e8..608b12c 100644
--- a/src/config/keymap.rs
+++ b/src/config/keymap.rs
@@ -33,173 +33,181 @@ impl JoshutoCommandMapping {
map: HashMap::new(),
}
}
-}
-impl std::default::Default for JoshutoCommandMapping {
- fn default() -> Self {
- let mut m = Self {
- map: HashMap::new(),
- };
+ pub fn default_res(&mut self) -> Result<(), String> {
+ let mut m = self;
let cmd = Box::new(commands::CursorMoveUp::new(1));
let keys = [Key::Up];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CursorMoveDown::new(1));
let keys = [Key::Down];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::ParentDirectory::new());
let keys = [Key::Left];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::OpenFile::new());
let keys = [Key::Right];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::OpenFile::new());
let keys = [Key::Char('\n')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CursorMoveHome::new());
let keys = [Key::Home];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CursorMoveEnd::new());
let keys = [Key::End];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CursorMovePageUp::new());
let keys = [Key::PageUp];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CursorMovePageDown::new());
let keys = [Key::PageDown];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
// vim keys
let cmd = Box::new(commands::CursorMoveUp::new(1));
let keys = [Key::Char('k')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CursorMoveDown::new(1));
let keys = [Key::Char('j')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::ParentDirectory::new());
let keys = [Key::Char('h')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::OpenFile::new());
let keys = [Key::Char('l')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::NewTab::new());
let keys = [Key::Char('T')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::NewTab::new());
let keys = [Key::Ctrl('t')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::NewTab::new());
let keys = [Key::Char('W')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::NewTab::new());
let keys = [Key::Ctrl('w')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CloseTab::new());
let keys = [Key::Char('q')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::ForceQuit::new());
let keys = [Key::Char('Q')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::ReloadDirList::new());
let keys = [Key::Char('R')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::ToggleHiddenFiles::new());
let keys = [Key::Char('z'), Key::Char('h')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::TabSwitch::new(1));
let keys = [Key::Char('\t')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::TabSwitch::new(-1));
let keys = [Key::BackTab];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::OpenFileWith::new());
let keys = [Key::Char('r')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CutFiles::new());
let keys = [Key::Char('d'), Key::Char('d')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CopyFiles::new());
let keys = [Key::Char('y'), Key::Char('y')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::PasteFiles::new(Options::default()));
let keys = [Key::Char('p'), Key::Char('p')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::DeleteFiles::new());
let keys = [Key::Delete];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::DeleteFiles::new());
let keys = [Key::Char('D'), Key::Char('d')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::RenameFileAppend::new());
let keys = [Key::Char('a')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::RenameFilePrepend::new());
let keys = [Key::Char('A')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CommandLine::new(
"search ".to_string(),
"".to_string(),
));
let keys = [Key::Char('/')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::SearchNext::new());
let keys = [Key::Char('n')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::SearchPrev::new());
let keys = [Key::Char('N')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::BulkRename::new());
let keys = [Key::Char('b'), Key::Char('b')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::SetMode::new());
let keys = [Key::Char('=')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CommandLine::new("".to_string(), "".to_string()));
let keys = [Key::Char(';')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CommandLine::new(
"mkdir ".to_string(),
"".to_string(),
));
let keys = [Key::Char('m'), Key::Char('k')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
let cmd = Box::new(commands::CommandLine::new(
"rename ".to_string(),
"".to_string(),
));
let keys = [Key::Char('c'), Key::Char('w')];
- insert_keycommand(&mut m, cmd, &keys);
+ insert_keycommand(&mut m, cmd, &keys)?;
+
+ Ok(())
+ }
+}
+
+impl std::default::Default for JoshutoCommandMapping {
+ fn default() -> Self {
+ let mut m = Self {
+ map: HashMap::new(),
+ };
+
+ let _ = m.default_res();
m
}
diff --git a/src/config/mimetype.rs b/src/config/mimetype.rs
index ce542ff..f8b163f 100644
--- a/src/config/mimetype.rs
+++ b/src/config/mimetype.rs
@@ -2,7 +2,7 @@ use serde_derive::Deserialize;
use std::collections::HashMap;
use std::fmt;
use std::io::Read;
-use std::path::{Path, PathBuf};
+use std::path::Path;
use std::process;
use super::{parse_config_file, ConfigStructure};