Leaves: 텍스트 UI 디스크 사용량 트리맵 시각화 도구
Leaves: 텍스트 UI 디스크 사용량 트리맵 시각화 도구
Leaves는 WinDirStat 및 QDirStat와 같은 도구에서 영감을 받은 텍스트 모드 디스크 사용량 분석기입니다. 파일과 디렉터리를 중첩된 사각형 계층 구조로 시각화하며, 각 사각형의 면적은 디스크 상의 항목 크기에 비례합니다. 이 접근 방식은 터미널 환경에서 디스크 공간을 많이 차지하는 항목을 빠르게 파악할 수 있게 해 주며, 그래픽 사용자 인터페이스를 사용할 수 없는 원격 쉘 연결에 특히 유용합니다.
트리맵을 이용한 디스크 사용량 시각화
Leaves는 파일 시스템을 나타내기 위해 트리맵 레이아웃을 사용합니다. 중앙 패널에는 크기가 다양한 사각형이 표시되며, 형제 항목보다 두 배 큰 파일이나 디렉터리는 사각형 면적이 두 배가 됩니다.
도구가 문자 수준 해상도로 동작하기 때문에 시각화는 거친 근사치에 불과합니다. 이를 관리하기 위해 Leaves는 시각적 혼란을 방지하는 여러 기능을 구현했습니다:
- 확장 및 축소: 사용자는 필요에 따라 디렉터리를 확장하거나 축소할 수 있습니다. 디렉터리를 축소하면 상세한 하위 사각형이 파일 유형 요약으로 대체되어 동일한 확장자를 가진 파일들을 누적 크기에 비례하는 하나의 사각형으로 그룹화합니다.
- 최대 깊이 제어:
--max-depth플래그(기본값 5)를 사용하면 메모리 사용량과 시각적 명료성을 위해 도구가 디렉터리 트리를 탐색하는 깊이를 제한할 수 있습니다. - X‑Ray 모드:
x키를 눌러 "X‑Ray" 모드에 들어가면 파일을 최상위 수준에서 유형별로 그룹화한 뒤, 해당 영역을 디렉터리별로 다시 분할합니다. 이를 통해 전체 스캔 경로에서 어떤 유형의 파일이 가장 많은 공간을 차지하는지 다른 관점으로 파악할 수 있습니다.
탐색 및 인터페이스
인터페이스는 세 가지 주요 영역으로 나뉩니다: 현재 경로, 총 크기 및 파일 수를 표시하는 제목 표시줄; 접을 수 있는 탐색 트리를 갖춘 사이드바; 그리고 중앙 트리맵 패널.
탐색은 키보드 단축키와 마우스 조작으로 이루어집니다:
- 포커스 보기: Enter 키를 눌러 선택한 디렉터리에 포커스를 맞추면 현재 뷰가 해당 디렉터리 내용으로 교체됩니다. Backspace 키를 누르면 상위 디렉터리로 돌아갑니다.
- 트리 탐색: 화살표 키로 탐색 트리를 이동하고, Space 키로 디렉터리를 열거나 닫습니다.
- 깊이 조정:
+및-키로 시각화의 실행 시 깊이를 조절합니다.
설정 및 커스터마이징
Leaves는 $USER_CONFIG_DIR/leaves/settings.toml에 위치한 설정 파일이나 LEAVES_ 접두사가 붙은 환경 변수를 통해 높은 수준으로 커스터마이징할 수 있습니다.
테마 및 색상 스키마
항목은 유형에 따라 색상이 지정되어 빠른 시각적 스캔이 가능하도록 합니다. 디렉터리는 이름을 기준으로 차가운 색조 팔레트(viridis)로 색칠되고, 파일은 확장자를 기준으로 노랑/주황/갈색 스키마로 색칠됩니다.
내장 테마 네 가지가 제공됩니다:
- Fall: 파일은 따뜻한 색, 디렉터리는 차가운 색.
- Spring: 확장자는 차가운 색, 디렉터리는 따뜻한 색.
- Greys: 회색 톤.
- Mono: 흑백.
사용자는 settings.toml 파일에서 HTML 색상 코드, 16진수 RGB 또는 HSL 삼중값을 사용해 사용자 정의 테마를 정의할 수도 있습니다.
기술 구현 및 제한 사항
Leaves는 Rust로 작성되었으며 소스에서 빌드하려면 Rust 툴체인이 필요합니다. 여러 플랫폼용 사전 빌드 바이너리도 지원합니다.
스캔 시 고려 사항
루트 디렉터리(/)를 스캔할 때는 /dev, /proc, /sys, /run과 같은 가상 파일 시스템을 제외해야 비논리적인 결과를 방지할 수 있습니다. 이는 부정적 오버라이드(예: leaves -A -d 3 / '!/proc' '!/tmp')를 사용해 수행할 수 있습니다.
링크 처리
- 심볼릭 링크: 도구는 심볼릭 링크를 따라가지 않아 스캔 디렉터리 외부의 디스크 사용량을 이중 계산하지 않습니다.
- 하드 링크: 도구는 하드 링크를 감지하지 않으므로 하드 링크는 이중 계산됩니다.
커뮤니티 인사이트 및 대안
Hacker News 커뮤니티 사용자들은 Leaves를 다른 디스크 사용량 도구와 비교했습니다. 일부는 ncdu, dua-cli, mcdu와 같은 전통적인 리스트 기반 접근 방식을 선호하는 반면, 다른 사용자들은 트리맵 시각화가 큰 파일 군집을 찾는 데 더 직관적이라고 평가했습니다.
"파일 유형 확장자 파티셔닝 기능은 블록 문자 제한을 처리하기 위한 정말 스마트한 추가 기능이다."
다른 언급된 대안으로는 WizTree, GrandPerspective, SpaceSniffer와 같은 GUI 도구와 TUI 도구인 Broot(br -w 명령) 등이 있습니다.
요약: Leaves는 Rust 기반 터미널 유틸리티로, WinDirStat에서 영감을 받은 트리맵 시각화를 제공하여 텍스트 모드 인터페이스에서 중첩된 사각형을 통해 큰 파일과 디렉터리를 식별할 수 있게 합니다.
제목: Leaves: 텍스트 UI 디스크 사용량 트리맵 시각화 도구