アイコンが付く ls コマンド「lsd」を試してみたいので Rust のインストールからやってみる

ls コマンドが高速かつリッチに動作する、lsd というコマンドがあるらしいので、それを使ってみるまでの記録。

lsd コマンドは Rust 製なので、Rust をインストールしておいてから使ってみようと思う。

全て MacOS にて実施。

Rust のインストール

ココを参考に。

# インストールスクリプトを実行する
$ curl https://sh.rustup.rs -sSf | sh

info: downloading installer

Welcome to Rust!

This will download and install the official compiler for the Rust programming
language, and its package manager, Cargo.

It will add the cargo, rustc, rustup and other commands to Cargo's bin
directory, located at:

  /Users/Neo/.cargo/bin

This path will then be added to your PATH environment variable by modifying the
profile files located at:

  /Users/Neo/.profile
  /Users/Neo/.bash_profile

You can uninstall at any time with rustup self uninstall and these changes will
be reverted.

Current installation options:

   default host triple: x86_64-apple-darwin
     default toolchain: stable
  modify PATH variable: yes

1) Proceed with installation (default)
2) Customize installation
3) Cancel installation

…とこのように何やら質問されるので、デフォルトのインストール方法である 1 を入力する。

# 省略
  stable installed - rustc 1.33.0 (2aa4c46cf 2019-02-28)

Rust is installed now. Great!

To get started you need Cargo's bin directory ($HOME/.cargo/bin) in your PATH
environment variable. Next time you log in this will be done automatically.

To configure your current shell run source $HOME/.cargo/env

…ということで何やらインストールできた。

~/.bash_profile の末尾にコードが追記されているので、.bash_profile を自分でカスタマイズしている人は適宜調整。

cargo コマンドが動作するようになった。

Nerd Fonts のインストール

lsd コマンドが使用する Nerd Fonts をインストールする。

$ brew tap caskroom/fonts
$ brew cask install font-hack-nerd-font

~/Library/Fonts/ 配下に Hack Nerd Font がいくつかインストールされる。

lsd コマンドのインストール

cargo install lsd コマンドでインストールできる、と書いてあったが、何か面倒臭そうなのでプリコンパイルされているバイナリを GitHub の Releases ページから落とした。…あれ、Rust のインストール要らなかったのでは…。

コレをダウンロードしたら解凍し、PATH の通っているところに lsd ファイルを配置する。

ターミナルのフォント設定

「ターミナル.app」の設定より、使用するフォントを「Hack Nerd Font」に変更する。

準備完了

以上で準備完了。$ lsd とか $ lsd -l とかいう風にコマンドを叩くと、カラフルに色分けされてアイコン付きで ls 表示されるようになる。

Nerd Fonts 使いたくない

アイコンフォントである Nerd Font を使うよう設定したが、僕は元々 MeiryoKe を使っていたので、lsd コマンドを叩く時以外の表示が狂ってしまう。

…どうやら「ターミナル.app」だと Non-ASCII 文字に対するフォントを設定できないので、残念ながら諦めるしかない。

うーん、僕は MeiryoKe が使いたいし iTerm とかを使う気もないので、lsd は諦めよう。残念。