-
Notifications
You must be signed in to change notification settings - Fork 265
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
First-class support for $fisher_path
#640
Comments
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
$fisher_path
👋 I write a simple plugin to make curl -sSL https://git.io/fisher_path.fish --create-dirs -o $__fish_config_dir/conf.d/fisher_path.fish |
@jorgebucaran is there any plans on adding a "out of the box" support for It would be really nice to have this without the need of extra boilerplate code or third party plugins |
Sorry, not at this time. I get that out-of-the-box support would be nice to have for some, but using a plugin like @kidonng's works just as well, allowing me to keep Fisher simple, which is also in the interest of all of us. |
I see your point, but wouldn't it be counter-intuitive to have a variable that only instructs the plugin manager where to install the plugins, when you need to manually write extra configuration to actually be able to make use of those installed plugins? Shouldn't it be part of fisher project scope? |
You are right, which is why using I am not completely made up my mind about this yet, which is why the issue is still open. |
@henriquehbr Just want to say that while it is possible to use it as a Fisher plugin, the recommend way to use it is to put it in |
@kidonng What would be the possible pitfalls of using it as a fisher plugin? At the moment, i'm using it in my |
You will still need some boilerplate code like |
Why do you need that boilerplate? @kidonng. |
I was replying to @henriquehbr's question that what's the downside of using it as a fisher plugin, where your still have to source the plugin in order for it to do its job. |
Thanks for the advice @kidonng, i think i'll go with this solution, even though it requires an extra |
I know you were. I'm just confused, why the extra boilerplate with the plugin? |
Hey @jorgebucaran, according to this heads-up on the docs:
By default, if you run
Is that correct? if yes, is there some way to keep the custom |
That message is also shown whenever you try to install a plugin that's already installed. Are you saying that setting |
I have Isn't it a good idea to overwrite installed plugins on update by default? |
That's exactly what Fisher does. I'll need you to share your dotfiles with us. Maybe it's not a Fisher issue at all. |
There you go: https://github.com/henriquehbr/dots/tree/main/.config/fish Thanks in advance! :) |
You have a few things like I'd start commenting out stuff to see if I can narrow down the issue a bit. If you can't figure it out, I'd suggest creating a Docker image with a repro. Have a look at Fisher's |
Spotted the issue! since i migrated from zsh to fish, i've been having trouble dealing with the Seems like deleting
@jorgebucaran do you know a better way of dealing with this specific situation, or it's just something that i have to get used to? |
Deal with what exactly? If you clobber Fisher's state you are going to break it. |
The solution consists of adding a conf.d snippet to check if ! set --query fisher_path[1] || test "$fisher_path" = $__fish_config_dir && exit
set fish_complete_path $fish_complete_path[1] $fisher_path/completions $fish_complete_path[2..]
set fish_function_path $fish_function_path[1] $fisher_path/functions $fish_function_path[2..]
for file in $fisher_path/conf.d/*.fish
source $file
end |
I know this is closed, but I am struggling to understand how to properly export the In |
If you are looking to change the default path where Fisher installs plugins, you only need to set |
This is my # function fish_vi_cursor; end
fish_vi_key_bindings
function fish_user_key_bindings
for mode in insert default visual
bind -M $mode \cf forward-word
bind -M $mode \ce forward-char
bind -M $mode \co forward-char
end
# bind -M default \e\e 'thefuck-command-line' # Bind EscEsc to thefuck
end
# set -x GOPATH (go env GOPATH)
set --global --export MSSQL_TEST_PASS CrowdCrowd2
set --global --export EDITOR nvim
set --global --export NNN_PLUG z:autojump
set --global --export PYENV_ROOT /Users/ms/.pyenv
set --global --export LS_COLORS gxfxbEaEBxxEhEhBaDaCaD
set --global --export XDG_CONFIG_HOME $HOME/.config
set --global --export ANDROID_SDK_ROOT /Users/ms/Library/Android/sdk
# set --global --export FZF_CTRL_T_COMMAND fd --type file --follow --hidden --exclude .git
# set --global --export FZF_DEFAULT_COMMAND fd --type file --follow --hidden --exclude .git
set --global --export JAVA_HOME /Users/ms/Library/Java/JavaVirtualMachines/corretto-16.0.2/Contents/Home
set --universal --export fisher_path ~/.config/fish/fisher
# Don't show no message when logging in
set --global fish_greeting
if not type -q fisher
echo "`fisher` is not installed, install with `curl -sL https://git.io/fisher | source && fisher install jorgebucaran/fisher` or check https://github.com/jorgebucaran/fisher"
end
starship init fish | source So I can do |
|
Yes, indeed @jorgebucaran are you using a custom |
You don't need to set
Not currently using a custom |
If I change my config.fish from set -Ux fisher_path ~/.config/fish/fisher to set fisher_path ~/.config/fish/fisher I can no longer use |
Did you also add |
Indeed I did. At least I think that's what @kidonng's plugin does. #640 (comment) |
My suggestion: uninstall all your plugins (you can reinstall them once we've resolved this). Also make sure you are not using Oh My Fish. Follow the instructions in this issue to customize your |
I feel like there is a step I am missing. This is what I did:
Can you see what I am doing wrong? @jorgebucaran |
Do you have to delete $__fish_config_dir/fisher? Isn't that where you want to point your fisher_path to? |
I followed your steps of removing all plugins first. Deleting everything inside |
Did you clear out or commented everything in your config.fish? |
Nope! That's a very good point... 😬 will try. |
@martisj Because I happened to run into this issue and just read the documantation on fish configuration files, I suspect that the issue is the order of execution of configuration files in fish. Seems scripts in |
What @elegios is the reason that @martisj is having issues. If you follow instructions from @jorgebucaran (#640 (comment)), you MUST set Other option is to simply set it there (without set fisher_path $__fish_config_dir/fisher
set fish_complete_path $fish_complete_path[1] $fisher_path/completions $fish_complete_path[2..]
set fish_function_path $fish_function_path[1] $fisher_path/functions $fish_function_path[2..]
for file in $fisher_path/conf.d/*.fish
source $file
end |
We can customize the installation path using
$fisher_path
, but Fisher doesn't help you with the boilerplate code necessary to load it during startup. It would be great if Fisher did all this work when you're using a custom$fisher_path
.Something like this via
$__fish_config/conf.d/fisher.fish
would do it:The text was updated successfully, but these errors were encountered: