MWM5 Library
1.0
1.0
  • The MWM5 Library / TWELITE STAGE
  • Changes & Download
  • License
  • Getting started
    • Environment
    • Building
    • Hardware
    • Examples
      • AppTwelite_Recv
      • PAL_Recv
    • Examples (console)
      • glancer_con
    • Using Library
      • Parser
      • Terminal
  • References
    • the_app
    • Parser
      • TWESERCMD
        • IParser
        • AsciiParser
      • TWEFMT
        • TwePacket, spTwePacket
          • E_PKT
          • idenify_packet_type()
          • newTwePacket()
          • refTwePacket()
        • Packet Types
          • TwePacketAppIO
            • DataAppIO
          • TwePacketPal
            • DataPal
            • E_PAL_PCB
            • E_PAL_DATA_TYPE
            • E_CAUSE
            • PalEvent
            • PalDataInfo
            • PalBase
              • PalMag
              • PalAmb
              • PalMot
          • TwePacketActStd
            • DataAppUART (Act用)
          • TwePacketTwelite
            • DataTwelite
          • TwePacketAppUart
            • DataAppUART
    • Terminal
      • TWETERM
        • ESC Sequence
        • TermAttr
        • ITerm
        • TWETerm_M5_Console
      • TWEFONT
        • FontDef
        • createFont???()
        • drawChar()
        • queryFont()
    • Basics
      • TWE
        • IStreamOut
        • Print Formatted
      • TWEUTILS
        • FixedQueue
        • InputQueue
        • SimpleBuffer
          • SmplBuf_Byte
          • SmplBuf_ByteL<N>
          • SmplBuf_ByteSL<N>
          • SmplBuf_WChar
          • SmplBuf_WCharL<int>
GitBook提供
このページ内
PDFとしてエクスポート
  1. References

Terminal

ターミナル(コンソール)

本ライブラリのターミナル(コンソール)は、文字列ベースの画面を構成することを目的としてます。

以下に設計時の考慮事項を記載します。

  • 固定幅の画面構成を行うこと

  • 日本語の表示が可能であること

  • ソースコード中に直接日本語文字列を含められるようにすること

    • UTF-8でソースコードを記述する前提とする

    • 内部処理をUnicodeとすること

    • UTF-8デコードが出来るようにすること

  • 旧来のキャラクター型のインタフェースを実装できるよう、いくつかのエスケープシーケンスを実装しておくこと

    • ただしANSIエスケープシーケンスの完全な互換性を目的とはしない

  • 文字色、背景色、太字といった表示属性に対応すること

  • カーソルを表示・非表示にできること

  • 画面の順方向のスクロールに対応すること

  • カラム数を超えて文字列を出力した場合は、折り返しを行えること

    • 右端カラムへの文字出力を行った場合、その時点では折り返しを行わないようにすること

      • 上記を実装は、折り返し処理の実装より優先すること

  • 複数のターミナル表示を画面上に同時に表示できること

  • 毎回全画面書き換えといったような描画パフォーマンスの悪い実装でないこと

    • 変更がある行のみを書き換える行単位の描画を行うようにした

  • フォントを選択できること

    • 配布可能なフォントをライブラリ内に同梱しておくこと

    • より大きな文字を表示するため、倍角表示に対応すること

本ライブラリのターミナルは、大まかに分けて2要素から構成されます。

前へDataAppUART次へTWETERM

最終更新 5 年前

ターミナル画面上の文字列を管理するクラスや関数をまとめた

フォントの管理と描画に関連するクラスや関数をまとめた

TWETERM
TWEFONT