バグ:セリフメッセージコンテントで特定文字の組み合わせでプレビュー上の表示が乱れる
Issue #404
resolved
Build: 2021-03-05 22:51:26 Release (64-bit)
以下のような&Y#N等の記述と、半角の濁音等「゚」「゙」との組み合わせで表示が乱れるようです。
゚゙゙゙
1&Y#N2345&W6
゚
1#N23456
上記の記述がプレビュー上では
゚゙゙゙
1&Y#●5&W6
゚
1#N2●56
このように表示されます。(※●=#Nの顔文字)
以下該当メッセージコンテントです
<?xml version="1.0" encoding="UTF-8"?>
<Talk type="Message" path="Material/??Selected" contentId="7D6CBFC9B8-5721907246/10000000-21" lastNextType="Text" paneId="7D6CBFE618-5605847471/10000000">
<Text>\n゚゙゙゙\n1&Y#N2345&W6\n\n\n゚\n1#N23456\n</Text>
</Talk>
Build: 2021-02-10 22:03:55 Debug (64-bit) では正常にプレビューされます。
Comments (2)
-
repo owner -
reporter - changed status to resolved
正常表示確認しました。修正ありがとうございます。
- Log in to comment
pull request #153
ご報告ありがとうございます。表示がおかしくなるのは結合文字があった時に特殊文字の位置計算が壊れていたというバグでした。
それを直した後に別の問題が見つかりました。どうもShift JISにもある半角濁点及び半角半濁点は、Unicodeでは結合文字として分類されているようです。これはUnicodeの仕様バグと考えるべきかと思いますが、そっちの方を直すのは不可能なので、CWPy及びcwxeditorではこの2文字を特別扱いして通常文字として扱う事にします。