zsh에서 기록 검색 확장

zsh에서 기록 검색 확장

Ctrl+Rzsh에서 검색을 확장하는 방법은 무엇입니까 ? 기록 파일에 있지만 항목을 찾을 수 없습니다.

편집하다:내 거 .zshrc:

setopt AUTO_CD
setopt CORRECT_ALL
setopt EXTENDED_GLOB
# History
SAVEHIST=10000
HISTFILE=~/.zsh/history
setopt APPEND_HISTORY
setopt EXTENDED_HISTORY
setopt INC_APPEND_HISTORY
setopt HIST_FIND_NO_DUPS
setopt HIST_IGNORE_SPACE
setopt NO_HIST_BEEP
setopt SHARE_HISTORY
# Keys
autoload zkbd
[[ ! -d ~/.zkbd ]] && mkdir ~/.zkbd
[[ ! -f ~/.zkbd/$TERM-${DISPLAY:-$VENDOR-$OSTYPE} ]] && zkbd
source  ~/.zkbd/$TERM-${DISPLAY:-$VENDOR-$OSTYPE}
[[ -n ${key[Home]}    ]]  && bindkey  "${key[Home]}" beginning-of-line
[[ -n ${key[End]}     ]]  && bindkey  "${key[End]}"     end-of-line
[[ -n ${key[Insert]}  ]]  && bindkey  "${key[Insert]}"  overwrite-mode
[[ -n ${key[End]}     ]]  && bindkey  "${key[End]}"     end-of-line
[[ -n ${key[Insert]}  ]]  && bindkey  "${key[Insert]}"  overwrite-mode
[[ -n ${key[Delete]}  ]]  && bindkey  "${key[Delete]}"  delete-char
[[ -n ${key[Up]}      ]]  && bindkey  "${key[Up]}" up-line-or-history
[[ -n ${key[Down]}    ]]  && bindkey  "${key[Down]}" down-line-or-history
[[ -n ${key[Left]}    ]]  && bindkey  "${key[Left]}"    backward-char
[[ -n ${key[Right]}   ]]  && bindkey  "${key[Right]}"   forward-char
# Auto completion
autoload -U compinit promptinit
compinit
promptinit
prompt clint
zstyle ':completion::complete:*' use-cache 1
# MIME
autoload -U zsh-mime-setup
zsh-mime-setup
# Calc
autoload -U zcalc
# Editor
export EDITOR=vim
# Useful
alias background="schedtool -B -e"
alias lowprio="nice -n 20 ionice -c 3"
alias blowprio="ionice -c 3 schedtool -B -e nice -n 20"

cave resolve -c(적어도 말하자면) 발견되어야 하지만 일치하는 항목을 찾지 blowprio cave resolve -c world -C a -R w --resume-file resume-world못합니다 ..zsh/historygrep

답변1

이미 설정했지만 기본값인 30 SAVEHIST=10000으로 두었습니다 . HISTSIZE이는 모든 세션이 메모리에 최대 30개의 항목을 유지한다는 의미입니다. 이 옵션 덕분에 append_history기록 파일에는 메모리에 저장할 수 있는 것보다 더 많은 기록이 포함될 수 있습니다. 검색 중인 항목이 메모리에 없으면 찾을 수 없습니다.

간단한 수정: 설정을 SAVEHIST더 크게 만듭니다. 대부분의 경우 값 SAVEHISTHISTSIZE동일해야 합니다.

메모리가 매우 부족하다면 메모리에 더 적은 수의 항목을 유지하고 검색할 때만 로드하는 것이 합리적이라고 생각합니다. 그러나 이는 다소 작은 이점을 위한 많은 코딩 노력처럼 들립니다(10000개 항목은 약 1MB로 셸 인스턴스의 경우 크지만 불가능하지는 않습니다).

hist_ignore_all_dups(대신) 이 옵션을 사용하면 기록 항목에서 더 나은 마일리지를 얻을 수 있습니다 hist_find_no_dups.

답변2

나는 이 검색을 "확장"하는 것이 가능하다고 생각하지 않습니다.

기본 구성에서 Ctrl+RZSH Line Edtior의 내장 기능에 매핑됩니다 (즐러):history-incremental-search-backward

바라보다ZSH 맨페이지의 기록 제어.

이 기능을 "확장"할 가능성은 없는 것 같습니다.

찾을 수 없는 항목은 무엇입니까? 어떤 예가 있습니까?

관련 정보