Starship: 모든 셸에서 작고, 빠르고, 커스터마이즈 가능한 프롬프트

1 month ago 10

  • Starship은 다양한 셸 환경에서 사용할 수 있는 경량·고성능·유연성을 갖춘 프롬프트 오픈소스 프로젝트
  • Bash, Zsh, Fish, Powershell, Tcsh 등 대부분의 주요 셸을 모두 지원하는 광범위한 호환성 제공
  • 각 셸별로 초기화 스크립트를 간단히 추가하는 방식으로 설정 및 적용 가능
  • Rust로 작성되어 빠른 속도와 안전성 을 보장하며, 단일 바이너리로 제공됨
  • 모든 사소한 부분까지 커스터마이즈 가능
  • 안드로이드, BSD, Linux, macOS, Windows 등 다양한 플랫폼에서 공통 환경 구성 지원, 생산성 향상 및 사용 편의성 제공

Starship 오픈소스 프로젝트

  • Starship은 성능과 커스터마이즈를 동시에 지원하는 프롬프트 도구로, 다양한 운영체제와 셸에서 사용할 수 있음
  • 기존의 무거운 프롬프트와 비교해 빠른 반응 속도낮은 리소스 사용량이 특징이며, 높은 커스터마이즈 가능성으로 개발 생산성 향상에 도움을 줌

각 셸 환경에서의 설정 방법

  • Bash:
    • ~/.bashrc 파일 끝에 eval "$(starship init bash)" 코드 추가
  • Fish:
    • ~/.config/fish/config.fish 파일 끝에 starship init fish | source 추가
  • Zsh:
    • ~/.zshrc 파일 끝에 eval "$(starship init zsh)" 코드 추가
  • Powershell:
    • Microsoft.PowerShell_profile.ps1 파일에 Invoke-Expression (&starship init powershell) 추가
    • PowerShell 프로필 파일 위치는 $PROFILE 변수로 확인 가능
  • Ion:
    • ~/.config/ion/initrc 파일에 eval $(starship init ion) 코드 입력
  • Elvish:
    • v0.18 이상 버전만 지원
    • ~/.elvish/rc.elv 파일에 eval (starship init elvish) 코드 추가
  • Tcsh:
    • ~/.tcshrc 파일에 eval \starship init tcsh`` 코드 입력
  • Nushell:
    • v0.96 이상만 지원, 추후 설정 방식 변경 가능성 존재
    • 설정 파일 경로는 $nu.config-path 명령으로 확인
    • 해당 경로에 starship init nu | save -f ... 코드로 적용
  • Xonsh:
    • ~/.xonshrc 파일 끝에 execx($(starship init xonsh)) 코드 입력
  • Cmd (Clink 필요):
    • Clink v1.2.30 이상 필요
    • starship.lua 파일 생성 후 Clink 스크립트 디렉터리에 저장
    • 내부에는 load(io.popen('starship init cmd'):read("*a"))() 코드 추가

Read Entire Article