# 이미지 파일 목록 프로그램 'lsix' 출시

> Clean Markdown view of GeekNews topic #15226. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=15226](https://news.hada.io/topic?id=15226)
- GeekNews Markdown: [https://news.hada.io/topic/15226.md](https://news.hada.io/topic/15226.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2024-06-08T08:33:28+09:00
- Updated: 2024-06-08T08:33:28+09:00
- Original source: [github.com/hackerb9](https://github.com/hackerb9/lsix)
- Points: 4
- Comments: 1

## Topic Body

### lsix: 터미널에서 이미지 썸네일을 보여주는 도구

#### 사용법
- `lsix [파일들 ...]` 명령어로 사용 가능함.
- 기본적으로 현재 작업 디렉토리의 이미지를 보여줌.
- 파일 이름을 지정하거나 와일드카드를 사용할 수 있음 (예: `lsix *jpg*png`).

#### 예제

##### 기본 사용법
- `lsix` 명령어를 입력하면 현재 디렉토리의 이미지를 보여줌.
- 특정 파일 형식을 강제로 표시하려면 파일 이름을 지정하거나 와일드카드를 사용함 (예: `lsix *.pdf`).

##### GIF 확장
- GIF 파일을 지정하면 모든 프레임이 확장되어 몽타주로 표시됨 (예: `lsix nyancat.gif`).

##### 터미널 배경색 감지
- PNG 및 SVG 파일은 터미널 배경색에 맞게 알파 채널을 올바르게 표시함.
- 터미널의 전경색과 배경색을 감지하여 적절히 조정함.

#### 기능
- 터미널이 SIXEL 그래픽을 표시할 수 있는지 감지함.
- SSH를 통해 원격 서버에서도 잘 작동함.
- 비트맵이 아닌 그래픽도 잘 작동함 (예: .svg, .eps, .pdf, .xcf).
- 터미널의 색상 레지스터 수를 자동으로 감지하고 이미지 품질을 향상시킴.
- 터미널의 전경색과 배경색을 자동으로 감지함.
- 많은 이미지가 있는 경우 한 줄씩 표시하여 전체 몽타주를 기다릴 필요가 없음.
- 긴 파일 이름을 적절히 감싸서 표시함.
- 몽타주의 타일 너비, 폰트 패밀리, 포인트 크기 등을 쉽게 변경할 수 있음.

#### 설치
- `lsix` 파일을 경로에 넣고 실행함 (예: /usr/local/bin).
- ImageMagick이 필요함. 패키지 관리자를 통해 쉽게 설치 가능 (예: `apt-get install imagemagick`).
- MacOS 사용자는 `brew install lsix` 명령어로 설치 가능.

#### 터미널 지원
- SIXEL 그래픽을 지원하는 터미널: XTerm, MLterm, foot, Wezterm, Contour, iTerm2, Konsole, yakuake, WSLtty, MinTTY, Yaft, VTE, sixel-tmux, ttyd.
- SIXEL 그래픽을 지원하지 않는 터미널: MacOS Terminal, kitty, 모든 표준 libvte 기반 터미널 (gnome-terminal, terminator, lxterm), Alacritty.

#### 구성
- `lsix`는 매우 간단하게 설계되어 별도의 구성 파일이나 명령줄 플래그가 없음.
- 스크립트를 직접 편집하여 쉽게 변경 가능.

#### 버그
- XTerm의 역방향 비디오 모드에서 배경색이 올바르게 표시되지 않음.
- XTerm의 화면 너비가 1000px로 제한됨.
- 파일 이름이 "@"로 시작하면 ImageMagick이 오류를 일으킴.
- 빈 문자열을 파일 이름으로 지정하면 ImageMagick이 멈춤.
- 긴 파일 이름이 비효율적으로 감싸짐.
- 명령줄에서 지정된 디렉토리가 재귀적으로 처리되지 않음.
- 비디오 파일을 지정하면 문제가 발생할 수 있음.

#### 향후 문제
- SIXEL 표준은 그래픽 화면의 크기를 쿼리하는 방법이 없음.
- 색상 레지스터 수를 쿼리하는 방법이 없음.
- 일부 터미널 에뮬레이터는 lsix와 호환되지 않음.

#### GN⁺의 의견
- **터미널 이미지 보기**: lsix는 터미널에서 이미지를 쉽게 볼 수 있게 해주는 유용한 도구임. 특히 원격 서버에서 이미지를 확인할 때 유용함.
- **호환성 문제**: 모든 터미널이 SIXEL 그래픽을 지원하지 않으므로 사용 전에 호환성을 확인해야 함.
- **간단한 설치**: 설치가 매우 간단하고 필요한 소프트웨어도 쉽게 구할 수 있음.
- **사용자 정의 가능성**: 스크립트가 간단하여 사용자가 쉽게 수정하고 확장할 수 있음.
- **대체 도구**: 비슷한 기능을 제공하는 다른 도구로는 `img2sixel` 등이 있음.

## Comments



### Comment 26016

- Author: neo
- Created: 2024-06-08T08:33:29+09:00
- Points: 1

###### [Hacker News 의견](https://news.ycombinator.com/item?id=40598629) 
- Tmux의 실험적인 sixel 브랜치가 약 10개월 전에 메인 브랜치에 병합되었음. 이제 `--enable-sixel` 옵션을 사용하여 Tmux를 빌드하고 lsix 같은 도구를 사용할 수 있음. 좋아하는 터미널이나 멀티플렉서가 sixel을 지원하는지 확인하려면 "Are We Sixel Yet" 사이트를 참조할 수 있음.
- 이 저장소에서 가장 마음에 드는 기능은 `README.md.d` 디렉토리임. 좋은 아이디어라고 생각함. `.md`를 생략해도 괜찮을 것 같음.
- `\e[c`를 사용하여 자동으로 sixel 지원을 감지함. `\e[c`는 "장치 속성 보내기" 기능임.
- 비슷한 맥락에서 timg라는 도구도 있음.
- 좋은 아이디어지만 PuTTY/ KiTTY에서는 작동하지 않음. sixel 그래픽을 지원하는 터미널을 사용해야 함. 터미널이 sixel을 지원하는지 테스트하려면 이미지를 변환하여 확인할 수 있음. 지원하지 않는다면 버그 리포트를 제출할 수 있음.
- MacOS의 iTerm2는 유사한 기능을 제공하지만 서버 측 부담이 적음. 서버에서 이미지를 sixel로 렌더링하는 대신, 클라이언트로 base64 인코딩된 이미지를 보내어 로컬에서 렌더링함.
- fzf는 버전 0.44.0부터 미리보기 창에서 (실험적인) sixel 이미지 지원을 제공함. 하지만 Windows에서는 사용할 수 없음.
- HN 폰트가 오해를 불러일으킬 수 있음. 다음 헤드라인을 기다리고 있음: 'Isis, like "ls", but for terrorists.'
- 신뢰할 수 없는 디렉토리에서 이 도구를 실행할 때 주의해야 함. 특히 pdf와 같은 파일을 처리할 때 ImageMagick을 사용하는 경우 주의가 필요함.
- 터미널이 sixel 그래픽을 지원하는 한 문제없음.
