ターミナルを使いやすくするためにやっていること
こんにちは、オイシックス・ラ・大地の新卒エンジニアの大舘です。
この記事は、会社の先輩エンジニアであるTKさんの発案で始まったアドベントカレンダー14日目の記事となります。
今回は、興味のある方はとても限られてくると思いますが、Macのターミナルの設定について書こうと思います!
ターミナルというのは、コマンドと呼ばれる命令文を打ち込んでPCに命令を与えることのできるアプリケーションのことです。下記のようなインタフェースをしています。
日常の業務で、リモートサーバへの接続・作業や、GitHubのclone・pushコマンド、kubernetesのkubectlコマンドなどをよく使うため、このターミナルを触っている時間が長いです。そのため、このアプリケーションをより使いやすく、自分なりにカスタマイズしたいと思うようになりました。
では、やっていることについて書いていこうと思います。
まず、いくつものターミナルエミュレーターアプリが存在しますが、僕は色々な設定が可能なことと、文字列を選択するのみでコピーが可能なことが気に入っていて、iTerm2を利用しています。また、端末多重化ソフトウェアと言われるtmuxも利用しています。tmuxを利用することで、さらに様々な設定を行うことができます。
iterm2インストール
サイトからダウンロードしました。
tmuxインストール
brew install tmux
tmuxの設定は、~/.tmux.confというファイルで行うことができます。
下記の内容が僕がしている設定です。
~/.tmux.conf
## ペインリサイズ関連
bind -r C-h resize-pane -L 6
bind -r C-l resize-pane -R 6
bind -r C-j resize-pane -D 6
bind -r C-k resize-pane -U 6
bind -r s swap-pane -U
## power-line
set -g status-bg "colour76"
set-option -g status on
set-option -g status-interval 3
##set-option -g status-utf8 on
set-option -g status-justify "centre"
set-option -g status-justify "left"
set-option -g status-left-length 100
set-option -g status-right-length 120
set-option -g status-left "#(~/tmux-powerline/powerline.sh left)"
set-option -g status-right "#(~/tmux-powerline/powerline.sh right)"
set-window-option -g window-status-current-bg "colour94"
set-window-option -g window-status-current-fg white
# Sync panes
bind A set-window-option synchronize-panes on
bind a set-window-option synchronize-panes off
上記のファイル内のset-option -g status-left、set-option -g status-rightと書かれている行で、tmux起動時に表示されるステータスバーの内容を定義しているのですが、ここにtmux-powerlineという値を指定しています。このtmux-powerlineというのは、自作したものではなく、公開されているものを利用しています。
そのため、tmux-powerlineとfontをダウンロードしてきます。
tmux-powerlineはIPアドレスや日付などさまざまな情報を表示することができます。そして、その際、tmux-powerlineはデザインを整えるためにフォントを利用しているため、そのために必要になってくるのがfontとなっています。
tmux-powerlineインストール
git clone git://github.com/erikw/tmux-powerline.git
fontインストール
git clone https://github.com/powerline/fonts.git
cd fonts
./install.sh
ここまでの設定を行うと、下の画像のように一度に様々なことを行いつつ、一番下にはステータスバーという形で、色々な情報を表示しておくことができます。
今回はここまでにします!
現在はssh接続先のIPアドレスを表示できるようにしたいなと考えています。
そのほかにも、もっと使いやすくなるようにしていきたいです!
アドベントカレンダーで、他のみなさんも記事を書いているので、
ぜひご覧ください!
https://adventar.org/calendars/3112