콘텐츠로 건너뛰기
Home » asciimatics

asciimatics

ASCIIMATICS TUI – 샘플 앱 예제

지금까지 우리는 몇 개의 글을 통해 asciimatics의 기본적인 사용법과 이 라이브러리를 사용하여 TUI를 구성하는 방법에 대해서 살펴보았습니다. 그리고 여기에 데이터 모델을 연결하기 위한 기초작업은 어떻게 준비하는지도 알아보았습니다. 오늘은 이러한 내용들을 바탕으로 간단한 앱을 만들어 보겠습니다. TODO 앱 우선 간단한 할일의 목록과 완료여부를 표시할 수 있는 Todo 앱을 만들어봅시다. 기본적으로 등록된 작업의 목록과, 새 목록을 등록할 수 있는 UI를 하나의 화면에 추가합니다. 작업 목록에서 하이라이트된 항목을 선택(Enter 키 누름)하면 완료 여부가 반전되어 표시되도록 하고, 목록에 아래에는 텍스트 필드와 추가 버튼을 두어… 더 보기 »ASCIIMATICS TUI – 샘플 앱 예제

ASCIIMATICS TUI – 데이터 다루기

입력필드나 드롭다운 메뉴 같은 UI들은 실제로는 어떤 값을 화면에 표시하기 위해 사용됩니다. 지금까지 asciimatics를 사용하여 UI를 구성하는 방법을 살펴보았는데, 앱이 다루는 실제 데이터와 UI가 어떻게 연결되고, 어떤 식으로 사용해야 하는지에 대한 내용은 아직 이야기 하지 않았습니다. 이제서야 이 이야기를 할 순서가 된 것 같습니다. 오늘은 asciimatics로 TUI를 구현할 때, 데이터를 연동하는 방법에 대해서 살펴보겠습니다. asciimatics의 애니메이션 기능을 설명하면서, 이 라이브러리는 애니메이션 구축 측면에서는 실제 애니메이션 영화를 제작할 때 사용하는 스토리보드 기법을 차용했다고 했습니다. 그리고 UI를 구성하는 측면에서는 모델과 뷰를 구분합니다.… 더 보기 »ASCIIMATICS TUI – 데이터 다루기

ASCIIMATICS로 UI를 구성하는 방법

지난 글에서 asciimatics를 사용하여 간단한 애니메이션을 만드는 예를 보면서, 애니메이션을 구성하는 요소들에 대해 알아보았습니다. 그리고 이 애니메이션을 구성하는 요소들이 UI에서는 어떤 식으로 대응하는지를 간략하게 언급했습니다. 이를 다시 정리해보면 다음과 같은 원리들이 보입니다. 애니메이션처럼 UI를 갖춘 앱도 여러 개의 화면을 가질 수 있습니다. 메모앱이나 연락처와 같은 앱을 생각하면 목록화면과 내용 편집 화면의 두 개의 화면이 필요할 것입니다. 이러한 화면들은 각 화면이 하나의 장면(Scene)에 대응합니다. 각 화면은 적어도 1개 이상의 창을 포함할 것입니다. 각각의 창은 프레임(Frame)이라는 클래스를 서브클래싱하여 구현합니다. 이 Frame은 다시… 더 보기 »ASCIIMATICS로 UI를 구성하는 방법

asciimatics – 텍스트 기반 애니메이션 라이브러리

간단한 UI를 가진 앱을 파이썬으로 구현하는 가장 기본적인 방법은 내장되어 있는 라이브러리인 Tkinter를 사용하는 것일 것입니다. 그 외에도 wxPython이나 PyQt, PySide 같은 것들이 있습니다. 하지만 정말 단순한 UI를 구현하기만 하면 되는 상황이라면 꼭 GUI일 필요는 없을 수도 있습니다. 터미널 상에서 텍스트로 UI를 표현할 수 있는 라이브러리도 있죠. TUI 라고하는 이런 텍스트 기반 UI를 구현할 때 가장 널리 쓰이는 라이브러리로는 prompt toolkit이 있습니다. Prompt toolkit은 원래 Unix의 명령줄 제어 라이브러리인 readline의 기능을 파이썬으로 구현한 것으로, 탭 키를 입력하여 입력 중인 명령이나… 더 보기 »asciimatics – 텍스트 기반 애니메이션 라이브러리