Fish Shellで~/.dircolorsを使用する

Fish Shellで~/.dircolorsを使用する

私は最近bashからFishシェルに切り替えましたが、特定のファイル拡張子に対して表示するカスタムカラーを取得するためにdircolorsテンプレートファイルをインポートするのに問題があります。

Bashでは~/.dircolors/dircolors.256dark.thisで始まります。dircolors.256darkテンプレートには、さまざまな色にマッピングされたさまざまなファイル形式があります。たとえば、を使用すると、lsすべての.wavファイルがオレンジ色で表示されます。私のソースは次のとおりです~/.bash_profile

# uses dircolors template
eval $(gdircolors ~/.dircolors/dircolors.256dark)

# Aliases
alias ls='gls --color=auto'

ただし、fishは実際にrcファイルを使用せず、config.fishファイルからソースを取得しますが、一部の操作の構文はfishで異なります。

私は魚でこれを達成する方法を理解しようとしています。私はさまざまなファイルタイプを色で視覚的に区別できることが好きです。したがって、これがフィッシュで可能でない場合、これは私にとって問題になる可能性があります。

ポリスチレン

明確に言えば、単にディレクトリや実行可能ファイルの色を変更するのではなく、ファイル拡張子を異なるようにしてファイルの色を変更したいだけです。たとえば、lsディレクトリでこれを行うと、次のような結果が得られます。

my_file.py  # this file would be green for example
my_file.js  # this file would be yellow
my_file.wav # this file would be orange

編集:私はmacOSでhomebrewを使ってdircolorを取得しています。

答え1

解決策は実際には非常に簡単です。私の~/.config/fish/config.fishファイルでは、ステートメントから "$"を削除しましたeval。したがって、次のようになります。

# uses dircolors template
eval (gdircolors ~/.dircolors/dircolors.256dark)

# Aliases
alias ls='gls --color=auto'

関連情報