TerminalTextEffects (TTE) - 터미널 텍스트 효과 엔진
(chrisbuilds.github.io)- 터미널용 비쥬얼 특수효과 엔진
- 시스템 어플리케이션으로 직접 사용하거나, Python 라이브러리로 자신의 스크립트/애플리케이션내에서 사용 가능
- Xterm 256/RGB 컬러 지원
- 경로, 웨이포인트, 모션 Easing을 통한 복잡한 문자열 이동, 쿼드/큐빅 베지어 커브 지원
- 심볼/색상 변경, 레이어, Easing 및 경로 동기화 진행이 포함된 장면을 통해 복잡한 애니메이션을 구현 가능
- 가변 정지/단계별 색상 그라데이션 생성
- 커스텀 콜백 지원 및 다양한 사전 정의 액션을 통한 경로/씬 상태 변경에 대한 이벤트 처리
- 인라인으로 실행되어 터미널 상태와 워크플로를 보존
효과 쇼룸
- 빔 효과: 캔버스 위를 이동하며 문자를 밝히는 빔을 생성함.
- 바이너리 경로: 문자를 이진 형태로 디코딩하여 캔버스 외부에서 입력 좌표로 이동함.
- 블랙홀: 별이 있는 필드에서 블랙홀을 생성하고 별을 흡수한 후 데이터를 폭발시켜 원래 위치로 되돌림.
- 바운시 볼: 문자가 캔버스 상단에서 떨어져 바운시 볼처럼 튀다가 제자리에 정착함.
- 버블: 문자를 버블 형태로 만들어 떠다니다가 터짐.
- 번 효과: 문자가 점화되어 화면을 태움.
- 컬러 시프트: 터미널 전체에 색상이 변하는 그라디언트를 표시함.
- 크럼블: 문자가 먼지로 부서졌다가 다시 재형성됨.
- 디크립트: 영화 스타일의 텍스트 디크립션 효과를 제공함.
- 오류 수정: 잘못된 초기 위치에서 올바른 위치로 문자를 교환함.
- 확장: 문자가 중앙에서 확장됨.
- 불꽃놀이: 문자가 화면 위로 발사되어 불꽃놀이처럼 폭발하고 제자리에 정착함.
- 중앙 확장: 캔버스 중앙에서 한 행 또는 열로 확장됨.
- 궤도 발사: 네 개의 발사기가 캔버스를 돌며 문자를 발사하여 중앙에서 텍스트를 형성함.
댓글과 토론
Hacker News 의견
- 어릴 적 Geocities 사이트를 떠올리게 함. 여러 웹사이트에서 HTML을 복사해 붙여넣어 "해커" 느낌을 냈음. 이제 터미널에서 그 향수를 느낄 수 있음.
- 놀라운 라이브러리임. 하지만 절대 프로덕션 환경에서는 사용하지 말아야 함.
- 이 라이브러리를 SSH 로그인 시 MOTD에 통합했음. 매번 랜덤 효과가 나타남.
- 이 라이브러리를 정말 사랑함. 컴퓨터가 공상과학처럼 보이던 시절을 떠올리게 함. 프론트 페이지에 올라온 것이 기쁨. 파이썬 라이브러리로도 사용 가능함.
- "왜 사람들이 텍스트에 관한 기사를 추천하지?"라고 생각했지만, 이 라이브러리를 보고 사랑하게 됨. 순수한 열정으로 만들어진 것이 하루를 즐겁게 함.
- Emacs에서 M-x zone 명령어와 비슷함. 실행할 때마다 랜덤 스크린 세이버 효과가 나타남. 타이머로 설정하면 동료들이 궁금해함.
- 여러 장르의 텍스트 기반 어드벤처 게임에 이 라이브러리가 유용할 것 같음. 사이버펑크, 판타지, 호러 등에서 미묘하게 사용하면 효과적일 것임.
- 모두가 비슷한 접근 방식을 취하는 것을 보니 기쁨. 코드 예시:
self.move_cursor_to_top(),sys.stdout.write(output_string),sys.stdout.flush(). - 이 라이브러리는 멋짐. 'Burn'이나 'ErrorCorrect' 효과를 사용해 로그에서 경고나 오류를 동적으로 강조할 수 있음.
- Chalk 라이브러리 유지보수자임. 이 라이브러리는 최고임. 칭찬함.