8P by neo 15일전 | favorite | 댓글 1개
  • Rust로 작성된 기존 ls에 대한 고성능, 확장 가능 대체제
  • 향상된 기능, 커스텀 가능한 출력, 확장 기능을 위한 플러그인 시스템을 제공
  • 효율적인 파일 리스팅: 대용량 디렉토리에서도 빠른 속도에 최적화
  • 다양한 보기 모드 : 기본, 롱포맷, 트리뷰, 재귀적 리스팅
  • 고급 정렬 기능 : 알파벳 순(기본), 파일 사이즈, 수정 일자별 등
  • 유연한 필터링: 파일명 또는 확장자를 기준으로 필터링
  • 재귀적 탐색 깊이 설정: 하위 디렉토리 탐색 깊이 최대값 설정 가능
  • 확장 가능한 플러그인 시스템: 사용자 정의 기능을 개발 및 통합 가능
  • 색상 구분 출력: 파일 유형 및 권한을 쉽게 식별할 수 있도록 색상 코드 사용
  • 플러그인을 통한 추가 기능들
    • Git 연동: 파일의 Git 상태를 표시
    • 파일 분류: 파일을 타입별로 분류
    • 키워드 검색: 파일 내용에서 특정 키워드 검색 가능
    • 파일 해시 출력: 파일의 해시값 표시
    • 코드 복잡성 분석: 코드의 복잡도 분석
    • 파일 크기 시각화: 파일 크기 시각화 제공
    • 중복 파일 탐지: 중복 파일 식별
    • 디렉토리 메타데이터 표시: 디렉토리의 세부 정보 제공
    • 파일 메타데이터 표시: 파일의 확장 메타데이터 표시
    • 최근 Git 커밋 정보 표시: 마지막 Git 커밋 정보 표시

Hacker News 의견

  • 제작자의 말 : 프로젝트 lla에 대한 피드백에 감사하며, 이 프로젝트의 가장 놀라운 부분은 또 다른 ls 대안을 만드는 것이 아니라, Rust로 시스템 도구를 구축하고 플러그인 아키텍처를 구현하는 과정에서 엄청난 학습을 경험한 것임

    • 전통적인 ls보다 더 많은 기능을 제공하며, 이는 의도적인 것임
    • 성능과 문서화가 개선될 필요가 있지만, 오픈 소스의 장점은 피드백을 통해 계속 발전할 수 있다는 것임
    • 비슷한 프로젝트를 고려하는 사람들에게는 일상적으로 사용하는 도구를 재구상해보시길 권장
  • POSIX 도구를 대체하는 프로젝트로서 개인 사용에 적합하게 기대치를 설정한 점에 감사함

    • 많은 도구들이 최소한의 기능만 제공하고 확장 속성이나 ACL을 무시하며, STDOUT와 STDERR를 제대로 구분하지 못해 하위 도구에 문제를 일으킴
    • 자신의 아이디어를 세상에 내놓는 것이 불안할 수 있지만, 이를 잘 수행한 점이 훌륭
  • 원래의 LISP 머신에서 Genera를 사용한 경험이 있는데 거기서는 클릭 가능한 ls 결과를 다시 가져오는 기능이 있음. 이걸 구현할수 있으면 좋겠음

    • ls --hyperlink가 비슷하다는 댓글이 있는데, 그것과는 다름
  • 현대 CLI 도구들이 파일 관리자, git 클라이언트, grep 등 모든 것을 하려고 하는 경향이 있음

  • 재미있는 프로젝트로 보이지만, README에서 효율적인 파일 목록화에 대해 언급했는데, 속도를 최적화하기 위해 무엇을 다르게 하고 있는지 궁금함

  • Linux에서 잘 알려지지 않은 파일 시스템 CLI 도구인 gio가 있음

    • gio는 glib2와 함께 제공되며, 대부분의 Linux 설치에서 사용할 수 있음
    • cp와 유사한 진행 상황 표시, freedesktop 휴지통에 대한 쉬운 CLI 인터페이스, 트리 명령어, 파일 시스템 변경 모니터링 등의 기능을 강조함
  • "개인 사용"으로 명시했지만, 흥미로운 새로운 아이디어를 도입한 칭찬할 만한 프로젝트임

    • 자신의 ls 대안인 pls에 아이디어를 도용할 수도 있다고 언급함
  • ls 대체 도구에서 색상화 외에 어떤 이점을 얻는지 궁금해함

    • 최근에 ranger를 사용하기 시작했으며, 디렉토리 내 모든 것을 보여주고 vim과 같은 단축키로 필터링, 정렬, 검색, 파일 미리보기 및 다른 디렉토리로 이동할 수 있어 ls 사용을 대체할 수 있을 것이라고 생각함