fpicker 0.1.4

ratatui-file-picker allows you to select multiple files from a tree and add their content or paths to clipboard. It also returns the absolute paths of selected files on exit.
Documentation

Build #1997096 2025-04-14 08:22:29

# rustc version rustc 1.88.0-nightly (092a284ba 2025-04-13)

# docs.rs version docsrs 0.6.0 (ee9a3fe6 2025-03-28)

# build log [INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace/builds/fpicker-0.1.4/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace/builds/fpicker-0.1.4/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "6442450944" "--cpus" "6" "--user" "1001:1001" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20250413-1.88.0-nightly-092a284ba\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j6" "--target" "x86_64-unknown-linux-gnu" "-Zunstable-options" "-Zrustdoc-scrape-examples", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] f39a7096d0cfe31f87950b263caefb380e3b45881314a12fc877aae7e344eb02 [INFO] running `Command { std: "docker" "start" "-a" "f39a7096d0cfe31f87950b263caefb380e3b45881314a12fc877aae7e344eb02", kill_on_drop: false }` [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/widget.rs:63:21 [INFO] [stderr] | [INFO] [stderr] 63 | let mut style = theme.highlight_dir_style.clone(); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/file_explorer.rs:265:5 [INFO] [stderr] | [INFO] [stderr] 265 | pub fn selected_files(&self) -> &Vec<File> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/lib.rs:8:9 [INFO] [stderr] | [INFO] [stderr] 8 | #![warn(missing_docs)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/file_explorer.rs:620:5 [INFO] [stderr] | [INFO] [stderr] 620 | pub fn set_selected(&mut self, selected: bool) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/file_explorer.rs:624:5 [INFO] [stderr] | [INFO] [stderr] 624 | pub const fn is_selected(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a variant [INFO] [stderr] --> src/input/mod.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | None, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Style::add_modifier` that must be used [INFO] [stderr] --> src/widget.rs:64:17 [INFO] [stderr] | [INFO] [stderr] 64 | style.add_modifier(ratatui::style::Modifier::BOLD); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `add_modifier` returns the modified style without modifying the original [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 64 | let _ = style.add_modifier(ratatui::style::Modifier::BOLD); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Style::fg` that must be used [INFO] [stderr] --> src/widget.rs:65:17 [INFO] [stderr] | [INFO] [stderr] 65 | style.fg(Color::Yellow); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `fg` returns the modified style without modifying the original [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 65 | let _ = style.fg(Color::Yellow); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Style::add_modifier` that must be used [INFO] [stderr] --> src/widget.rs:70:17 [INFO] [stderr] | [INFO] [stderr] 70 | style.add_modifier(ratatui::style::Modifier::BOLD); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `add_modifier` returns the modified style without modifying the original [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 70 | let _ = style.add_modifier(ratatui::style::Modifier::BOLD); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused return value of `Style::add_modifier` that must be used [INFO] [stderr] --> src/widget.rs:77:13 [INFO] [stderr] | [INFO] [stderr] 77 | style.add_modifier(ratatui::style::Modifier::BOLD); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `add_modifier` returns the modified style without modifying the original [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 77 | let _ = style.add_modifier(ratatui::style::Modifier::BOLD); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `fpicker` (lib) generated 9 warnings (run `cargo fix --lib -p fpicker` to apply 1 suggestion) [INFO] [stderr] Scraping fpicker v0.1.4 (/opt/rustwide/workdir) [INFO] [stderr] Documenting fpicker v0.1.4 (/opt/rustwide/workdir) [INFO] [stderr] warning: `fpicker` (lib doc) generated 4 warnings (4 duplicates) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.16s [INFO] [stderr] Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/fpicker/index.html [INFO] running `Command { std: "docker" "inspect" "f39a7096d0cfe31f87950b263caefb380e3b45881314a12fc877aae7e344eb02", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f39a7096d0cfe31f87950b263caefb380e3b45881314a12fc877aae7e344eb02", kill_on_drop: false }` [INFO] [stdout] f39a7096d0cfe31f87950b263caefb380e3b45881314a12fc877aae7e344eb02