glow – 端末でMarkdownをスタイリッシュに表示する

コマンドリファレンス

glow はターミナルでMarkdownを美しく整形表示するビューアです。引数なしで起動するとTUI(テキストUI)でローカルのMarkdownをブラウズでき、ファイル・標準入力・GitHub/GitLab・HTTP URLなど多様なソースを表示できます。-pでページャ出力、-sでスタイル指定、-wで折り返し幅指定などが可能です。 (GitHub)

構文(Syntax)

# 基本
glow [OPTIONS] [SOURCE]

# SOURCE の例
glow                     # 引数なし: TUIでローカルMarkdownをブラウズ
glow FILE.md             # ファイルを整形表示
echo "...markdown..." | glow -   # 標準入力
glow github.com/ORG/REPO         # GitHub/GitLabのREADMEを取得
glow https://host.tld/file.md    # HTTP(S)のMarkdownを取得

# 明示的にTUIで開く
glow --tui FILE.md

# 設定・補完(サブコマンド)
glow config              # 設定ファイルを開く
glow completion <bash|zsh|fish|powershell>

TUIでは?でキーバインドが表示されます。 (GitHub)

主なオプション一覧

オプション説明使用例
-p, --pagerページャ(既定は$PAGER、未設定なら less -r)で表示glow -p README.md (GitHub)
-w, --width NN桁で折り返し(0で折り返し無効)glow -w 60 FILE.md / glow -w 0 FILE.md (GitHub)
-s, --style STYLEスタイルを指定(dark/light または JSONパス)glow -s dark README.md / glow -s mystyle.json (GitHub)
-t, --tuiTUIで表示(内蔵ページャ)glow --tui README.md (GitHub)
-a, --all隠し/無視ファイルも表示(TUIのみ)glow -a (Debian Manpages)
-l, --line-numbers行番号を表示(TUIのみ)glow -l (Debian Manpages)
-m, --mouseマウスホイール有効化(TUIのみ)glow -m (Debian Manpages)
-n, --preserve-new-lines改行を保持して出力glow -n README.md (Debian Manpages)
--config PATH設定ファイルのパスを明示glow --config ~/.config/glow/glow.yml (Debian Manpages)
--help / --versionヘルプ/バージョン表示glow --help (Debian Manpages)

実行例

ローカルのMarkdownを表示(基本)

説明:ファイルを整形して端末に表示します。
コマンド

glow README.md

出力例:見出しやリストにスタイルが適用されたテキスト(端末上にレンダリング)。 (GitHub)

標準入力から読む

説明:パイプしたMarkdownをそのまま整形表示します。
コマンド

echo "# Title\n\n**bold** and `code`" | glow -

出力例:タイトルが大きく、太字やコードが強調されて表示。 (GitHub)

GitHubのREADMEを取得して表示

説明:リポジトリのREADMEを直接取得して表示します。
コマンド

glow github.com/charmbracelet/glow

出力例:リポジトリのREADMEが整形表示されます。 (GitHub)

折り返し幅とスタイルを指定

説明:80桁で折り返し、ダークテーマで表示します。
コマンド

glow -w 80 -s dark README.md

出力例:80桁で改行され、暗色テーマで表示。 (GitHub)

エラー例:存在しないファイル

説明:存在しないパスを渡すと非ゼロ終了になります。
コマンド

glow notfound.md
echo $?

出力例(例)

(エラー内容は環境により異なる) 
1

関連コマンド

  • mdcat:ターミナルでMarkdown表示(CommonMark、画像対応端末でインライン画像)。
  • batcat互換でシンタックスハイライト(Markdown整形ではなく色付け中心)。
  • grip:GitHub風にブラウザでプレビュー(HTML出力も可)。
  • pandoc:MarkdownをHTML/PDFほかへ変換。
  • glamourglowが用いるスタイルベースのMarkdownレンダラ(JSONスタイルでカスタム)。 (GitHub)

備考

  • TUIとCLI:引数なしで起動するとTUIでローカルMarkdownを探索・閲覧。--tuiで明示的にTUI起動。TUI/CLIどちらでも-pで外部ページャへ出力可能です。 (GitHub)
  • スタイル-s dark|light の自動/明示切替に加え、JSONスタイルを指定可能。Glamourのスタイルも利用できます。 (GitHub)
  • 設定ファイルglow config でエディタが開き、glow.yml(例:style, pager, width, all, showLineNumbers, preserveNewLines など)を編集できます。既定の場所は環境依存のため glow --help を参照。 (GitHub)
  • 最近の変更:v2.0.0で「stash」機能は削除。--preserve-new-linesの追加、--width=0で折り返し無効、シェル補完・manページ対応などが入り、v2.1.0で--tuiフラグや自動リロードが追加されました。 (GitHub)
  • 注意:ネットワーク取得(GitHub/HTTP)は接続環境に依存します。失敗時は非ゼロ終了となります。 (GitHub)

参考

  • GitHub: charmbracelet/glow(README・使い方) (GitHub)
  • Debian manページ: glow(1)(オプション・サブコマンド) (Debian Manpages)
  • リリースノート(v2.0.0/2.1.0の変更点) (GitHub)
  • Glamour(スタイルエンジン) (GitHub)
Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント