mirror of
https://github.com/alexpasmantier/television.git
synced 2025-07-28 13:51:41 +00:00

I initially didn't notice that an image previewer was already implemented but commented out—still, I wanted to finish mine! :) It works almost instantly on my side. I tested it in different terminals and only noticed some slowness in the RustRover-integrated terminal. So far, I’ve tested it with PNG, JPEG, ICO, GIF, and TIFF formats, and it works well. In theory, it should support all formats that the image crate can handle. I included them in the file list but commented out the ones I haven’t tested yet. To optimize memory usage, images are resized to a maximum of 128x128 before being cached. I’m not really sure what the best size is, since the image gets resized again when rendered to fit the preview window. Let me know if you have any feedback! 🚀    --------- Co-authored-by: Alexandre Pasmantier <47638216+alexpasmantier@users.noreply.github.com> Co-authored-by: alexpasmantier <alex.pasmant@gmail.com>
131 lines
2.9 KiB
TOML
131 lines
2.9 KiB
TOML
[package]
|
|
name = "television"
|
|
version = "0.10.6"
|
|
edition = "2021"
|
|
description = "The revolution will be televised."
|
|
license = "MIT"
|
|
authors = ["Alexandre Pasmantier <alex.pasmant@gmail.com>"]
|
|
repository = "https://github.com/alexpasmantier/television"
|
|
homepage = "https://github.com/alexpasmantier/television"
|
|
keywords = ["search", "fuzzy", "preview", "tui", "terminal"]
|
|
categories = [
|
|
"command-line-utilities",
|
|
"command-line-interface",
|
|
"concurrency",
|
|
"development-tools",
|
|
]
|
|
include = [
|
|
"LICENSE",
|
|
"README.md",
|
|
"themes/**/*.toml",
|
|
"television/**",
|
|
".config/config.toml",
|
|
"cable",
|
|
]
|
|
rust-version = "1.83"
|
|
|
|
[lib]
|
|
path = "television/lib.rs"
|
|
|
|
[dependencies]
|
|
television-derive = { path = "television-derive", version = "0.0.25" }
|
|
|
|
anyhow = "1.0"
|
|
base64 = "0.22.1"
|
|
directories = "6.0"
|
|
devicons = "0.6"
|
|
tokio = { version = "1.43", features = ["full"] }
|
|
tracing = "0.1"
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
|
rustc-hash = "2.1"
|
|
syntect = { version = "5.2", default-features = false }
|
|
unicode-width = "0.2"
|
|
clap = { version = "4.5", features = ["derive", "cargo", "string"] }
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
ratatui = { version = "0.29", features = ["serde", "macros"] }
|
|
better-panic = "0.3"
|
|
signal-hook = "0.3"
|
|
human-panic = "2.0"
|
|
ignore = "0.4"
|
|
strum = { version = "0.26", features = ["derive"] }
|
|
regex = "1.11"
|
|
parking_lot = "0.12"
|
|
nom = "7.1"
|
|
thiserror = "2.0"
|
|
simdutf8 = { version = "0.1", optional = true }
|
|
smallvec = { version = "1.13", features = ["const_generics"] }
|
|
bat = { version = "0.25", default-features = false, features = ["regex-onig"] }
|
|
gag = "1.0"
|
|
nucleo = "0.5"
|
|
toml = "0.8"
|
|
image = "0.25"
|
|
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
winapi-util = "0.1.9"
|
|
clipboard-win = "5.4.0"
|
|
|
|
[dev-dependencies]
|
|
criterion = { version = "0.5", features = ["async_tokio"] }
|
|
tempfile = "3.16.0"
|
|
|
|
[features]
|
|
simd = ["dep:simdutf8"]
|
|
zero-copy = []
|
|
default = ["zero-copy", "simd"]
|
|
|
|
[[bin]]
|
|
bench = false
|
|
path = "television/main.rs"
|
|
name = "tv"
|
|
|
|
[[bench]]
|
|
name = "main"
|
|
harness = false
|
|
|
|
[target.'cfg(target_os = "macos")'.dependencies]
|
|
crossterm = { version = "0.28.1", features = ["serde", "use-dev-tty"] }
|
|
|
|
[target.'cfg(not(target_os = "macos"))'.dependencies]
|
|
crossterm = { version = "0.28", features = ["serde"] }
|
|
|
|
[profile.staging]
|
|
inherits = "dev"
|
|
opt-level = 3
|
|
debug = true
|
|
lto = false
|
|
|
|
[profile.profiling]
|
|
inherits = "release"
|
|
debug = true
|
|
|
|
|
|
[profile.release]
|
|
codegen-units = 1
|
|
lto = "fat"
|
|
|
|
[profile.deb]
|
|
inherits = "release"
|
|
debug = false
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[workspace.lints.clippy]
|
|
pedantic = { level = "warn", priority = -1 }
|
|
|
|
must_use_candidate = "allow"
|
|
too_many_lines = "allow"
|
|
missing_panics_doc = "allow"
|
|
missing_errors_doc = "allow"
|
|
module_name_repetitions = "allow"
|
|
cast_precision_loss = "allow"
|
|
map_unwrap_or = "allow"
|
|
return_self_not_must_use = "allow"
|
|
uninlined_format_args = "allow"
|
|
similar_names = "allow"
|
|
float_cmp = "allow"
|
|
implicit_hasher = "allow"
|
|
wildcard_imports = "allow"
|
|
from_iter_instead_of_collect = "allow"
|