Files
fish-config/functions/ls.fish
T
Claude fceddfc43f docs: add DEPENDENCIES sections to function doc headers
Documents what each function needs for full functionality -- other
repo functions it calls, and external CLI tools it uses or falls
back gracefully without (e.g. rm/trash, ls/eza+lsd) -- matching the
existing CLASSIFICATION convention's placement and the ~20 functions
that already carried this label.

Also broadens verify-manual.py's dependency-resolution check to
recognize this repo's other existence-check idioms (command -q,
command -v, which -- not just type -q) and dng2avif's dynamic
type -q $cmd loop, since several genuine dependencies (eza, lsd,
fastfetch, fd, ps, ...) are only ever guarded that way.
2026-09-22 22:22:27 -04:00

46 lines
981 B
Fish

# Copyright (C) 2026 Rootiest
# SPDX-License-Identifier: AGPL-3.0-or-later
# CATEGORY
# 01-file-and-directory
#
# COMPONENT
# aliases/filesystem
#
# DEPENDENCIES
# eza, lsd
#
# CLASSIFICATION
# bypasses-shadow(ls)
#
# SYNOPSIS
# ls [args...]
#
# DESCRIPTION
# Lists all files in long format with icons and hyperlinks. Uses eza,
# falls back to lsd, then to system ls.
#
# ARGUMENTS
# args... Arguments forwarded to the listing command
#
# EXAMPLE
# ls ~/projects
# ls
# ls -a ~/projects
function ls --description 'List all files'
# Opinionated guard (C1): fall back to bare command ls when disabled.
if not __fish_config_op_enabled (status current-function)
command ls $argv
return $status
end
if which eza >/dev/null 2>&1
eza -l -a --icons --color=auto --hyperlink=auto $argv
else if which lsd >/dev/null 2>&1
lsd -l -a --hyperlink=auto $argv
else
command ls --color=auto $argv
end
end