diff --git a/yazi-core/src/external/fd.rs b/yazi-core/src/external/fd.rs index f299af76..55f7d72f 100644 --- a/yazi-core/src/external/fd.rs +++ b/yazi-core/src/external/fd.rs @@ -2,7 +2,7 @@ use std::process::Stdio; use anyhow::Result; use tokio::{io::{AsyncBufReadExt, BufReader}, process::Command, sync::mpsc::{self, UnboundedReceiver}}; -use yazi_shared::{files::File, fs::Url}; +use yazi_shared::fs::{File, Url}; pub struct FdOpt { pub cwd: Url, diff --git a/yazi-core/src/external/rg.rs b/yazi-core/src/external/rg.rs index c240b66d..3367f53c 100644 --- a/yazi-core/src/external/rg.rs +++ b/yazi-core/src/external/rg.rs @@ -2,7 +2,7 @@ use std::process::Stdio; use anyhow::Result; use tokio::{io::{AsyncBufReadExt, BufReader}, process::Command, sync::mpsc::{self, UnboundedReceiver}}; -use yazi_shared::{files::File, fs::Url}; +use yazi_shared::fs::{File, Url}; pub struct RgOpt { pub cwd: Url, diff --git a/yazi-core/src/files/files.rs b/yazi-core/src/files/files.rs index ff79e141..f5e3b426 100644 --- a/yazi-core/src/files/files.rs +++ b/yazi-core/src/files/files.rs @@ -3,7 +3,7 @@ use std::{collections::{BTreeMap, BTreeSet}, mem, ops::Deref, sync::atomic::Orde use anyhow::Result; use tokio::{fs, select, sync::mpsc::{self, UnboundedReceiver}}; use yazi_config::{manager::SortBy, MANAGER}; -use yazi_shared::{files::{File, FILES_TICKET}, fs::Url}; +use yazi_shared::fs::{File, Url, FILES_TICKET}; use super::FilesSorter; diff --git a/yazi-core/src/files/sorter.rs b/yazi-core/src/files/sorter.rs index 9eca8551..8ba8f9d5 100644 --- a/yazi-core/src/files/sorter.rs +++ b/yazi-core/src/files/sorter.rs @@ -1,7 +1,7 @@ use std::{cmp::Ordering, collections::BTreeMap, mem}; use yazi_config::manager::SortBy; -use yazi_shared::{files::File, fs::Url, natsort}; +use yazi_shared::{fs::File, fs::Url, natsort}; #[derive(Clone, Copy, Default, PartialEq)] pub struct FilesSorter { diff --git a/yazi-core/src/manager/commands/create.rs b/yazi-core/src/manager/commands/create.rs index 890dd79c..7320fd5d 100644 --- a/yazi-core/src/manager/commands/create.rs +++ b/yazi-core/src/manager/commands/create.rs @@ -2,7 +2,7 @@ use std::path::{PathBuf, MAIN_SEPARATOR}; use tokio::fs; use yazi_config::popup::InputCfg; -use yazi_shared::{emit, event::Exec, files::{File, FilesOp}, fs::Url}; +use yazi_shared::{emit, event::Exec, fs::{File, FilesOp}, fs::Url}; use crate::{input::Input, manager::Manager}; diff --git a/yazi-core/src/manager/commands/rename.rs b/yazi-core/src/manager/commands/rename.rs index 60a7a904..77125ff5 100644 --- a/yazi-core/src/manager/commands/rename.rs +++ b/yazi-core/src/manager/commands/rename.rs @@ -3,7 +3,7 @@ use std::{collections::BTreeMap, ffi::OsStr, io::{stdout, BufWriter, Write}, pat use anyhow::{anyhow, bail, Result}; use tokio::{fs::{self, OpenOptions}, io::{stdin, AsyncReadExt, AsyncWriteExt}}; use yazi_config::{popup::InputCfg, OPEN, PREVIEW}; -use yazi_shared::{emit, event::Exec, files::{File, FilesOp}, fs::{max_common_root, Url}, term::Term, Defer}; +use yazi_shared::{emit, event::Exec, fs::{File, FilesOp}, fs::{max_common_root, Url}, term::Term, Defer}; use crate::{external::{self, ShellOpt}, input::Input, manager::Manager, Ctx, BLOCKER}; diff --git a/yazi-core/src/manager/manager.rs b/yazi-core/src/manager/manager.rs index 269042a5..4cc0c7a5 100644 --- a/yazi-core/src/manager/manager.rs +++ b/yazi-core/src/manager/manager.rs @@ -1,6 +1,6 @@ use std::collections::{BTreeMap, HashMap, HashSet}; -use yazi_shared::{files::{File, FilesOp}, fs::Url}; +use yazi_shared::{fs::{File, FilesOp}, fs::Url}; use super::{Tabs, Watcher}; use crate::{tab::{Folder, Tab}, tasks::Tasks}; diff --git a/yazi-core/src/manager/watcher.rs b/yazi-core/src/manager/watcher.rs index 785b2e2b..6e9ba6fc 100644 --- a/yazi-core/src/manager/watcher.rs +++ b/yazi-core/src/manager/watcher.rs @@ -5,7 +5,7 @@ use notify::{event::{MetadataKind, ModifyKind}, EventKind, RecommendedWatcher, R use parking_lot::RwLock; use tokio::{fs, pin, sync::mpsc::{self, UnboundedReceiver}}; use tokio_stream::{wrappers::UnboundedReceiverStream, StreamExt}; -use yazi_shared::{emit, files::{File, FilesOp}, fs::Url}; +use yazi_shared::{emit, fs::{File, FilesOp}, fs::Url}; use crate::{external, files::Files}; diff --git a/yazi-core/src/preview/preview.rs b/yazi-core/src/preview/preview.rs index 32804d57..81ec6e01 100644 --- a/yazi-core/src/preview/preview.rs +++ b/yazi-core/src/preview/preview.rs @@ -4,7 +4,7 @@ use tokio::{pin, task::JoinHandle}; use tokio_stream::{wrappers::UnboundedReceiverStream, StreamExt}; use yazi_adaptor::ADAPTOR; use yazi_config::MANAGER; -use yazi_shared::{emit, event::{PreviewData, PreviewLock}, files::FilesOp, fs::{Cha, Url}, MimeKind, PeekError}; +use yazi_shared::{emit, event::{PreviewData, PreviewLock}, fs::{Cha, FilesOp, Url}, MimeKind, PeekError}; use super::Provider; use crate::{files::Files, manager::Manager, Highlighter}; diff --git a/yazi-core/src/tab/commands/reveal.rs b/yazi-core/src/tab/commands/reveal.rs index 4c7bda76..129c67a6 100644 --- a/yazi-core/src/tab/commands/reveal.rs +++ b/yazi-core/src/tab/commands/reveal.rs @@ -1,4 +1,4 @@ -use yazi_shared::{emit, event::Exec, files::{File, FilesOp}, fs::{expand_path, Url}, Layer}; +use yazi_shared::{emit, event::Exec, fs::{File, FilesOp}, fs::{expand_path, Url}, Layer}; use crate::{manager::Manager, tab::Tab}; diff --git a/yazi-core/src/tab/commands/search.rs b/yazi-core/src/tab/commands/search.rs index 49b51471..b6ccbaf2 100644 --- a/yazi-core/src/tab/commands/search.rs +++ b/yazi-core/src/tab/commands/search.rs @@ -4,7 +4,7 @@ use anyhow::bail; use tokio::pin; use tokio_stream::{wrappers::UnboundedReceiverStream, StreamExt}; use yazi_config::popup::InputCfg; -use yazi_shared::{emit, event::Exec, files::FilesOp}; +use yazi_shared::{emit, event::Exec, fs::FilesOp}; use crate::{external, input::Input, manager::Manager, tab::Tab}; diff --git a/yazi-core/src/tab/folder.rs b/yazi-core/src/tab/folder.rs index 623b907d..832fb63f 100644 --- a/yazi-core/src/tab/folder.rs +++ b/yazi-core/src/tab/folder.rs @@ -1,6 +1,6 @@ use ratatui::layout::Rect; use yazi_config::MANAGER; -use yazi_shared::{emit, files::{File, FilesOp}, fs::Url}; +use yazi_shared::{emit, fs::{File, FilesOp}, fs::Url}; use crate::{files::Files, Step}; diff --git a/yazi-core/src/tab/tab.rs b/yazi-core/src/tab/tab.rs index d1ddd9dc..72adf988 100644 --- a/yazi-core/src/tab/tab.rs +++ b/yazi-core/src/tab/tab.rs @@ -2,7 +2,7 @@ use std::{borrow::Cow, collections::BTreeMap}; use anyhow::Result; use tokio::task::JoinHandle; -use yazi_shared::{event::PreviewLock, files::File, fs::Url}; +use yazi_shared::{event::PreviewLock, fs::File, fs::Url}; use super::{Backstack, Config, Finder, Folder, Mode}; use crate::preview::Preview; diff --git a/yazi-core/src/tasks/tasks.rs b/yazi-core/src/tasks/tasks.rs index 0c573463..ea6d4b68 100644 --- a/yazi-core/src/tasks/tasks.rs +++ b/yazi-core/src/tasks/tasks.rs @@ -3,7 +3,7 @@ use std::{collections::{BTreeMap, HashMap, HashSet}, ffi::OsStr, path::Path, syn use serde::Serialize; use tracing::debug; use yazi_config::{manager::SortBy, open::Opener, popup::InputCfg, OPEN}; -use yazi_shared::{files::File, fs::Url, term::Term, MimeKind}; +use yazi_shared::{fs::File, fs::Url, term::Term, MimeKind}; use super::{running::Running, task::TaskSummary, Scheduler, TASKS_PADDING, TASKS_PERCENT}; use crate::{files::Files, input::Input}; diff --git a/yazi-core/src/tasks/workers/precache.rs b/yazi-core/src/tasks/workers/precache.rs index a3239ee4..3b383fe9 100644 --- a/yazi-core/src/tasks/workers/precache.rs +++ b/yazi-core/src/tasks/workers/precache.rs @@ -5,7 +5,7 @@ use parking_lot::Mutex; use tokio::{fs, sync::mpsc}; use yazi_adaptor::Image; use yazi_config::PREVIEW; -use yazi_shared::{emit, files::FilesOp, fs::{calculate_size, Url}, Throttle}; +use yazi_shared::{emit, fs::{calculate_size, FilesOp, Url}, Throttle}; use crate::{external, tasks::TaskOp}; diff --git a/yazi-fm/src/app/app.rs b/yazi-fm/src/app/app.rs index 29c6b32b..c8107b03 100644 --- a/yazi-fm/src/app/app.rs +++ b/yazi-fm/src/app/app.rs @@ -5,7 +5,7 @@ use crossterm::event::KeyEvent; use ratatui::{backend::Backend, prelude::Rect}; use yazi_config::{keymap::Key, BOOT}; use yazi_core::{input::InputMode, preview::COLLISION, Ctx}; -use yazi_shared::{emit, event::{Event, Exec}, files::FilesOp, term::Term, Layer}; +use yazi_shared::{emit, event::{Event, Exec}, fs::FilesOp, term::Term, Layer}; use crate::{Executor, Logs, Panic, Root, Signals}; diff --git a/yazi-plugin/src/bindings/active.rs b/yazi-plugin/src/bindings/active.rs index c0d3246f..9075cf26 100644 --- a/yazi-plugin/src/bindings/active.rs +++ b/yazi-plugin/src/bindings/active.rs @@ -104,7 +104,7 @@ impl<'a, 'b> Active<'a, 'b> { fn file( &self, idx: usize, - inner: &'a yazi_shared::files::File, + inner: &'a yazi_shared::fs::File, folder: &'a yazi_core::tab::Folder, ) -> mlua::Result> { let ud = self.scope.create_any_userdata_ref(inner)?; diff --git a/yazi-plugin/src/bindings/files.rs b/yazi-plugin/src/bindings/files.rs index 0962183b..18327ffd 100644 --- a/yazi-plugin/src/bindings/files.rs +++ b/yazi-plugin/src/bindings/files.rs @@ -6,10 +6,10 @@ use yazi_config::THEME; use super::{Range, Url}; use crate::{layout::Style, LUA}; -pub struct File(yazi_shared::files::File); +pub struct File(yazi_shared::fs::File); -impl From<&yazi_shared::files::File> for File { - fn from(value: &yazi_shared::files::File) -> Self { Self(value.clone()) } +impl From<&yazi_shared::fs::File> for File { + fn from(value: &yazi_shared::fs::File) -> Self { Self(value.clone()) } } impl UserData for File { @@ -47,7 +47,7 @@ impl Files { }); })?; - LUA.register_userdata_type::(|reg| { + LUA.register_userdata_type::(|reg| { reg.add_field_method_get("url", |_, me| Ok(Url::from(&me.url))); reg.add_field_method_get("link_to", |_, me| Ok(me.link_to().map(Url::from))); reg.add_field_method_get("is_link", |_, me| Ok(me.is_link())); @@ -87,7 +87,7 @@ impl Files { Ok(me.url.file_name().map(|n| n.to_string_lossy().to_string())) }); reg.add_function("size", |_, me: AnyUserData| { - let file = me.borrow::()?; + let file = me.borrow::()?; if !file.is_dir() { return Ok(Some(file.len)); } @@ -97,7 +97,7 @@ impl Files { }); reg.add_function("mime", |_, me: AnyUserData| { let manager = me.named_user_value::>("manager")?; - let file = me.borrow::()?; + let file = me.borrow::()?; Ok(manager.mimetype.get(&file.url).cloned()) }); reg.add_function("prefix", |_, me: AnyUserData| { @@ -106,7 +106,7 @@ impl Files { return Ok(None); } - let file = me.borrow::()?; + let file = me.borrow::()?; let mut p = file.url.strip_prefix(&folder.cwd).unwrap_or(&file.url).components(); p.next_back(); Ok(Some(p.as_path().to_string_lossy().to_string())) @@ -122,7 +122,7 @@ impl Files { }); reg.add_function("style", |_, me: AnyUserData| { let manager = me.named_user_value::>("manager")?; - let file = me.borrow::()?; + let file = me.borrow::()?; let mime = manager.mimetype.get(&file.url); Ok( THEME @@ -134,12 +134,12 @@ impl Files { }); reg.add_function("is_hovered", |_, me: AnyUserData| { let folder = me.named_user_value::>("folder")?; - let file = me.borrow::()?; + let file = me.borrow::()?; Ok(matches!(folder.hovered(), Some(f) if f.url == file.url)) }); reg.add_function("is_yanked", |_, me: AnyUserData| { let manager = me.named_user_value::>("manager")?; - let file = me.borrow::()?; + let file = me.borrow::()?; Ok(if !manager.yanked.1.contains(&file.url) { 0u8 } else if manager.yanked.0 { @@ -151,7 +151,7 @@ impl Files { reg.add_function("is_selected", |_, me: AnyUserData| { let manager = me.named_user_value::>("manager")?; let folder = me.named_user_value::>("folder")?; - let file = me.borrow::()?; + let file = me.borrow::()?; let selected = folder.files.is_selected(&file.url); Ok(if !manager.active().mode.is_visual() { @@ -167,7 +167,7 @@ impl Files { return Ok(None); }; - let file = me.borrow::()?; + let file = me.borrow::()?; if let Some(idx) = finder.matched_idx(&file.url) { return Some( lua.create_sequence_from([idx.into_lua(lua)?, finder.matched().len().into_lua(lua)?]), @@ -182,7 +182,7 @@ impl Files { return Ok(None); }; - let file = me.borrow::()?; + let file = me.borrow::()?; let Some(h) = file.name().and_then(|n| finder.highlighted(n)) else { return Ok(None); }; diff --git a/yazi-shared/src/event/event.rs b/yazi-shared/src/event/event.rs index ec665a58..d2ff9d61 100644 --- a/yazi-shared/src/event/event.rs +++ b/yazi-shared/src/event/event.rs @@ -4,7 +4,7 @@ use crossterm::event::KeyEvent; use tokio::sync::{mpsc::UnboundedSender, oneshot}; use super::Exec; -use crate::{files::FilesOp, fs::{Cha, Url}, term::Term, Layer, RoCell}; +use crate::{fs::{Cha, FilesOp, Url}, term::Term, Layer, RoCell}; static TX: RoCell> = RoCell::new(); diff --git a/yazi-shared/src/files/mod.rs b/yazi-shared/src/files/mod.rs deleted file mode 100644 index 600b5425..00000000 --- a/yazi-shared/src/files/mod.rs +++ /dev/null @@ -1,5 +0,0 @@ -mod file; -mod op; - -pub use file::*; -pub use op::*; diff --git a/yazi-shared/src/files/file.rs b/yazi-shared/src/fs/file.rs similarity index 100% rename from yazi-shared/src/files/file.rs rename to yazi-shared/src/fs/file.rs diff --git a/yazi-shared/src/fs/mod.rs b/yazi-shared/src/fs/mod.rs index 685326a8..9cd7865e 100644 --- a/yazi-shared/src/fs/mod.rs +++ b/yazi-shared/src/fs/mod.rs @@ -1,9 +1,13 @@ mod cha; +mod file; mod fns; +mod op; mod path; mod url; pub use cha::*; +pub use file::*; pub use fns::*; +pub use op::*; pub use path::*; pub use url::*; diff --git a/yazi-shared/src/files/op.rs b/yazi-shared/src/fs/op.rs similarity index 100% rename from yazi-shared/src/files/op.rs rename to yazi-shared/src/fs/op.rs diff --git a/yazi-shared/src/lib.rs b/yazi-shared/src/lib.rs index df211bd1..886efd8a 100644 --- a/yazi-shared/src/lib.rs +++ b/yazi-shared/src/lib.rs @@ -6,7 +6,6 @@ mod defer; mod env; mod errors; pub mod event; -pub mod files; pub mod fs; mod layer; mod mime;