-
-
Notifications
You must be signed in to change notification settings - Fork 110
説明書 §2 描画
[ 日本語 | English ] ≫ 説明書 [§1 基本 | §2 描画 | §3 束縛 | §4 編集 | §5 Emacs | §6 Vim | §7 補完 | §8 他]
描画属性指定子 (gspec) は描画スタイル (着色や下線などの修飾) を指定する文字列です。
gspec はカンマ (,
) 区切りで複数の単一指定を繋げた形式をしています。
単一指定は以下の何れかの形式をしています。
指定 | 属性 |
---|---|
bold |
太字 (端末によっては高輝度の前景色) |
underline |
下線 |
blink |
点滅 (端末によっては低輝度の前景色または高輝度の背景色) |
invis |
文字不可視 |
reverse |
反転 (端末によっては文字色・背景色の交換) |
strike |
打ち消し線 |
italic |
イタリック |
standout |
強調。これは bold,reverse の省略記法です |
fg=name |
前景色(文字色) (name は後述の色名または色番号) |
bg=name |
背景色 (name は後述の色名または色番号) |
none |
属性なし (これより先に指定した属性は消去されます) |
上記の色名 name には以下の何れかを指定します。
指定 | 色 | 指定 | 色 |
---|---|---|---|
default |
既定色 | transparent |
既定色 |
black |
黒色 (低輝度) | gray |
黒色 (高輝度) |
brown |
赤色 (低輝度) | red |
赤色 (高輝度) |
green |
緑色 (低輝度) | lime |
緑色 (高輝度) |
olive |
黄色 (低輝度) | yellow |
黄色 (高輝度) |
navy |
青色 (低輝度) | blue |
青色 (高輝度) |
purple |
紫色 (低輝度) | magenta |
紫色 (高輝度) |
teal |
水色 (低輝度) | cyan |
水色 (高輝度) |
silver |
白色 (低輝度) | white |
白色 (高輝度) |
orange |
オレンジ |
name として以下の色空間に基づく指定を行うこともできます。
指定 | 色空間 | 引数 |
---|---|---|
I |
256色指定 | I は 0-255 の整数 (16 basic colors + 6x6x6 RGB cube + 24 grayscale) |
#RGB |
RGB | R, G, B はそれぞれ1桁の16進数 |
#RRGGBB |
RGB | RR, GG, BB はそれぞれ2桁の16進数 |
rgb:R/G/B |
RGB | R, G, B はそれぞれ 0-255 の整数または 0%-100% の百分率 |
cmy:C/M/Y |
CMY | C, M, Y はそれぞれ 0-255 の整数または 0%-100% の百分率 |
cmyk:C/M/Y/K |
CMYK | C, M, Y, K はそれぞれ 0-255 の整数または 0%-100% の百分率 |
hsl:H/S%/L% |
HSL | H は整数 (mod 360)、S, L は 0-100 の整数 |
hsb:H/S%/B% |
HSB, HSV | H は整数 (mod 360)、S, B は 0-100 の整数 |
例えば gspec bg=black,fg=white,bold,underline
は「黒地に白文字で太字の下線つき」という描画属性を表現します。
お使いの端末が italic
(斜体), blink
(点滅), strike
(打ち消し線) などの機能に対応していない場合には、
当該スタイルを指定しても正しく表示に反映されない事にご留意いただければ幸いです。
当該スタイルを利用したい場合には、対応している他の端末を探すか、端末の開発者に対応を依頼する事をお薦め致します。
tmux
をお使いの場合には、できるだけ多くの機能を有効にする為に
tmux オプション default-terminal
(既定の TERM
環境変数の値) を
tmux-256color
また xterm-256color
を指定して頂くことがお薦めです。
~/.tmux.conf
に以下の様に設定します。
# .tmux.conf
# Option 1: set default TERM as tmux-256color
set-option -g default-terminal tmux-256color
# Option 2: set default TERM as xterm-256color
set-option -g default-terminal xterm-256color
描画設定 (face) は名前のついた描画の設定項目で、
それぞれに gspec を設定することができます。
各描画設定は ble.sh
の構文着色や様々な描画の際に使われます。
2.2.1 関数 ble-color-setface
†
ble-color-setface face_name [type:]spec
face_name
で指定した描画設定を設定します。type
の指定は v0.4 以降です。
type |
spec |
---|---|
gspec (既定値) |
描画属性指定子 gspec で指定します |
g |
描画属性値 (整数値) で指定します |
ref |
名前または番号で指定した描画設定への参照を指定します |
copy |
名前または番号で指定した描画設定をコピーします |
sgrspec |
SGRの引数で指定します |
ansi |
ANSI制御シーケンスで描画属性を構築します |
# 使用例
ble-color-setface region bg=60,fg=white
ble-color-setface
無引数で ble-color-setface
を呼び出すと現在の描画設定の一覧を出力します。
2.2.2 描画設定 region
†
選択中の範囲を表示するのに使われる描画設定です。
# 既定
ble-color-setface region bg=60,fg=white
2.2.3 描画設定 region_target
(v0.2)†
現在のコマンドの作用範囲を表示するのに使われる描画設定です。
# 既定
ble-color-setface region_target bg=153,fg=black
2.2.4 描画設定 region_match
(v0.3)†
検索の一致範囲を表示するのに使われる描画設定です。
# 既定
ble-color-setface region_match bg=55,fg=white
2.2.5 描画設定 region_insert
(v0.4)†
一時的に挿入された挿入候補を表示するのに使われる描画設定です。
# 既定
ble-color-setface region_insert fg=12,bg=252
2.2.6 描画設定 disabled
†
キャンセルまたは未実行で一時退避されたコマンドを表示するのに使われる描画設定です。
# 既定
ble-color-setface disabled fg=242
2.2.7 描画設定 overwrite_mode
†
上書きモード・置換モードにおいて上書きされる文字を表示するのに使われる描画設定です。
# 既定
ble-color-setface overwrite_mode fg=black,bg=51
2.2.8 描画設定 syntax_default
†
構文着色において通常の文字列を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_default none
2.2.9 描画設定 syntax_command
†
構文着色において構文上のコマンド名を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_command fg=brown
2.2.10 描画設定 syntax_quoted
†
構文着色において引用符の中身を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_quoted fg=green
2.2.11 描画設定 syntax_quotation
†
構文着色において引用符を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_quotation fg=green,bold
2.2.12 描画設定 syntax_expr
†
構文着色において算術式を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_expr fg=26
2.2.13 描画設定 syntax_error
†
構文着色において構文エラーを示すのに使われる描画設定です。
# 既定
ble-color-setface syntax_error bg=203,fg=231
2.2.14 描画設定 syntax_varname
†
構文着色において変数名を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_varname fg=202
2.2.15 描画設定 syntax_delimiter
†
構文着色においてコマンドを繋ぐ記号やリダイレクションを表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_delimiter bold
2.2.16 描画設定 syntax_param_expansion
†
構文着色においてパラメータ展開やコマンド置換の括弧を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_param_expansion fg=purple
2.2.17 描画設定 syntax_history_expansion
†
構文着色において履歴展開を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_history_expansion bg=94,fg=231
2.2.18 描画設定 syntax_function_name
†
構文着色において関数の定義名を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_function_name fg=92,bold
2.2.19 描画設定 syntax_comment
†
構文着色においてコメントを表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_comment fg=242
2.2.20 描画設定 syntax_glob
(v0.2)†
構文着色においてグロブパターンの特殊文字を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_glob fg=198,bold
2.2.21 描画設定 syntax_brace
(v0.2)†
構文着色においてブレース展開の括弧を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_brace fg=37,bold
2.2.22 描画設定 syntax_tilde
(v0.2)†
構文着色においてチルダ展開を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_tilde fg=navy,bold
2.2.23 描画設定 syntax_document
(v0.2)†
構文着色においてヒアドキュメントの内容を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_document fg=94
2.2.24 描画設定 syntax_document_begin
(v0.2)†
構文着色においてヒアドキュメントの開始・終了単語を表示するのに使われる描画設定です。
# 既定
ble-color-setface syntax_document_begin fg=94,bold
2.2.25 描画設定 command_builtin_dot
†
構文着色において組み込みコマンド .
を表示するのに使われる描画設定です。
# 既定
ble-color-setface command_builtin_dot fg=red,bold
2.2.26 描画設定 command_builtin
†
構文着色においてその他の組み込みコマンドを表示するのに使われる描画設定です。
# 既定
ble-color-setface command_builtin fg=red
2.2.27 描画設定 command_alias
†
構文着色においてエイリアスを表示するのに使われる描画設定です。
# 既定
ble-color-setface command_alias fg=teal
2.2.28 描画設定 command_function
†
構文着色において関数名を表示するのに使われる描画設定です。
# 既定
ble-color-setface command_function fg=92
2.2.29 描画設定 command_file
†
構文着色においてファイルのコマンドを表示するのに使われる描画設定です。
# 既定
ble-color-setface command_file fg=green
2.2.30 描画設定 command_keyword
†
構文着色においてシェルの予約語を表示するのに使われる描画設定です。
# 既定
ble-color-setface command_keyword fg=blue
2.2.31 描画設定 command_jobs
†
構文着色においてコマンド文脈でジョブ指定を表示するのに使われる描画設定です。
# 既定
ble-color-setface command_jobs fg=red
2.2.32 描画設定 command_directory
†
構文着色においてコマンド文脈でディレクトリ名を表示するのに使われる描画設定です。
# 既定
ble-color-setface command_directory fg=26,underline
2.2.33 描画設定 filename_directory
†
構文着色においてディレクトリ名を表示するのに使われる描画設定です。
# 既定
ble-color-setface filename_directory underline,fg=26
2.2.34 描画設定 filename_directory_sticky
(v0.3)†
構文着色において sticky ビットを持つディレクトリ名を表示するのに使われる描画設定です。
# 既定
ble-color-setface filename_directory_sticky underline,fg=white,bg=26
2.2.35 描画設定 filename_link
†
構文着色においてシンボリックリンクの名前を表示するのに使われる描画設定です。
# 既定
ble-color-setface filename_link underline,fg=teal
2.2.36 描画設定 filename_orphan
(v0.3)†
構文着色において指し示す先のないシンボリックリンクの名前を表示するのに使われる描画設定です。
# 既定
ble-color-setface filename_orphan underline,fg=teal,bg=224
2.2.37 描画設定 filename_setuid
(v0.3)†
構文着色において setuid 属性のついたファイルの名前を表示するのに使われる描画設定です。
# 既定
ble-color-setface filename_setuid underline,fg=black,bg=220
2.2.38 描画設定 filename_setgid
(v0.3)†
構文着色において setgid 属性のついたファイルの名前を表示するのに使われる描画設定です。
# 既定
ble-color-setface filename_setgid underline,fg=black,bg=191
2.2.39 描画設定 filename_executable
†
構文着色において実行属性のついたファイルの名前を表示するのに使われる描画設定です。
# 既定
ble-color-setface filename_executable underline,fg=green
2.2.40 描画設定 filename_other
†
構文着色においてその他のファイルの名前を表示するのに使われる描画設定です。
# 既定
ble-color-setface filename_other underline
2.2.41 描画設定 filename_socket
(v0.2)†
構文着色においてソケット名を表示するのに使われる描画設定です。
# 既定
ble-color-setface filename_socket underline,fg=cyan,bg=black
2.2.42 描画設定 filename_pipe
(v0.2)†
構文着色において名前付きパイプの名前を表示するのに使われる描画設定です。
# 既定
ble-color-setface filename_pipe underline,fg=lime,bg=black
2.2.43 描画設定 filename_character
(v0.2)†
構文着色において文字デバイスの名前を表示するのに使われる描画設定です。
# 既定
ble-color-setface filename_character underline,fg=white,bg=black
2.2.44 描画設定 filename_block
(v0.2)†
構文着色においてブロックデバイスの名前を表示するのに使われる描画設定です。
# 既定
ble-color-setface filename_block underline,fg=yellow,bg=black
2.2.45 描画設定 filename_warning
(v0.2)†
構文着色においてファイル名についての警告がある時に使われる描画設定です。
# 既定
ble-color-setface filename_warning underline,fg=red
2.2.46 描画設定 filename_url
(v0.4)†
構文着色においてURLの形式をした単語に描画設定です。
# 既定
ble-color-setface filename_url underline,fg=blue
2.2.47 描画設定 filename_ls_colors
(v0.3)†
構文着色において設定変数 filename_ls_colors による着色に追加する描画設定です。
# 既定
ble-color-setface filename_ls_colors underline
2.2.48 描画設定 varname_unset
(v0.4)†
値が設定されていない変数名の描画設定です。
#既定
ble-color-setface varname_unset fg=124
2.2.49 描画設定 varname_export
(v0.4)†
環境変数名 (属性 -x
) の描画設定です。
#既定
ble-color-setface varname_export fg=200,bold
2.2.50 描画設定 varname_array
(v0.4)†
配列変数名 (属性 -a
) の描画設定です。
ble-color-setface varname_array fg=orange,bold
2.2.51 描画設定 varname_hash
(v0.4)†
辞書変数名 (属性 -A
) の描画設定です。
#既定
ble-color-setface varname_hash fg=70,bold
2.2.52 描画設定 varname_number
(v0.4)†
整数属性 (-i
) を持つ変数名の描画設定です。
算術式内部での変数名にも用いられます。
#既定
ble-color-setface varname_number fg=64
2.2.53 描画設定 varname_readonly
(v0.4)†
読み取り専用属性 (-r
) を持つ変数名の描画設定です。
#既定
ble-color-setface varname_readonly fg=200
2.2.54 描画設定 varname_transform
(v0.4)†
大文字 (-u
)・小文字 (-l
)・頭文字属性 (-c
) を持つ変数名の描画設定です。
#既定
ble-color-setface varname_transform fg=29,bold
2.2.55 描画設定 varname_empty
(v0.4)†
値が空文字列の変数名の描画設定です。
#既定
ble-color-setface varname_empty fg=31
2.2.56 描画設定 varname_expr
(v0.4)†
算術式を含む変数名の描画設定です。 算術式に於いて整数以外の内容を持つ変数名に用いられます。
#既定
ble-color-setface varname_expr fg=92,bold
2.3.1 設定変数 tab_width
(空/整数) (v0.2)†
# 既定値
bleopt tab_width=
タブの表示時の幅を指定します。
空文字列を指定したとき terminfo tput it
の結果を使用します。
2.3.2 設定変数 emoji_width
(空/整数) (v0.2)†
# 既定値
bleopt emoji_width=2
絵文字が端末上で表示される時の幅を指定します。
空文字列を指定した時は Unicode East_Asian_Width
に基づく幅を使用します。
これは ble.sh
による座標計算に用いられるので、
お使いの端末の振る舞いに合わせて設定する必要があります。
2.3.3 設定変数 emoji_version
(バージョン) (v0.2)†
# 既定値
bleopt emoji_version=13.1
Unicode Emoji バージョンを指定します。
どのコードポイント範囲を絵文字とするかは Unicode Emoji バージョンに依存します。
端末の対応する Emoji バージョンに合わせた値を設定する必要があります。
現在利用可能な値は 1.0
, 2.0
, 3.0
, 4.0
, 5.0
, 11.0
, 12.0
, 12.1
, 13.0
, 13.1
です。
2.3.4 設定変数 term_index_colors
(算術式) (v0.3)†
# 既定値
bleopt term_index_colors='256' # ble.sh ロード時に TERM == [xk]term*|*256color のとき
bleopt term_index_colors='88' # ble.sh ロード時に TERM == *88color のとき
bleopt term_index_colors= # それ以外の時
端末が SGR(38;5;色番号), SGR(48;5;色番号) の形式の色指定に対応している時、
使用できる色番号の数を指定します。
空文字列または 0
を指定したとき、端末は色番号による色指定に対応していないと解釈されます。
既定値は環境変数 TERM
を元に推測値が設定されます。
2.3.5 設定変数 term_true_colors
(空/colon/semicolon) (v0.4)†
# 既定値
bleopt term_true_colors=semicolon
この値が semicolon
の時、端末が SGR(38;2;R;G;B) の形式の色指定に対応している事を示します。
この値が colon
の時、端末が SGR(38:2:R:G:B) の形式の色指定に対応している事を示します。
この値が空文字列の時、端末が 24 bit color に対応していない事を示します。
この時 ble.sh
は 24 bit color で指定された配色を適切に減色して出力します。
既定値は semicolon
で 24 bit で指定された色は減色せずにそのまま出力します。
2.3.6 設定変数 filename_ls_colors
(v0.3)†
# 既定値
bleopt filename_ls_colors=
ファイル名の着色に使用する描画設定を LS_COLORS
の形式で指定します。
# 例
bleopt filename_ls_colors="$LS_COLORS"
値はコロン区切りの指定 key=value
のリストです。value には SGR の引数を指定します。
以下は、対応している key の種類と、その指定によって上書きされる描画設定の一覧です。
filename_ls_colors
内にこれらの設定があると対応する描画設定は無効になります。
パターン指定は拡張子 *.ext
の形式以外には対応しません。
*.tar.gz
などの二重拡張子と *.gz
などの単一の拡張子の両方の設定に合致する場合は、長い方が優先されます。
認識されない指定に関しては単に無視されます。
key | 対応する描画設定 |
---|---|
di |
filename_directory |
st |
filename_directory_sticky |
ln |
filename_link |
or |
filename_orphan |
fi |
filename_other |
su |
filename_setuid |
sg |
filename_setgid |
ex |
filename_executable |
cd |
filename_characater |
pi |
filename_pipe |
so |
filename_socket |
bd |
filename_block |
*. ext
|
filename_other のファイルの内、拡張子の一致するもの |
2.3.7 設定変数 highlight_syntax
(空/非空) (v0.4)†
# 既定値
bleopt highlight_syntax=1
非空文字列が設定されている時、文法着色が有効になります。
2.3.8 設定変数 highlight_filename
(空/非空) (v0.4)†
# 既定値
bleopt highlight_filename=1
非空文字列が設定されている時、ファイルまたはコマンドの種類に基づく文法着色が有効になります。
文法に基づく着色が設定変数 highlight_syntax
によって有効になっている必要があります。
2.3.9 設定変数 highlight_variable
(空/非空) (v0.4)†
# 既定値
bleopt highlight_variable=1
非空文字列が設定されている時、変数の種類に基づく文法着色が有効になります。
文法に基づく着色が設定変数 highlight_syntax
によって有効になっている必要があります。
2.3.10 設定変数 highlight_timeout_sync
(算術式/空) (v0.4)†
# 既定値
bleopt highlight_timeout_sync=500
フォアグラウンドの構文着色で用いるパス名展開のタイムアウトの設定です。 着色対象の単語が評価に時間のかかるグロブパターンを含んでいる時に、 この設定に基づいてパス名展開を一旦停止しバックグラウンドの構文着色で処理する様に手配します。 設定値はミリ秒単位のタイムアウト時間です。 空文字列を設定した時、タイムアウトは無効化されます。
2.3.11 設定変数 highlight_timeout_async
(算術式/空) (v0.4)†
# 既定値
bleopt highlight_timeout_async=5000
バックグラウンドの構文着色で用いるパス名展開のタイムアウトの設定です。 着色対象の単語が評価に時間のかかるグロブパターンを含んでいる時に、 この設定に基づいてパス名展開を停止しファイル名に基づく着色をキャンセルします。 設定値はミリ秒単位のタイムアウト時間です。 空文字列を設定した時、タイムアウトは無効化されます。
2.3.12 設定変数 syntax_eval_polling_interval
(算術式/空) (v0.4)†
# 既定値
bleopt syntax_eval_polling_interval=50
ユーザー入力による着色用パス名展開のキャンセルについて、ユーザー入力をチェックする最大間隔を指定します。
単位はミリ秒です。空文字列を設定した時、100
が使用されます。
2.4.1 設定変数 edit_abell
(空/非空)†
設定 edit_abell
と設定 edit_vbell
は、編集関数 bell
の振る舞いを制御します。
edit_abell
が非空文字列の場合、音による通知が有効になります (つまり、制御文字の BEL
(0x07) が stderr
に出力されます)。既定で有効です。
音による通知は以下の様にして無効化できます。
# 既定値
bleopt edit_abell=1
# 設定例 (無効にする場合)
bleopt edit_abell=
2.4.2 設定変数 edit_vbell
(空/非空)†
edit_vbell
が非空文字列の場合、画面での通知が有効になります。
既定では画面での通知は無効になっています。
# 既定値
bleopt edit_vbell=
# 設定例 (有効にする場合)
bleopt edit_vbell=1
2.4.3 設定変数 vbell_default_message
†
設定 vbell_default_message
は画面での通知で使用するメッセージ文字列を指定します。
# 既定値
bleopt vbell_default_message=' Wuff, -- Wuff!! '
# 設定例
bleopt vbell_default_message=' BEL '
2.4.4 設定変数 vbell_duration
(算術式)†
設定 vbell_duration
は画面での通知を表示する時間の長さを指定します。単位はミリ秒です。
# 既定値
bleopt vbell_duration=2000
# 設定例
bleopt vbell_duration=3000
2.4.5 設定変数 vbell_align
(v0.3)†
画面での通知を表示する位置を指定します。left
, center
, right
の何れかを指定します。
# 既定値
bleopt vbell_duration=right
# 設定例
bleopt vbell_duration=left
2.4.6 描画設定 vbell
†
画面での通知を表示する時の描画属性を指定します。
# 既定値
ble-color-setface vbell reverse
2.4.7 描画設定 vbell_flash
†
画面での通知を表示した瞬間の描画属性を指定します。
# 既定値
ble-color-setface vbell_flash reverse,fg=green
2.4.8 描画設定 vbell_erase
†
画面での通知を消去した後の描画属性を指定します。
# 既定値
ble-color-setface vbell_erase bg=252
[ 日本語 | English ] ≫ 説明書 [§1 基本 | §2 描画 | §3 束縛 | §4 編集 | §5 Emacs | §6 Vim | §7 補完 | §8 他]