Skip to content

Repository files navigation

gly

gly banner

CI Documentation License: MIT

gly adds icons and colors to file and directory listings in PowerShell. Choose a theme, customize the symbols, or browse folders in a tree or grid.

Your usual Get-ChildItem and Get-Item commands keep working, including filtering, sorting, and passing results to other commands.

Documentation · PowerShell Gallery · Contributing · Security · Support

Requires PowerShell 7.0 or later.

Quick Start

Install the module from PowerShell Gallery:

Install-Module -Name gly -Repository PSGallery -Scope CurrentUser
Import-Module gly

Formatting starts as soon as you import the module. The default icons require a Nerd Font selected in your terminal settings. For symbols that work with ordinary fonts, use:

Set-GlyGlyphSet Unicode

List files and folders with your usual commands:

Get-ChildItem .
Get-Item .

Choose a list, tree, or grid layout:

Show-Gly -Path .
Show-GlyTree -Path . -Depth 2
Show-GlyGrid -Path .

Short aliases are available:

gly .
glytr . -Depth 2
glygr .

Preview colors and symbols using sample file and folder names:

Show-GlyThemeColor DefaultDark
Show-GlyGlyph Unicode
Show-GlyThemePreview -Theme DefaultDark -GlyphSet Unicode

Use -All to preview every currently registered theme or glyph set:

Show-GlyThemeColor -All
Show-GlyGlyph -All

Configuration

Configuration is kept only in the current PowerShell session:

Get-GlyConfiguration

Common settings:

Set-GlyConfiguration -ShowColors $false
Set-GlyConfiguration -ShowGlyphs $false
Set-GlyConfiguration -SizeFormat Binary
Set-GlyConfiguration -DateFormat Iso
Set-GlyTheme DefaultLight
Set-GlyGlyphSet Unicode

SizeFormat applies to file sizes in both the standard PowerShell view and the explicit Show-Gly renderer.

Use Disable-Gly to turn off colors and symbols. To restore the standard PowerShell view completely, open a new session without importing gly.

To apply your preferred settings in every new session, add the import and configuration commands to your PowerShell profile.

Documentation

Development

Run the PowerShell test suite:

npm test

This produces JUnit XML, CTRF JSON, and HTML test reports under artifacts/tests/local. Run npm run test:coverage to also produce Cobertura coverage data. The suite includes committed output snapshots, checked on Windows and Ubuntu in CI.

Build the VitePress documentation site:

npm ci
npm run docs:build

Run repeatable startup and rendering benchmarks:

npm run bench
npm run bench:startup
npm run bench:rendering

The combined command runs the independent startup and rendering suites concurrently.

Contributing and Support

Contributions are welcome. Read the contribution guidelines before opening an issue or pull request. For usage questions, start a GitHub Discussion. Please report security vulnerabilities privately as described in the security policy.

License

MIT. See LICENSE.

About

PowerShell module for customizable visual formatting of file system objects.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages