🛠️
Markdown形式の入力からtreeを出力するCLI/Web
※Wasm 対応をしてGitHub Pagesにホストしました🎉
どんなCLIなの?
以下に、実際に実行した結果を紹介します。
$ gtree output << EOS
- root
- parent_a
- parent_b
- child_a
- 1
- 2
- a
- 1
- child_b
- 1
- a
- parent_c
- child_a
- parent_d
EOS
root
├── parent_a
├── parent_b
│ ├── child_a
│ │ ├── 1
│ │ └── 2
│ │ └── a
│ │ └── 1
│ └── child_b
│ └── 1
│ └── a
├── parent_c
│ └── child_a
└── parent_d
このように出力されます。インデントで階層を表現します。
Markdownファイルを指定して実行することも可能です。
詳しい説明は、こちらのREADMEを参照してください。
また、Go製です。
どんなときに使えるの?
- 存在しないディレクトリ構成をパッとtreeコマンド結果のように出力したい。
- 手作業で枝を組み立てるのは面倒だなあ、楽に作りたい。
- ツリー構造で表せる物事をtreeコマンド結果のように出力したい。
といったときに使えるかと思います。
どうやってインストールするの?
インストール方法は、以下の3つを用意しています。
- go install
- Go1.18以上が必要です。
go install github.com/ddddddO/gtree/cmd/gtree@latest
- Homebrew
brew install ddddddO/tap/gtree
- binary download
- こちらから、ダウンロードしてパスを通してお使いください。
更新情報
- 2022/08/17 Wasm 対応をしてGitHub Pagesにホストしました🎉
- 2022/01/15 ディレクトリとファイルを作成できるようにしました🎉
- それについての記事を書きました。
- 2021/11/20 出力にJSON/YAML/TOMLを対応しました🎉
- 2021/07/31 プログラム上の操作でツリーを生成できるpackageを公開しました🎉
- 個人的には本記事で紹介しているCLIより面白い物だと思ってます。詳しくはこちらを参照してください。
- 2021/07/23 コマンド名を
gentree
->gtree
へ変更しました🎉 - 2021/07/22 複数ルートに対応しました🎉
$ gtree output << EOS
> - a
> - i
> - u
> - k
> - kk
> - t
> - e
> - o
> - g
> - a
> - i
> - u
> - k
> - kk
> - t
> - e
> - o
> - g
> EOS
a
├── i
│ ├── u
│ │ ├── k
│ │ └── kk
│ └── t
├── e
│ └── o
└── g
a
├── i
│ ├── u
│ │ ├── k
│ │ └── kk
│ └── t
├── e
│ └── o
└── g
Discussion