iTerm2 + oh my zsh + tmuxで快適なターミナル環境を構築
MacBookProを購入してから2週間くらいたったけど、あんまり触れていないのですorz
普段はターミナルで作業をすることがほとんどなので、まずはターミナル環境を整えるところから。。。
iTerm2
デフォルトのTerminal.appでもよいけど、ネット徘徊するとiTerm2使っている人が多いのでiTerm2にしてみる。
インスコは至って簡単。こちらからiTerm2のzipをダウンロードして解凍。中にあるiTerm2をアプリケーションに突っ込めばおk。
iTerm2のカラーテーマ
vimはもっぱらmolokaiのカラースキーマを使っているのでターミナルもそうする。
molokaiテイストのテーマはここからダウンロード。(getafe.itermcolorsというファイルがiTerm2のカラーテーマ)
iTerm2を起動して、Profiles->Edit Profiles->ColorsタブのLoad Preset...からimportでダウンロードしたテーマをロードでおk
zsh
ずっと憧れてたzshだけど、「漢のzsh」シリーズ読んで敷居が高いというか、なんというか。コマンド補完とか使えりゃ十分なんで、oh-my-zshいれておすまい。
インスコはこちらを参考にさせていただきました。
自分でいじったところといえばテーマぐらいですね。楽しく快適に作業するためには見た目重要。
oh-my-zshでも40種類ぐらいのテンプレートを用意してくれてますので、気にいるものがあればいいですね。
テーマのサンプルはこちらで確認できます。(私は「simple」にしました)
tmux(terminal multiplexer)
ターミナルマルチプレクサ(響きがかっこいいです☆)。zshであーだこーだやっているうちにGNU Screenがーみたいなのに行き着いて、最近はtmuxがーみたいなノリでtmuxいれてみました。
フルスクリーンアプリケーションでターミナルのパネル分割とか複数ウィンドウ管理とかいい感じです。
キーバインドもvimテイストにして一体感抜群。
インスコはこちらを参考にさせていただきました。
iTerm2と同じところにあるtmuxを使うべきか悩んだのですが、パッケージ管理が複雑になりそうなので、homebrewでインスコ。
キーバインドは、半分以上パクったけど、今回はちゃんと試した(つもり)
いつもは試さずに丸パクリしているので自分成長したなーと。
~/.tmux.conf
# prefix1キー set-option -g prefix C-t unbind-key C-b bind t send-prefix # Loading .tmux.conf bind r source-file ~/.tmux.conf; display-message "Reload Tmux Config" # utf8 enabled set-window-option -g utf8 on # View # ステータスライン更新間隔(秒) set -g status-interval 5 set -g status-left-length 100 set -g status-right-length 50 set-option -g set-titles on # www1.hoge.com→www1のみ表示。 set-option -g set-titles-string "@#(hostname | sed 's/\\\\..*//')" # ステータスラインカスタム関連 set -g status-bg black set -g status-fg white set -g status-attr dim # 左部:whoami@hostname set -g status-left '#[fg=green,bold][#20(whoami)@#H]#[default]' # 右部:[2011/03/06(Sun)20:21] set -g status-right '#[fg=green,bold][%Y/%m/%d(%a)%H:%M]#[default]' set -g message-attr bold set -g message-fg white set -g message-bg red set -g pane-active-border-fg white set -g pane-active-border-bg black set-window-option -g mode-bg white set-window-option -g mode-fg black set-window-option -g window-status-bg black set-window-option -g window-status-fg white set-window-option -g window-status-current-bg green set-window-option -g window-status-current-fg black set-window-option -g window-status-current-attr bold # Key Bindings # vertical split window bind C-v split-window -h unbind-key '"' # horizontal split window bind C-s split-window -v unbind-key % # open last window bind C-t last-window # new window(default) bind c new-window # pane to window bind b break-pane # Pane Size bind -r H resize-pane -L 6 bind -r L resize-pane -R 6 bind -r J resize-pane -D 6 bind -r K resize-pane -U 6 # Pane Move bind -r h select-pane -L bind -r j select-pane -D bind -r k select-pane -U bind -r l select-pane -R # Pane exit bind q kill-pane # Window exit bind Q kill-window # Display Pane Number bind i display-panes # copy mode set-window-option -g mode-keys vi bind -t vi-copy v begin-selection bind -t vi-copy y copy-selection bind -t vi-copy Y copy-line bind / list-keys -t vi-copy
そのうちdotfiles管理もやっていきまつ。