Skip to content
View nik-rev's full-sized avatar

Block or report nik-rev

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
nik-rev/README.md

Hi! My favorite programming language is:

fn you_guessed_it() -> impl Debug {
    ..=..=.. ..    .. .. .. ..    .. .. .. ..    .. .. .. ..
    ..=.. ..=..    .. .. .. ..    .. .. .. ..    .. ..=.. ..
    ..=.. ..=..    ..=.. ..=..    .. ..=..=..    ..=..=..=..
    ..=..=.. ..    ..=.. ..=..    ..=.. .. ..    .. ..=.. ..
    ..=.. ..=..    ..=.. ..=..    .. ..=.. ..    .. ..=.. ..
    ..=.. ..=..    ..=.. ..=..    .. .. ..=..    .. ..=.. ..
    ..=.. ..=..    .. ..=..=..    ..=..=.. ..    .. ..=..=..
}

πŸ“¦ Crates

My contributions to the Rust ecosystem.

derive_aliases github

Custom #[derive] aliases. Write this:

#[derive(Debug, ..Ord, ..Copy)]
//              ^^^^^^^^^^^^^
//              aliases
struct User;

which expands to this:

[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Copy, Clone)]
//             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//             expanded
struct User;

docstr github

Ergonomic multi-line string literals, even composes with any macro like format!.

use docstr::docstr;

let hello_world_in_c: &'static str = docstr!(
    /// #include <stdio.h>
    ///
    /// int main(int argc, char **argv) {
    ///     printf("hello world\n");
    ///     return 0;
    /// }
);

assert_eq!(hello_world_in_c, r#"#include <stdio.h>

int main(int argc, char **argv) {
    printf("hello world\n");
    return 0;
}"#)

culit github

Lets you define custom literals. Like literals for Duration:

#[culit]
fn main() {
    assert_eq!(
        100d + 11h + 8m + 7s,
        Duration::from_secs(100 * 60 * 60 * 24)
        + Duration::from_secs(11 * 60 * 60)
        + Duration::from_secs(8 * 60)
        + Duration::from_secs(7)
    );
}

Fully custom, can be whatever you want. Like 10nzusize which produces NonZeroUsize and compile errors if it is 0.

simply_colored github

Simplest crate in existence for terminal styles.

use simply_colored::*;

println!("{BLUE}{BOLD}Simply colored!")

Other crates

  • collection-macro which provides the general-purpose seq![] and map! {} macros for creating collections github
  • commented for commenting line in an unknown file type github
  • wrapping-in-range lets you have stuff like.wrapping_sub but for an integer in a custom range like 1..=100 github
  • displaystr provides a completely novel way to implement the Display trait github

βš’οΈ Projects

countryfetch github

Like Neofetch but for your country

ferrishot github

It's a screenshot app written in Rust!

patchy github

If you fork a project just to merge PRs you like, you might find patchy useful

dots github

Incredibly simple dotfiles manager

Popular repositories Loading

  1. countryfetch countryfetch Public

    A Command-line tool similar to Neofetch for obtaining information about your country

    Rust 241 7

  2. ferrishot ferrishot Public

    A powerful screenshot app written in Rust πŸ“ΈπŸ¦€

    Rust 210 10

  3. patchy patchy Public

    A tool which makes it easy to declaratively manage personal forks by automatically merging pull requests

    Rust 173 6

  4. better-cli better-cli Public archive

    Curated list of replacements for terminal tools

    151 2

  5. helix-golf helix-golf Public

    Powerful text refactoring with the Helix Editor

    Rust 87 7

  6. derive-aliases derive-aliases Public

    #[derive] aliases

    Rust 80