BSD(およびLinux)tput - 相互運用可能なデフォルトカラー設定

BSD(およびLinux)tput - 相互運用可能なデフォルトカラー設定

誰でもできる*GUIを搭載したBSDBSDシステムで次のコンテンツが正しく実行されていることを確認してください。

ダミー* BSDテストボックスを作成しようとしましたが、最終的に失敗しました。だからtput* BSDで正しい順序を得るために利用可能なすべてのリソースを消費しました...ありがとう!


#!/bin/sh

if tput setaf > /dev/null 2>&1; then
    # Linux tput
    tput_number_of_colors=$(tput colors)
    tput_cmd_set_fg_color='tput setaf'
    tput_bold=$(tput bold)
    tput_reset=$(tput sgr0)
elif tput AF > /dev/null 2>&1; then
    # BSD tput
    tput_number_of_colors=$(tput Co)
    tput_cmd_set_fg_color='tput AF'
    tput_bold=$(tput smso)
    tput_reset=$(tput me)
else
    # black & white console, or no tput
    tput_number_of_colors=2
    tput_cmd_set_fg_color=
    tput_bold=
    tput_reset=
fi

tput_test ()
# this function uses the above to test tput capability of the terminal
{
    { command -v tput && [ "$tput_number_of_colors" -ge 8 ] && $tput_cmd_set_fg_color 1 && echo "$tput_bold"; } > /dev/null 2>&1
}

if tput_test; then
    # example of bold color definition
    color_red=$tput_bold$($tput_cmd_set_fg_color $color_red_id)
fi

ベストアンサー1

いいえ:s/smso/so/(termcap名は常に2文字です)。これ用語情報(5)マニュアルページはあなたの質問に答えを提供する場所です。

マニュアルページには以下が表示されます。

      enter_bold_mode             bold      md     turn on bold (extra
                                                   bright) mode

〜するmd開くために使用されます勇敢なモデル。 smso(用語情報)またはso(termcap) オープンハイライトモード、後で見ることができますマニュアルページ必ずしも同じではない勇敢な:

端末に複数の表示属性がある場合は、さまざまな方法でこれらの属性を表すことができます。表示形式を選択する必要があります。 ハイライトモードは、エラーメッセージやその他の人目を引くコンテンツを強調するための見やすい高コントラスト形式を表します。 (選択できる場合、反転映像追加する良いか、反転映像) 参入・退場順 ハイライトモード 次のように与えられるsmsoそしてrmso、それぞれ。コードが次に変更または変更された場合ハイライトモード TVI 912とTeleray 1061のように、画面に1つまたは2つのスペースを残し、 xmc残りのスペースがいくつあるか教えてください。

おすすめ記事