Issue stemmed from fzf-tmux being included in the fzf script. This was
cause a race condition conflict. And would only load correctly when the
imported version loaded first. This is why it only worked on the first
where this resources had to be downloaded.
This way actually has a couple of advantages.
1. With this you write something like $ _ vim file.xml. This is
automatically drop you into a tmp dir then run the vim command.
2. zsh completions aren't still work.
The issue was stemming from racecondition betwwen then completion
function which uses the complete file, and the zsh_users/completions
plug that defined them.
Also relocated transient -> cache.
Its largely based on jackharrisonsherlock's common prompt, but has some
different namespacing, a deterministic prompt color based on the
hostname, and a few other minor changes.
My plan is to add async git info to this, but this is the MVP for this.
This is a very fragile implementation of this, but I didn't want to add
any dependencies to this script since I want it to be able to portable
above all else. If anyone has a better solution I would love to hear it.
I've reorganized some of the fzf dependency some. There are large number
of resources I need from the fzf repo that I have been omitting because
zplug does no work well with a repo that both has both bins and plugins.
Instead I've been manually managing the fzf.zsh files and the fzf-tmux
then using the binary from fzf-bin. This nominally worked for zsh it
wasnone functioning for other things that used fzf as a dependency.
Additionally this broke the rule of don't write what you don't have to
mantra of this project.
Users can still set $HISTFILE if they want to and this will be used instead.
If no value is specified it will default to the $ZDIR/transient/history file.
At this point the following doesn't work.
- prompt
- history
- most autocomplete
Additionally with the tmux script getting loaded zplug we are getting a double
render issue, which is increasing the start up time. I'll probably move this
before the .zshrc set to short circuit having to set up all zplug script twice
before having a useable shell.