yuichiro.__blog__

プリインストールのzshからHomebrewのzshに移行した

Qiitaで読む

7/17/2014 GitHubで開く

Why?

なんかよさげだったから(コナミカン
バージョンが上だし
アップデートもしやすそうだし
みんなそれでやってるっぽいから(結論)

実際にやってみる

とりあえずbrew info zshしてみる

Terminal
$ brew info zsh
zsh: stable 5.0.5 (bottled)
http://www.zsh.org/
Not installed
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/zsh.rb
==> Dependencies
Required: gdbm ✔, pcre ✔
==> Options
--disable-etcdir
	Disable the reading of Zsh rc files in /etc
==> Caveats
Add the following to your zshrc to access the online help:
  unalias run-help
  autoload run-help
  HELPDIR=/usr/local/share/zsh/helpfiles

なるほど。デフォルトのzshが5.0.2だったから5.0.5でちょっと新しくなっている。
それから--disable-etcdirでデフォルトの設定を無効にできるらしい。思ったよりも簡単に出来そうだ。

#いざインストール!!

Terminal
$ brew install --disable-etcdir zsh
==> Downloading https://downloads.sourceforge.net/project/zsh/zsh/5.0.5/zsh-5.0.5.tar.bz2
Already downloaded: /Library/Caches/Homebrew/zsh-5.0.5.tar.bz2
==> ./configure --prefix=/usr/local/Cellar/zsh/5.0.5 --enable-fndir=/usr/local/Cellar/zsh/5.0.5/share/zsh/functions --enable-scriptdir=/usr/local/Cellar/zsh/5.0.5/share/zsh/scripts 
==> make install
==> make install.info
==> Caveats
Add the following to your zshrc to access the online help:
  unalias run-help
  autoload run-help
  HELPDIR=/usr/local/share/zsh/helpfiles
==> Summary
🍺  /usr/local/Cellar/zsh/5.0.5: 1070 files, 10M, built in 92 seconds

よしきた(一回試しにやったのがバレたかな)
次に、デフォルトのシェルのパスを変更する。
なんでもいいけどsudo vi /etc/shellsみたいな感じで/etc/shells/usr/local/bin/zshを追記する
*ロックがかかっているのでsudo

試しにターミナルに再起動をかけると、、

Terminal
This is the Z Shell configuration function for new users,
zsh-newuser-install.
You are seeing this message because you have no zsh startup files
(the files .zshenv, .zprofile, .zshrc, .zlogin in the directory
~).  This function can help you with a few settings that should
make your use of the shell easier.

You can:

(q)  Quit and do nothing.  The function will be run again next time.

(0)  Exit, creating the file ~/.zshrc containing just a comment.
     That will prevent this function being run again.

(1)  Continue to the main menu.

--- Type one of the keys in parentheses --- 

設定ファイルがないよーという旨のメッセージが出てくる。

実際にはあるんだけど読み込まれなくなっている。これはbrew installするときにつけた--disable-etcdirというオプションが効いている証拠ですね。(/etc/zshenv$ZDOTDIRを設定していたのが読み込まれなくなっている)

なので元々あった設定を引き継ぎます
$ sudo mv /etc/zshenv ~/.zshenv

これで元々の設定で動くようになりました。

意外と楽に移行できたかも?

< vimをアップデートすると同時にHomebrew管理に移行するzshの設定ファイルを分割して整理しやすくする >

関連記事

日本語版のmanページをMacで開く(groffアップデート)

12/31/2014

groff Fatal error 先日「vimをアップデートすると同時にHomebrew管理に移行する」という投稿をしたんですが、その後vimのmanページを開こうとすると、 何やら出てきて怒られてしまいました。 突然manが見られなくなったと思ったらgroff…

続きを読む

vimをアップデートすると同時にHomebrew管理に移行する

12/28/2014

あらすじ viとvi-improved Linuxに触りたての頃、cdでディレクトリ移動、lsでフォルダ内を表示、rmで削除、っていう流れで、ファイル編集はviコマンド!と間違えてるような間違えてないような、適当な感じで覚え、.bashrc一つ編集するのに四苦八苦しながら:wq…

続きを読む

zshの設定ファイルを分割して整理しやすくする

7/16/2014

.zshrc before... 初期の設定をし終わったあとでも、zshの設定には追加できるものが多いです。 新しい設定を付け足すたびにごちゃごちゃしがちな設定ファイル群ですがまとめればスマートに出来ると思います .(source) .(source…

続きを読む

tmux使っている時だけ一部のANSIカラーが表示されていなかったたった1文字のミス

1/15/2021

powerline/zshから脱却できていないせいでエラーメッセージがだんだん増えてきているのでそろそろなんの設定もカスタマイズもしない環境でトレーニングするべきかなと思い始めています。 本日の事件 通常のターミナル(Mac/iTerm2/TERM=xterm-256color…

続きを読む

ShellScriptでフラグ

1/20/2015

Shellでフラグを使いたい!という場合、今まではTest文のANDチェーンで動かしていましたが、trueコマンドとfalseコマンドを見つけたのでメモります。 スマートだけど危なそう。ちゃんとtrueかfalse代入しとけばいいと思うけど。

続きを読む