강력한 터미널 텍스트 에디터이자 IDE (Integrated Development Environment)입니다.
즉각적인 시작. 타이핑하는 대로 텍스트가 나타납니다. 작은 메모리 점유율 (Memory footprint). 수 GB 크기의 파일과 SSH를 통한 원격 편집에서도 반응성을 유지합니다.
왼쪽에는 스테이지된 (staged) / 스테이지되지 않은 (unstaged) / 추적되지 않은 (untracked) 파일들을, 오른쪽에는 선택된 차이점 (diff)을 보여주는 분할 패널 리뷰 기능을 제공합니다. 개별 덩어리 (hunks)를 스테이지, 언스테이지 또는 폐기할 수 있으며, 라인 주석과 세션 노트를 남기거나 Markdown으로 내보낼 수 있습니다. 파일 비교를 위한 사이드 바이 사이드 (Side-by-side) 차이점 보기 뷰를 지원합니다.
기능 라우팅 (feature routing) 및 병합된 완성 (merged completions) 기능을 통해 언어당 여러 개의 LSP (Language Server Protocol) 서버(예: pylsp + pyright)를 실행할 수 있습니다. Cargo.toml, package.json, node_modules, site-packages, .cargo와 같이 설정 가능한 마커를 통해 프로젝트별 워크스페이스 루트 (workspace roots)를 감지합니다.
이름이 지정된 세션을 시작하고, 터미널 연결이 끊겨도 세션을 분리 (detach) 및 재연결 (reattach)할 수 있습니다. --wait 플래그는 버퍼가 닫힐 때까지 차단되어, Fresh가 git core.editor 또는 $EDITOR 역할을 할 수 있게 합니다. 핫 엑시트 (Hot Exit) 기능은 재시작이나 충돌 시에도 모든 버퍼를 유지합니다.
fresh -a myproject
--wait 플래그는 커밋 메시지, 리베이스 (rebases) 및 스크립트 흐름에 사용됩니다. fresh user@host:path를 통해 SSH 호스트의 파일을 열 수 있습니다. 연결이 끊어지면 백그라운드에서 재연결됩니다. 대용량 파일 저장 시 파일 전체가 아닌 패치 (patch)만 전송합니다.
플러그인은 OXC로 컴파일되어 임베디드된 QuickJS VM에서 실행되며, 샌드박스 처리되어 동일한 바이너리 내에 포함되어 제공됩니다. 디스크에 node_modules가 필요하지 않습니다. 패키지는 공식 레지스트리에서 설치되며, 언어 팩은 문법 (grammar), 설정 및 LSP 구성을 함께 묶어서 제공합니다.
--init
상태 표시줄 (status bar)의 양쪽 모두 시각적 피커 (visual picker)를 통해 설정할 수 있으며, {clock}, git 브랜치, LSP 상태를 포함하여 순서를 변경할 수 있는 요소들을 지원합니다. 테마는 실시간으로 편집됩니다. 인터페이스는 일본어, 한국어, 중국어, 베트남어를 포함한 여러 언어로 번역되어 있습니다.
접두사 라우팅 (prefix routing)을 지원하는 커맨드 팔레트 (> 명령, # 버퍼, : 라인)를 제공합니다. 충돌 감지 및 컨텍스트별 바인딩 기능이 있는 키 바인딩 (Keybinding) 에디터를 지원합니다. 완전한 마우스 지원을 제공합니다.
curl https://raw.githubusercontent.com/sinelaw/fresh/refs/heads/master/scripts/install.sh | sh
한 줄 설치. 툴체인 (Toolchain)이 필요하지 않습니다.
brew install sinelaw/fresh/fresh-editor
winget install fresh-editor
npx @fresh-editor/fresh-editor
또는 전역 설치: npm install -g @fresh-editor/fresh-editor
GitHub Releases에서 Linux, macOS, Windows, FreeBSD용 바이너리 (Binaries)를 제공합니다. $PATH 어디든 배치하세요.
cargo install --locked fresh-editor
이미 Rust 툴체인 (Toolchain)을 가지고 있는 경우 사용하세요.
fresh -a
git core.editor 또는 $EDITOR를 위한 --wait 옵션
--init
{clock}
별도의 설정 없이도 이것은 제가 지금까지 시도해 본 최고의 새로운 TUI 에디터이며, 아마 역대 최고일 것입니다.
이런 에디터를 찾을 수 있을 거라는 희망을 이미 포기했었습니다. 와우.
멀티 커서 (Multi-cursor) 경험은 터미널 기반 에디터 중에서 제가 본 것 중 가장 매끄럽습니다.
이 도구가 정말 마음에 듭니다. 특히 효율성과 속도가 놀랍습니다. 매일 사용하기 시작할 것입니다.
커맨드 팔레트 (Command palette), 파일 열기 메뉴, 그리고 멀티 커서 (Multi cursor) 기능이 정말 즐겁습니다. 매우 잘 설계되었고 정말 직관적입니다.
모두가 빠르고 반응성이 좋은 소프트웨어를 좋아합니다. 솔직히 말씀드리자면... 정말 마음에 듭니다.