zsh 소개 방법(.zshrc 사용자 정의 포함)
이번에는, zsh의 도입 방법과 .zshrc에 의한 zsh의 커스터마이즈에 관해서 기사로 해 갑니다.
이 기사의 설정으로 할 수있는 것
zsh 도입 방법
brew 명령을 사용하여 zsh와 이번에 사용할 플러그인을 다운로드합니다.
다음 명령을 실행합니다.
$ brew install zsh
$ brew install zsh-completions
=> 補完機能の強化プラグイン
$ brew install zsh-autosuggestions
=> 入力の補完時の予測を影で表示してくれるプラグイン
$ brew install zsh-syntax-highlighting
=> 入力をシンタックスハイライトしてくれるプラグイン
위의 실행 후
$ zsh
에서 zsh를 시작하면
$ brew install zsh
$ brew install zsh-completions
=> 補完機能の強化プラグイン
$ brew install zsh-autosuggestions
=> 入力の補完時の予測を影で表示してくれるプラグイン
$ brew install zsh-syntax-highlighting
=> 入力をシンタックスハイライトしてくれるプラグイン
$ zsh
위의 3택으로 입력을 듣기 때문에
0
를 선택해 enter( .zshrc
를 자동 생성해 준다)로그인 쉘 변경
$ sudo vi /etc/shells
Password:
상기를 실행 한 후, 다음을 추가하여 저장
/usr/local/bin/zsh
chsh -s /usr/local/bin/zsh
위를 실행하고 로그인 쉘을 변경
.zshrc 편집
지금까지의 설정으로 홈 디렉토리에 .zshrc
가 생성되고 있을 것입니다.
vi .zshrc
위를 실행하고 다음을 복사하여 저장
#補間
autoload -U compinit
compinit
#文字コード
export LANG=ja_JP.UTF-8
#プロンプト
autoload -U colors
colors
#履歴
#履歴を保存するファイル指定
HISTFILE="$HOME/.zsh_history"
#履歴の件数
HISTSIZE=100000
SAVEHIST=100000
#重複した履歴を保存しない
setopt hist_ignore_dups
#履歴を共有する
setopt share_history
#先頭にスペースを入れると履歴に残さない
setopt hist_ignore_space
#履歴の検索
autoload history-search-end
zle -N history-beginning-search-backward-end history-search-end
zle -N history-beginning-search-forward-end history-search-end
bindkey "^P" history-beginning-search-backward-end
bindkey "^N" history-beginning-search-forward-end
#cdの設定
#ディレクトリ名だけで移動する。
setopt auto_cd
#自動でpushdする
setopt auto_pushd
#pushdの履歴は残さない。
setopt pushd_ignore_dups
#ターミナルのタイトル
case "${TERM}" in
kterm*|xterm)
precmd() {
echo -ne "\033]0;${USER}@${HOST}\007"
}
;;
esac
# コマンドミスを修正
setopt correct
# 補完の選択を楽にする
zstyle ':completion:*' menu select
# カレントディレクトリに候補がない場合のみ cdpath 上のディレクトリを候補に出す
zstyle ':completion:*:cd:*' tag-order local-directories path-directories
#cd は親ディレクトリからカレントディレクトリを選択しないので表示させないようにする (例: cd ../<TAB>):
zstyle ':completion:*:cd:*' ignore-parents parent pwd
# 補完候補をできるだけ詰めて表示する
setopt list_packed
#色の設定
export LSCOLORS=Exfxcxdxbxegedabagacad
# 補完時の色設定
export LS_COLORS='di=01;34:ln=01;35:so=01;32:ex=01;31:bd=46;34:cd=43;34:su=41;30:sg=46;30:tw=42;30:ow=43;30'
autoload -U colors ; colors ; zstyle ':completion:*' list-colors "${LS_COLORS}"
#alias
case "${OSTYPE}" in
freebsd*|darwin*)
alias ls="ls -GF"
;;
linux*)
alias ls="ls -F --color"
;;
esac
#w3mでALC検索
function alc() {
if [ $# != 0 ]; then
w3m "http://eow.alc.co.jp/$*/UTF-8/?ref=sa"
else
w3m "http://www.alc.co.jp/"
fi
}
#cdを打ったら自動的にlsを打ってくれる関数
function cd(){
builtin cd $@ && ls;
}
#その他
#キーバインド
bindkey -e
#ビープ音ならなさない
setopt nobeep
#エディタ
export EDITOR=emacs
#改行のない出力をプロンプトで上書きするのを防ぐ
unsetopt promptcr
#個別設定を読み込む
[ -f ~/.zshrc.mine ] && source ~/.zshrc.mine
source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source /usr/local/share/zsh-autosuggestions/zsh-autosuggestions.zsh
# git設定
autoload -Uz vcs_info
setopt prompt_subst
zstyle ':vcs_info:git:*' check-for-changes true
zstyle ':vcs_info:git:*' stagedstr "%F{yellow}!"
zstyle ':vcs_info:git:*' unstagedstr "%F{red}+"
zstyle ':vcs_info:*' formats "%F{green}%c%u[%b]%f"
zstyle ':vcs_info:*' actionformats '[%b|%a]'
# -----------------------------
# Prompt
# -----------------------------
# %M ホスト名
# %m ホスト名
# %d カレントディレクトリ(フルパス)
# %~ カレントディレクトリ(フルパス2)
# %C カレントディレクトリ(相対パス)
# %c カレントディレクトリ(相対パス)
# %n ユーザ名
# %# ユーザ種別
# %? 直前のコマンドの戻り値
# %D 日付(yy-mm-dd)
# %W 日付(yy/mm/dd)
# %w 日付(day dd)
# %* 時間(hh:flag_mm:ss)
# %T 時間(hh:mm)
# %t 時間(hh:mm(am/pm))
# PROMPT='[%n][%c]'\$vcs_info_msg_0_' $ '
PROMPT='%B%F{32}~/%C%f'\$vcs_info_msg_0_' $ '
#'di=01;34:ln=01;35:so=01;32:ex=01;31:bd=46;34:cd=43;34:su=41;30:sg=46;30:tw=42;30:ow=43;30'
precmd(){ vcs_info }
상기 저장 후,
source .zshrc
로 설정을 반영한다.
보충
.zshrc
를 편집하여 자신의 취향에 맞게 zsh를 사용자 정의할 수 있습니다.
※ 신택스 하이라이트의 색이나, alias의 설정등도 만지면 보다 사용하기 쉬울지도 모릅니다.
꼭 여러 가지 시도해보십시오.
Reference
이 문제에 관하여(zsh 소개 방법(.zshrc 사용자 정의 포함)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/k941226/items/e0b9a4fa06bab275f96b
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ sudo vi /etc/shells
Password:
/usr/local/bin/zsh
chsh -s /usr/local/bin/zsh
지금까지의 설정으로 홈 디렉토리에
.zshrc
가 생성되고 있을 것입니다.vi .zshrc
위를 실행하고 다음을 복사하여 저장
#補間
autoload -U compinit
compinit
#文字コード
export LANG=ja_JP.UTF-8
#プロンプト
autoload -U colors
colors
#履歴
#履歴を保存するファイル指定
HISTFILE="$HOME/.zsh_history"
#履歴の件数
HISTSIZE=100000
SAVEHIST=100000
#重複した履歴を保存しない
setopt hist_ignore_dups
#履歴を共有する
setopt share_history
#先頭にスペースを入れると履歴に残さない
setopt hist_ignore_space
#履歴の検索
autoload history-search-end
zle -N history-beginning-search-backward-end history-search-end
zle -N history-beginning-search-forward-end history-search-end
bindkey "^P" history-beginning-search-backward-end
bindkey "^N" history-beginning-search-forward-end
#cdの設定
#ディレクトリ名だけで移動する。
setopt auto_cd
#自動でpushdする
setopt auto_pushd
#pushdの履歴は残さない。
setopt pushd_ignore_dups
#ターミナルのタイトル
case "${TERM}" in
kterm*|xterm)
precmd() {
echo -ne "\033]0;${USER}@${HOST}\007"
}
;;
esac
# コマンドミスを修正
setopt correct
# 補完の選択を楽にする
zstyle ':completion:*' menu select
# カレントディレクトリに候補がない場合のみ cdpath 上のディレクトリを候補に出す
zstyle ':completion:*:cd:*' tag-order local-directories path-directories
#cd は親ディレクトリからカレントディレクトリを選択しないので表示させないようにする (例: cd ../<TAB>):
zstyle ':completion:*:cd:*' ignore-parents parent pwd
# 補完候補をできるだけ詰めて表示する
setopt list_packed
#色の設定
export LSCOLORS=Exfxcxdxbxegedabagacad
# 補完時の色設定
export LS_COLORS='di=01;34:ln=01;35:so=01;32:ex=01;31:bd=46;34:cd=43;34:su=41;30:sg=46;30:tw=42;30:ow=43;30'
autoload -U colors ; colors ; zstyle ':completion:*' list-colors "${LS_COLORS}"
#alias
case "${OSTYPE}" in
freebsd*|darwin*)
alias ls="ls -GF"
;;
linux*)
alias ls="ls -F --color"
;;
esac
#w3mでALC検索
function alc() {
if [ $# != 0 ]; then
w3m "http://eow.alc.co.jp/$*/UTF-8/?ref=sa"
else
w3m "http://www.alc.co.jp/"
fi
}
#cdを打ったら自動的にlsを打ってくれる関数
function cd(){
builtin cd $@ && ls;
}
#その他
#キーバインド
bindkey -e
#ビープ音ならなさない
setopt nobeep
#エディタ
export EDITOR=emacs
#改行のない出力をプロンプトで上書きするのを防ぐ
unsetopt promptcr
#個別設定を読み込む
[ -f ~/.zshrc.mine ] && source ~/.zshrc.mine
source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source /usr/local/share/zsh-autosuggestions/zsh-autosuggestions.zsh
# git設定
autoload -Uz vcs_info
setopt prompt_subst
zstyle ':vcs_info:git:*' check-for-changes true
zstyle ':vcs_info:git:*' stagedstr "%F{yellow}!"
zstyle ':vcs_info:git:*' unstagedstr "%F{red}+"
zstyle ':vcs_info:*' formats "%F{green}%c%u[%b]%f"
zstyle ':vcs_info:*' actionformats '[%b|%a]'
# -----------------------------
# Prompt
# -----------------------------
# %M ホスト名
# %m ホスト名
# %d カレントディレクトリ(フルパス)
# %~ カレントディレクトリ(フルパス2)
# %C カレントディレクトリ(相対パス)
# %c カレントディレクトリ(相対パス)
# %n ユーザ名
# %# ユーザ種別
# %? 直前のコマンドの戻り値
# %D 日付(yy-mm-dd)
# %W 日付(yy/mm/dd)
# %w 日付(day dd)
# %* 時間(hh:flag_mm:ss)
# %T 時間(hh:mm)
# %t 時間(hh:mm(am/pm))
# PROMPT='[%n][%c]'\$vcs_info_msg_0_' $ '
PROMPT='%B%F{32}~/%C%f'\$vcs_info_msg_0_' $ '
#'di=01;34:ln=01;35:so=01;32:ex=01;31:bd=46;34:cd=43;34:su=41;30:sg=46;30:tw=42;30:ow=43;30'
precmd(){ vcs_info }
상기 저장 후,
source .zshrc
로 설정을 반영한다.
보충
.zshrc
를 편집하여 자신의 취향에 맞게 zsh를 사용자 정의할 수 있습니다.
※ 신택스 하이라이트의 색이나, alias의 설정등도 만지면 보다 사용하기 쉬울지도 모릅니다.
꼭 여러 가지 시도해보십시오.
Reference
이 문제에 관하여(zsh 소개 방법(.zshrc 사용자 정의 포함)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/k941226/items/e0b9a4fa06bab275f96b
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(zsh 소개 방법(.zshrc 사용자 정의 포함)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/k941226/items/e0b9a4fa06bab275f96b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)