No description
Find a file
Yann Leretaille dba7022a85 fixes #11
2018-12-05 10:23:44 +01:00
src fixes #11 2018-12-05 10:23:44 +01:00
.gitignore Add some benchmark 2018-11-25 17:31:46 +01:00
.travis.yml Add a basic .travis.yml config file 2018-11-26 13:27:03 +01:00
Cargo.lock Fix a typo 2018-12-04 17:24:41 +01:00
Cargo.toml (cargo-release) start next development iteration 0.6.1-pre 2018-12-04 14:55:32 +01:00
LICENSE Add the LICENSE file 2018-11-25 12:28:52 +01:00
README.md Improve the installation section 2018-12-04 15:13:19 +01:00

LSD (LSDeluxe)

license Build Status Latest version

Table of Contents

  1. Description
  2. Screenshot
  3. Installation
    1. Prerequisites
    2. Archlinux
    3. Other
  4. Configurations
    1. Required
    2. Optional
  5. Benchmark
  6. Todo

Description

This project is heavily inspired by the super colorls project but with some little differences. For example is written is rust and not ruby which make it really faster (see the benchmarks).

Screenshot

image

Installation

Prerequisites

Install the patched fonts of powerline nerd-font and/or font-awesome. Have a look at the Nerd Font README for more installation instructions.

Archlinux

(coming soon)

Other

Install the lsd package with:

cargo install lsd

Configurations

Required

In order to use lsd instead of the default ls you need to add this to you shell configuration file (~/.bashrc, ~/.zshrc, etc.) :

alias ls='lsd'

Optional

Some examples of useful aliases. You can add this to you shell configuration file (~/.bashrc, ~/.zshrc, etc.) just under the alias above :

alias l='ls -l'
alias la='lsd -a'
alias lla='ls -la'
alias lt='ls --tree'

Benchmark

Result from hyperfine --warmup 10 'lsd -la /etc/*' 'colorls -la /etc/*' --export-markdown out.md:

Command Mean [ms] Min…Max [ms]
lsd -la /etc/* 11.0 ± 0.5 9.9…13.0
colorls -la /etc/* 503.3 ± 5.6 494.6…513.4

TODO

  • Handle the -l option (used by default for now)
  • Handle the -a option
  • Add icons before the files names
  • Handle all the file types (block/char/pipe/etc)
  • Handle the tree (--tree) output option
  • Handle the json (--json) output option