2017-07-04 09:05:58 +02:00
# Color LS
2017-07-02 10:48:57 +02:00
2017-07-06 16:16:17 +02:00
2017-07-02 10:48:57 +02:00
[![Build Status ](https://travis-ci.org/athityakumar/colorls.svg?branch=master )](https://travis-ci.org/athityakumar/colorls)
2017-07-06 16:16:17 +02:00
[![PRs Welcome ](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=shields )](http://makeapullrequest.com)
[![Awesome ](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg )](https://github.com/sindresorhus/awesome)
[![forthebadge ](http://forthebadge.com/images/badges/made-with-ruby.svg )](http://forthebadge.com)
[![forthebadge ](http://forthebadge.com/images/badges/built-with-love.svg )](http://forthebadge.com)
2017-07-02 10:48:57 +02:00
A Ruby script that colorizes the `ls` output with color and icons. Here are the screenshots of working example on an iTerm2
2017-07-06 16:16:17 +02:00
terminal (Mac OS), `oh-my-zsh` with `powerlevel9k` theme and `powerline nerd-font + awesome-config` font with the Solarized Dark color theme.
2017-06-29 19:02:18 +02:00
2017-07-02 08:46:09 +02:00
![Example #1 ](readme/usage1.png )
# How to use
- Just `lc` : Prints all directories, files and dotfiles in current directory.
![Usage #1 ](readme/usage1.png )
- With paths : `lc path(s)` prints all directories, files and dotfiles in given directory / directories.
![Usage #2 ](readme/usage2.png )
- With `--report` or `-r` flag : `lc path(s) -r` : Prints all directories, files and dotfiles in directories, along with a brief report about number of files and folders shown.
![Usage #3 ](readme/usage3.png )
![Usage #4 ](readme/usage4.png )
2017-06-29 19:02:18 +02:00
2017-07-05 07:36:05 +02:00
- With `--sort-dirs` / `-sd` or `--sort-files` / `-sf` : Entries are sorted directories-first or files-first, and then alphabetically (case-insensitively) before being printed.
2017-07-05 09:36:40 +02:00
![Usage #5 ](readme/usage5.png )
![Usage #6 ](readme/usage6.png )
- With `--dirs` / `-d` or `--files` / `-f` : Entries are filtered so that only directories or files are shown.
![Usage #7 ](readme/usage7.png )
![Usage #8 ](readme/usage8.png )
2017-07-04 09:05:58 +02:00
- With `-1` : Entries are printed in a column (one per line), just like `ls -1` does.
2017-07-05 09:36:40 +02:00
![Usage #9 ](readme/usage9.png )
2017-07-01 12:24:11 +02:00
# Installation steps
2017-06-29 19:02:18 +02:00
1. Install Ruby (prefably, version > 2.1)
2017-07-01 12:11:41 +02:00
2. Install the patched fonts of powerline nerd-font and/or font-awesome.
2017-07-03 13:47:21 +02:00
3. Clone this repository to `~/bin` (create if not exist or clone elsewhere) with
```sh
cd ~/bin & & git clone https://github.com/athityakumar/colorls.git
```
2017-06-29 19:02:18 +02:00
4. Navigate to this cloned directory : `cd colorls`
5. Install bundler and dependencies :
```
gem install bundler
bundle install
2017-07-04 09:05:58 +02:00
```
6. For CLI functionality, add a function (say, `lc` ) to your shell configuration file (`~/.bashrc` or `~/.zshrc` ) :
2017-07-01 12:11:41 +02:00
```sh
2017-07-03 13:47:21 +02:00
lc () { ruby ~/bin/colorls/colorls.rb $1; }
2017-06-29 19:02:18 +02:00
```
2017-07-03 13:47:21 +02:00
7. If you like the report flag you can make it default by adding:
```sh
alias lc='lc -r'
```
8. Change the YAML files, if required. (Say, to add / change / remove some icons)
9. Open a new terminal, and start using `lc` :tada:
2017-07-01 12:11:41 +02:00
2017-07-02 08:46:09 +02:00
_NOTE: If you're iTerm2 on Mac, you may have to enable the nerd-font at iTerm2 > Preferences > Profiles > Text > Non-Ascii font > Knack Regular Nerd Font Complete_
2017-07-01 12:24:11 +02:00
2017-07-04 12:39:45 +02:00
# Uninstall Instructions
Want to uninstall and revert back to the old style?
```sh
rm -rf ~/bin/colorls
```
Run the above command and reset your terminal profile.
2017-07-01 12:24:11 +02:00
# Tweaking this project
2017-07-01 12:11:41 +02:00
![Pending formats ](readme/pending.png )
2017-06-29 19:02:18 +02:00
2017-07-02 08:46:09 +02:00
There are a couple of formats that aren't recognized yet. Custom file formats and icons can be added by changing the YAML files in this repository. Also, feel free to send a Pull Request here with the added icons. :smile:
2017-07-01 12:24:11 +02:00
2017-07-04 09:05:58 +02:00
Please feel free to contribute to this project, by
2017-07-01 12:11:41 +02:00
- opening an issue for reporting any bug / suggesting any enhancement
2017-06-29 19:02:18 +02:00
- cleaning up the `colorls.rb` ruby script with more functionalities.
2017-07-02 08:46:09 +02:00
- adding support for more icons by editing the YAML files.
2017-06-29 19:02:18 +02:00
# LICENSE
2017-07-01 12:14:40 +02:00
MIT License 2017 - [Athitya Kumar ](https://github.com/athityakumar/ ).