O tamanho do kill ring é determinado pelo tamanho do killring
array. Isso é 8 por padrão.
A variável está disponível apenas nos widgets zle, portanto, não é possível manipulá-la na linha de comando, você precisa definir um widget e chamá-lo por meio de uma ligação de chave ou por meio de M-x
. Aqui está um exemplo de um widget que anula o killring.
set_killring_size () {
local empty=
if ((!$+NUMERIC)); then
# Wipe killring and re-create it to its current size
NUMERIC=$#killring
killring=()
fi
if ((NUMERIC <= $#killring)); then
# Truncate killring to the specified size
killring=("${(@)killring[1,$NUMERIC]}")
else
# Grow killring to the specified size
killring=("${(@)killring}" "${(@s:_:)${(l:$((NUMERIC-$#killring-1))::_:)empty}}")
fi
}
zle -N set_killring_size set-killring-size
Chame este widget sem nenhum argumento para limpar o killring: M-x set-killring-size RET
. Chame-o com um prefixo numérico para definir o tamanho da eliminação: ESC 4 2 M-x set-killring-size RET
.