st with solarizedurxvt
と同じように色を使用したい(もちろん、これは.Xresources
を介して行われ、st
では色はヘッダーファイルで定義されています)。 st
の構成ファイル(config.h)に色を入れようとしましたが、st
の「間違った目的で使用」されています(たとえば、vim
のdircolorsと色はurxvt
に対して再配置されています)。
st
で使用されるエスケープシーケンスを変更する必要があると思いますが、どこにも行きません。ソラリゼーションされた色をst
に適用する方法について誰かが私にヒントを提供できますか?
Stヒント(および0.3リリース)では、st.cを編集する必要はなく、config.hにソラリゼーションされた色を挿入するだけです。この質問をしてから、st.cとconfig.hの両方が変更されたようです。
ソラリゼーションカラーを使用したst
のconfig.h
の例が必要な場合は、彼の要点を参照してください: https://Gist.github.com/gregf/5279175
Stを使う以外の経験はありませんが、ソースを一瞥してみると、関連する部分が見つかったと思います。
ソーラーカラーを使用するとは、デフォルトの青を使用するすべてのアプリケーションが必要であることを意味していると思います代わりにsolarized blueを使用します。
Config.hだけでなく、st.cのソースにいくつかの変更を加える必要があります。
dcはglobal変数であり、DC構造体、各_dc.cols[i]
_は使用する色に対応します。
_config.h
_ colorname内の最初の16色は、関数xloadcols(void)
内のXAllocNamedcolor
を介してロードされ、これらは_dc.col
_内の最初の16位置(0から15)に挿入されます。 。
これらは、ANSIエスケープシーケンスの色に対応しています。詳細については、 ANSIエスケープコード::色 を参照してください。
この機能をxloadcols(void)
内で変更する必要があります。具体的には、最初のforループです。XAllocNamedColor
を使用する代わりにXAllocColor
を使用することもできます(2番目のforループでこの例を見ることができます)。これにより、各色のrgbを次のように指定できます。 (名前から既知の色をロードする代わりに)各位置に挿入されます。
16進値については、 solarized.vim 具体的には16進値が指定されている98行目から116行目を参照してください。
残りの_dc.cols
_はforループ内に割り当てられ、これもxloadcols(void)
内にあります。これは、一部のアプリケーションがソーラー化された色ではなくこれらの色を使用する可能性があることを意味しますが、おそらくこれを変更する必要はありません。
デフォルトの背景色と前景色については、config.hの40行目以下で設定されています。
各_#define name index
_は、名前にdc.col [index]を使用することを定義します。たとえば、DefaultBg
は端末の背景色を指定します。
Solarizedは、config.def.h
に対する公式パッチとして利用できるようになりました。