charmbracelet/glow
Glow
Render markdown on the CLI, with pizzazz!
What is it?
Glow is a terminal based markdown reader designed from the ground up to bring out the beauty—and power—of the CLI.
Use it to discover markdown files, read documentation directly on the command line. Glow will find local markdown files in subdirectories or a local Git repository.
Installation
Package Manager
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Or download a binary from the releases page. MacOS, Linux, Windows, FreeBSD and OpenBSD binaries are available, as well as Debian, RPM, and Alpine packages. ARM builds are also available for macOS, Linux, FreeBSD and OpenBSD.
Go
Or just install it with go:
|
|
Build (requires Go 1.21+)
|
|
The TUI
Simply run glow without arguments to start the textual user interface and
browse local. Glow will find local markdown files in the
current directory and below or, if you’re in a Git repository, Glow will search
the repo.
Markdown files can be read with Glow’s high-performance pager. Most of the
keystrokes you know from less are the same, but you can press ? to list
the hotkeys.
The CLI
In addition to a TUI, Glow has a CLI for working with Markdown. To format a document use a markdown source as the primary argument:
|
|
Word Wrapping
The -w flag lets you set a maximum width at which the output will be wrapped:
|
|
Paging
CLI output can be displayed in your preferred pager with the -p flag. This defaults
to the ANSI-aware less -r if $PAGER is not explicitly set.
Styles
You can choose a style with the -s flag. When no flag is provided glow tries
to detect your terminal’s current background color and automatically picks
either the dark or the light style for you.
|
|
Alternatively you can also supply a custom JSON stylesheet:
|
|
For additional usage details see:
|
|
Check out the Glamour Style Section to find more styles. Or make your own!
The Config File
If you find yourself supplying the same flags to glow all the time, it’s
probably a good idea to create a config file. Run glow config, which will open
it in your favorite $EDITOR. Alternatively you can manually put a file named
glow.yml in the default config path of you platform. If you’re not sure where
that is, please refer to glow --help.
Here’s an example config:
|
|
Contributing
See contributing.
Feedback
We’d love to hear your thoughts on this project. Feel free to drop us a note!
License
Part of Charm.
Charm热爱开源 • Charm loves open source
