nuls

Crates.ionuls
lib.rsnuls
version0.2.0
created_at2025-12-10 00:01:07.304248+00
updated_at2025-12-10 10:27:41.772977+00
descriptionNuShell-inspired ls with colorful table output, human-readable sizes, and recency-aware timestamps.
homepage
repository
max_upload_size
id1977048
size1,035,217
César Ferreira (cesarferreira)

documentation

README

nuls

Crates.io License Tests

nuls screenshot

NuShell-inspired ls with a colorful, table-based layout: directory/file type tagging, human-readable sizes, relative “modified” times with recency-driven colors, and familiar flags.

Features

  • Box-drawn table with colored borders and headers
  • Directory-first sorting by default; optional -t/--sort-modified (newest first) and -r/--reverse
  • Relative modified column with recency-aware colors (seconds → years, plus future)
  • Human-readable sizes (KB, MB, GB, TB)
  • Hidden files toggled via -a/--all
  • Colored help output for quick scanning
  • Optional git info (-g) shown inline after the name, e.g., main.rs (+15 -2)

Install

From crates.io:

cargo install nuls

Building locally:

cargo install --path . --bin nuls --force
# optional: cargo install --path . --bin nuls --force --root ~/.local

Usage

# basic listing
nuls

# include hidden files
nuls -a

# sort by modified (newest first), reverse for oldest first
nuls -t
nuls -tr

# show git status/counts inline
nuls -g
nuls -lag

# combine with hidden and long muscle-memory flag
nuls -la

Flags

  • -a, --all — show dotfiles
  • -l, --long — accepted for familiarity (output is already long-form)
  • -t, --sort-modified — sort by modified time (newest first)
  • -r, --reverse — reverse sort order
  • -g, --git — show git status inline (+added/-deleted, (clean) when unchanged)
  • --color=always/auto/never — control ANSI color (default: auto; help is forced color)

Palette

  • Borders/header: teal/green highlights
  • Names: dirs blue, files light gray, executables red, dotfiles amber, config/docs yellow
  • Modified: green → yellow → orange → red → gray as timestamps get older; blue for future

Notes

  • Directories sort before files unless you use -t (modified), in which case recency wins.

Aliases

Drop one of these in your shell config for muscle-memory:

# replace ls entirely
alias ls="nuls"

# or keep both
alias nls="nuls"

# with defaults you like
alias lst="nuls -t"
alias lsa="nuls -a"
alias lsat="nuls -at"
Commit count: 0

cargo fmt