# 雜項
本部分將收納應用方面的補充說明,他們可能是難以歸納進以上架構或者是平日甚少使用,所以收納于此部分
## unicode-萬國碼
JSON支援顯示Unicode,格式為:
`\u####`
`####`就是4個位的Unicode代碼,具體請參考Unicode代碼的[網頁](http://www.unicode.org/charts/)
不過MC字庫并不保證所有的Unicode都能正常顯示
使用例子:
```
/tellraw @a {"text":"\u2622"}
```

```
/tellraw @a {"text":"\u2622\u269B"}
```

## 轉義
轉義是JSON應用中十分重要的課題
轉義是指,有時候為了能讓系統正確配對雙引號`"`(例如在引號部分內使用引號),我們需要用`\`標示里面的雙引號,變成`\"`
比如需要輸出`"Hello World"`,我使用了以下命令:
```
/tellraw @a {"text":""Hello World""}
```
但由于配對的問題,標識`值`部分的引號和內容所需的引號配對了,系統無法正確識別命令,導致無法執行
JSON規定的轉義方式為,將`"`轉為`\"`,將`\`轉為`\\`
正確的命令為:
```
/tellraw @a {"text":"\"Hello World\""}
```

這樣我們便能告知系統,`"Hello World"`的引號和包圍`值`的引號如何正確配對
---
然后是需要更多轉義的例子
例如我們需要修改以下命令:
```
/tellraw @a {"text":"Hello World","clickEvent":{"action":"run_command","value":"/tellraw @a {\"text\":\"Hello World\"}"}}
```
這是一個包含了CE的`/tellraw`,點擊會再次輸出`Hello World`
如果我們需要修改成輸出`"Hello World"`,我們便需要在已經轉義一次的引號內再加入一對引號
按照正確的轉義方式,命令將修改為:
```
/tellraw @a {"text":"Hello World","clickEvent":{"action":"run_command","value":"/tellraw @a {\"text\":\"\\\"Hello World\\\"\"}"}}
```

需要注意,因為第二次轉義,`\`也需要被轉義,所以正確的寫法為`\\\"`而非`\\"`,三次轉義為`\\\\\\\"`,如此類推
---
最后需要提醒的一點是,并非一見到引號內的引號就需要額外轉義多一次
而是需要小心分辨他們是否處于同一層次
例如我要輸出`""Hello World""`
使用:
```
/tellraw @a {"text":"\"\\\"Hello World\\\"\""}
```

將會造成錯誤的輸出
正確的寫法應為:
```
/tellraw @a {"text":"\"\"Hello World\"\""}
```

## 與資源包的配合
有些地圖把部分不常用的文字改為圖片(沒錯,Minecraft里的文字是圖片來的),然后用JSON來做到在聊天欄打印合成配方的特技。
當然,這需要犧牲,就是玩家如果輸入那些字符就會變為物品。不過只要用生僻字的話一般還是沒有問題的。