ハフマンで良いんじゃないのか。
もしくはrangecorderで。
過去2kb分くらいのテキストを頻度として利用して。