首页 > 解决方案 > TIDE 内的鱼壳 git_prompt

问题描述

是否可以强制Fish shell扩展TIDE使用fish_git_prompt而不是自己的_tide_item_git.fish

我的目标是使 TIDE git prompt 与本教程相同。

现在使用默认 TIDE 设置,我有这个 git 提示符:

在此处输入图像描述

但是,我想让它看起来像这样,但仍然使用 TIDE:

在此处输入图像描述 源图像


鱼,版本 3.2.1

软呢帽 33

标签: fish

解决方案


所以潮汐函数所做的只是收集 git 信息并打印出来。Tide 调用它,获取它打印的内容,并将其放在正确的位置。这也是 fish_git_prompt 的工作方式 - 它打印 git 内容,您的提示负责将其放在正确的位置。

简化:

function fish_prompt
    set gitstuff (_tide_item_git)
    # do other tide stuff
    printf '%s' $gitstuff $otherstuff
end

当 fish 调用一个函数时,它会通过 $fish_function_path 获取一个带有函数名称的文件(加上一个“.fish”后缀)。

所以你要做的就是制作你自己的函数_tide_item_git,然后把它放在 $fish_function_path 中。

我不确定你是如何安装潮的,我假设它不直接在 ~/.config/fish/functions -你的函数的正常目录。这是简单的情况,所以你可以调用funced _tide_item_git,它会在你的编辑器中打开它,然后用

function _tide_item_git
    fish_git_prompt
end

funcsave _tide_item_git开心就跑。

在更复杂的情况下,为您的函数创建另一个目录 -~/.config/fish/myfunctions也许 - 将其添加到 $fish_function_path:

set -g fish_function_path ~/.config/fish/myfunctions $fish_function_path

(把它放在 config.fish 中)

在那里创建一个文件_tide_item_git.fish并将上述函数放入。


推荐阅读