Fish Shell:共通変数とエイリアスは「コンテキスト」間で共有されません。

Fish Shell:共通変数とエイリアスは「コンテキスト」間で共有されません。

私は主にRider IDEとiTerm2でFish Shellを使用しています。

私は今後のセッションのために何かを保存するためのすべてのタスクが上記の2つのコンテキストの間で透過的に実行されるわけではありません。より正確には、一般的なエクスポート変数またはエイリアスを定義すると、定義された「コンテキスト」に保持され、他の変数には存在しません。

たとえば、次はaliasRider IDE(ターミナルビュー)呼び出しの出力です。

❯ alias
alias br1 'brightness 1'
alias cat bat
alias cdg 'cd $(git rev-parse --show-cdup)./'
alias l ls
alias ll 'ls -l'
alias ls lsd
alias lt 'lsd -l --tree'

alias以下はiTerm2呼び出しの出力です。

❯ alias
alias br1 'brightness 1'
alias cat bat
alias ll 'ls -l'
alias ls lsd

環境変数は同じ方法で動作します。

答え1

Jetbrains IDEは、独自の統合を追加するために特定の環境でフィッシュを実行します。これは、Fishが共通変数を探す場所である$ XDG_CONFIG_HOMEを設定することによって行われます。

これはいくつかの方法で壊れる可能性があります。バラよりhttps://youtrack.jetbrains.com/issue/IDEA-169111

基本設定 - >ツール - >ターミナルでシェル統合を無効にできます。

関連情報