I am using version:
0.1.0-r331-0.0.9-r169 (but this seems to be a problem also with
0.0.9-r144) and when I open a shell with
flox develop then call
history I am getting some mangled results
499 : 1675171170:0;echo "ho"
500 : 1675171172:0;flox develop
In this case
echo "ho" was done just before starting the
This is problematic in particular when using a tool like
fzf which is going to select the command with this weird prefix.
This known to zsh as EXTENDED_HISTORY (reference).
I presume you are using oh-my-zsh? It has this option on by default. What must be happening is that you enter a bash development shell without changing which history file is used; you must still be reading from your zsh history. Most of the tie this is handled by your existing default init scripts. I’ve seen this before, but the exact combination of rc-scripts that cause this eludes me at the moment.
It is possible that while in the development shell, the extended_history option is turned off, and thus fzf does not turn on it’s logic for handling it ([zsh] Replace perl with awk by jirutka · Pull Request #2777 · junegunn/fzf · GitHub) and therefore displays the extra data.
Thanks for the tip about
fzf. I just did an install from
unstable to get a more recent version and this fixed the issue.
So the previous perl invocation failed silently in fzf, but the newer fzf using awk works? If so, that is good news, I just want to confirm that a fzf upgrade past 2022 Jul 19 works as expected.
Actually I don’t know how I managed to convince myself but it indeed doesn’t work even with
fzf-0.37.0. It is not a huge problem for me since my next steps are now to
unset $FLOX_ACTIVE_ENVIRONMENTS and activate my project. Then
fzf works fine again.