コマンド/テキストフォーマット

提供:Minecraft Japan Wiki
コマンド > テキストフォーマット
ナビゲーションに移動 検索に移動

Minecraftには、ゲーム内で表示されるテキストの色を変えたり、特殊な機能を持たせたりすることができる機能が実装されています。
JSONによる方法と、記号「§」を用いる方法の2種類があります。

JSON記法(Raw JSON text format)[編集 | ソースを編集]

ver1.7.2で追加

テキストを装飾したり、特別な機能を持たせたりすることができます。

基本的な書き方は次の通りです。

{<文字列を指定する部分>,<装飾・機能等を指定する部分>}

装飾・機能等を指定する部分はなくてもよいですが、文字列を指定する部分は必ず1つだけ存在する必要があります。

装飾・機能等を指定しない場合には以下の簡略記法も使用できます(textタグの値と同じものを単体で記述する)。

"<文字列>"/<数値>/<true|false>


一つながりの文字列の中で複数の書式を使用する場合は、次のようにリストを利用します。

[{<文字列を指定する部分>,<装飾・機能等を指定する部分>},…]

リストの代わりにextraタグを使用することもできます。

{<文字列を指定する部分>,"extra":[{<文字列を指定する部分>,<装飾・機能等を指定する部分>},…],…}

文字列を指定する部分に使用できるタグ[編集 | ソースを編集]

text[編集 | ソースを編集]

"text":"<文字列>"/<数値>/<true|false>

表示する文字列を直接指定します。

ver1.20.2までは、文字列の代わりに数値または真偽値(true/false)を指定すると文字列に変換されて表示されます。

score[編集 | ソースを編集]

ver1.8で追加

"score":{"name":"<名前>","objective":"<スコアボード名>"}

objectiveタグで指定したスコアボードの値を表示します。

nameタグでスコアボードを持つエンティティを指定します。<名前>はプレイヤーの場合プレイヤー名、エンティティの場合UUIDです。

セレクターを用いることもできますが、指定するエンティティは必ず1つでなくてはなりません。

また名前を*とすると、コマンドを実行したプレイヤーを指定します。

selector[編集 | ソースを編集]

"selector":"<セレクター>"

指定したエンティティの名称(プレイヤーの場合はプレイヤー名)を表示します。

複数のエンティティを指定した場合は、列挙して表示されます。

セレクターについてはこちらを参照。

translate[編集 | ソースを編集]

"translate":"<翻訳キー>","with":[{<テキストフォーマット>},…]

言語ファイルの翻訳テキストを読み込みます。

翻訳テキストの中に「%s」のような参照部分がある場合、"with"に続くリストの中の文字列が参照されます。

「%s」が複数ある場合、リストの先頭から順に参照されます。「%1$s」のように何番目かが指定されている場合には指定番目の文字列が参照されます。

"with"で文字列を渡さなかった場合、およびリストの長さ不足で参照すべき文字列がない場合、その部分には何も表示されません。

なお存在しない翻訳キーを入力すると、その内容がそのまま表示されます。例えば

"translate":"%sが見ている文章は%sです","with":[{"selector":"@p"},{"text":"見本"}]

とすると、「<プレイヤー名>が見ている文章は見本です」のように表示されます。

keybind[編集 | ソースを編集]

ver1.12で追加

"keybind":"<キー設定名>"

指定した操作に割り当てられているキーの名前を返します。

キー設定名は次の通りです。

クリックして表示
操作 キー設定名 デフォルトでの割り当て
ジャンプ key.jump スペースキー
スニーク key.sneak シフトキー(左)
ダッシュ key.sprint Ctrlキー(左)
前進 key.forward Wキー
key.left Aキー
後退 key.back Sキー
key.right Dキー
攻撃/破壊 key.attack 左クリック
設置/アイテム使用 key.use 右クリック
アイテムの選択 key.pickItem ホイールクリック
アイテムを捨てる key.drop Qキー
インベントリ開閉 key.inventory Eキー
ホットバースロット1-9 key.hotbar.1-9 1-9キー
左手と右手のアイテムの入れ替え key.swapOffhand

(ver1.15.2まではkey.swapHands)

Fキー
ホットバーの保存

(クリエイティブモード)

key.saveToolbarActivator Cキー
ホットバーの読み込み

(クリエイティブモード)

key.loadToolbarActivator Xキー
コマンドラインを開く key.command /キー
チャットを開く key.chat Tキー
進捗画面を開く key.advancements Lキー
プレイヤーリストを表示 key.playerlist Tabキー
スクリーンショットを撮る key.screenshot F2キー
視点を切り替える key.togglePerspective F5キー
全画面表示 key.fullscreen F11キー
カメラ動作を緩やかに key.smoothCamera 割り当てなし
スペクテイターモードのプレイヤーを

強調表示

key.spectatorOutlines 割り当てなし

nbt[編集 | ソースを編集]

ver1.14で追加

"nbt":"<データタグのパス>","entity":"<セレクター>"
"nbt":"<データタグのパス>","block":"<座標>"
"nbt":"<データタグのパス>","storage":"<ストレージ名>"

entity、block、storage(ver1.15で追加)のいずれかのタグで指定された場所から、nbtタグで指定されたデータタグを参照して表示します。

またオプションとしてinterpretタグがあります。上に続けて

"interpret":true

と書くと、データタグの内容をテキストフォーマットとして処理し表示します。テキストフォーマットとみなせない場合は、何も表示されません。


データタグのパスの記法 (NBT path format)
AでタグAを選択。
{}でデータタグ全体を選択。
{A:x}でタグA:xが含まれている場合に限りデータタグ全体を選択。
A{}でCompound型のタグAを選択。
A{B:x}でタグB:xを含むCompound型のタグAを選択。
A[]でList型のタグAのすべての要素を選択。
A[x]でList型のタグAの(x+1)番目の要素を選択。
A[{}]でList型のタグAに含まれる{}で区切られた要素をすべて選択。
A[{B:x}]でList型のタグAに含まれる{}で区切られた要素のうちタグB:xを含むものを選択。
A.BでCompound型のタグAに含まれるタグBを選択。

これらは入れ子的に使用可能。
例えば{A:{B:{C:[D:135,E:534]}}}というタグ構造に対して、A.B.C[0]のように書くことでタグDを選択できる。

装飾・機能等を指定する部分に使用できるタグ[編集 | ソースを編集]

color[編集 | ソースを編集]

"color":"<色の名前>"

文字の色を変更します。色は次の通りです。

名前
black #000000
dark_blue #0000AA
dark_green #00AA00
dark_aqua #00AAAA
dark_red #AA0000
dark_purple #AA00AA
gold #FFAA00
gray #AAAAAA
dark_gray #555555
blue #5555FF
green #55FF55
aqua #55FFFF
red #FF5555
light_purple #FF55FF
yellow #FFFF55
white ■#FFFFFF
#<カラーコード> [1]
reset [2]
  1. 指定したHTMLカラーコード(6桁)の色。ver1.16で追加。
  2. 同一のリスト内では1番目の要素の書式設定が適用されるが、それを解除する。

font[編集 | ソースを編集]

ver1.16で追加

"font":"<フォントの名称>"

フォントを変更します。フォントの名称は、リソースパックで変更していない場合は以下の3種類のいずれかです。

bold[編集 | ソースを編集]

"bold":true/false

trueの場合太字で表示します。

italic[編集 | ソースを編集]

"italic":true/false

trueの場合斜体で表示します。

underlined[編集 | ソースを編集]

"underlined":true/false

trueの場合下線を引いて表示します。

strikethrough[編集 | ソースを編集]

"strikethrough":true/false

trueの場合打ち消し線を引いて表示します。

obfuscated[編集 | ソースを編集]

"obfuscated":true/false

trueの場合難読化して表示します(様々な文字が高速で切り替わって表示される)。

insertion[編集 | ソースを編集]

ver1.8で追加

"insertion":"<文字列>"

テキストをShift+左クリックしたときに、指定の文字列をチャット入力欄に挿入します。

なお、selector(上述)を用いて表示したプレイヤー名にはプレイヤー名が、エンティティ名にはUUIDが、自動的に挿入テキストとして設定されます。

clickEvent[編集 | ソースを編集]

文字列をクリック(チャット欄・本では左クリック、看板では右クリック)した場合の動作を指定します。


run_command

"clickEvent":{"action":"run_command","value":"<コマンド>"}

指定したコマンドを実行します。

valueにコマンド以外を指定すると、チャット欄・本の場合はそのまま実行者の発言とみなされます。コマンドの冒頭に/をつけなかった場合も同様です。

看板の場合はコマンドの冒頭に/をつけなくてもコマンドとして実行されますが、コマンドでない文字列を指定した場合は何も起こりません。


suggest_command

"clickEvent":{"action":"suggest_command","value":"<文字列>"}

チャット欄に指定した文字列が入力されます。チャット欄に何か入力されていた場合上書きされます。本・看板では使えません。

selector(上述)を用いて表示したプレイヤー名には、/msg <プレイヤー名> が自動的にsuggest_commandとして設定されます。


copy_to_clipboard

ver1.15で追加

"clickEvent":{"action":"copy_to_clipboard","value":"<文字列>"}

指定した文字列がクリップボードにコピーされます。看板では使えません。


open_url

"clickEvent":{"action":"open_url","value":"<URL>"}

指定したサイトにアクセスします。看板では使えません。


change_page

"clickEvent":{"action":"change_page","value":<ページ数>}

指定したページに移動します。本でのみ使用できます。

hoverEvent[編集 | ソースを編集]

文字列にカーソルを乗せた際の動作を指定します。


show_text

ver1.16以降

"hoverEvent":{"action":"show_text","contents":"<文字列>"}

ver1.15.2まで

"hoverEvent":{"action":"show_text","value":"<文字列>"}

指定した文字列を表示します。


show_item

ver1.16以降

"hoverEvent":{"action":"show_item","contents":{"id":"<アイテムID>","count":<個数>,"tag":"{<データタグ>}"}}

ver1.15.2まで

"hoverEvent":{"action":"show_item","value":"{<データタグ>}"}

指定したアイテムの詳細を表示します。個数などを指定しても特に意味はありません。


show_entity

ver1.16以降

"hoverEvent":{"action":"show_entity","contents":{"name":"<名前>","type":"<エンティティID>","id":<UUID>}}

指定したエンティティの詳細を表示します。名前は任意ですが、エンティティIDは存在するものを指定する必要があります。UUIDは(8桁)-(4桁)-(4桁)-(4桁)-(12桁)という形式になっていれば任意です。

ver1.15.2まで

"hoverEvent":{"action":"show_entity","value":"{name:<文字列>,type:<文字列>,id:<文字列>}"}

name、type、idともに任意の文字列が使用できます。

なお、selectorによって表示したエンティティ名およびプレイヤー名に対しては、自動的にshow_entityが設定されます。

エスケープシーケンス[編集 | ソースを編集]

「"」で囲まれた部分で「"」を用いたい場合は「\"」と記述します。「\」を用いたい場合は「\\」とします。また文字列を改行する場合は「\n」を用います。

またver1.14以降は、以上の解説中の「"」の代わりに「'」を用いることもできます。「'」で囲まれた部分では「"」をエスケープなしに使用できる代わりに、「'」を「\'」とエスケープする必要があります。


Unicode処理[編集 | ソースを編集]

「\u0020」のように書くことでUnicode入力ができます。ただし§は後述の装飾コードとして用いられているため正しく表示されません。

§記法(Formatting codes)[編集 | ソースを編集]

§と数字・アルファベット1文字の組み合わせでテキストの色・書式を指定します。

[編集 | ソースを編集]

記号
§0 #000000
§1 #0000AA
§2 #00AA00
§3 #00AAAA
§4 #AA0000
§5 #AA00AA
§6 #FFAA00
§7 #AAAAAA
§8 #555555
§9 #5555FF
§a #55FF55
§b #55FFFF
§c #FF5555
§d #FF55FF
§e #FFFF55
§f ■#FFFFFF

書式[編集 | ソースを編集]

記号 書式
§k 難読化[1]
§l 太字
§m 打ち消し線
§n 下線
§o 斜体
§r 書式のリセット
  1. 様々な文字が高速で切り替わって表示される。

使い方[編集 | ソースを編集]

書式を変えたい箇所の直前に記号を挿入します。記号の直後から次の記号までの範囲に、指定した書式が適用されます。

色と書式を同時に変えたい場合は必ず色を先にします(書式は色の設定が変更される際にリセットされるため)。

たとえば「これは§9§l見本§rです」と書くと「これは見本です」と表示されます。

ページリンク[編集 | ソースを編集]


License[編集 | ソースを編集]

このページのファイル(またはその一部)は、Minecraft Wikiにアップロードされたものです。 
該当するファイルは、CC BY-NC-SA 3.0でライセンスされています。
このページのファイル(またはその一部)は、Mojang Studios著作権を保有しています。 
該当するスクリーンショット、テクスチャ、音声、楽曲、または他のMojangの財産、あるいはその派生物は Miraheze Terms of Useの下で、当Wikiでは自由に使用することが可能です。
Cookieは私達のサービスを提供するのに役立ちます。このサービスを使用することにより、お客様はCookieの使用に同意するものとします。