Zinit를 사용하여 터미널 사용자 정의

16003 단어 Zshzinittech

이른바 Zinit


zinitzsh의 플러그인 관리자입니다.

Zinit의 장점


매우 빠르다


Zsh의 시동 속도가 50~80% 빨라진 것 같아요.
다른 유명한 플러그인 관리자의 속도와 비교하면 다음과 같다.

zinit#zinit

기능이 풍부하다


Oh-My-Zsh와 Prezto를 지원하며 프레임에 의존하지 않습니다.
플러그인, 라이브러리, 테마를 쉽게 만들 수 있습니다.
다른 여러 가지 좋은 점이 있다고 생각합니다. 마음에 드시는 분들은 보세요Github.

Zinit 설치


이 명령을 실행합니다.
$ sh -c "$(curl -fsSL https://git.io/zinit-install)"
$ source ~/.zshrc
$ zinit self-update
이후~/.local/share/zinit/zinit.git에는 Zinit가 설치되고~/.zshrc에는 다음과 같은 코드가 추가됩니다.다음 세 줄은 zinit 보충 명령의 설정이다.
.zshrc
### Added by Zinit's installer
if [[ ! -f $HOME/.local/share/zinit/zinit.git/zinit.zsh ]]; then
    print -P "%F{33} %F{220}Installing %F{33}ZDHARMA-CONTINUUM%F{220} Initiative Plugin Manager (%F{33}zdharma-continuum/zinit%F{220})…%f"
    command mkdir -p "$HOME/.local/share/zinit" && command chmod g-rwX "$HOME/.local/share/zinit"
    command git clone https://github.com/zdharma-continuum/zinit "$HOME/.local/share/zinit/zinit.git" && \
        print -P "%F{33} %F{34}Installation successful.%f%b" || \
        print -P "%F{160} The clone has failed.%f%b"
fi

source "$HOME/.local/share/zinit/zinit.git/zinit.zsh"
autoload -Uz _zinit
(( ${+_comps} )) && _comps[zinit]=_zinit
### End of Zinit's installer chunk

사용법

load 또는 light 읽기 플러그인을 사용할 수 있습니다.
zinit load <repo/plugin>
zinit light <repo/plugin>
  • load 보고서 (추적) 를 사용합니다.zinit report 목록에 표시하거나 zinit unload에서 플러그인을 비활성화할 수 있습니다.
  • light 보고서 (추적) 를 사용하지 않습니다.
  • 또한 다음과 같은 방법snippet을 사용하여 읽을 수 있습니다.
    zinit snippet https://gist.githubusercontent.com/hightemp/5071909/raw/
    

    기본 사용자 지정


    지금부터 자신의 취향에 따라 맞춤 제작을 시작합니다.

    프롬프트 항목 수정


    기본 힌트는 보기 어려우니 인기 있는pure부터 추가하자.
    .zshrc
    # Load the pure theme, with zsh-async library that's bundled with it.
    zinit ice pick"async.zsh" src"pure.zsh"
    zinit light sindresorhus/pure
    

    pure
    나는 개인적으로 퓨어의 배색Iceberg을 좋아하지 않아서 이런 색 모드를 사용했다.(아이스버그를 조금 맞춤형으로 제작해서 사용)
    설정 방법은 본문을 참고하세요.
    Mac의 터미널에서 Iceberg를 설정하여 쉽게 이해할 수 있도록 합니다

    문법 설명


  • zsh-syntax-highlighting
    구문 강조 표시를 설정할 수 있습니다.
  • .zshrc
    zinit light zsh-users/zsh-syntax-highlighting
    

    입력 완성①

  • zsh-autosuggestions
  • .zshrc
    zinit light zsh-users/zsh-autosuggestions
    
    터미널의 명령 역사에 따라 명령 후보를 표시하고 입력을 보완합니다.
    얇은 명령 후보가 표시됩니다.

    입력 완성 ②

  • zsh-completions
  • .zshrc
    zinit light zsh-users/zsh-completions
    
    명령 및 파일 이름을 입력할 때 Tab 키를 눌러 제안된 입력 목록을 표시합니다.

    명령 내역 검색


  • history-search-multi-word
    명령 기록을 열거할 수 있습니다.
  • .zshrc
    zinit light zdharma/history-search-multi-word
    
    history 명령어와 비슷하지만 옵션에서 선택할 수 있어 편리하다.
    목록이 Ctrl+R에 표시됩니다.

    여기까지.zshrc


    어쨌든 여기까지 하면 다음과 같이 할 수 있을 것 같다.zshrc.(내 개인 설정 포함)
    .zshrc
    # ----------------------------
    # basic
    # ----------------------------
    # コマンド履歴の管理
    HISTFILE=~/.zsh_history
    export HISTSIZE=1000
    export SAVEHIST=10000
    
    # ----------------------------
    # Added by Zinit's installer
    # ----------------------------
    if [[ ! -f $HOME/.local/share/zinit/zinit.git/zinit.zsh ]]; then
        print -P "%F{33} %F{220}Installing %F{33}ZDHARMA-CONTINUUM%F{220} Initiative Plugin Manager (%F{33}zdharma-continuum/zinit%F{220})…%f"
        command mkdir -p "$HOME/.local/share/zinit" && command chmod g-rwX "$HOME/.local/share/zinit"
        command git clone https://github.com/zdharma-continuum/zinit "$HOME/.local/share/zinit/zinit.git" && \
            print -P "%F{33} %F{34}Installation successful.%f%b" || \
            print -P "%F{160} The clone has failed.%f%b"
    fi
    
    source "$HOME/.local/share/zinit/zinit.git/zinit.zsh"
    autoload -Uz _zinit
    (( ${+_comps} )) && _comps[zinit]=_zinit
    
    # ----------------------------
    # Zinit plugins
    # ----------------------------
    # Load the pure theme, with zsh-async library that's bundled with it.
    zinit ice pick"async.zsh" src"pure.zsh"
    zinit light sindresorhus/pure
    # シンタックスハイライト
    zinit light zsh-users/zsh-syntax-highlighting
    # 入力補完
    zinit light zsh-users/zsh-autosuggestions
    zinit light zsh-users/zsh-completions
    # コマンド履歴を検索
    zinit light zdharma/history-search-multi-word
    
    # ----------------------------
    # alias
    # ----------------------------
    alias g="git"
    alias gb="git branch"
    alias gs="git switch"
    alias gco="git checkout"
    alias r="bin/rails"
    alias rs="bin/rails server"
    alias rc="bin/rails console"
    alias rg="bin/rails generate"
    alias rdbc="bin/rails db:create"
    alias rdbm="bin/rails db:migrate"
    

    좀 더 맞춤형으로 하고 싶어요.


    여기서 수시로 업데이트할 예정입니다.

    peco


    많이 조사해서 발견했어요peco.
    이걸 넣으면...
  • 디스플레이, 이동 디렉터리의 이동 역사
  • 명령 실행 내역 표시 및 실행
  • Giit 분기 표시 및 전환
  • 이런 일이 가능해진 것 같다.
    매번 cd 명령으로 디렉터리를 이동하면 작별인사를 할 수 있을 것 같습니다.

    peco 가져오기


    Giithub에 따라 brew에 설치합니다.
    $ brew install peco
    
    다음에 zine it 읽기를 통해pecoanyframe를 더욱 편리하게 처리할 수 있습니다.
    .zshrc
    zinit light mollifier/anyframe
    
    이렇게 설치하면 완성됩니다.

    사용자 정의 peco


    단축키는 스스로 편리하게 사용할 수 있는 명령이 될 수 있다.
    자세한 내용은 anyframe를 참조하십시오.

    디렉터리의 이동 기록 보이기


    .zshrc
    bindkey '^xb' anyframe-widget-cdr
    autoload -Uz chpwd_recent_dirs cdr add-zsh-hook
    add-zsh-hook chpwd chpwd_recent_dirs
    
    목차의 이동 내역을 Ctrl+x->b에 표시합니다.
    선택하면 그곳으로 이동합니다.

    명령 실행 내역 표시


    .zshrc
    bindkey '^xr' anyframe-widget-execute-history
    
    Ctrl+x->r에 명령의 실행 내역을 표시합니다.
    하이스토리-search-multi-word의 강화판입니다.

    전환할 Giit 분기 표시


    .zshrc
    bindkey '^x^b' anyframe-widget-checkout-git-branch
    
    전환할 수 있는 Giit 분기를 Ctrl+x->Ctrl+b에 표시합니다.

    좋은 웹페이지 즐겨찾기