zsh 2

56
今から始めるzsh 2015/05/04 三宅 英明(mollifier)

Upload: hideaki-miyake

Post on 19-Jul-2015

48 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Zsh 2

今から始めるzsh2015/05/04

三宅 英明(mollifier)

Page 2: Zsh 2

自己紹介

名前: 三宅 英明

Twitter: @mollifier

はてなID: mollifier

神戸のプログラマ

Page 3: Zsh 2

好きなもの

zsh

vim

vimperator

Page 4: Zsh 2

ブログとか

はてなブログ

http://mollifier.hatenablog.com/

Twitter

http://twitter.com/mollifier

Qiita

http://qiita.com/mollifier

Page 5: Zsh 2

今から始めるzsh

Page 6: Zsh 2

今から始めるzsh

でもその前に、みなさんシェルを使っていますか?

Page 7: Zsh 2

シェルって何

シェルとは、OSを操作するやつです

Page 8: Zsh 2

シェルって何

大雑把に言うと、黒い画面です

Page 9: Zsh 2

シェルの種類

sh

bash

csh

tcsh

zsh

Page 10: Zsh 2

シェルの種類

ksh

fish

mash

yash

などなど

Page 11: Zsh 2

シェルの種類

いっぱいあります

Page 12: Zsh 2

シェルの種類

何を使っても同じなのか?

Page 13: Zsh 2

シェルの種類

強力なシェル、自分にあったシェルを選ぶことが大事

Page 14: Zsh 2

なぜシェルは大事か

シェルとは、OSを操作するやつです

UNIX系OSでは、ほとんどの操作をシェルから行います

Page 15: Zsh 2

シェルの種類

何でもシェルを使います

極端に言えば、シェルの操作だけ覚えておけばOK

Page 16: Zsh 2

シェルの種類

シェルの種類によって機能が違う。便利なシェルはめちゃ便利

Page 17: Zsh 2

シェルの種類

逆に言うと、しょぼいシェルを使っていたら、いつまでたっても便利にならない

Page 18: Zsh 2

シェルの種類

だから強力なシェルを使って、便利なようにカスタマイズすることが大事

Page 19: Zsh 2

シェルの種類

シェルは大事

シェルの勉強は、やってやりすぎることはない

Page 20: Zsh 2

シェルの種類

しょぼい -> ふつう

sh

csh

Page 21: Zsh 2

シェルの種類

ふつう -> すごい

bash

tcsh

ksh

Page 22: Zsh 2

シェルの種類

なんかしらんやつ

fish

mash

yash

Page 23: Zsh 2

シェルの種類

そして、我らがzsh

Page 24: Zsh 2

シェルの種類

zsh

もう、すごいとかそういうレベルじゃない

Page 25: Zsh 2

シェルの種類

zsh

すごいとか便利とか、そういう分類をすること自体がzshに失礼

Page 26: Zsh 2

シェルの種類

じゃあ何なのか?

Page 27: Zsh 2

シェルの種類

zshはもうシェルじゃないんですよ。宇宙なんですよ

Page 28: Zsh 2

今から始めるzsh

使ったことない人は今から始めてみましょう

すでに使っている人は基本の復習

Page 29: Zsh 2

zshとは

zshとは究極のシェル

Page 30: Zsh 2

zshとは

zshはなんでもできる!

Page 31: Zsh 2

zshとは

「zshでできないことがあったら、それはバグだ」

Page 32: Zsh 2

zshとは

みんなzshを使いたくなりましたね

Page 33: Zsh 2

zshのインストール

UbuntuやDebian GNU/Linuxなどの場合

% sudo apt-get install zsh

Page 34: Zsh 2

zshのインストール

CentOSやRed Hat Enterprise Linuxなどの場合

% sudo yum install zsh

Page 35: Zsh 2

zshのインストール

Macの場合最初から入っています

Page 36: Zsh 2

zshのインストール

Macで最新版を使いたい場合

% brew install zsh# または% sudo port install zsh

Page 37: Zsh 2

ログインシェルをzshに変更

# zshのパスを確認% which zsh/bin/zsh

# /etc/shellsの内容を確認% cat /etc/shells/bin/bash/bin/tcsh/bin/zsh

# /etc/shellsにzshのパスを追加。すでにある場合は不要% sudo sh -c "echo '/bin/zsh' >> /etc/shells"

Page 38: Zsh 2

ログインシェルをzshに変更

% chsh -s '/bin/zsh'

Page 39: Zsh 2

ログインシェルをzshに変更

これでOK。次にログインしたときからzshが動いている。

Page 40: Zsh 2

初回起動

初回起動時になんか聞かれる

Page 41: Zsh 2

初回起動

実はほとんど役に立たない

はっきり言って、おおきなお世話

Page 42: Zsh 2

初回起動

自分でカスタマイズしたい人は0を選ぶのが良い

0を押すと空の~/.zshrcが作成される(次回以降聞かれなくなる)

Page 43: Zsh 2

zshの設定

今日はzsh勉強会なので、1からカスタマイズしてみましょう

Page 44: Zsh 2

zshの設定

設定ファイルの種類

名前 役割~/.zshenv zshが起動したと

きに必ず読み込まれる

~/.zshrc 対話的に起動したときに読み込まれる

Page 45: Zsh 2

zshの設定

他にもあるけど、基本この2種類だけでOK。

もっというと、基本的には~/.zshrcに書いておけばOK。

Page 46: Zsh 2

.zshrcの例

# 環境変数export LANG=ja_JP.UTF-8

# 補完機能を有効にするautoload -Uz compinitcompinit

# cd したら自動的にpushdするsetopt auto_pushd# 重複したディレクトリを追加しないsetopt pushd_ignore_dups

Page 47: Zsh 2

.zshrcの例

# グローバルエイリアスalias -g L='| less'alias -g G='| grep'

# ヒストリの設定HISTFILE=~/.zsh_historyHISTSIZE=1000000SAVEHIST=1000000

Page 48: Zsh 2

.zshrcの例

# emacs 風キーバインドにするbindkey -e

# 日本語ファイル名を表示可能にするsetopt print_eight_bit

# beep を無効にするsetopt no_beep

Page 49: Zsh 2

.zshrcの例

# フローコントロールを無効にするsetopt no_flow_control

# Ctrl+Dでzshを終了しないsetopt ignore_eof

# '#' 以降をコメントとして扱うsetopt interactive_comments

Page 50: Zsh 2

zshrcの例

この.zshrcは次のURLに書いてある

https://gist.github.com/mollifier/4964803

とりあえずこんな感じのをコピペして、source ~/.zshrcする

Page 51: Zsh 2

zshrcの例

そのあと、そっとやさしくTabを押すと

Page 52: Zsh 2

うわー、補完、補完。補完できるよ。

Page 53: Zsh 2

楽しい

Page 54: Zsh 2

今から始めるzsh

とりあえずこんな感じで、使いはじめるのは簡単です

Page 55: Zsh 2

今から始めるzsh

具体的になにがどう便利なのかは、次の発表で

Page 56: Zsh 2

今から始めるzsh

ありがとうございました