Tattoy: GPU Shaders & Live Minimap Framework for Terminals

Tattoy - 터미널에 GPU 셰이더와 라이브 미니맵을 추가하는 프레임워크

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

개발 툴

대상자

  • 터미널 사용자 및 개발자 (시각적 효과 추가, 작업 편의성 향상)
  • 난이도: 중간 (기본 설정은 쉬움, 고급 기능은 셰이더/플러그인 개발 필요)

핵심 요약

  • GPU 기반 셰이더 지원 : Shader Toy 및 Ghostty 셰이더를 그대로 활용 가능
  • 라이브 픽셀 미니맵 : 터미널 스크롤백 전체를 실시간으로 시각화
  • 플러그인 기반 확장성 : JSON over STDIN/STDOUT 프로토콜로 커스텀 이펙트 구현

섹션별 세부 요약

1. 프레임워크 개요

  • 터미널에 GPU 셰이더를 통한 화려한 시각 효과 제공
  • True Color 및 UTF8 하프블록 문자 지원으로 대부분의 터미널 에뮬레이터 호환
  • 배경 비디오 재생, 오디오 비주얼라이저, 시스템 모니터 그래프 등 예시 활용 가능

2. 주요 기능

  • 배경에 커맨드 투명 실행 : 투명도 조절 가능
  • 즉시 전환 기능 : 효과 적용/비활성화 시 터미널 상태 즉시 전환
  • Auto Text Contrast : ls 명령어 시 색상 대비 부족 문제 자동 보정

3. 기술적 구현

  • 24비트 RGBA 색상 인식알고리듬 기반 저대비 텍스트 보정
  • Alternate Screen 지원 : nvim, top, gitui 등 앱의 상태도 반영
  • 자체 스크롤백 버퍼 및 스크롤바 제공

4. 플러그인 시스템

  • 언어 무관한 플러그인 개발 지원
  • JSON over STDIN/STDOUT 프로토콜 기반 통신
  • 예시: 커서에서 연기 파티클 이펙트 구현 가능

결론

  • Tattoy는 터미널 작업 환경을 시각적으로 풍부하게 만드는 데 최적화된 프레임워크
  • Shader Toy 셰이더 재사용플러그인 기반 확장성을 통해 빠른 구현 가능
  • 실제 적용 예시에서 확인 가능