#icons #glyph #filetype

yanked rust-devicons

A Rust library to retrieve filetype glyphs (icons) for a wide range of common file formats

5 releases

0.2.3 Sep 22, 2024
0.2.2 Sep 21, 2024
0.2.1 Sep 21, 2024
0.2.0 Sep 21, 2024
0.1.0 Sep 21, 2024

#14 in #filetype

Download history 339/week @ 2024-09-18 64/week @ 2024-09-25 27/week @ 2024-10-02 2/week @ 2024-10-09

175 downloads per month

Unlicense

200KB
9K SLoC

🦀 rust-devicons

A dead-simple and efficient Rust library inspired by vim-devicons, providing functionality to retrieve filetype glyphs (icons) for a wide range of common file formats.

rust-devicons

Features

  • 🦞 Icon Retrieval: Get file or directory icons based on file name/extension.
  • 🦞 Icon Color: Retrieve the color associated with the icon depending on the specified theme.
  • 🦞 Filetype Support: Supports a wide range of filetypes and filename conventions (dockerfile, makefile, etc.).
  • 🦞 Customizable Themes: Supports both light and dark themes.
Screenshot 2024-09-21 at 16 54 16

Installation

Add this to your Cargo.toml:

[dependencies]
devicons = "0.1.0"

NOTE: you'll need to use a NerdFont to properly display the icons.

Usage

Here’s a simple example of how to use devicons to retrieve a file icon with the dark theme:

use std::path::Path;
use your_library::{File, Theme, icon_for_file};

fn main() {
    let path = Path::new("example.txt");
    let file = File::new(path);

    let icon = icon_for_file(&file, Some(Theme::Dark));

    println!("File: {}", file.name);
    println!("Icon: {}", icon.icon);
    println!("Color: {}", icon.color);
}

Running the Examples

You can find more usage examples in the examples directory. To run them, use:

cargo run --example <example_name>

License

This project is licensed under the UNLICENSE license.

Dependencies

~10KB