Introducing stylish 🖌️
Welcome!
Stylish is a simple and intuitive way to create and apply stylish config files
Works with ls, tree, fd, exa, and anything else that respects $LS_COLORS
- NO file editing!
- NO dealing with encoding strings!
- NO manual mapping of hex codes to 8-bit colors!
- NO blindly working without an actual preview!
- NO need to hunt down scattered, poor documentation and references!
Are you ready to feel stylish?
Quick Start
If you are comfortable with the defaults and just want to fast track your way to a pretty terminal, then you’re just 2 steps away.
- Install via one of the methods below
- Add the following to your shell’s init script:
eval $(stylish apply default)
alias ls=ls --color=auto
Every shell launch going forward will be styled with the default. Enjoy!
Installation
Github Releases
- Go to the
Releasestab - Download the latest binary for your OS
- Place it on your
$PATHand ensure it is executable
Homebrew
- Have
brewinstalled - Run the following:
brew install daltonsw/tap/stylish
Go
- Have
Go - Have your
Goinstall location on your$PATH - Run the following:
go install go.dalton.dog/stylish@latest
Usage
- Start the program with
stylish. This will:- Create a
stylishdirectory in your user’s default config directory (typically~/.config) - Create a
defaulttheme inside of that directory. Note: This theme is intended to be used on a dark background
- Create a
- With the program running, you’re able to create and edit your themes to your heart’s content
- Once you’re ready to apply a theme, you’ll need to add the following to your shell’s init file (
~/.bashrc,~/.zshrc, etc.):- Required:
eval $(stylish apply <theme>) - Recommended:
alias ls=ls --color=auto
- Required:
- Once your init file is edited, relaunch your shell to start seeing the updated colors.
Command Reference
stylish
Launch the TUI
- If you run the program without any subcommands, it will launch you directly into the editor TUI
stylish apply [theme]
This command turns the theme’s YAML files into the final environment variable expected format
- Converts the given theme’s YAML definition files into a
dircolorscompatible file - Saves the
.dircolorsfile in the root of the theme’s directory - Runs
dircolorson the generated file to get the appropriateLS_COLORSstring - Returns a command that’s ready to be
eval’d to automatically export theLS_COLORSstring to the environment variable
stylish example [theme]
This command is to make setting up directories for example screenshots significantly easier and quicker
[ALERT] This command requires the
treecommand to be installed
- Creates an
exampledirectory located in your theme’s root - For each style in your theme, a new directory is created matching the style’s name
- For each filetype associated with the theme (up to 4), a random filename is generated and a blank file is created with that name and filetype
Shoutouts
- Jess for the great banner!
- Vivid for being a great program and a great reference
- Catppuccin for having pretty palettes
- CharmBracelet for the amazing modules for style, form, and function