Это «интеграция оболочки». Посмотрите на принятый ответ

ользую встроенный терминал IntelliJ сракушка, который хорошо работает с одним исключением: кажется, что он не загружает функции fish, определенные в~/.config/fish/functions/*.

Когда я использую macOS Terminal.app или iTerm2, функции загружаются так, как они должны, только встроенный терминал IntelliJ не может это сделать.

Как ни странно, терминал IntelliJделает нагрузка~/.config/fish/config.fish просто хорошо.

Вот выводecho $fish_function_path в iterm2 и Terminal.app:

/Users/moritz/.config/fish/functions
/usr/local/Cellar/fish/2.6.0/etc/fish/functions
/usr/local/share/fish/vendor_functions.d
/usr/local/Cellar/fish/2.6.0/share/fish/functions

А вот вывод при запуске того же самого во встроенном терминале IntelliJ:

/Applications/IntelliJ IDEA.app/Contents/plugins/terminal/fish/functions
/usr/local/Cellar/fish/2.6.0/etc/fish/functions
/usr/local/share/fish/vendor_functions.d
/usr/local/Cellar/fish/2.6.0/share/fish/functions

Я думаю, это похоже на то, что встроенный терминал IntelliJ инициализирует сеанс fish с другим значением для$fish_function_path?

$HOME знак равно/Users/moritz) а также$XDG_CONFIG_HOME (не установлены) одинаковы во всех трех встроенных терминалах iTerm2, Terminal.app и IntelliJ.

Ответы на вопрос(4)

Ваш ответ на вопрос