LoginSignup
56
54

More than 5 years have passed since last update.

zshのいいとこ、GIFアニメで見てみたい

Posted at

前置き

業務でLinux、個人でMacを利用しているためCUIを多用しています。
シェルはzshを使っているのですが、まわりを見ると .bashrcもいじらずbashを使っている方もまだまだ多い。

そんなbashしか使ったことない(そもそもコマンドシェルを変更したことがない)方にzshの優れた点を紹介したいと考え、、社内発表しました。
その際にGIFアニメを作成したので、Qiitaでも公開します。

実際のプレゼン資料は以下になります。
http://budougumi0617.github.io/zsh-presentation/#/

操作方法などは以下をご確認ください。
Reveal.js、Markdown、Githubでスライドを作成する。
http://qiita.com/budougumi0617/items/19b19019bbe01f86e251

zshとは

  • コマンドシェルの一つ。読み方は「ゼットシェル」
  • コマンドシェルにはその他bashtcshなどがあり、LinuxやMacの標準シェルはbash
  • zshが機能が豊富すぎてマニュアルが全部読めないくらい長い
  • .zshrc」がzsh版の.bashrc

zshが便利な所をGIFアニメで見てみる。

以下の紹介機能は、oh-my-zsh.zshrcにより実現しています。
具体的な設定方法の詳細は今回割愛しますが、環境設定は以下の通りです。

https://github.com/budougumi0617/dotfiles/blob/master/home/.zshrc
https://github.com/budougumi0617/dotfiles/blob/master/home/.oh-my-zsh-custom/mySetting.zsh
https://github.com/budougumi0617/dotfiles/blob/master/home/.oh-my-zsh-custom/myThemes.zsh-theme

コマンドオプションは覚えなくても平気

コマンドオプションの補完を行おうとすると、コマンドオプションの意味、候補を羅列してくれます。
オプション、サブコマンドの入力途中にTABキー押下でサブコマンドや「-」、「--」に続くオプション候補を表示します。
.zshrcに独自に作成したエイリアスもちゃんと候補に挙がります。
command_reference.gif

ファイル名の大文字小文字は覚えなくて平気

ディレクトリ、ファイル名は綴りだけ覚えておけばOKです。
ファイル・ディレクトリ名をTABキーで補完する際に大文字小文字を無視して候補を挙げてくれます。

upper_lower_autocomplete.gif

ディレクトリ名も覚えなくて平気

ディレクトリ名は頭文字だけ覚えておけばOKです。
TABキーを押すことで補完されます。
z.shプラグインを利用すれば中間階層も覚えなくても良い。

zプラグイン
https://github.com/rupa/z
z.shでよく行くディレクトリに手軽に移動する
http://qiita.com/yoshikaw/items/38d3008ac7d0b19b4805

move.gif

編集したファイルを覚えておかなくても平気

コミット時、未コミットのファイル名を補完してくれます。
GIFアニメでは、TABキー押下で他のディレクトリやファイルを無視して変更されたOperateDirectory.javaを補完しています。
git_autocomplete.gif

リモートブランチを覚えておかなくても平気

カレントディレクトリが構成管理中の場合はブランチ名をシェルの情報に表示させることができます。
例:originブランチからgh-pagesに変更した場合
branch_information.gif

makeのターゲットを覚えなくて平気

Makefile内からターゲットを探してくれるので、makeコマンドのオプションを保管する際に候補に挙げてくれます。

例:「all」、「ut_BasicFunction」、「clean」ターゲットを設定したMakefileを利用した時。

make_autocomplete.gif

echo $?」しなくても平気

前回実行したコマンドが成功したかを表示させることが可能です。
Make -j4した際など、コマンドが成功したかわかりづらい時に重宝します。

例:「cd」に失敗したので、「$」が赤くなる。
result_check.gif

ローカルホスト名も覚えなくて平気

/etc/hosts」のローカルホストを補完してくれるので、sshscpコマンドを叩く際に便利です。

例:「ssh」、「ping」で補完

ssh_complete.gif

今回は以上です。実はただGIFアニメ作りたかっただけです()
そのうち.vimrcなどの紹介もしたいと思います。

参考

キャプチャを作成した環境情報は以下になります。
https://github.com/budougumi0617/dotfiles

GIFアニメはLICECAPを利用して作成しました。
http://www.cockos.com/licecap/
簡単すぎてびっくり!チュートリアルがすぐに作れるGIFアニメフリーソフト
http://naifix.com/gif-anime/

56
54
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
56
54