Zsh 이동이 가능한 사용자 정의 포리스트
배경.
현재 셸은 주로zsh를 사용합니다.
평소 디렉터리를 이동하거나 docker를 시작할 때마다 명령을 내리는 것이 번거롭다고 느낀다.따라서 환경 개선을 위해 zsh의 맞춤형 추진 과정을 소개했다.
다음은 zsh를 맞춤형으로 만들고 싶은 사람을 대상으로 쓸 것입니다.
zsh를 맞춤형으로 만들기 위해서.zshrc 파일을 편집해야 합니다.
숨겨진 파일이기 때문에 평소finder에 나타나지 않습니다.
터미널을 시작하고
vim ~/.zshrc
를 입력하고 편집합니다.다음은 붙여넣은 명령을 복사할 수 있습니다
플러그 인
Zplug 플러그인 관리자
ziplug을 플러그인 관리자로 사용합니다.(oh-my-zesh도 가능)
위 페이지에 따라 zplug를 설치한 후.zshrc에 다음 코드를 추가합니다.
# zplugを使う
source ~/.zplug/init.zsh
# ここに使いたいプラグインを書いておく
# zplug "ユーザー名/リポジトリ名", タグ
zplug "zsh-users/zsh-completions"
# 入力途中に候補をうっすら表示
zplug "zsh-users/zsh-autosuggestions"
# コマンドを種類ごとに色付け
zplug "zsh-users/zsh-syntax-highlighting"
# 自分自身をプラグインとして管理
zplug "zplug/zplug", hook-build:'zplug --self-manage'
# コマンドをリンクして、PATH に追加し、プラグインは読み込む
zplug load –verbose
source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
터미널에서 다음 명령을 입력할 때.zshrc의 설정을 반영할 수 있습니다.source ~/.zshrc
zsh 설정
저는zsh를 사용할 때"긴지령입력에시간이 걸리는구나", "지난주에사용한지령은어떤놈이었더라"등매번투덜거렸습니다.그걸 해결하기 위해 다음 코드를 설정했습니다.
개인 편의순위 1위는 페코였다.
덕분에 과거에 입력한 지령을 보충하여 업무 효율을 높일 수 있습니다!!!
# options
setopt auto_list
# setopt share_factory
setopt hist_ignore_all_dups
# peco with zsh setting
# コマンド履歴件数
HISTFILE=$HOME/.zsh-history
HISTSIZE=100000
SAVEHIST=1000000
# 過去に実行したコマンドを選択。ctrl-rにバインド
function peco-select-history() {
BUFFER=$(\history -n -r 1 | peco --query "$LBUFFER")
CURSOR=$#BUFFER
zle clear-screen
}
zle -N peco-select-history
bindkey '^r' peco-select-history
# search a destination from cdr list
function peco-get-destination-from-cdr() {
cdr -l | \
sed -e 's/^[[:digit:]]*[[:blank:]]*//' | \
peco --query "$LBUFFER"
}
### 過去に移動したことのあるディレクトリを選択。ctrl-uにバインド
function peco-cdr() {
local destination="$(peco-get-destination-from-cdr)"
if [ -n "$destination" ]; then
BUFFER="cd $destination"
zle accept-line
else
zle reset-prompt
fi
}
zle -N peco-cdr
bindkey '^u' peco-cdr
########一般の設定##########
# 日本語ファイル名を表示可能にする
setopt print_eight_bit
# 直前と同じコマンドの場合はヒストリに追加しない
setopt hist_ignore_dups
# 補完機能を有効にする
autoload -Uz compinit
compinit -u
if [ -e /usr/local/share/zsh-completions ]; then
fpath=(/usr/local/share/zsh-completions $fpath)
fi
# 補完で大文字にもマッチ
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
# mkdirとcdを同時実行
function mkcd() {
if [[ -d $1 ]]; then
echo "$1 already exists!"
cd $1
else
mkdir -p $1 && cd $1
fi
}
앞으로 꾸준히 사용하고 수시로 추가한다.
Reference
이 문제에 관하여(Zsh 이동이 가능한 사용자 정의 포리스트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/kenkenlysh/articles/d5d074a1561350텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)