Skip to content

Random Issues With Fish Internal Commands Not Being Found #11921

@thetinygoat

Description

@thetinygoat

fish version: 4.1.1

OS: Darwin

Terminal:
Ghostty 1.2.1

Version

  • version: 1.2.1
  • channel: stable
    Build Config
  • Zig version : 0.14.1
  • build mode : builtin.OptimizeMode.ReleaseFast
  • app runtime : apprt.Runtime.none
  • font engine : font.main.Backend.coretext
  • renderer : renderer.generic.Renderer(renderer.Metal)
  • libxev : kqueue

I don't use any third party customizations

I have not been able to replicate the issue deterministically, it comes on randomly. This time it happened after i ran brew upgrade, and fish was one of the packages that was updated. I thought maybe it happened due to underlying files being changed.
But when i went through the update on my second machine which also has the same OS and terminal and same version was updated i didn't face the same issue, although i have faced the same issue on my second machine earlier.

It gets fixed when i open a new split or a new tab.

Here's the type of errors that i see when this happens.

fish: Unknown command: fish_job_summary
/opt/homebrew/Cellar/fish/4.1.1/share/fish/functions/__fish_print_pipestatus.fish (line 1): Unknown command: fish_status_to_signal
fish_status_to_signal $argv | string join "$sep"
^~~~~~~~~~~~~~~~~~~~^
in command substitution
        called on line 27 of file /opt/homebrew/Cellar/fish/4.1.1/share/fish/functions/__fish_print_pipestatus.fish
in function '__fish_print_pipestatus' with arguments '\[ \] \| \e\[31m \e\[31m\e\[1m 137'
        called on line 1 of file /opt/homebrew/Cellar/fish/4.1.1/share/fish/functions/fish_prompt.fish
in command substitution
        called on line 31 of file /opt/homebrew/Cellar/fish/4.1.1/share/fish/functions/fish_prompt.fish
in function 'fish_prompt'
in command substitution
/opt/homebrew/Cellar/fish/4.1.1/share/fish/functions/__fish_print_pipestatus.fish (line 27): Unknown command
        set -l last_pipestatus_string (fish_status_to_signal $argv | string join "$sep")
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
in function '__fish_print_pipestatus' with arguments '\[ \] \| \e\[31m \e\[31m\e\[1m 137'
        called on line 1 of file /opt/homebrew/Cellar/fish/4.1.1/share/fish/functions/fish_prompt.fish
in command substitution
        called on line 31 of file /opt/homebrew/Cellar/fish/4.1.1/share/fish/functions/fish_prompt.fish
in function 'fish_prompt'
in command substitution
    __fish_seen_subcommand_from cache
    ^~~~~~~~~~~~~~~~~~~~~~~~~~^
in function '__bat_cache_subcommand'
        called on line 70 of file /opt/homebrew/share/fish/vendor_completions.d/bat.fish
in function '__bat_cache_no_excl'
in command substitution
/opt/homebrew/share/fish/vendor_completions.d/bat.fish (line 54): Unknown command: __fish_seen_subcommand_from
    __fish_seen_subcommand_from cache
    ^~~~~~~~~~~~~~~~~~~~~~~~~~^
in function '__bat_cache_subcommand'
in command substitution
/opt/homebrew/share/fish/vendor_completions.d/bat.fish (line 54): Unknown command: __fish_seen_subcommand_from
    __fish_seen_subcommand_from cache
    ^~~~~~~~~~~~~~~~~~~~~~~~~~^
in function '__bat_cache_subcommand'
in command substitution
/opt/homebrew/share/fish/vendor_completions.d/bat.fish (line 54): Unknown command: __fish_seen_subcommand_from
    __fish_seen_subcommand_from cache
    ^~~~~~~~~~~~~~~~~~~~~~~~~~^
in function '__bat_cache_subcommand'
        called on line 59 of file /opt/homebrew/share/fish/vendor_completions.d/bat.fish
in function '__bat_no_excl_args'
in command substitution
/opt/homebrew/share/fish/vendor_completions.d/bat.fish (line 59): Unknown command: __fish_seen_argument
    not __bat_cache_subcommand; and not __fish_seen_argument \
                                        ^~~~~~~~~~~~~~~~~~~^
in function '__bat_no_excl_args'
in command substitution
fish: Unknown command: __fish_is_first_arg
in command substitution
fish: Unknown command: __fish_seen_argument
in command substitution
fish: Unknown command: __fish_paste
fish: Unknown command: up-or-search
fish: Unknown command: down-or-search

Here's my config.fish file

# global variables
set -gx EDITOR nano
set -gx BUN_INSTALL ~/.bun
set -gx HISTSIZE 10000
set -gx SAVEHIST 10000
set -g fish_greeting

# path mutations
fish_add_path /opt/homebrew/bin
fish_add_path /opt/homebrew/opt/openjdk/bin
fish_add_path ~/.local/bin
fish_add_path ~/tools/kafka/bin
fish_add_path $BUN_INSTALL/bin

# abbrs
# git
abbr --add cat bat
abbr --add codex codex --search
abbr --add grep rg
abbr --add gst git status
abbr --add gr git remote -v
abbr --add gra git remote add
abbr --add grrm git remote remove
abbr --add gpl git pull
abbr --add gp git push
abbr --add glg git log --oneline
abbr --add gf git fetch
abbr --add gco git checkout
abbr --add gcl git clone
abbr --add gcb git checkout -b
abbr --add gc git commit -v
abbr --add gaa git add .
abbr --add gca git commit --amend
abbr --add gcane git commit --amend --no-edit
abbr --add gsh git stash
abbr --add gshp git stash pop
abbr --add gb git branch

# fish
abbr --add reload source ~/.config/fish/config.fish

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions