2018-11-24 12:10:10 +01:00
# LSD
2018-11-25 17:37:12 +01:00
# Table of Contents
2018-11-25 17:39:17 +01:00
. [Description ](#description )
2018-11-25 17:37:12 +01:00
2. [Screenshot ](#screenshot )
3. [Installation ](#installation )
2018-11-25 17:39:17 +01:00
1. [Archlinux ](#archlinux )
2. [Other ](#other )
2018-11-25 17:37:12 +01:00
4. [Benchmark ](#benchmark )
4. [Todo ](#todo )
2018-11-24 12:10:10 +01:00
## Description
2018-11-24 17:57:04 +01:00
This project is heavily inspired by the super [colorls ](https://github.com/athityakumar/colorls )
2018-11-24 17:58:54 +01:00
project but with some little differences. For example is written is rust and not ruby
2018-11-25 17:37:12 +01:00
which make it really faster ([see the benchmarks ](#benchmark )).
2018-11-24 12:21:32 +01:00
2018-11-24 12:31:28 +01:00
## Screenshot

2018-11-25 12:23:22 +01:00
## Installation
2018-11-25 17:39:17 +01:00
### Archlinux
2018-11-25 14:10:56 +01:00
```
# With yaourt
yaourt lsd-git
# With yay
yay lsd-git
```
### Other
2018-11-25 12:23:22 +01:00
1. Install rust
2. Install the patched fonts of powerline nerd-font and/or font-awesome. Have a look at the [Nerd Font README ](https://github.com/ryanoasis/nerd-fonts/blob/master/readme.md ) for more installation instructions.
3. Install the lsd package with `cargo install lsd`
2018-11-25 17:31:46 +01:00
## 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 |
2018-11-24 12:21:32 +01:00
## TODO
- [x] Handle the `-l` option (used by default for now)
- [x] Handle the `-a` option
2018-11-24 13:05:44 +01:00
- [x] Add icons before the files names
2018-11-24 12:21:32 +01:00
- [ ] Handle the tree (`--tree` ) output option
- [ ] Handle the json (`--json` ) output option
2018-11-24 13:12:49 +01:00
- [ ] Handle Named pipes
2018-11-24 12:21:32 +01:00
- [ ] Handle sockets
- [ ] Handle block devices
- [ ] Handle character devices