Closed ttdoda closed 9 years ago
DEC純正の端末とxterm等の近年のsixel対応端末エミュレータではsixel画像表示後のカーソル位置が違うので、それへの対応です。
画像の終了位置が含まれる行の次の行にカーソルが移動。 例えば行の高さが14ドットで画像の高さがそれの2.5倍の35ドットだった場合、
画像の次の行位置(ドット単位)が含まれる行に移動。 VT382の行の高さは30ドットなので、画像の高さが2.5倍の75ドットだった場合、
ただし画像表示中にスクロールした場合に正しく動かないため、画像(アイコン)表示前に3行の改行を表示させてあらかじめスクロールさせておく。 またDECSC/DECRC非対応端末での挙動を変えない為にDECRCの前のCUU 3を残す。
マージさせていただきました。ありがとうございます。
DEC純正の端末とxterm等の近年のsixel対応端末エミュレータではsixel画像表示後のカーソル位置が違うので、それへの対応です。
xterm等の挙動
画像の終了位置が含まれる行の次の行にカーソルが移動。 例えば行の高さが14ドットで画像の高さがそれの2.5倍の35ドットだった場合、
VT382の挙動 (多分VT330も)
画像の次の行位置(ドット単位)が含まれる行に移動。 VT382の行の高さは30ドットなので、画像の高さが2.5倍の75ドットだった場合、
対応方法のコンセプト
ただし画像表示中にスクロールした場合に正しく動かないため、画像(アイコン)表示前に3行の改行を表示させてあらかじめスクロールさせておく。 またDECSC/DECRC非対応端末での挙動を変えない為にDECRCの前のCUU 3を残す。