http get から html parse, term 表示までの流れができてきました 。
(型) <------- Buffer --------->
Url HttpResponse LineLayout
👇 ☝️ 👇 ☝️ 👇
http get parser term output
<-- loadGeneralFile --->
(関数)
URL から LineLayout の生成までが loadGeneralFile という大きな関数になっていたのだけど、 分解できました。 http get 工程からは global 変数を member に移して多重化可能になりました。 parser もこれから global 変数の member 化をする予定だけど巨 大(w3mでlibwc を除くと最大)なのでぼちぼち。
HttpResponse で止めれるようになったのが味噌で、 parser 処理を後ろの工程に移動できそう。 parse 結果を Buffer ではなく、Display 側に一個だけ持たせればよいのではないか。
Buffer は tab 画面の構成と Browser の参照履歴を保持する責務になって、 文字レイアウトの管理は term 寄りの display に移動する予定。