Tengo el siguiente alias en mi zshrc
alias nif='nvim $(rg --files | fzf -m || echo +qa)'
Básicamente, uso rg (ripgrep) para mostrar todos los archivos en el directorio actual y en los subdirectorios. Esto se canaliza a fzf donde puedo seleccionar algunos de ellos y luego se abre en neovim. Cuando todo está dicho y hecho, el comando final termina siendo algo así como
nvim my_file.cpp
Sin embargo, en mi historial solo muestra el nif
alias. ¿Hay alguna forma de reemplazar nif
en mi historial el comando en el que se expandió nvim my_file.cpp
?
Respuesta1
Haz que tu alias agregue su expansión al historial con print -s
.
En lugar de:
alias nif='nvim $(...)'
usar
alias nif='f=$(...); print -rs nvim $f; nvim $f'
Lo mismo funciona con una función en lugar de un alias, lo que significa que puedes abstraer y reutilizar el historial guardado en lugar de duplicarlo en todos tus alias.