Hacker News 의견
  • TUI 개발자는 유니코드와 국제 문자 및 이모지 처리를 별도의 프로젝트로 다루게 됨

    • rivo/tview와 rivo/uniseg 패키지에서 동일한 문제를 겪음
    • 각 TUI 라이브러리 유지 관리자는 고유한 해결책을 개발함
    • 문자 너비가 표준화되지 않아 터미널이 복잡함
    • OP는 유니코드 9만 지원함 (현재 유니코드 버전은 15.1)
    • 결국 사용자는 특정 이모지나 국제 문자가 제대로 렌더링되지 않는다고 불평할 것임
  • Textual이 React를 모방하려는 점이 불만임

    • React는 인기 있는 프레임워크이지만, 사용자 인터페이스를 만드는 좋은 방법은 아님
    • 기본적인 반응형 디자인은 잘 알려진 방법임
    • CSS를 사용하는 것은 과도한 것 같음
    • React 모델은 이미 CSS의 개념을 많이 깨뜨림
    • CSS를 사용하지 않아도 된다면 괜찮음
  • Textual을 사용해 본 결과, CSS를 사용해야 함

    • 좋은 표준 컴포넌트가 없어서 직접 만들어야 함
    • Python 클래스가 아닌 외부 스타일 시트를 사용함
    • 이러한 이유로 Textual은 아직 나에게 맞지 않음
    • Python에서는 하나의 명확한 방법이 있어야 함
    • React를 너무 밀접하게 모방하여 JavaScript 커뮤니티의 단점을 반영함
  • 이 TUI는 예쁘지만 실제로 사용할 상황이 떠오르지 않음

    • 최소한의 기능에 만족하거나 바로 GUI를 사용함
    • YouTube 링크에서 셀 강조 표시가 가능한 테이블을 보여줌
    • TUI에서 왜 필요한지 이해되지 않음
    • 결국 제대로 된 GUI가 필요할 것임
  • kitty는 더 많은 기능을 제공함

  • 소프트웨어 엔지니어가 TUI에 왜 그렇게 관심을 가지는지 이해되지 않음

    • 좋은 명령줄 프로그램을 좋아하지만 TUI는 매력적이지 않음
  • Monodraw는 MacOS 전용이지만 다른 플랫폼에도 좋은 대안이 있음

  • "덮어쓰기, 지우지 않기"는 과거 게임 개발 방식임

    • DirectX 이전에는 프레임 버퍼에 직접 쓰고 변경된 부분만 다시 그렸음
  • 터미널에서 커서 위치를 확인하여 유니코드 버전을 추정하는 방법이 있음

    • 터미널이 이모지를 예측할 수 없게 렌더링함
    • 문자열 너비를 결정할 때마다 이 방법을 사용할 수 있음
    • wcwidth에 짜증이 나서 이 방법을 사용한 적이 있음
  • 여러 TUI 라이브러리를 평가한 결과, FTXUI가 가장 사용하기 쉽고 신뢰할 수 있었음

    • FTXUI
    • 키보드와 마우스를 지원하는 대화형 대시보드를 만드는 데 유용함