diff options
author | Jeff Zhao <jeff.no.zhao@gmail.com> | 2021-09-26 13:59:04 -0400 |
---|---|---|
committer | Jeff Zhao <jeff.no.zhao@gmail.com> | 2021-09-26 13:59:04 -0400 |
commit | 98aaa57fb33e69fb6daf12b828ac6384caece44b (patch) | |
tree | 0cc70f9e0c81e397d600c1deba422617b03f74a3 | |
parent | a918005d837fcd3a882dba6e4e713a730a6190ce (diff) |
code cleanup
-rw-r--r-- | src/commands/change_directory.rs | 2 | ||||
-rw-r--r-- | src/commands/key_command.rs | 4 | ||||
-rw-r--r-- | src/commands/show_workers.rs | 2 | ||||
-rw-r--r-- | src/config/mimetype/entry.rs | 2 | ||||
-rw-r--r-- | src/fs/dirlist.rs | 2 | ||||
-rw-r--r-- | src/fs/entry.rs | 3 | ||||
-rw-r--r-- | src/history.rs | 6 | ||||
-rw-r--r-- | src/preview/preview_file.rs | 5 | ||||
-rw-r--r-- | src/run.rs | 8 | ||||
-rw-r--r-- | src/ui/views/tui_command_menu.rs | 2 | ||||
-rw-r--r-- | src/ui/views/tui_folder_view.rs | 8 | ||||
-rw-r--r-- | src/ui/views/tui_textfield.rs | 2 | ||||
-rw-r--r-- | src/ui/views/tui_worker_view.rs | 2 | ||||
-rw-r--r-- | src/ui/widgets/tui_dirlist_detailed.rs | 4 | ||||
-rw-r--r-- | src/ui/widgets/tui_prompt.rs | 2 | ||||
-rw-r--r-- | src/util/keyparse.rs | 15 | ||||
-rw-r--r-- | src/util/sort.rs | 4 |
17 files changed, 31 insertions, 42 deletions
diff --git a/src/commands/change_directory.rs b/src/commands/change_directory.rs index 3cd8b0e..c4e9b19 100644 --- a/src/commands/change_directory.rs +++ b/src/commands/change_directory.rs @@ -17,7 +17,7 @@ fn _change_directory(path: &path::Path, context: &mut AppContext) -> std::io::Re .tab_context_mut() .curr_tab_mut() .history_mut() - .populate_to_root(&path, &options)?; + .populate_to_root(path, &options)?; Ok(()) } diff --git a/src/commands/key_command.rs b/src/commands/key_command.rs index 0c1ba5b..b6f9a23 100644 --- a/src/commands/key_command.rs +++ b/src/commands/key_command.rs @@ -401,7 +401,7 @@ impl AppExecute for KeyCommand { } Self::CutFiles => file_ops::cut(context), Self::CopyFiles => file_ops::copy(context), - Self::PasteFiles(options) => file_ops::paste(context, options.clone()), + Self::PasteFiles(options) => file_ops::paste(context, *options), Self::CopyFileName => file_ops::copy_filename(context), Self::CopyFileNameWithoutExtension => { file_ops::copy_filename_without_extension(context) @@ -445,7 +445,7 @@ impl AppExecute for KeyCommand { Self::SearchPrev => search::search_prev(context), Self::SelectFiles(pattern, options) => { - selection::select_files(context, pattern.as_str(), &options) + selection::select_files(context, pattern.as_str(), options) } Self::SetMode => set_mode::set_mode(context, backend), Self::SubProcess(v, spawn) => { diff --git a/src/commands/show_workers.rs b/src/commands/show_workers.rs index 5079673..d31924a 100644 --- a/src/commands/show_workers.rs +++ b/src/commands/show_workers.rs @@ -12,7 +12,7 @@ pub fn show_workers( ) -> JoshutoResult<()> { context.flush_event(); - let view = TuiWorkerView::new(exit_key.clone()); + let view = TuiWorkerView::new(*exit_key); view.display(context, backend); Ok(()) } diff --git a/src/config/mimetype/entry.rs b/src/config/mimetype/entry.rs index ee6e09d..6a85b0e 100644 --- a/src/config/mimetype/entry.rs +++ b/src/config/mimetype/entry.rs @@ -24,7 +24,7 @@ impl AppList { } pub fn app_list(&self) -> &[AppMimetypeEntry] { - &self._app_list.as_slice() + self._app_list.as_slice() } } diff --git a/src/fs/dirlist.rs b/src/fs/dirlist.rs index 8500b07..d74a799 100644 --- a/src/fs/dirlist.rs +++ b/src/fs/dirlist.rs @@ -32,7 +32,7 @@ impl JoshutoDirList { pub fn from_path(path: path::PathBuf, options: &DisplayOption) -> std::io::Result<Self> { let filter_func = options.filter_func(); - let mut contents = read_directory(path.as_path(), filter_func, &options)?; + let mut contents = read_directory(path.as_path(), filter_func, options)?; let sort_options = options.sort_options_ref(); contents.sort_by(|f1, f2| sort_options.compare(f1, f2)); diff --git a/src/fs/entry.rs b/src/fs/entry.rs index 5875a78..a36648b 100644 --- a/src/fs/entry.rs +++ b/src/fs/entry.rs @@ -138,6 +138,5 @@ fn create_icon_label(name: &str, metadata: &JoshutoMetadata) -> String { } fn get_directory_size(path: &path::Path) -> io::Result<usize> { - let directory_size = fs::read_dir(path).map(|s| s.count()); - directory_size + fs::read_dir(path).map(|s| s.count()) } diff --git a/src/history.rs b/src/history.rs index 0412740..c46d1e4 100644 --- a/src/history.rs +++ b/src/history.rs @@ -58,7 +58,7 @@ impl DirectoryHistory for JoshutoHistory { }; if need_update { let dirlist = if contains_key { - create_dirlist_with_history(self, path, &options)? + create_dirlist_with_history(self, path, options)? } else { JoshutoDirList::from_path(path.to_path_buf(), options)? }; @@ -69,7 +69,7 @@ impl DirectoryHistory for JoshutoHistory { fn create_or_reload(&mut self, path: &Path, options: &DisplayOption) -> io::Result<()> { let dirlist = if self.contains_key(path) { - create_dirlist_with_history(self, path, &options)? + create_dirlist_with_history(self, path, options)? } else { JoshutoDirList::from_path(path.to_path_buf(), options)? }; @@ -78,7 +78,7 @@ impl DirectoryHistory for JoshutoHistory { } fn reload(&mut self, path: &Path, options: &DisplayOption) -> io::Result<()> { - let dirlist = create_dirlist_with_history(self, path, &options)?; + let dirlist = create_dirlist_with_history(self, path, options)?; self.insert(path.to_path_buf(), dirlist); Ok(()) } diff --git a/src/preview/preview_file.rs b/src/preview/preview_file.rs index db50098..6ed92a7 100644 --- a/src/preview/preview_file.rs +++ b/src/preview/preview_file.rs @@ -24,10 +24,9 @@ pub struct FilePreview { impl std::convert::From<Output> for FilePreview { fn from(output: Output) -> Self { let s = String::from_utf8_lossy(&output.stdout).to_string(); - let s2 = s.replace('\t', " "); - let s = s2.to_string(); + let s2 = s.replace('\t', " ").to_string(); let status = output.status; - Self { status, output: s } + Self { status, output: s2 } } } @@ -19,7 +19,7 @@ pub fn run( let curr_path = std::env::current_dir()?; { // Initialize an initial tab - let tab = JoshutoTab::new(curr_path, &context.config_ref().display_options_ref())?; + let tab = JoshutoTab::new(curr_path, context.config_ref().display_options_ref())?; context.tab_context_mut().push_tab(tab); // trigger a preview of child @@ -27,7 +27,7 @@ pub fn run( } while context.quit == QuitType::DoNot { - backend.render(TuiView::new(&context)); + backend.render(TuiView::new(context)); if !context.worker_context_ref().is_busy() && !context.worker_context_ref().is_empty() { context.worker_context_mut().start_next_job(); @@ -43,7 +43,7 @@ pub fn run( preview_default::load_preview(context, backend); } AppEvent::Termion(key) => { - if let Some(_) = context.message_queue_ref().current_message() { + if context.message_queue_ref().current_message().is_some() { context.message_queue_mut().pop_front(); } match key { @@ -73,7 +73,7 @@ pub fn run( Some(CommandKeybind::CompositeKeybind(m)) => { let cmd = { let mut menu = TuiCommandMenu::new(); - menu.get_input(backend, context, &m) + menu.get_input(backend, context, m) }; if let Some(command) = cmd { diff --git a/src/ui/views/tui_command_menu.rs b/src/ui/views/tui_command_menu.rs index 5f7bc56..3b9a295 100644 --- a/src/ui/views/tui_command_menu.rs +++ b/src/ui/views/tui_command_menu.rs @@ -39,7 +39,7 @@ impl TuiCommandMenu { let area = frame.size(); { - let view = TuiView::new(&context); + let view = TuiView::new(context); frame.render_widget(view, area); } diff --git a/src/ui/views/tui_folder_view.rs b/src/ui/views/tui_folder_view.rs index 4f64fc0..398c3d8 100644 --- a/src/ui/views/tui_folder_view.rs +++ b/src/ui/views/tui_folder_view.rs @@ -122,12 +122,12 @@ impl<'a> Widget for TuiFolderView<'a> { // render parent view if let Some(list) = parent_list.as_ref() { - TuiDirList::new(&list).render(layout_rect[0], buf); + TuiDirList::new(list).render(layout_rect[0], buf); } // render current view if let Some(list) = curr_list.as_ref() { - TuiDirListDetailed::new(&list).render(layout_rect[1], buf); + TuiDirListDetailed::new(list).render(layout_rect[1], buf); let rect = Rect { x: 0, y: area.height - 1, @@ -144,7 +144,7 @@ impl<'a> Widget for TuiFolderView<'a> { .wrap(Wrap { trim: true }) .render(rect, buf); } else if let Some(msg) = self.context.message_queue_ref().current_message() { - let text = Span::styled(msg.content.as_str(), msg.style.clone()); + let text = Span::styled(msg.content.as_str(), msg.style); Paragraph::new(text) .wrap(Wrap { trim: true }) .render(rect, buf); @@ -156,7 +156,7 @@ impl<'a> Widget for TuiFolderView<'a> { // render preview if let Some(list) = child_list.as_ref() { - TuiDirList::new(&list).render(layout_rect[2], buf); + TuiDirList::new(list).render(layout_rect[2], buf); } else if let Some(entry) = curr_entry { if let Some(Some(preview)) = preview_context.get_preview(entry.file_path()) { match preview.status.code() { diff --git a/src/ui/views/tui_textfield.rs b/src/ui/views/tui_textfield.rs index b664300..c86b49f 100644 --- a/src/ui/views/tui_textfield.rs +++ b/src/ui/views/tui_textfield.rs @@ -94,7 +94,7 @@ impl<'a> TuiTextField<'a> { return; } { - let mut view = TuiView::new(&context); + let mut view = TuiView::new(context); view.show_bottom_status = false; frame.render_widget(view, area); } diff --git a/src/ui/views/tui_worker_view.rs b/src/ui/views/tui_worker_view.rs index 08ed38d..035c137 100644 --- a/src/ui/views/tui_worker_view.rs +++ b/src/ui/views/tui_worker_view.rs @@ -38,7 +38,7 @@ impl TuiWorkerView { width: area.width, height: area.height - 1, }; - let view = TuiWorker::new(&context); + let view = TuiWorker::new(context); frame.render_widget(view, rect); }); diff --git a/src/ui/widgets/tui_dirlist_detailed.rs b/src/ui/widgets/tui_dirlist_detailed.rs index a43d4f6..e03f084 100644 --- a/src/ui/widgets/tui_dirlist_detailed.rs +++ b/src/ui/widgets/tui_dirlist_detailed.rs @@ -85,7 +85,7 @@ fn print_entry( .metadata .directory_size() .map(|n| n.to_string()) - .unwrap_or("".to_string()), + .unwrap_or_else(|| "".to_string()), FileType::File => format::file_size_to_string(entry.metadata.len()), }; let symlink_string = match entry.metadata.link_type() { @@ -167,7 +167,7 @@ pub fn trim_file_label(name: &str, drawing_width: usize) -> String { let truncated_stem = stem.trunc(stem_width - 3); format!("{}{}.{}", truncated_stem, ELLIPSIS, ELLIPSIS) } else if ext_width == drawing_width { - extension.replacen('.', ELLIPSIS, 1).to_string() + extension.replacen('.', ELLIPSIS, 1) } else { let stem_width = drawing_width - ext_width; let truncated_stem = stem.trunc(stem_width - 1); diff --git a/src/ui/widgets/tui_prompt.rs b/src/ui/widgets/tui_prompt.rs index ec947a9..bc1b210 100644 --- a/src/ui/widgets/tui_prompt.rs +++ b/src/ui/widgets/tui_prompt.rs @@ -31,7 +31,7 @@ impl<'a> TuiPrompt<'a> { } { - let mut view = TuiView::new(&context); + let mut view = TuiView::new(context); view.show_bottom_status = false; frame.render_widget(view, f_size); } diff --git a/src/util/keyparse.rs b/src/util/keyparse.rs index e850cc2..fb39628 100644 --- a/src/util/keyparse.rs +++ b/src/util/keyparse.rs @@ -50,24 +50,15 @@ pub fn str_to_key(s: &str) -> Option<Key> { if s.starts_with("ctrl+") { let ch = s.chars().nth("ctrl+".len()); - let key = match ch { - Some(ch) => Some(Key::Ctrl(ch)), - None => None, - }; + let key = ch.map(Key::Ctrl); return key; } else if s.starts_with("alt+") { let ch = s.chars().nth("alt+".len()); - let key = match ch { - Some(ch) => Some(Key::Alt(ch)), - None => None, - }; + let key = ch.map(Key::Alt); return key; } else if s.len() == 1 { let ch = s.chars().next(); - let key = match ch { - Some(ch) => Some(Key::Char(ch)), - None => None, - }; + let key = ch.map(Key::Char); return key; } None diff --git a/src/util/sort.rs b/src/util/sort.rs index 4f9f931..b85de49 100644 --- a/src/util/sort.rs +++ b/src/util/sort.rs @@ -162,7 +162,7 @@ fn mtime_sort(file1: &JoshutoDirEntry, file2: &JoshutoDirEntry) -> cmp::Ordering let f2_mtime: time::SystemTime = f2_meta.modified()?; Ok(f1_mtime.cmp(&f2_mtime)) } - compare(&file1, &file2).unwrap_or(cmp::Ordering::Equal) + compare(file1, file2).unwrap_or(cmp::Ordering::Equal) } fn size_sort(file1: &JoshutoDirEntry, file2: &JoshutoDirEntry) -> cmp::Ordering { @@ -183,7 +183,7 @@ fn lexical_sort( let f1_name = f1.file_name(); let f2_name = f2.file_name(); if sort_option.case_sensitive { - f1_name.cmp(&f2_name) + f1_name.cmp(f2_name) } else { let f1_name = f1_name.to_lowercase(); let f2_name = f2_name.to_lowercase(); |