313
245

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ANSIエスケープシーケンス チートシート

Last updated at Posted at 2017-11-02

ANSIエスケープシーケンスを駆使すれば、
こんな感じでターミナルの出力に色を付けたり
2017-11-02_18h13_43.png

出力した内容を書き換えたりできる。
escape.gif

[PHP]ゲーム作成初心者がPHPでテト〇ス風ゲームを作ってみた
上記記事にて出力されるブロックの色を変更したり、出力内容を上書きしたりするのに使った。

記法

指定がない限り、太字の部分が可変となる箇所。

カーソル移動

記法 内容
\e[nA 上にn移動
\e[nB 下にn移動
\e[nC 右にn移動
\e[nD 左にn移動
\e[nE n行下の先頭に移動
\e[nF n行上の先頭に移動
\e[nG 現在位置と関係なく左からnの場所に移動
\e[n;mH
\e[n;mf
現在位置と関係なく上からn、左からmの場所に移動

コンソールスクロール

記法 内容
\e[nS n行分コンソールを次にスクロール
\e[nT n行分コンソールを前にスクロール

出力消去

記法 内容
\e[nJ 画面消去
0(or省略)・・・カーソルより後ろを消去
1・・・カーソルより前を消去
2・・・画面全体を消去
\e[nK 行消去
0(or省略)・・・カーソルより後ろを消去
1・・・カーソルより前を消去
2・・・行全体を消去

出力文字の変更

注:ターミナルによって対応してる/してないが分かれる

記法 内容
\e[0m 指定をリセットし未指定状態に戻す(0は省略可)
\e[1m 太字
\e[2m 薄く表示
\e[3m イタリック
\e[4m アンダーライン
\e[5m ブリンク
\e[6m 高速ブリンク
\e[7m 文字色と背景色の反転
\e[8m 表示を隠す(コピペ可能)
\e[9m 取り消し

出力色の変更

先述した \e[0m でリセット可能。

文字色 背景色
\e[30m \e[40m
\e[31m \e[41m
\e[32m \e[42m
\e[33m \e[43m 黄色
\e[34m \e[44m
\e[35m \e[45m マゼンダ
\e[36m \e[46m シアン
\e[37m \e[47m

出力色の変更(拡張)

注:ターミナルによって対応してる/してないが分かれる

文字色 背景色 内容
\e[38;5;nm \e[48;5;nm nを0~255のカラーコードを指定
\e[38;2;r;g;bm \e[48;2;r;g;bm RGBでのカラーコードを指定
(対応端末少ない)

サンプル

サンプルは Windows10 + Cygwin で表示された内容

出力文字

for ((i = 1; i <= 9; i++)); do
    printf '\e[%dm%d\e[m ' $i $i
done

2017-11-02_16h32_26.png

ブリンクはしなかった。

文字色

for ((i = 30; i <= 37; i++)); do
    printf '\e[%dm%d\e[m ' $i $i
done

2017-11-02_16h13_32.png

背景色

for ((i = 40; i <= 47; i++)); do
    printf '\e[%dm%d\e[m ' $i $i
done

2017-11-02_16h15_20.png

文字色(拡張)

for ((i = 0; i < 16; i++)); do
    for ((j = 0; j < 16; j++)); do
        hex=$(($i*16 + $j))
        printf '\e[38;5;%dm0x%02X\e[m ' $hex $hex
    done
    echo "";
done

2017-11-02_16h16_52.png

背景色(拡張)

for ((i = 0; i < 16; i++)); do
    for ((j = 0; j < 16; j++)); do
        hex=$(($i*16 + $j))
        printf '\e[48;5;%dm0x%02X\e[m ' $hex $hex
    done
    echo "";
done

2017-11-02_16h17_54.png

313
245
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
313
245

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?