Browse Source

move image_backends into its own crate

pull/838/head
o2sh 3 years ago
parent
commit
9ce17c186f
  1. 12
      Cargo.lock
  2. 3
      Cargo.toml
  3. 16
      image/Cargo.toml
  4. 1
      image/LICENSE.md
  5. 11
      image/README.md
  6. 0
      image/src/iterm.rs
  7. 0
      image/src/kitty.rs
  8. 0
      image/src/lib.rs
  9. 0
      image/src/sixel.rs
  10. 2
      src/cli.rs
  11. 1
      src/ui/mod.rs
  12. 7
      src/ui/printer.rs

12
Cargo.lock generated

@ -2046,6 +2046,7 @@ dependencies = [ @@ -2046,6 +2046,7 @@ dependencies = [
"insta",
"lazy_static",
"libc",
"onefetch-image",
"onefetch-manifest",
"owo-colors",
"pretty_assertions",
@ -2062,6 +2063,17 @@ dependencies = [ @@ -2062,6 +2063,17 @@ dependencies = [
"yaml-rust",
]
[[package]]
name = "onefetch-image"
version = "2.13.2"
dependencies = [
"anyhow",
"base64",
"clap 4.0.22",
"image",
"libc",
]
[[package]]
name = "onefetch-manifest"
version = "2.13.2"

3
Cargo.toml

@ -13,10 +13,11 @@ rust-version = "1.60.0" @@ -13,10 +13,11 @@ rust-version = "1.60.0"
version = "2.13.2"
[workspace]
members = ["manifest"]
members = ["manifest", "image"]
[dependencies]
onefetch-manifest = { path = "manifest", version = "2.13.2" }
onefetch-image = { path = "image", version = "2.13.2" }
anyhow = "1.0.66"
askalono = "0.4.6"
byte-unit = "4.0.14"

16
image/Cargo.toml

@ -0,0 +1,16 @@ @@ -0,0 +1,16 @@
[package]
authors = ["o2sh <ossama-hjaji@live.fr>"]
name = "onefetch-image"
version = "2.13.2"
edition = "2021"
license = "MIT"
readme = "README.md"
[dependencies]
image = "0.24.4"
anyhow = "1.0"
clap = "4.0.22"
[target.'cfg(not(windows))'.dependencies]
base64 = "0.13.0"
libc = "0.2.134"

1
image/LICENSE.md

@ -0,0 +1 @@ @@ -0,0 +1 @@
../LICENSE.md

11
image/README.md

@ -0,0 +1,11 @@ @@ -0,0 +1,11 @@
# image
Provides the primary interface to diplay images in the terminal.
Protocols supported:
- Sixel
- Kitty
- Iterm
_This crate is designed as part of the [onefetch](https://github.com/o2sh/onefetch) project._

0
src/ui/image_backends/iterm.rs → image/src/iterm.rs

0
src/ui/image_backends/kitty.rs → image/src/kitty.rs

0
src/ui/image_backends/mod.rs → image/src/lib.rs

0
src/ui/image_backends/sixel.rs → image/src/sixel.rs

2
src/cli.rs

@ -1,12 +1,12 @@ @@ -1,12 +1,12 @@
use crate::info::info_field::InfoType;
use crate::info::langs::language::{Language, LanguageType};
use crate::ui::image_backends::ImageProtocol;
use crate::ui::printer::SerializationFormat;
use anyhow::Result;
use clap::builder::PossibleValuesParser;
use clap::builder::TypedValueParser as _;
use clap::{value_parser, Command, Parser, ValueHint};
use clap_complete::{generate, Generator, Shell};
use onefetch_image::ImageProtocol;
use onefetch_manifest::ManifestType;
use regex::Regex;
use std::env;

1
src/ui/mod.rs

@ -2,7 +2,6 @@ use crate::info::langs::language::Language; @@ -2,7 +2,6 @@ use crate::info::langs::language::Language;
use owo_colors::{AnsiColors, DynColors};
pub mod ascii_art;
pub mod image_backends;
pub mod printer;
pub mod text_colors;

7
src/ui/printer.rs

@ -1,11 +1,10 @@ @@ -1,11 +1,10 @@
use crate::cli::{Config, When};
use crate::info::Info;
use crate::ui::ascii_art::AsciiArt;
use crate::ui::image_backends;
use crate::ui::image_backends::ImageBackend;
use crate::ui::Language;
use anyhow::{Context, Result};
use image::DynamicImage;
use onefetch_image::ImageBackend;
use std::fmt::Write as _;
use std::io::Write;
use terminal_size::{terminal_size, Width};
@ -53,8 +52,8 @@ impl<W: Write> Printer<W> { @@ -53,8 +52,8 @@ impl<W: Write> Printer<W> {
let image_backend = if image.is_some() {
config
.image_protocol
.map_or_else(image_backends::get_best_backend, |s| {
image_backends::get_image_backend(s)
.map_or_else(onefetch_image::get_best_backend, |s| {
onefetch_image::get_image_backend(s)
})
} else {
None

Loading…
Cancel
Save