ターミナル・コマンドプロンプトをかっこよくする（Mac & Win 対応）

「人間はかわいく、ターミナルはかっこよく」
「見た目が 9 割」
[「お前らのターミナルはダサい」](https://qiita.com/kinchiki/items/57e9391128d07819c321)


## 書くこと

ターミナル (Mac)・コマンドプロンプト (Win)、せっかく使うならすごいことやってる感出したいですよね

ここではカスタマイズの決め方とか、こんなコマンドあるみたいなことを書きます。最終的には好みになると思うので、これがいいとかはあまり書きません

Windows 対応ですが、りんご使いなので Mac の話が多いです

ターミナル (Mac) の代替で iTerm を使う手もあるけどここでは対象としません。使っている人は見た目に満足しているように思う
ここにない、より細かいカスタマイズがしたいときには役立つと思います

コマンドプロンプト (Win) のことは書きますが、カスタマイズできる項目が少ないので代替の Mintty とかを使うことになりそうな気がする
公式に出た [Windows Terminal](https://www.microsoft.com/store/productId/9N0DX20HK701) のことも書きます。リンク先の動画がかっこいい。ここでは設定が GUI で簡単にできる [Preview 版](https://www.microsoft.com/store/productId/9N8G5RFZ9XK3) を前提にします。

## カスタマイズする

カスタマイズすると言っても、その内容はすでに「テーマ」や「プロファイル」としてよく配布されています
有名どころだと [Solarized](https://ethanschoonover.com/solarized/) とか [Monokai](https://github.com/Monokai/monokai-pro-sublime-text/issues/45#issuecomment-341005595) とか
好みのものがあればこちらを導入するのが早くて簡単です

わたし的には目に優しくてかっこよさに欠けるか、個性が強くてあまり実用的じゃないものが多いように感じたので、かっこよくて日常的に使えるものを目指してカスタマイズをはじめたことがきっかけでした
[作ったものはリポジトリで配布しています](https://github.com/mikankari/terminal.app-profiles)
[ついでに採用ブログのアイキャッチにも載りました](http://recruit-blog.sencorp.co.jp/2018/10/blog-post_22.html)

![スクリーンショット 2018-12-11 20.52.48.png](https://qiita-image-store.s3.amazonaws.com/0/247334/57bdeef8-a9ab-74e8-5f42-91ab4868cadb.png)

宣伝はさておき、カスタマイズできるのはざっくりこのあたりです

- ウィンドウ
- 文字色
- フォント

ほとんど設定にあります

ターミナル (Mac) の人は上のメニュー「ターミナル」->「環境設定」-> タブ「プロファイル」
プロファイルを選んでベースからカスタマイズするか、下の「＋」で新規からカスタマイズすることもできます

コマンドプロンプト (Win) の人はタイトルバーを右クリック ->「プロパティ」

Windows Terminal の人はタブバーの下矢印からメニューを開いて「設定」→文字色のときは左の「配色」、ほかは左の「基本レイヤー」→タブ「外観」



### ウィンドウ

- 色
    - かっこよくなので黒一択
- 不透明度
    - お好みで
- 背景画像
    - 暗めの文字色に合うものが良さそう
    - [好みのものがなければ探しに行く](https://www.google.com/search?tbm=isch&q=%E6%9A%97%E3%81%84%E3%80%80%E3%81%8B%E3%81%A3%E3%81%93%E3%81%84%E3%81%84)
    - いまいちなら画像編集で暗めにする手もあり

ターミナルに入っている「Homebrew」のカスタマイズ例
実用性には欠けるかもだけどそれっぽくはなる

<img width="570" alt="スクリーンショット 2018-12-11 21.26.26.png" src="https://qiita-image-store.s3.amazonaws.com/0/247334/77c78ac8-1e18-2fcc-672e-51e0208e0674.png">

コマンドプロンプトでも Windows 10 になってから不透明度の項目が追加されました

![スクリーンショット.png](https://qiita-image-store.s3.amazonaws.com/0/247334/0049ffcc-b795-7dbd-35bf-18c886329d84.png)

Windows Terminal では加えてレトロターミナルの効果を設定できます
背景色によっては文字がつぶれるかもだけど、意外と読める。それっぽい。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/247334/23a26c37-8b7a-7879-95e7-e5fa9f6a8afa.png)


### 文字色

6 色もあって意外と難しい文字色の配色。でも配色ツールがあります。

[4bit Terminal Color Scheme Designer](http://ciembor.github.io/4bit/#)

わたしが作ったものはこちらを参考にしています
[#00FF80(鮮やかな緑色)の色見本と配色事例 | 相性の良い色との出会いをマッチング！無料サンプル配色](https://ironodata.info/rgb.php?color=00FF80)

あとの細かいところは明度いじったり


### フォント

- ファミリ
    - プログラミング用フォントは読みやすくそれっぽくもある
    - Mac だと Monaco とか Osaka とか
    - Windows だと Consolas とか Lucida Console とか
    - [好みのものがなければ探しに行く](https://www.google.com/search?q=%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88+%E3%81%8A%E3%81%99%E3%81%99%E3%82%81)
- 太字
    - よく使われるわりに目立たないこともあるので、無効にして文字色で分ける手もあり
- サイズ
    - お好みで



## コマンドを使う

コマンドでかっこよくするのも良い手です
ここではかっこよくするのに役立ちそうなコマンドをいくつか挙げてみます

挙げるのは Mac 想定です。Windows は Cygwin とか WSL とか入れればある程度はできるかも

### man

あるコマンドのマニュアルを表示する


```bash
$ man man
```

![スクリーンショット 2018-12-12 19.23.33.png](https://qiita-image-store.s3.amazonaws.com/0/247334/8d970067-e204-6b04-59ff-71c1dbc5cd55.png)

文字が多くて、太字などがバランスよく含まれているのがいい感じ

### top

ある条件のプロセス上位一覧を表示する

```bash
$ top
```

Mac の top はいけてないので ssh できる Linux があればそちらのほうがより良いです

```bash
$ ssh linuxhost -t top
```

`z` キーを押すと色がつきます

![スクリーンショット 2018-12-12 19.42.56.png](https://qiita-image-store.s3.amazonaws.com/0/247334/51622a11-c6a8-c425-8d43-7c776ca27534.png)

色が多くて整っているのがいい感じ


### [gtop](https://github.com/aksakalli/gtop)

top の Graphical(?) なコマンド
npm から入れられます

```bash
$ npm i gtop
```

使うときは

```bash
$ gtop
```

ウィンドウ大きくするとグラフになってたりします

![スクリーンショット 2018-12-12 19.47.45.png](https://qiita-image-store.s3.amazonaws.com/0/247334/a068abcd-57dd-371f-e3a9-6a53bc0e3e93.png)


よりモニタリングしている感あって良い

### [lazygit](https://github.com/jesseduffield/lazygit)

簡単操作な Git クライアント

brew から入れられます

```bash
$ brew tap jesseduffield/lazygit
$ brew install lazygit
```

使うときは

```bash
$ cd repodir # Git レポジトリのディレクトリに行って
$ lazygit
```

キーで各種 Git 操作できるみたいです

![スクリーンショット 2018-12-12 20.15.56.png](https://qiita-image-store.s3.amazonaws.com/0/247334/551bd41d-1589-3db8-3e93-9c6065eec516.png)

使いこなせるとかっこよさ出せるし便利そう

### [cmatrix](https://github.com/abishekvashok/cmatrix)

映画 "The Matrix" に出てくるあの画面

brew から入れられます

```bash
brew install cmatrix
```

使うときは

```bash
$ cmatrix
```

![スクリーンショット 2018-12-12 20.12.26.png](https://qiita-image-store.s3.amazonaws.com/0/247334/47ab2c99-e48c-576a-6de0-6dd4fc090880.png)

よく動く！

### [figlet](http://www.figlet.org/)

アスキーアートで文字を大きく出す

brew から入れられます

```bash
$ brew install figlet
```

使用例
<img width="570" alt="スクリーンショット 2019-07-02 20.46.30.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/247334/d83ce99f-63f7-166f-3d33-22ff9c64601d.png">

`-f` でフォントの指定ができます
使えるフォントは

```bash
$ showfigfonts | less # けっこうあるのでページング
```

で確認できます

### [lolcat](https://github.com/busyloop/lolcat)

レインボーな色を付ける

brew または gem から入れられます

```bash
$ brew install lolcat
```
```bash
$ gem install lolcat
```

使うときは標準入力からパイプか、引数にファイル名を指定します

<img width="570" alt="スクリーンショット 2019-07-02 21.44.18.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/247334/085c25c7-be46-41df-fd64-c505530f303f.png">

簡単にグラデーションを付けられる！

## おわりに

コマンドは Linux の歴史が長いし他にもいろいろありそう
（書いたあとで top を強化した `htop` なるものを見つけてしまう、あとで追記するかも）
こんなのあるよとかありましたらコメント等もらえますと幸いです

かっこいいターミナルライフを！