TL;DR — Quick Summary

lsd (LSDeluxe) is a modern ls replacement with file icons, Git integration, color-coded file types, tree view, and configurable layouts — all in one command.

lsd makes directory listing beautiful. Icons, colors, tree view — ls, but with visual polish.

Installation

# macOS
brew install lsd

# Arch Linux
sudo pacman -S lsd

# Cargo
cargo install lsd

# Install a Nerd Font for icons
# https://www.nerdfonts.com/

Usage

# Basic listing
lsd
lsd -la                         # Long listing, all files
lsd -lah                        # Human-readable sizes

# Tree view
lsd --tree                      # Full tree
lsd --tree --depth 2            # Limit depth

# Sorting
lsd --sort time                 # Sort by time
lsd --sort size                 # Sort by size
lsd --sort extension            # Sort by extension

# Filtering
lsd --icon never                # Disable icons
lsd --color never               # Disable colors
lsd --group-dirs first          # Directories first

# Git integration
lsd --git                       # Show git status

# Common aliases (add to .bashrc/.zshrc)
alias ls='lsd'
alias ll='lsd -la'
alias lt='lsd --tree --depth 2'

Configuration

# ~/.config/lsd/config.yaml
classic: false
blocks:
  - permission
  - user
  - size
  - date
  - name
color:
  when: auto
date: relative
icons:
  when: auto
  theme: fancy
layout: grid
sorting:
  dir-grouping: first

Summary

  • lsd is a modern ls with Nerd Font icons and color-coded file types
  • Tree view, Git status, human-readable sizes out of the box
  • YAML configuration for themes, layouts, and sorting
  • Compatible with standard ls flags
  • Written in Rust — fast and reliable