fbtermの夏時間カラースキームは何ですか?

fbtermの夏時間カラースキームは何ですか?

日光カラースキームとして設置してfbterm使ってみました。これに関する情報が見つかりません。私の色が追加され、.Xresourcesxtermで動作します。フレームバッファでこのカラースキームを使用する方法はありますか?

答え1

でも…

うん、そうだと思います。可能、私が指摘したように、エスケープシーケンスを使用してこれを行うことは他の端末で可能です。LXTerminalで太陽光発電スキームを設定する

いいえ、誰もいないと思います。実装これは、次の説明に従ってすぐに使用できるフォームです。コンソールの256色(tty)、fbterm開発者はxtermとは異なるエスケープシーケンスを使用することにしました。

ただし、ページには機能すると主張する構成があります。ドットファイル/.dircolors-fbtermしかし、gitリポジトリでfbtermの端末の説明を読んでください(https://github.com/izmntuk/fbtermdircolors)、対応するエスケープシーケンスを生成するために変更されたバージョンに依存しているようです。

GNUはハードコードされたエスケープシーケンスであるterminfo(またはtermcap)データベースを使用していlsないため、これらのプログラムでfbtermカラーを正常に使用するには少し調整が必要です。dircolorsたとえば、FedoraやDebian / testingではこれを見ることはできません。正しく機能しない可能性があるその他の一時ハードコーディングされたアプリケーションには、GNU grepとgroffが含まれます。一部のアプリケーションはターミナルデータベースを無視するため、ケースごとに処理する必要があります。

色定義が他の端末と異なるため、他のアプリケーションで使用するには、fbtermに付属の端末記述をインストールする必要があります(現在はncursesにはありません)。これはを通じて行われますtic

端末の説明では、非標準のエスケープのみを使用して色を設定しますが、ソースコード(vterm_action.cpp)は、8つのANSIカラーにもサブセットで適用できることを意味します。しかし、Solarizedは8つ以上の色を使用しています。 GNU lsにSolarizedを提供するには、いくつかのことを行う必要があります(誰もやっていないようです)。

以前の内容はすべて、ユーザーがすでに設定していると想定しています。カラーパレットSolarizedテーマに合わせて使いたいです。スクリプトを変更できますベントレー/solarized-termcolor-osc4fbterm 端末記述にエスケープシーケンスを使用し、そのように動作するようにします。これは次の行で行われます。

printf "\x1b]4;$ANSI;rgb:${RGB}\a"

これはハードコードされています。彼らがそれを使用した場合、tput関連する作業はなかったでしょう。端末は以下のように説明される。fbterm 説明する

initc=\E[3;%p1%d;%p2%d;%p3%d;%p4%d},

ここで(このスクリプトは/本文全体で)はステートメントに対応します。

printf '\033[3;%d;%d;%d;%d}' $ANSI $R $G $B

変数を設定するスクリプトを作成する場合編集する、Gレンと第二ルー。これらの埋め込み/文字を変更するために変更すると、;printfは次のように既存のスクリプトに適合します。

    printf '\033[3;%d;%s}' $ANSI "$RGB"

ただし、これらの組み込みセミコロンのため、各呼び出しのパラメータの周りに引用符を追加する必要がありますcset

答え2

本当に?二つ投票はありませんか?私 するこのスクリプトを使用してくださいそして「正解」とみなされます。何してるの?


集中@トーマスディッキーについて答える日光浴スクリプト

fbtermのinitc目的10進値いいえ16進値したがって、ほとんどを書き直す必要があります。完了すると、次のコマンドを使用して別のスクリプト(/ etc / profileまたは〜/ .bashrc)から呼び出されます。

. solarized-fbterm.sh

幸運にも私はこれをしましたsolarized-fbterm.sh

#!/bin/bash
#
# Author: [email protected] (Paul Wratt)
# Original: [email protected] (Benjamin Staffin)
# Set your fbterm's color palette to match the Solarized color scheme by
# using escape sequences. fbterm uses decimal values not hex values.
#

set -o nounset

base03="0;43;54"
base02="7;54;66"
base01="88;110;117"
base00="101;123;131"
base0="131;148;150"
base1="147;161;161"
base2="238;232;213"
base3="253;246;227"
yellow="181;137;0"
orange="203;75;22"
red="220;50;47"
magenta="211;54;130"
violet="108;113;196"
blue="38;139;210"
cyan="42;161;152"
green="133;153;0"

printf "\033[3;234;$base03}\033[3;235;$base02}\033[3;240;$base01}\033[3;241;$base00}\033[3;244;$base0}\033[3;245;$base1}\033[3;254;$base2}\033[3;230;$base3}\033[3;136;$yellow}\033[3;166;$orange}\033[3;160;$red}\033[3;125;$magenta}\033[3;61;$violet}\033[3;33;$blue}\033[3;37;$cyan}\033[3;64;$green}"

function cset() {
  ANSI=$1
  RGB=$2
  printf "\033[3;%d;%s}" $ANSI "$RGB"
}

#black
cset 0 $base02
cset 8 $base03

#red
cset 1 $red
cset 9 $orange

#green
cset 2 $green
cset 10 $base01

#yellow
cset 3 $yellow
cset 11 $base00

#blue
cset 4 $blue
cset 12 $base0

#magenta
cset 5 $magenta
cset 13 $violet

#cyan
cset 6 $cyan
cset 14 $base1

#white
cset 7 $base2
cset 15 $base3

関連情報