Fzy es un selector de texto difuso rápido y simple para el terminal con un algoritmo de puntuación avanzado.
¡Pruébelo en línea!
Ha sido una especie de cambio de vida. -@Graygilmore
Fzy funciona muy por cierto -@alexblackie
Fzy es más rápido y muestra mejores resultados que otros buscadores difusos.
La mayoría de los otros Matchers difusos se clasifican en función de la longitud de un partido. Fzy intenta encontrar el resultado que pretendía el usuario. Hace esto al favorecer los partidos en letras consecutivas y comienzos de palabras. Esto permite la coincidencia con acrónimos o diferentes partes de la ruta.
Una comparación sangrienta de la clasificación utilizada por los buscadores difusos se puede encontrar en algorithm.md
Fzy está diseñado para ser utilizado tanto como un complemento del editor como en la línea de comandos. En lugar de limpiar la pantalla, FZY muestra su interfaz directamente debajo de la posición actual del cursor, desplazando la pantalla si es necesario.
macosa
Usando Homebrew
brew install fzy
Usando MacPorts
sudo port install fzy
Arch Linux/Msys2 : pacman -S fzy
FreeBSD : pkg install fzy
Gentoo Linux : emerge -av app-shells/fzy
Ubuntu/Debian : apt-get install fzy
PKGSRC (NetBSD y otros) : pkgin install fzy
OpenSuse : zypper in fzy
make
sudo make install
La variable de entorno PREFIX se puede utilizar para especificar la ubicación de instalación, el valor predeterminado es /usr/local .
Fzy es una caída en el reemplazo de SELECTA, y se puede usar con sus ejemplos de uso.
Fzy se puede integrar fácilmente con VIM.
function ! FzyCommand (choice_command, vim_command)
try
let output = system ( a: choice_command . " | fzy " )
catch /Vim:Interrupt/
" Swallow errors from ^C, allow redraw! below
endtry
redraw !
if v: shell_error == 0 && ! empty (output)
exec a: vim_command . ' ' . output
endif
endfunction
nnoremap <leader> e :call FzyCommand("find . -type f", ":e") <cr>
nnoremap <leader> v :call FzyCommand("find . -type f", ":vs") <cr>
nnoremap <leader> s :call FzyCommand("find . -type f", ":sp") <cr> Cualquier programa se puede usar para filtrar archivos presentados a través de FZY. AG (el buscador de plata) se puede usar para ignorar los archivos especificados por .gitignore .
nnoremap <leader> e :call FzyCommand("ag . --silent -l -g ''", ":e") <cr>
nnoremap <leader> v :call FzyCommand("ag . --silent -l -g ''", ":vs") <cr>
nnoremap <leader> s :call FzyCommand("ag . --silent -l -g ''", ":sp") <cr> Fzy intenta presentar los mejores partidos primero. Las siguientes consideraciones se ponderan al clasificar:
Prefiere caracteres consecutivos: file coincidirá con el archivo a través de film t e r .
Prefiere que coincida con el comienzo de las palabras: es probable que amp coincida con un PP/ M Odels/ P OSTS.RB.
Prefiere partidos más cortos: abce coincide con ABC D E F sobre ABC d e .
Prefiere candidatos más cortos: las coincidencias test pruebas sobre la prueba .