Jonathan unescapes Unicode Escape Sequence

Jonathan にUnicode Escape Sequenceをunescapeする機能を入れた.

  1. Unicode Escape Sequence
  2. See Also

Unicode Escape Sequence

先日 Daily Log in Slack で紹介した Slack Nippo を作っている時に、 Slack の API の Response に Unicode Escape Sequence があり、 Jonathan がこれを usescape していなかったことを知った.

YASONCL-JSON ももちろん対応しているので、 Jonathan にUnicode Escape Sequenceをunescapeする機能を入れた.

(jonathan:parse "\"\\u30b8\\u30e7\\u30ca\\u30b5\\u30f3\"")
;; => "ジョナサン"

もちろんSurrogate pairも対応している.

(jonathan:parse "\"\\uD840\\uDC0B\"")
;; => "𠀋"

ちなみに CL-JSON はSurrogate pairを投げると文字化けする.

(with-input-from-string (stream "\"\\uD840\\uDC0B\"")
  (cl-json:decode-json stream))
;; => "��"

不具合があれば Issues にreportもらえれば対応します.

See Also